diff --git a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/controller/AbnormalBillController.java b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/controller/AbnormalBillController.java index 90b3d78b..620c4864 100644 --- a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/controller/AbnormalBillController.java +++ b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/controller/AbnormalBillController.java @@ -2,14 +2,19 @@ package com.foreverwin.mesnac.anomaly.controller; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.foreverwin.mesnac.anomaly.dto.AbnormalBillDisposeDto; import com.foreverwin.mesnac.anomaly.dto.AbnormalBillDto; import com.foreverwin.mesnac.anomaly.dto.NcCodesVO; import com.foreverwin.mesnac.anomaly.dto.RouterBpmVO; +import com.foreverwin.mesnac.anomaly.mapper.AbnormalBillDisposeMapper; import com.foreverwin.mesnac.anomaly.model.AbnormalBill; import com.foreverwin.mesnac.anomaly.model.AbnormalBillDispose; +import com.foreverwin.mesnac.anomaly.service.AbnormalBillDisposeService; import com.foreverwin.mesnac.anomaly.service.AbnormalBillService; +import com.foreverwin.mesnac.anomaly.service.AbnormalPlanService; import com.foreverwin.mesnac.anomaly.service.FileUploadedService; import com.foreverwin.mesnac.anomaly.utils.*; +import com.foreverwin.mesnac.common.constant.Constants; import com.foreverwin.mesnac.common.dto.SfcDispatchDto; import com.foreverwin.mesnac.common.enums.HandleEnum; import com.foreverwin.mesnac.common.service.SfcDispatchCommonService; @@ -20,10 +25,12 @@ import com.foreverwin.mesnac.meapi.model.RouterStep; import com.foreverwin.mesnac.meapi.service.NcCodeService; import com.foreverwin.mesnac.meapi.service.RouterService; import com.foreverwin.mesnac.meapi.service.RouterStepService; +import com.foreverwin.mesnac.meapi.util.StringUtils; import com.foreverwin.modular.core.util.FrontPage; import com.foreverwin.modular.core.util.R; import com.sap.me.frame.service.CommonMethods; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.i18n.LocaleContextHolder; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; @@ -61,6 +68,15 @@ public class AbnormalBillController { @Autowired private RouterStepService routerStepService; + @Autowired + private AbnormalBillDisposeService abnormalBillDisposeService; + + @Autowired + private AbnormalBillDisposeMapper abnormalBillDisposeMapper; + + @Autowired + private AbnormalPlanService abnormalPlanService; + /** * 根据id查询 * @@ -452,6 +468,32 @@ public class AbnormalBillController { } } + /** + * bpm响应处理 + * @param abnormalBill + * @return + */ + @PostMapping("/bpmResProcessing") + public ResultVo bpmResProcessing(String secretKey,AbnormalBill abnormalBill){ + if (!yunBpmConfig.secretKey.equals(secretKey)){ + return new ResultVo(ResultCode.FAILED,"秘钥错误"); + }else if (StringUtils.isBlank(abnormalBill.getAbnormalNo())){ + return new ResultVo(ResultCode.FAILED,"响应处理失败:异常单号为空"); + } + com.foreverwin.modular.core.util.CommonMethods.setSite("1000"); + com.foreverwin.modular.core.util.CommonMethods.setUser(abnormalBill.getResponseUser()); + AbnormalBill bill = new AbnormalBill(); + bill.setAbnormalNo(abnormalBill.getAbnormalNo()); + List abnormalBills = abnormalBillService.selectList(bill); + abnormalBills.get(0).setBpmSubmit("true"); + try{ + abnormalBillService.resProcessing(abnormalBills.get(0)); + return new ResultVo(ResultCode.SUCCESS,"BPM响应处理成功"); + }catch(Exception e){ + return new ResultVo(ResultCode.FAILED,"响应处理失败:" + e.getMessage()); + } + } + /** * bpm判责提交 * @param abnormalBill @@ -478,6 +520,131 @@ public class AbnormalBillController { } } + /** + * bpm异常取消 + * @param secretKey + * @param abnormalBill + * @return + */ + @PostMapping("/bpmCancelBrowse") + public ResultVo bpmCancelBrowse(String secretKey,AbnormalBill abnormalBill){ + if (!yunBpmConfig.secretKey.equals(secretKey)){ + return new ResultVo(ResultCode.FAILED,"秘钥错误"); + }else if (StringUtils.isBlank(abnormalBill.getAbnormalNo())){ + return new ResultVo(ResultCode.FAILED,"BPM取消失败:异常单号为空"); + } + try{ + LocalDateTime now = LocalDateTime.now(); + AbnormalBill bill = new AbnormalBill(); + bill.setAbnormalNo(abnormalBill.getAbnormalNo()); + List abnormalBills = abnormalBillService.selectList(bill); + abnormalBills.get(0).setStatus(Constants.CANCEL); + abnormalBills.get(0).setCancelReason(abnormalBill.getCancelReason()); + abnormalBills.get(0).setCancelSendUserGroup("BPM_UserGroup"); + abnormalBills.get(0).setCancelUser(abnormalBill.getCancelUser()); + abnormalBills.get(0).setCancelDateTime(now); + abnormalBillService.saveOrUpdate(abnormalBills.get(0)); + return new ResultVo(ResultCode.SUCCESS,"BPM异常取消成功"); + }catch(Exception e){ + return new ResultVo(ResultCode.FAILED,"BPM取消失败:" + e.getMessage()); + } + } + + /** + * bpm异常修改 + * @param secretKey + * @param abnormalBill + * @return + */ + @PostMapping("/bpmAbnormalModify") + public ResultVo bpmAbnormalModify(String secretKey,AbnormalBill abnormalBill,AbnormalBillDispose abnormalBillDispose){ + com.foreverwin.modular.core.util.CommonMethods.setSite("1000"); + com.foreverwin.modular.core.util.CommonMethods.setUser(abnormalBill.getPbUser()); + if (!yunBpmConfig.secretKey.equals(secretKey)){ + return new ResultVo(ResultCode.FAILED,"秘钥错误"); + }else if (StringUtils.isBlank(abnormalBill.getAbnormalNo())){ + return new ResultVo(ResultCode.FAILED,"BPM异常修改:异常单号为空"); + } + try{ + LocalDateTime now = LocalDateTime.now(); + AbnormalBill bill = new AbnormalBill(); + bill.setAbnormalNo(abnormalBill.getAbnormalNo()); + List abnormalBills = abnormalBillService.selectList(bill); + abnormalBills.get(0).setPbDescription(abnormalBill.getPbDescription()); + abnormalBills.get(0).setNcQty(abnormalBill.getNcQty()); + abnormalBills.get(0).setDiscover(abnormalBill.getDiscover()); + abnormalBills.get(0).setPbGrade(abnormalBill.getPbGrade()); + abnormalBills.get(0).setPbUser(abnormalBill.getPbUser()); + abnormalBills.get(0).setInspector(abnormalBill.getInspector()); + abnormalBills.get(0).setEntityLocation(abnormalBill.getEntityLocation()); + abnormalBills.get(0).setPbQty(abnormalBill.getPbQty()); + abnormalBills.get(0).setModifiedUser(abnormalBill.getPbUser()); + abnormalBills.get(0).setModifiedDateTime(now); + abnormalBillService.saveOrUpdate(abnormalBills.get(0)); + AbnormalBillDispose dispose = new AbnormalBillDispose(); + dispose.setHandle(HandleEnum.ABNORMAL_BILL_DISPOSE.getHandle("1000",abnormalBill.getAbnormalNo())); + List abnormalBillDisposes = abnormalBillDisposeService.selectList(dispose); + abnormalBillDisposes.get(0).setDutyUser(abnormalBillDispose.getDutyUser()); + abnormalBillDisposes.get(0).setDutyDepart(abnormalBillDispose.getDutyDepart()); + abnormalBillDisposes.get(0).setDutyType(abnormalBillDispose.getDutyType()); + abnormalBillDisposes.get(0).setPrincipalUser(abnormalBillDispose.getPrincipalUser()); + abnormalBillDisposes.get(0).setDutyCauseDescription(abnormalBillDispose.getDutyCauseDescription()); + abnormalBillDisposes.get(0).setDutyCauseType(abnormalBillDispose.getDutyCauseType()); + abnormalBillDisposes.get(0).setModifiedUser(abnormalBill.getPbUser()); + abnormalBillDisposes.get(0).setModifiedDateTime(now); + abnormalBillDisposeService.saveOrUpdate(abnormalBillDisposes.get(0)); + return new ResultVo(ResultCode.SUCCESS,"BPM异常修改成功"); + }catch(Exception e){ + return new ResultVo(ResultCode.FAILED,"BPM异常修改失败:" + e.getMessage()); + } + } + + /** + * bpm闭环关闭 + * @param abnormalBill + * @param abnormalBillDispose + * @return + */ + @PostMapping("/bpmCorrectivePreventive") + public ResultVo bpmCorrectivePreventive(String secretKey,String isClose,AbnormalBill abnormalBill,AbnormalBillDispose abnormalBillDispose){ + com.foreverwin.modular.core.util.CommonMethods.setSite("1000"); + if (!yunBpmConfig.secretKey.equals(secretKey)){ + return new ResultVo(ResultCode.FAILED,"秘钥错误"); + }else if (StringUtils.isBlank(abnormalBill.getAbnormalNo())){ + return new ResultVo(ResultCode.FAILED,"异常单号为空"); + } + try{ + AbnormalBill aBill = new AbnormalBill(); + aBill.setAbnormalNo(abnormalBill.getAbnormalNo()); + LocalDateTime now = LocalDateTime.now(); + AbnormalBillDispose dispose = new AbnormalBillDispose(); + dispose.setHandle(HandleEnum.ABNORMAL_BILL_DISPOSE.getHandle("1000",abnormalBill.getAbnormalNo())); + List abnormalBillDisposes = abnormalBillDisposeService.selectList(dispose); + if ("true".equals(isClose)){ + try { + com.foreverwin.modular.core.util.CommonMethods.setUser(abnormalBillDispose.getClosedUser()); + List abnormalBills = abnormalBillService.selectList(aBill); + abnormalBills.get(0).setStatus(Constants.SHUT_DOWN); + String local = LocaleContextHolder.getLocale().getLanguage(); + AbnormalBillDisposeDto abnormalBillDisposeDto = abnormalBillDisposeMapper.findAllByAbnormalNo(abnormalBill, local); + abnormalPlanService.saveAbnormalPlan(abnormalBillDisposeDto,now); + abnormalBillService.saveOrUpdate(abnormalBills.get(0)); + abnormalBillDisposes.get(0).setClosedUser(abnormalBillDispose.getClosedUser()); + abnormalBillDisposes.get(0).setClosedDateTime(now); + return new ResultVo(ResultCode.SUCCESS,"bpm闭环关闭成功"); + } catch (Exception e) { + return new ResultVo(ResultCode.FAILED,"bpm闭环关闭失败:" + e.getMessage()); + } + } + abnormalBillDisposes.get(0).setAbnormalReason(abnormalBillDispose.getAbnormalReason()); + abnormalBillDisposes.get(0).setBeforeMeasure(abnormalBillDispose.getBeforeMeasure()); + abnormalBillDisposeService.saveOrUpdate(abnormalBillDisposes.get(0)); + }catch (Exception e){ + return new ResultVo(ResultCode.FAILED,"bpm纠正预防失败:" + e.getMessage()); + } + return new ResultVo(ResultCode.SUCCESS,"bpm纠正预防成功"); + } + /** * 质量异常响应检索 * @param abnormalBill diff --git a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AbnormalBillLogServiceImpl.java b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AbnormalBillLogServiceImpl.java index 9fb8b698..d1af6520 100644 --- a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AbnormalBillLogServiceImpl.java +++ b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AbnormalBillLogServiceImpl.java @@ -98,9 +98,9 @@ public class AbnormalBillLogServiceImpl extends ServiceImpl abnormalBills = abnormalBillService.selectList(aBill); @@ -116,7 +116,7 @@ public class AbnormalBillLogServiceImpl extends ServiceImpl质量BPM系统,修改失败"); } - } + }*/ if (!StringUtil.isBlank(abnormalBillDispose.getRouterBo())) { //分割该工艺路线 diff --git a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AbnormalBillServiceImpl.java b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AbnormalBillServiceImpl.java index 438e6d1e..ae1cb9b4 100644 --- a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AbnormalBillServiceImpl.java +++ b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AbnormalBillServiceImpl.java @@ -271,18 +271,14 @@ public class AbnormalBillServiceImpl extends ServiceImpl abnormalBillList = abnormalBillMapper.selectList(queryWrapper); if (abnormalBillList.size()>0){ AbnormalBill abnormalBilltop=abnormalBillList.get(0); - if (abnormalBilltop.getProgram().isEmpty()){ + if (StringUtils.isBlank(abnormalBilltop.getProgram())){ throw new BaseException("此SFC的上一个异常还没有进行方案确认,请联系工艺评审人员进行处理!"); } - - } + } } } - - - if(!StringUtils.isBlank(abnormalBill.getObjectBo())){ if("J".equals(abnormalBill.getReportFrom())){ abnormalBill.setObjectBo(HandleEnum.INSPECTION_TASK.getHandle(site,abnormalBill.getObjectBo())); @@ -304,19 +300,20 @@ public class AbnormalBillServiceImpl extends ServiceImpl productCategoryList = dataFieldListService.findDataFieldListById(dataField); for (int i = 0; i < productCategoryList.size(); i++) { String dataValue = JSONArray.toJSONString(productCategoryList.get(i)); HashMap fieldMap = JSON.parseObject(dataValue, HashMap.class); if (fieldMap.get("dataValue").equals(abnormalBill.getProductCategory())){ - abnormalBill.setProductCategory(fieldMap.get("description")); + // abnormalBill.setProductCategory(fieldMap.get("description")); } - } + }*/ List NcCodeGroupList = (List)abnormalBill.getNcCodeDesc().stream().map((e) -> { return e.split("/")[0]; }).collect(Collectors.toList()); @@ -328,11 +325,11 @@ public class AbnormalBillServiceImpl extends ServiceImpl abnormalNcCodes = new ArrayList<>(); @@ -377,7 +374,7 @@ public class AbnormalBillServiceImpl extends ServiceImpl