From 0d334766bcd06f6ce8678caed5747600f74b4d21 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期二, 23 三月 2021 14:20:37 +0800
Subject: [PATCH] #
---
src/main/webapp/views/pda/stockIn.html | 103 +++++++++++++-------
src/main/java/zy/cloud/wms/common/service/erp/ErpService.java | 73 ++++++++++++++
src/main/java/zy/cloud/wms/common/service/erp/ErpScheduler.java | 5
src/main/java/zy/cloud/wms/common/service/erp/entity/UploadBill.java | 27 +++++
src/main/java/zy/cloud/wms/manager/controller/WorkController.java | 2
src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java | 12 ++
src/main/java/zy/cloud/wms/common/service/erp/entity/UploadBillDetail.java | 19 +++
src/main/java/zy/cloud/wms/manager/entity/param/StockInParam.java | 2
8 files changed, 203 insertions(+), 40 deletions(-)
diff --git a/src/main/java/zy/cloud/wms/common/service/erp/ErpScheduler.java b/src/main/java/zy/cloud/wms/common/service/erp/ErpScheduler.java
index cb18372..3227482 100644
--- a/src/main/java/zy/cloud/wms/common/service/erp/ErpScheduler.java
+++ b/src/main/java/zy/cloud/wms/common/service/erp/ErpScheduler.java
@@ -8,7 +8,6 @@
import com.core.exception.CoolException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.GetMapping;
@@ -271,7 +270,7 @@
/**
* 鎸佷箙鍖栭攢鍞鍗�
*/
- @Scheduled(cron = "0/45 * * * * ? ")
+// @Scheduled(cron = "0/45 * * * * ? ")
@Transactional
// @PostConstruct
public void getOrdersExecute(){
@@ -420,7 +419,7 @@
/**
* 搴撳瓨涓婁紶
*/
- @Scheduled(cron = "0/15 * * * * ? ")
+// @Scheduled(cron = "0/15 * * * * ? ")
@GetMapping("test2")
public void uploadStockExecute(){
try {
diff --git a/src/main/java/zy/cloud/wms/common/service/erp/ErpService.java b/src/main/java/zy/cloud/wms/common/service/erp/ErpService.java
new file mode 100644
index 0000000..e432541
--- /dev/null
+++ b/src/main/java/zy/cloud/wms/common/service/erp/ErpService.java
@@ -0,0 +1,73 @@
+package zy.cloud.wms.common.service.erp;
+
+import com.alibaba.fastjson.JSON;
+import com.core.common.Cools;
+import com.core.common.DateUtils;
+import com.core.common.SnowflakeIdWorker;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import zy.cloud.wms.common.service.erp.entity.UploadBill;
+import zy.cloud.wms.common.service.erp.entity.UploadBillDetail;
+import zy.cloud.wms.manager.entity.Comb;
+import zy.cloud.wms.manager.utils.HttpHandler;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * Created by vincent on 2021/3/23
+ */
+@Slf4j
+@Service("erpService")
+public class ErpService {
+
+ @Autowired
+ private SnowflakeIdWorker snowflakeIdWorker;
+
+ /**
+ * 鍗曟嵁涓婃姤
+ */
+ public Boolean uploadBill(List<Comb> combs, Integer docId, String docNumber){
+ try {
+ if (Cools.isEmpty(combs)) {
+ return false;
+ }
+ UploadBill uploadBill = new UploadBill();
+ uploadBill.setNumber(docNumber);
+ uploadBill.setBillDate(DateUtils.convert(new Date(), DateUtils.yyyyMMdd_F));
+ uploadBill.setBTypeID("瀹忔尯瀹㈡埛");
+ uploadBill.setKTypeID("瀹忔尯浠撳簱");
+ uploadBill.setVchType(docId);
+ List<UploadBillDetail> detail = new ArrayList<>();
+ uploadBill.setDetail(detail);
+ for (Comb comb : combs) {
+ UploadBillDetail detl = new UploadBillDetail();
+ detl.setUserCode(comb.getMatnr());
+ detl.setQty(comb.getAnfme());
+ detl.setPrice(0.0D);
+ }
+
+ String response = new HttpHandler.Builder()
+ .setUri(ErpScheduler.URI)
+ .setPath(ErpScheduler.UPLOAD_BILL)
+ .setJson(JSON.toJSONString(uploadBill))
+ .build()
+ .doPost();
+ if (!Cools.isEmpty(response)) {
+ log.warn(response);
+ Result result = JSON.parseObject(response, Result.class);
+ if (result.getCode() != 1) {
+ return false;
+ }
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ return false;
+ }
+ return Boolean.TRUE;
+ }
+
+
+}
diff --git a/src/main/java/zy/cloud/wms/common/service/erp/entity/UploadBill.java b/src/main/java/zy/cloud/wms/common/service/erp/entity/UploadBill.java
new file mode 100644
index 0000000..57a3cc5
--- /dev/null
+++ b/src/main/java/zy/cloud/wms/common/service/erp/entity/UploadBill.java
@@ -0,0 +1,27 @@
+package zy.cloud.wms.common.service.erp.entity;
+
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * Created by vincent on 2021/3/23
+ */
+@Data
+public class UploadBill {
+
+ private String number;
+
+ private Integer vchType;
+
+ private String billDate;
+
+ private String bTypeID;
+
+ private String kTypeID;
+
+ private String summary;
+
+ private List<UploadBillDetail> detail;
+
+}
diff --git a/src/main/java/zy/cloud/wms/common/service/erp/entity/UploadBillDetail.java b/src/main/java/zy/cloud/wms/common/service/erp/entity/UploadBillDetail.java
new file mode 100644
index 0000000..5fa40a9
--- /dev/null
+++ b/src/main/java/zy/cloud/wms/common/service/erp/entity/UploadBillDetail.java
@@ -0,0 +1,19 @@
+package zy.cloud.wms.common.service.erp.entity;
+
+import lombok.Data;
+
+/**
+ * Created by vincent on 2021/3/23
+ */
+@Data
+public class UploadBillDetail {
+
+ private String userCode;
+
+ private Double qty;
+
+ private Double Price;
+
+ private String comment;
+
+}
diff --git a/src/main/java/zy/cloud/wms/manager/controller/WorkController.java b/src/main/java/zy/cloud/wms/manager/controller/WorkController.java
index 47649e2..b14e242 100644
--- a/src/main/java/zy/cloud/wms/manager/controller/WorkController.java
+++ b/src/main/java/zy/cloud/wms/manager/controller/WorkController.java
@@ -86,7 +86,7 @@
}
Long sts = pakouts.get(0).getWrkSts();
if (sts == 1) {
- sts =2L;
+ sts = 2L;
}
WrkSts wrkSts = wrkStsService.selectById(sts);
return R.ok().add(Cools
diff --git a/src/main/java/zy/cloud/wms/manager/entity/param/StockInParam.java b/src/main/java/zy/cloud/wms/manager/entity/param/StockInParam.java
index 5f85a0f..ff505e3 100644
--- a/src/main/java/zy/cloud/wms/manager/entity/param/StockInParam.java
+++ b/src/main/java/zy/cloud/wms/manager/entity/param/StockInParam.java
@@ -12,4 +12,6 @@
private String zpallet;
+ private Integer docType;
+
}
diff --git a/src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java b/src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java
index 2f266cc..b10d741 100644
--- a/src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java
+++ b/src/main/java/zy/cloud/wms/manager/service/impl/WorkServiceImpl.java
@@ -12,6 +12,7 @@
import zy.cloud.wms.common.model.OrderStoDto;
import zy.cloud.wms.common.service.MainService;
import zy.cloud.wms.common.service.asrs.AsrsService;
+import zy.cloud.wms.common.service.erp.ErpService;
import zy.cloud.wms.common.utils.VersionUtils;
import zy.cloud.wms.manager.entity.*;
import zy.cloud.wms.manager.entity.param.*;
@@ -46,6 +47,8 @@
private MatService matService;
@Autowired
private AsrsService asrsService;
+ @Autowired
+ private ErpService erpService;
@Override
@Transactional
@@ -59,6 +62,7 @@
return R.error("鐗╂枡涓嶅瓨鍦�");
}
Date now = new Date();
+ String docNum = String.valueOf(snowflakeIdWorker.nextId());
for (Comb comb : combs) {
// 鏀瑰彉缁勬墭妗g姸鎬�
comb.setIoStatus(4);
@@ -77,6 +81,8 @@
locDetl.setZpallet(param.getZpallet());
locDetl.setAnfme(comb.getAnfme());
VersionUtils.setLocDetl(locDetl, comb);
+ locDetl.setDocId(param.getDocType().longValue());
+ locDetl.setDocNum(docNum);
locDetl.setStatus(1);
locDetl.setCreateBy(userId);
locDetl.setCreateTime(now);
@@ -94,6 +100,12 @@
}
}
+
+ // 涓婃姤缁檈rp
+ if (!erpService.uploadBill(combs, param.getDocType(), docNum)) {
+ throw new CoolException("鏃犳硶涓婃姤鑷砮rp");
+ }
+
return R.ok();
}
diff --git a/src/main/webapp/views/pda/stockIn.html b/src/main/webapp/views/pda/stockIn.html
index e68c3fe..b747d88 100644
--- a/src/main/webapp/views/pda/stockIn.html
+++ b/src/main/webapp/views/pda/stockIn.html
@@ -76,6 +76,13 @@
display: none;
}
+ #typeSelect {
+ padding: 10px 20px;
+ }
+ .layui-form-radio {
+ width: 100%;
+ }
+
</style>
</head>
<body>
@@ -100,9 +107,20 @@
<footer>
<div class="layui-btn-container">
<button type="button" class="layui-btn layui-btn-primary" onclick="reset()">閲嶇疆</button>
- <button id="pakin" type="button" class="layui-btn layui-btn-normal" onclick="pakIn()" style="margin-left: 15px">涓婃灦</button>
+ <button id="pakin" type="button" class="layui-btn layui-btn-normal" onclick="confirm()" style="margin-left: 15px">涓婃灦</button>
</div>
</footer>
+
+<div id="typeSelect" style="display: none">
+ <form class="layui-form">
+ <input type="radio" name="docType" value="34" title="閲囪喘鍗�" checked="">
+ <input type="radio" name="docType" value="45" title="閿�鍞��璐у崟">
+ <hr>
+ <div style="text-align: center">
+ <button class="layui-btn layui-btn-normal" onclick="pakIn()">纭畾</button>
+ </div>
+ </form>
+</div>
</body>
<script>
var tableIns;
@@ -243,44 +261,57 @@
layui.form.render('select');
}
+
+ function confirm() {
+ layer.open({
+ type: 1,
+ title: '鍗曟嵁绫诲瀷',
+ shade: [0.3,'#000'],
+ area: ['70%'],
+ content: $('#typeSelect'),
+ success: function(layero, index){
+ }
+ });
+ }
+
// 涓婃灦
function pakIn() {
- layer.confirm('涓婃灦褰撳墠鎵樼洏锛�', {shadeClose: true}, function(){
- var zpallet = $('#code').val();
- if (isEmpty(zpallet)) {
- tips("鎵樼洏鏉$爜涓虹┖", true);
- return;
- }
- var node = $('#node').val();
- if (isEmpty(node)) {
- tips("璐т綅涓虹┖", true);
- return;
- }
- if (matData.length === 0) {
- tips("璇锋彁鍙栫墿鏂�", true);
- return;
- }
- $.ajax({
- url: baseUrl+"/work/stock/in",
- headers: {'token': localStorage.getItem('token')},
- data: JSON.stringify({
- nodeId: node,
- zpallet: zpallet
- }),
- contentType:'application/json;charset=UTF-8',
- method: 'POST',
- async: false,
- success: function (res) {
- if (res.code === 200) {
- reset();
- tips("涓婃灦鎴愬姛")
- } else if (res.code === 403) {
- top.location.href = baseUrl + "/pda";
- } else {
- tips(res.msg, true)
- }
+ var docType = $('input:radio[name="docType"]:checked').val();
+ var zpallet = $('#code').val();
+ if (isEmpty(zpallet)) {
+ tips("鎵樼洏鏉$爜涓虹┖", true);
+ return;
+ }
+ var node = $('#node').val();
+ if (isEmpty(node)) {
+ tips("璐т綅涓虹┖", true);
+ return;
+ }
+ if (matData.length === 0) {
+ tips("璇锋彁鍙栫墿鏂�", true);
+ return;
+ }
+ $.ajax({
+ url: baseUrl+"/work/stock/in",
+ headers: {'token': localStorage.getItem('token')},
+ data: JSON.stringify({
+ nodeId: node,
+ zpallet: zpallet,
+ docType: docType
+ }),
+ contentType:'application/json;charset=UTF-8',
+ method: 'POST',
+ async: false,
+ success: function (res) {
+ if (res.code === 200) {
+ reset();
+ tips("涓婃灦鎴愬姛")
+ } else if (res.code === 403) {
+ top.location.href = baseUrl + "/pda";
+ } else {
+ tips(res.msg, true)
}
- })
+ }
})
}
--
Gitblit v1.9.1