From d5bb894f9be2e0a3b62d475b60b44f2ab138528c Mon Sep 17 00:00:00 2001 From: guoyujie <guoyujie@ng.com> Date: 星期四, 12 六月 2025 16:48:35 +0800 Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/ERP_override --- north-glass-erp/src/main/java/com/example/erp/service/pp/ReworkService.java | 209 ++++++++++++++++++++++++++++++++++----------------- 1 files changed, 139 insertions(+), 70 deletions(-) diff --git a/north-glass-erp/src/main/java/com/example/erp/service/pp/ReworkService.java b/north-glass-erp/src/main/java/com/example/erp/service/pp/ReworkService.java index a4132da..5fa3c2f 100644 --- a/north-glass-erp/src/main/java/com/example/erp/service/pp/ReworkService.java +++ b/north-glass-erp/src/main/java/com/example/erp/service/pp/ReworkService.java @@ -3,18 +3,21 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.dynamic.datasource.annotation.DS; +import com.example.erp.dto.pp.ReworkDTO; import com.example.erp.entity.pp.BasicDataProduce; +import com.example.erp.entity.pp.FlowCard; import com.example.erp.entity.pp.PatchLog; import com.example.erp.entity.pp.Rework; -import com.example.erp.entity.sd.Delivery; -import com.example.erp.entity.sd.OrderDetail; +import com.example.erp.entity.userInfo.Log; import com.example.erp.entity.userInfo.SysError; -import com.example.erp.mapper.pp.BasicDateProduceMapper; -import com.example.erp.mapper.pp.ReworkMapper; +import com.example.erp.mapper.pp.*; +import com.example.erp.service.userInfo.LogService; import com.example.erp.service.userInfo.SysErrorService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.interceptor.TransactionAspectSupport; +import com.example.erp.mapper.pp.FlowCardMapper; import java.text.SimpleDateFormat; import java.time.LocalDate; @@ -23,7 +26,10 @@ @Service @DS("pp") +@Transactional(rollbackFor = Exception.class) public class ReworkService { + @Autowired + PatchLogMapper patchMapper; @Autowired ReworkMapper reworkMapper; @Autowired @@ -31,6 +37,16 @@ @Autowired SysErrorService sysErrorService; + final + FlowCardMapper flowCardMapper; + + final LogService logService; + + public ReworkService(FlowCardMapper flowCardMapper,LogService logService) { + + this.flowCardMapper = flowCardMapper; + this.logService = logService; + } public List<Map<String, Object>> getSelectRework(Integer pageNum, Integer pageSize) { Integer offset = (pageNum - 1) * pageSize; @@ -38,47 +54,48 @@ List<Map<String, Object>> listMap = new ArrayList<>(); - List<Map<String, Object>> ReworkMap =reworkMapper.getSelectRework(offset,pageSize); - List<BasicDataProduce> basicDataProduceList=basicDateProduceMapper.SelectWorkBasicTeams(); + List<Map<String, Object>> ReworkMap = reworkMapper.getSelectRework(offset, pageSize); - for (Map<String, Object> item:ReworkMap){ - item.put("reworkTeam",""); - List<BasicDataProduce> basicCategory=new ArrayList<>(); - for (BasicDataProduce basicDataProduce:basicDataProduceList){ - if(Objects.equals(basicDataProduce.getBasicData().getBasicName(),item.get("reworkProcesses"))){ + + for (Map<String, Object> item : ReworkMap) { + item.put("reworkTeam", ""); + List<BasicDataProduce> basicCategory = new ArrayList<>(); + List<BasicDataProduce> basicDataProduceList = basicDateProduceMapper.SelectWorkBasicTeams(item.get("reworkProcesses").toString()); + for (BasicDataProduce basicDataProduce : basicDataProduceList) { + if (Objects.equals(basicDataProduce.getBasicData().getBasicName(), item.get("reworkProcesses"))) { basicCategory.add(basicDataProduce); } } - item.put("basicCategory",basicCategory); + item.put("basicCategory", basicCategory); listMap.add(item); } return listMap; } - public Map<String, Object> SelectRework(Integer pageNum, Integer pageSize,List<String> selectDate,Rework rework) { - Integer offset = (pageNum-1)*pageSize; + public Map<String, Object> SelectRework(Integer pageNum, Integer pageSize, List<String> selectDate, ReworkDTO rework) { + 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()){ + if (selectDate != null && selectDate.size() == 2) { + if (!selectDate.get(0).isEmpty()) { startDate = selectDate.get(0); } - if(!selectDate.get(1).isEmpty()){ + if (!selectDate.get(1).isEmpty()) { endDate = selectDate.get(1); } } - Map<String,Object> map = new HashMap<>(); - map.put("data",reworkMapper.SelectRework(offset,pageSize,startDate,endDate,rework)); - map.put("total",reworkMapper.SelectReworkPageTotal(offset,pageSize,startDate,endDate,rework)); + Map<String, Object> map = new HashMap<>(); + map.put("data", reworkMapper.SelectRework(offset, pageSize, startDate, endDate, rework)); + map.put("total", reworkMapper.SelectReworkPageTotal(offset, pageSize, startDate, endDate, rework)); List<String> list = new ArrayList<>(); list.add(startDate); list.add(endDate); - map.put("selectDate",list); + map.put("selectDate", list); return map; } - public Boolean saveRework(Map<String,Object> object) { + public Boolean saveRework(Map<String, Object> object) { boolean saveState = true; Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint(); try { @@ -91,14 +108,110 @@ userId = object.get("userId").toString(); } //鑾峰彇鍗曞彿 - String oddNumber= orderNumberSetting("杩斿伐"); + String oddNumber = orderNumberSetting("杩斿伐"); + //鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼 + List<Rework> reworklist = JSONArray.parseArray(JSONObject.toJSONString(object.get("rework")), Rework.class); + if (!reworklist.isEmpty()) { + for (Rework rework : reworklist) { + //娣诲姞杩斿伐璁板綍锛屼慨鏀规鐮存槑缁嗘暟閲� + reworkMapper.insertRework(rework, oddNumber); + reworkMapper.updateDamageDetails(rework); + patchMapper.updateReportingWorkDetail(rework.getReportingWorkId(), Integer.valueOf(rework.getOrderSort()), rework.getTechnologyNumber()); + } + } + + } catch (Exception e) { + TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint); + //灏嗗紓甯镐紶鍏ユ暟鎹簱 + SysError sysError = new SysError(); + sysError.setError(e.toString()); + sysError.setFunc("saveOrder"); + sysErrorService.insert(sysError); + saveState = false; + + } + //淇濆瓨鏃ュ織 + Log log = new Log(); + log.setContent(object.toString()); + log.setFunction("saveRework杩斿伐鏂板"); + log.setOperatorId((String) object.get("userId")); + log.setOperator((String) object.get("userName")); + logService.saveLog(log); + return saveState; + + } + + public Boolean updateRework(Map<String, Object> object) { + boolean saveState = true; + + String userName = ""; + String userId = ""; + if (object.get("userName") != null) { + userName = object.get("userName").toString(); + } + if (object.get("userId") != null) { + userId = object.get("userId").toString(); + } + //鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼 + List<Rework> reworklist = JSONArray.parseArray(JSONObject.toJSONString(object.get("rework")), Rework.class); + if (!reworklist.isEmpty()) { + for (Rework rework : reworklist) { + //瀹℃牳 + reworkMapper.updateRework(rework, userName); + } + } + + //淇濆瓨鏃ュ織 + Log log = new Log(); + log.setContent(object.toString()); + log.setFunction("updateRework杩斿伐瀹℃牳"); + log.setOperatorId((String) object.get("userId")); + log.setOperator((String) object.get("userName")); + logService.saveLog(log); + return saveState; + + } + + public String orderNumberSetting(String type) { + //鏍规嵁绫诲瀷鑷姩鐢熸垚涓嶅悓鐨勬搷浣滃崟鍙� + String alias = ""; + if (Objects.equals(type, "杩斿伐")) { + alias = "FG"; + } + //鏌ヨ褰撳ぉ鐨勬渶澶ф暟閲� + Integer maximum = reworkMapper.getMaximum(); + //璁剧疆涓や綅涓嶅琛�0 + String formattedNumber = String.format("%02d", maximum + 1); + //鏍煎紡鍖栧綋鍓嶆棩鏈� + Date currentDate = new Date(); + SimpleDateFormat dateFormat = new SimpleDateFormat("yyMMdd"); + String formattedDate = dateFormat.format(currentDate); + String oddNumbers = alias + formattedDate + formattedNumber; + return oddNumbers; + } + + public Object selectPrintSv(java.sql.Date selectTime1, java.sql.Date selectTime2, FlowCard flowCard) { + Map<String, Object> map = new HashMap<>(); + map.put("data", flowCardMapper.selectReworkPrintMp(selectTime1, selectTime2, flowCard)); + map.put("type", flowCardMapper.selectType()); + return map; + } + + public Boolean deleteReworkSv(Map<String, Object> object) { + boolean saveState = true; + Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint(); + try { //鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼 List<Rework> reworklist = JSONArray.parseArray(JSONObject.toJSONString(object.get("rework")), Rework.class); if (!reworklist.isEmpty()){ for (Rework rework : reworklist) { - //娣诲姞杩斿伐璁板綍锛屼慨鏀规鐮存槑缁嗘暟閲� - reworkMapper.insertRework(rework,oddNumber); - reworkMapper.updateDamageDetails(rework); + //鍒犻櫎杩斿伐琛ㄥ搴旇ˉ鐗噄d鏁版嵁 + reworkMapper.deleteReworkMp(rework.getReworkId()); + //淇敼娆$牬鏄庣粏琛ㄨˉ鐗囨暟閲忓拰鐘舵�� + reworkMapper.updateReworkDdMp(rework.getReportingWorkId(),rework.getOrderSort(),rework.getTechnologyNumber(),rework.getReworkNum()); + //淇敼鎶ュ伐鏄庣粏琛ㄧ姸鎬� + reworkMapper.updateReworkBgMp(rework.getReportingWorkId(),rework.getOrderSort(),rework.getTechnologyNumber()); + } } @@ -114,50 +227,6 @@ } return saveState; - - } - - public Boolean updateRework(Map<String,Object> object) { - boolean saveState = true; - - String userName = ""; - String userId = ""; - if (object.get("userName") != null) { - userName = object.get("userName").toString(); - } - if (object.get("userId") != null) { - userId = object.get("userId").toString(); - } - //鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼 - List<Rework> reworklist = JSONArray.parseArray(JSONObject.toJSONString(object.get("rework")), Rework.class); - if (!reworklist.isEmpty()){ - for (Rework rework : reworklist) { - //瀹℃牳 - reworkMapper.updateRework(rework,userName); - } - } - - - return saveState; - - } - - public String orderNumberSetting(String type) { - //鏍规嵁绫诲瀷鑷姩鐢熸垚涓嶅悓鐨勬搷浣滃崟鍙� - String alias=""; - if(Objects.equals(type, "杩斿伐")){ - alias="FG"; - } - //鏌ヨ褰撳ぉ鐨勬渶澶ф暟閲� - Integer maximum=reworkMapper.getMaximum(); - //璁剧疆涓や綅涓嶅琛�0 - String formattedNumber = String.format("%02d", maximum+1); - //鏍煎紡鍖栧綋鍓嶆棩鏈� - Date currentDate = new Date(); - SimpleDateFormat dateFormat = new SimpleDateFormat("yyMMdd"); - String formattedDate = dateFormat.format(currentDate); - String oddNumbers = alias+formattedDate+formattedNumber; - return oddNumbers; } } -- Gitblit v1.8.0