From 569c889395ebe14caf48820e7bfb0551357ec0d2 Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期三, 10 九月 2025 08:59:52 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10105/r/ERP_override
---
north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGlassShelfService.java | 274 ++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 262 insertions(+), 12 deletions(-)
diff --git a/north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGlassShelfService.java b/north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGlassShelfService.java
index bc0cd8b..2211818 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGlassShelfService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGlassShelfService.java
@@ -215,7 +215,7 @@
oddNumber = emitId;
finishedGlassShelfMapper.updateFinishedGlassShelfEmit(finishedGlassShelfEmit, oddNumber);
- log.setFunction("insertDelivery淇敼:"+oddNumber);
+ log.setFunction("insertEmit淇敼:"+oddNumber);
} else {
//鑾峰彇鍗曞彿
oddNumber = orderNumberSetting("鍑哄簱");
@@ -231,7 +231,18 @@
finishedGlassShelfEmitDetails.setMoney(finishedGlassShelfEmitDetails.getPrice()*finishedGlassShelfEmitDetails.getQuantity());
finishedGlassShelfMapper.updateInformationAvailableQuantityOut(finishedGlassShelfEmitDetails);
finishedGlassShelfMapper.insertFinishedGlassShelfEmitDetails(oddNumber,index,finishedGlassShelfEmitDetails);
- finishedGlassShelfMapper.insertFinishedGlassShelfEmitDetailsLog(oddNumber,index,finishedGlassShelfEmitDetails);
+ finishedGlassShelfMapper.insertFinishedGlassShelfEmitDetailsLog(
+ oddNumber,
+ index,
+ 1,
+ finishedGlassShelfEmitDetails.getGlassShelfNumber(),
+ finishedGlassShelfEmitDetails.getGlassShelfName(),
+ finishedGlassShelfEmitDetails.getQuantity(),
+ finishedGlassShelfEmitDetails.getPrice(),
+ finishedGlassShelfEmitDetails.getMoney(),
+ finishedGlassShelfEmitDetails.getUnit(),
+ finishedGlassShelfEmitDetails.getRemarks()
+ );
index++;
}
logService.saveLog(log);
@@ -243,7 +254,7 @@
//灏嗗紓甯镐紶鍏ユ暟鎹簱
SysError sysError = new SysError();
sysError.setError(e+Arrays.toString(e.getStackTrace()));
- sysError.setFunc("insertDelivery");
+ sysError.setFunc("insertFinishedGlassShelfEmit");
sysErrorService.insert(sysError);
saveState = "false4";
@@ -289,18 +300,23 @@
FinishedGlassShelfEmit finishedGlassShelfEmit2 = finishedGlassShelfMapper.getSelectFinishedGlassShelfEmitByemitId(emitId);
if (finishedGlassShelfEmit2 != null) {
- //缂栬緫杩樺師鏁版嵁
- List<FinishedGlassShelfEmitDetails> finishedGlassShelfEmitDetailsList2 = finishedGlassShelfMapper.getSelectFinishedGlassShelfEmitDetailsByemitId1(emitId);
- if (!finishedGlassShelfEmitDetailsList2.isEmpty()) {
- for (FinishedGlassShelfEmitDetails finishedGlassShelfEmitDetails : finishedGlassShelfEmitDetailsList2) {
- finishedGlassShelfMapper.updateInformationAvailableQuantityInt(finishedGlassShelfEmitDetails);
- finishedGlassShelfMapper.deleteFinishedGlassShelfEmitDetailsLog(emitId);
+
+ if(finishedGlassShelfEmit2.getState()==0){
+ //缂栬緫杩樺師鏁版嵁
+ List<FinishedGlassShelfEmitDetails> finishedGlassShelfEmitDetailsList2 = finishedGlassShelfMapper.getSelectFinishedGlassShelfEmitDetailsByemitId1(emitId);
+ if (!finishedGlassShelfEmitDetailsList2.isEmpty()) {
+ for (FinishedGlassShelfEmitDetails finishedGlassShelfEmitDetails : finishedGlassShelfEmitDetailsList2) {
+ finishedGlassShelfMapper.updateInformationAvailableQuantityInt(finishedGlassShelfEmitDetails);
+ finishedGlassShelfMapper.deleteFinishedGlassShelfEmitDetailsLog(emitId);
+ }
+ finishedGlassShelfMapper.deleteFinishedGlassShelfEmitDetails(emitId);
+ finishedGlassShelfMapper.deleteFinishedGlassShelfEmit(emitId);
}
+ }else{
+ saveState = "false1";
}
}
- finishedGlassShelfMapper.deleteFinishedGlassShelfEmitDetails(emitId);
- finishedGlassShelfMapper.deleteFinishedGlassShelfEmit(emitId);
Log log = new Log();
@@ -310,7 +326,6 @@
log.setFunction("deleteFinishedGlassShelfEmit鍒犻櫎:"+emitId);
logService.saveLog(log);
- return "true";
}catch (Exception e) {
TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
//灏嗗紓甯镐紶鍏ユ暟鎹簱
@@ -326,6 +341,241 @@
}
+ public String insertFinishedGlassShelfWithdraw(Map<String,Object> object) {
+
+ String saveState = "true";
+ //璁剧疆鍥炴粴鐐�
+ Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint();
+
+ try {
+ String withdrawId="";
+ String oddNumber = null;
+ if (object.get("withdrawId") != null) {
+ withdrawId = object.get("withdrawId").toString();
+ } else {
+ withdrawId = "";
+ }
+ FinishedGlassShelfWithdraw finishedGlassShelfWithdraw = JSONObject.parseObject(JSONObject.toJSONString(object.get("title")), FinishedGlassShelfWithdraw.class);
+ List<FinishedGlassShelfWithdrawDetails> finishedGlassShelfWithdrawDetailsList = JSONArray.parseArray(JSONObject.toJSONString(object.get("withdrawDetails")), FinishedGlassShelfWithdrawDetails.class);
+ //鏌ヨ鍏ュ簱鍗曟槸鍚﹀瓨鍦�
+ FinishedGlassShelfWithdraw finishedGlassShelfWithdraw2 = finishedGlassShelfMapper.getSelectFinishedGlassShelfWithdrawByemitId(withdrawId);
+
+ Log log = new Log();
+ log.setOperator(object.get("userName").toString());
+ log.setOperatorId(object.get("userId").toString());
+ log.setContent(object.toString());
+
+ if (finishedGlassShelfWithdraw2 != null) {
+ //缂栬緫杩樺師鏁版嵁
+ List<FinishedGlassShelfWithdrawDetails> finishedGlassShelfWithdrawDetailsList2 = finishedGlassShelfMapper
+ .getSelectFinishedGlassShelfWithdrawDetailsBywithdrawId1(withdrawId);
+ if (!finishedGlassShelfWithdrawDetailsList2.isEmpty()) {
+ for (FinishedGlassShelfWithdrawDetails finishedGlassShelfWithdrawDetails : finishedGlassShelfWithdrawDetailsList2) {
+ finishedGlassShelfMapper.updateEmitDetailsWithdrawQuantityOut(finishedGlassShelfWithdrawDetails);
+ finishedGlassShelfMapper.deleteFinishedGlassShelfWithdrawDetails(withdrawId);
+ finishedGlassShelfMapper.updateFinishedGlassShelfEmitDetailsLog(withdrawId);
+ }
+ }
+
+ oddNumber = withdrawId;
+ finishedGlassShelfMapper.updateFinishedGlassShelfWithdraw(finishedGlassShelfWithdraw, oddNumber);
+ log.setFunction("insertWithdraw淇敼:"+oddNumber);
+ } else {
+ //鑾峰彇鍗曞彿
+ oddNumber = orderNumberSetting("鍏ュ簱");
+ //鏂板鍑哄簱鏁版嵁
+ finishedGlassShelfMapper.insertFinishedGlassShelfWithdraw(finishedGlassShelfWithdraw, oddNumber);
+ log.setFunction("insertFinishedGlassShelfWithdraw鏂板:"+oddNumber);
+ }
+
+ //鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼
+ if (finishedGlassShelfWithdrawDetailsList.size()>0) {
+ int index=1;
+ for (FinishedGlassShelfWithdrawDetails finishedGlassShelfWithdrawDetails:finishedGlassShelfWithdrawDetailsList){
+ if(finishedGlassShelfWithdrawDetails.getQuantity()>0){
+ finishedGlassShelfWithdrawDetails.setMoney(finishedGlassShelfWithdrawDetails.getPrice()*finishedGlassShelfWithdrawDetails.getQuantity());
+ finishedGlassShelfMapper.updateEmitDetailsWithdrawQuantityInt(finishedGlassShelfWithdrawDetails);
+ finishedGlassShelfMapper.insertFinishedGlassShelfWithdrawDetails(oddNumber,index,finishedGlassShelfWithdrawDetails);
+ finishedGlassShelfMapper.insertFinishedGlassShelfEmitDetailsLog(
+ oddNumber,
+ index,
+ 2,
+ finishedGlassShelfWithdrawDetails.getGlassShelfNumber(),
+ finishedGlassShelfWithdrawDetails.getGlassShelfName(),
+ finishedGlassShelfWithdrawDetails.getQuantity(),
+ finishedGlassShelfWithdrawDetails.getPrice(),
+ finishedGlassShelfWithdrawDetails.getMoney(),
+ finishedGlassShelfWithdrawDetails.getUnit(),
+ finishedGlassShelfWithdrawDetails.getRemarks()
+ );
+ index++;
+ }
+
+ }
+ getUpdateFinishedGlassShelfEmitState(finishedGlassShelfWithdrawDetailsList.get(0).getEmitId());
+ logService.saveLog(log);
+ } else {
+ return "false3";
+ }
+ }catch (Exception e) {
+ TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
+ //灏嗗紓甯镐紶鍏ユ暟鎹簱
+ SysError sysError = new SysError();
+ sysError.setError(e+Arrays.toString(e.getStackTrace()));
+ sysError.setFunc("insertFinishedGlassShelfWithdraw");
+ sysErrorService.insert(sysError);
+ saveState = "false4";
+
+ }
+
+ return saveState;
+ }
+
+ public void getUpdateFinishedGlassShelfEmitState(String emitId) {
+ List<FinishedGlassShelfEmitDetails> finishedGlassShelfEmitDetailsList2 = finishedGlassShelfMapper
+ .getSelectFinishedGlassShelfEmitDetailsByemitId1(emitId);
+ int sumWithdrawQuantity=0;
+ finishedGlassShelfMapper.updateFinishedGlassShelfEmitState(2,emitId);
+ for(FinishedGlassShelfEmitDetails finishedGlassShelfEmitDetails:finishedGlassShelfEmitDetailsList2){
+ sumWithdrawQuantity+=finishedGlassShelfEmitDetails.getWithdrawQuantity();
+ if(finishedGlassShelfEmitDetails.getQuantity()!=finishedGlassShelfEmitDetails.getWithdrawQuantity()){
+ finishedGlassShelfMapper.updateFinishedGlassShelfEmitState(1,emitId);
+ }
+ }
+ if(sumWithdrawQuantity==0){
+ finishedGlassShelfMapper.updateFinishedGlassShelfEmitState(0,emitId);
+ }
+ }
+
+
+ public Map<String, Object> getSelectFinishedGlassShelfWithdraw(Integer pageNum, Integer pageSize,List<String> selectDate,
+ FinishedGlassShelfWithdraw finishedGlassShelfWithdraw) throws JsonProcessingException {
+ Integer offset = (pageNum - 1) * pageSize;
+ String endDate = LocalDate.now().toString();
+ String startDate = LocalDate.now().minusDays(15).toString();
+ if(selectDate !=null && selectDate.size()==2){
+ if(!selectDate.get(0).isEmpty()){
+ startDate = selectDate.get(0);
+ }
+ if(!selectDate.get(1).isEmpty()){
+ endDate = selectDate.get(1);
+ }
+ }
+ Map<String, Object> map = new HashMap<>();
+ map.put("data", finishedGlassShelfMapper.getSelectFinishedGlassShelfWithdraw(offset, pageSize,startDate,endDate, finishedGlassShelfWithdraw));
+ map.put("total", finishedGlassShelfMapper.getSelectFinishedGlassShelfWithdrawPageTotal(offset, pageSize,startDate,endDate, finishedGlassShelfWithdraw));
+ List<String> list = new ArrayList<>();
+ list.add(startDate);
+ list.add(endDate);
+ map.put("selectDate",list);
+ return map;
+ }
+
+ public Map<String, Object> getSelectFinishedGlassShelfWithdrawDetails(Integer pageNum, Integer pageSize, String withdrawId) {
+ if (withdrawId.startsWith("\"") && withdrawId.endsWith("\"")) {
+ withdrawId = withdrawId.substring(1, withdrawId.length() - 1); // 鍘婚櫎棣栧熬寮曞彿
+ }
+ Map<String, Object> map = new HashMap<>();
+ map.put("withdraw", finishedGlassShelfMapper.getSelectFinishedGlassShelfWithdrawByemitId(withdrawId));
+ map.put("data", finishedGlassShelfMapper.getSelectFinishedGlassShelfWithdrawDetailsBywithdrawId(withdrawId));
+ return map;
+ }
+
+
+ public String deleteFinishedGlassShelfWithdraw(Map<String,Object> object) {
+ String saveState = "true";
+ //璁剧疆鍥炴粴鐐�
+ Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint();
+ try {
+ String withdrawId = "";
+ if (object.get("withdrawId") != null) {
+ withdrawId = object.get("withdrawId").toString();
+ }
+ FinishedGlassShelfWithdraw finishedGlassShelfWithdraw2 = finishedGlassShelfMapper.getSelectFinishedGlassShelfWithdrawByemitId(withdrawId);
+
+ if (finishedGlassShelfWithdraw2 != null) {
+ //缂栬緫杩樺師鏁版嵁
+ List<FinishedGlassShelfWithdrawDetails> finishedGlassShelfWithdrawDetailsList2 = finishedGlassShelfMapper
+ .getSelectFinishedGlassShelfWithdrawDetailsBywithdrawId1(withdrawId);
+ if (!finishedGlassShelfWithdrawDetailsList2.isEmpty()) {
+ for (FinishedGlassShelfWithdrawDetails finishedGlassShelfWithdrawDetails : finishedGlassShelfWithdrawDetailsList2) {
+ finishedGlassShelfMapper.updateEmitDetailsWithdrawQuantityOut(finishedGlassShelfWithdrawDetails);
+ finishedGlassShelfMapper.deleteFinishedGlassShelfEmitDetailsLog(withdrawId);
+ }
+
+ finishedGlassShelfMapper.deleteFinishedGlassShelfWithdrawDetails(withdrawId);
+ finishedGlassShelfMapper.deleteFinishedGlassShelfWithdraw(withdrawId);
+ getUpdateFinishedGlassShelfEmitState(finishedGlassShelfWithdrawDetailsList2.get(0).getEmitId());
+ }
+
+
+ }
+
+
+ Log log = new Log();
+ log.setOperatorId(object.get("userId").toString());
+ log.setOperator(object.get("userName").toString());
+ log.setContent(object.toString());
+ log.setFunction("deleteFinishedGlassShelfWithdraw鍒犻櫎:"+withdrawId);
+ logService.saveLog(log);
+
+ return "true";
+ }catch (Exception e) {
+ TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
+ //灏嗗紓甯镐紶鍏ユ暟鎹簱
+ SysError sysError = new SysError();
+ sysError.setError(e+Arrays.toString(e.getStackTrace()));
+ sysError.setFunc("deleteFinishedGlassShelfWithdraw");
+ sysErrorService.insert(sysError);
+ saveState = "false";
+
+ }
+ return saveState;
+
+ }
+
+
+ public Map<String, Object> getFinishedGlassShelfLogReport(String type,Integer pageNum, Integer pageSize,
+ List<String> selectDate, FinishedGlassShelfLog finishedGlassShelfLog) {
+ Integer offset = (pageNum-1)*pageSize;
+ String endDate = LocalDate.now().toString();
+ String startDate = LocalDate.now().minusDays(15).toString();
+ if(selectDate !=null && selectDate.size()==2){
+ if(!selectDate.get(0).isEmpty()){
+ startDate = selectDate.get(0);
+ }
+ if(!selectDate.get(1).isEmpty()){
+ endDate = selectDate.get(1);
+ }
+ }
+ int state=0;
+ if(type.equals("鏂欐灦鍑哄簱")){
+ state=1;
+ }else if(type.equals("鏂欐灦鍏ュ簱")){
+ state=2;
+ }
+
+ Map<String, Object> map = new HashMap<>();
+ System.out.println(finishedGlassShelfLog.getDocumentId());
+ map.put("data", finishedGlassShelfMapper.getFinishedGlassShelfLogReport(offset, pageSize,startDate, endDate, finishedGlassShelfLog,state));
+ map.put("total", finishedGlassShelfMapper.getFinishedGlassShelfLogReportTotal(offset, pageSize,startDate, endDate, finishedGlassShelfLog,state));
+ List<String> list = new ArrayList<>();
+ list.add(startDate);
+ list.add(endDate);
+ map.put("selectDate",list);
+ return map;
+ }
+
+ public List<FinishedGlassShelfLog> exportFinishedGlassShelfLogReport(List<LocalDate> dates, String type) {
+ int state=0;
+ if(type.equals("鏂欐灦鍑哄簱")){
+ state=1;
+ }else if(type.equals("鏂欐灦鍏ュ簱")){
+ state=2;
+ }
+ return finishedGlassShelfMapper.exportFinishedGlassShelfLogReport(dates,state);
+ }
+
--
Gitblit v1.8.0