From 754bc2945aa5c91a510780d8e2c451c3bae576fb Mon Sep 17 00:00:00 2001
From: 王佳豪 <g675230687@126.com>
Date: 星期五, 25 六月 2021 17:05:44 +0800
Subject: [PATCH] 1.发货通知-平仓出库支持生产单号的搜索过滤
---
src/main/java/com/zy/asrs/controller/OutStockController.java | 126 ++++++++++++++++++++++++++++++++++++++++++
1 files changed, 126 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/OutStockController.java b/src/main/java/com/zy/asrs/controller/OutStockController.java
index 147213a..80d1214 100644
--- a/src/main/java/com/zy/asrs/controller/OutStockController.java
+++ b/src/main/java/com/zy/asrs/controller/OutStockController.java
@@ -1,25 +1,60 @@
package com.zy.asrs.controller;
+import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.annotations.ManagerAuth;
import com.core.common.Cools;
import com.core.common.DateUtils;
import com.core.common.R;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.LocDetl;
+import com.zy.asrs.entity.LocNormal;
+import com.zy.asrs.entity.LocNormalLog;
+import com.zy.asrs.entity.param.LocNormalStockOutParam;
+import com.zy.asrs.entity.param.StockOutParam;
+import com.zy.asrs.service.LocNormalLogService;
+import com.zy.asrs.service.LocNormalService;
import com.zy.asrs.service.OutStockService;
+import com.zy.asrs.service.WorkService;
+import com.zy.asrs.utils.VersionUtils;
+import com.zy.common.service.erp.ErpService;
import com.zy.common.service.erp.entity.OutStockBillEntry;
import com.zy.common.web.BaseController;
+import lombok.extern.slf4j.Slf4j;
+import net.bytebuddy.implementation.bytecode.Throw;
+import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
+import java.util.Date;
+import java.util.List;
import java.util.Map;
+@Slf4j
@RestController
public class OutStockController extends BaseController {
@Autowired
private OutStockService outStockService;
+ @Autowired
+ private WorkService workService;
+ @Autowired
+ private LocNormalService locNormalService;
+ @Autowired
+ private ErpService erpService;
+ @Autowired
+ private LocNormalLogService locNormalLogService;
+ /**
+ *
+ * @param curr
+ * @param limit
+ * @param param
+ * @return
+ */
@RequestMapping(value = "/outStock/query/list")
@ManagerAuth
public R outStockQueryList(@RequestParam(defaultValue = "1")Integer curr,
@@ -27,4 +62,95 @@
@RequestParam Map<String, Object> param){
return R.ok(outStockService.queryOutStock(toPage(curr, limit, param, OutStockBillEntry.class)));
}
+
+ /**
+ * 妫�绱㈢鍚堥�氱煡鍗曠殑绔嬪簱搴撳瓨鐗╂枡
+ * @param fbillNo
+ * @return
+ */
+ @RequestMapping(value = "/outStock/query/locList")
+ @ManagerAuth
+ public R queryMatWithLoc(String fbillNo) {
+ List<LocDetl> list = outStockService.queryMatWithLoc(fbillNo);
+ return R.ok(list);
+ }
+
+ @RequestMapping(value = "/plate/outStock/start")
+ @ManagerAuth(memo = "鍑哄簱浣滀笟")
+ public R fullStoreTakeStart(@RequestBody StockOutParam param) {
+ outStockService.startupFullTakeStore(param, getUserId());
+ return R.ok("鍑哄簱鍚姩鎴愬姛");
+ }
+
+ /**
+ * 妫�绱㈢鍚堥�氱煡鍗曠殑骞充粨搴撳瓨鐗╂枡
+ * @param fbillNo
+ * @return
+ */
+ @RequestMapping(value = "/outStock/query/locNormalList")
+ @ManagerAuth
+ public R queryMatWithLocNormal(String fbillNo, String mnemonic) {
+ List<LocNormal> list = locNormalService.queryLocNorlMatnr(fbillNo, mnemonic);
+ return R.ok(list);
+ }
+
+
+ /**
+ * 骞充粨瀵规帴erp鍑哄簱
+ * @param
+ * @return
+ */
+ @RequestMapping(value = "/outStock/locNormal")
+ @ManagerAuth
+ public R outStockLocNormal(@RequestBody LocNormalStockOutParam param) {
+ Long modiUser = getUserId();
+ Date modiTime = new Date();
+ for (LocNormal locNormals:param.getList()) {
+ // erp涓棿琛ㄦ洿鏂版暟鎹�
+ Integer FInterI = outStockService.queryOutStockFInterID(param.getSupplier()); // 鑾峰彇鍑哄簱鍗曚富琛ㄤ富閿�
+ if (!erpService.incrementCPakOut(FInterI, locNormals.getMatnr(), locNormals.getAnfme().doubleValue(), param.getSupplier())) {
+ log.info("鏇存柊ERP鎴愬搧鍑哄簱鏁版嵁[matnr={0}]澶辫触", locNormals.getMatnr(), param.getSupplier());
+ }
+ LocNormal locNormal = locNormalService.selectOne(new EntityWrapper<LocNormal>().eq("id", locNormals.getId()));
+ if (!Cools.isEmpty(locNormal)) {
+ if (locNormal.getAnfme().compareTo(locNormals.getAnfme()) == 1) {
+ LocNormal logLocNormal = new LocNormal();
+ logLocNormal.setAnfme(locNormals.getAnfme());
+ logLocNormal.setMatnr(locNormal.getMatnr());
+ logLocNormal.setMaktx(locNormal.getMaktx());
+ logLocNormal.setLgnum(locNormal.getLgnum());
+ logLocNormal.setType(locNormal.getType());
+ logLocNormal.setMnemonic(locNormal.getMnemonic());
+ logLocNormal.setSupplier(locNormal.getSupplier());
+ logLocNormal.setWarehouse(locNormal.getWarehouse());
+ logLocNormal.setWarehouseName(locNormal.getWarehouseName());
+ logLocNormal.setBrand(locNormal.getBrand());
+ logLocNormal.setAltme(locNormal.getAltme());
+ logLocNormal.setBname(locNormal.getBname());
+ logLocNormal.setMemo(locNormal.getMemo());
+ logLocNormal.setState("2");
+ // 鐢熸垚鍑哄簱璁板綍
+// locNormalService.insert(logLocNormal);
+ // 鏇存柊鍘熷厛骞充粨璁板綍
+ locNormalService.updateLocNormal(locNormal.getMatnr(), locNormal.getAnfme().subtract(locNormals.getAnfme()), modiUser, modiTime, locNormal.getId());
+ // 鐢熸垚骞充粨鍑哄叆搴撹褰�
+ LocNormalLog locLog = new LocNormalLog();
+ VersionUtils.setLocNormalLog(locLog, locNormals);
+ locLog.setAnfme(locNormals.getAnfme().doubleValue());
+ locLog.setIoType(2);
+ locLog.setCreateTime(new Date());
+ locLog.setCreateUser(modiUser);
+ if (!locNormalLogService.insert(locLog)) {
+ String logStr = JSON.toJSONString(locLog);
+ log.info("骞充粨鍑哄簱璁板綍鎻掑叆澶辫触,鏁版嵁:" + logStr);
+ }
+ } else {
+ // 鎶婂搴旂墿鏂欏钩浠撳簱瀛樺嚭搴�
+ locNormalService.outLocNormal(locNormals.getMatnr(), modiUser, modiTime, locNormals.getId());
+ }
+ }
+
+ }
+ return R.ok("骞充粨鍑哄簱鎴愬姛");
+ }
}
--
Gitblit v1.9.1