chenlu
2024-10-11 82a5de6d2ec80b45660149c84be28734032562f6
north-glass-erp/src/main/java/com/example/erp/service/pp/ReplenishService.java
@@ -4,6 +4,8 @@
import com.alibaba.fastjson.JSONObject;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.example.erp.dto.pp.PatchLogAddDTO;
import com.example.erp.dto.pp.PatchLogDTO;
import com.example.erp.entity.pp.FlowCard;
import com.example.erp.entity.pp.PatchLog;
import com.example.erp.entity.pp.ReportingWork;
@@ -50,13 +52,13 @@
    }
    public List<Map<String, Object>> getSelectReplenish(Integer pageNum, Integer pageSize) {
    public List<PatchLogAddDTO> getSelectReplenish(Integer pageNum, Integer pageSize,PatchLogAddDTO patchLogAddDTO) {
        Integer offset = (pageNum - 1) * pageSize;
        return patchMapper.getSelectReplenish(offset,pageSize);
        return patchMapper.getSelectReplenish(offset,pageSize,patchLogAddDTO);
    }
    public Map<String, Object> SelectReplenish(Integer pageNum, Integer pageSize,List<String> selectDate,PatchLog patchLog) {
    public Map<String, Object> SelectReplenish(Integer pageNum, Integer pageSize, List<String> selectDate, PatchLogDTO patchLogDTO) {
        Integer offset = (pageNum-1)*pageSize;
        String endDate = LocalDate.now().toString();
        String startDate = LocalDate.now().minusDays(15).toString();
@@ -69,8 +71,8 @@
            }
        }
        Map<String,Object> map = new HashMap<>();
        map.put("data",patchMapper.SelectReplenish(offset,pageSize,startDate,endDate,patchLog));
        map.put("total",patchMapper.SelectReplenishPageTotal(offset,pageSize,startDate,endDate,patchLog));
        map.put("data",patchMapper.SelectReplenish(offset,pageSize,startDate,endDate,patchLogDTO));
        map.put("total",patchMapper.SelectReplenishPageTotal(offset,pageSize,startDate,endDate,patchLogDTO));
        List<String> list = new ArrayList<>();
        list.add(startDate);
@@ -142,12 +144,25 @@
            List<PatchLog> patchLoglist = JSONArray.parseArray(JSONObject.toJSONString(object.get("patchLog")), PatchLog.class);
            if (!patchLoglist.isEmpty()){
                for (PatchLog patchLog : patchLoglist) {
                    //审核
                   patchMapper.updateReplenish(patchLog,userName);
                    ReportingWork reportingWork = reportingWorkMapper
                            .selectOne(new QueryWrapper<ReportingWork>().eq("reporting_work_id",patchLog.getReportingWorkId()));
                    //修改小片流程卡数量
                    patchMapper.updateOrderProcessDetail(patchLog,reportingWork);
                    PatchLog patchLog1=patchMapper.selectOne(new QueryWrapper<PatchLog>().eq("id",patchLog.getId()));
                    //判断是否已经审核
                    if(patchLog1.getReviewStatus()==0){
                        ReportingWork reportingWork = reportingWorkMapper
                                .selectOne(new QueryWrapper<ReportingWork>().eq("reporting_work_id",patchLog.getReportingWorkId()));
                        //修改小片流程卡数量
                        patchMapper.updateOrderProcessDetail(patchLog,reportingWork);
                        //审核
                        patchMapper.updateReplenish(patchLog,userName);
                    }else{
                        saveState = false;
                    }
                    Log log = new Log();
                    log.setContent(object.toString());
                    log.setFunction("updateReplenish补片审核");
                    log.setOperatorId((String) object.get("userId"));
                    log.setOperator((String) object.get("userName"));
                    logService.saveLog(log);
                }
            }
@@ -156,7 +171,7 @@
            //将异常传入数据库
            SysError sysError = new SysError();
            sysError.setError(e.toString());
            sysError.setFunc("saveOrder");
            sysError.setFunc("updateReplenish");
            sysErrorService.insert(sysError);
            saveState = false;
@@ -216,5 +231,118 @@
        map.put("title", flowCardMapper.getPrintTitle(type));
        return map;
    }
    public Boolean deleteReplenishSv(Map<String, Object> object) {
        boolean saveState = true;
        Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint();
        try {
            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<PatchLog> patchLoglist = JSONArray.parseArray(JSONObject.toJSONString(object.get("patchLog")), PatchLog.class);
            if (!patchLoglist.isEmpty()){
                for (PatchLog patchLog : patchLoglist) {
                    PatchLog patchLog1=patchMapper.selectOne(new QueryWrapper<PatchLog>().eq("id",patchLog.getId()));
                    //判断是否已经审核
                    if(patchLog1.getReviewStatus()==0){
                        //删除补片表对应补片id数据
                        patchMapper.deleteReplenishMp(patchLog1.getId());
                        //删除次破明细表
                        patchMapper.updatePatchDdMp(patchLog1.getReportingWorkId(),patchLog1.getOrderSort(),patchLog1.getTechnologyNumber(),patchLog1.getPatchNum(),patchLog1.getPatchReason());
                        //修改报工明细表状态
                        patchMapper.updatePatchBgMp(patchLog1.getReportingWorkId(),patchLog1.getOrderSort(),patchLog1.getTechnologyNumber());
                        //修改报工主表次破数量
                        reportingWorkMapper.updateRWPatchNum(patchLog1.getReportingWorkId(),patchLog1.getPatchNum());
                        //修改报工副表次破数量
                        reportingWorkMapper.updateRWDPatchNum(patchLog1.getReportingWorkId(),patchLog1.getOrderSort(),patchLog1.getTechnologyNumber(),patchLog1.getPatchNum());
                        //更新报工流程表数据
                        reportingWorkMapper.updateReplenishWorkProcess(patchLog1.getProcessId(),patchLog1.getOrderSort(),patchLog1.getTechnologyNumber(),patchLog1.getPatchNum(),patchLog1.getPatchProcesses());
                    }
                    else{
                        saveState = false;
                    }
                }
            }
        } catch (Exception e) {
            TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
            //将异常传入数据库
            SysError sysError = new SysError();
            sysError.setError(e.toString());
            sysError.setFunc("deleteReplenishSv");
            sysErrorService.insert(sysError);
            saveState = false;
        }
        return saveState;
    }
    public Boolean updateCancelReviewSv(Map<String, Object> object) {
        boolean saveState = true;
        Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint();
        //try {
            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<PatchLog> patchLoglist = JSONArray.parseArray(JSONObject.toJSONString(object.get("patchLog")), PatchLog.class);
            if (!patchLoglist.isEmpty()){
                for (PatchLog patchLog : patchLoglist) {
                    //查询流程卡工艺流程
                    String technologicalProcess = reportingWorkMapper.SelectTechnologicalProcess(patchLog.getProcessId(), String.valueOf(patchLog.getTechnologyNumber()));
                    if (technologicalProcess!=null || !technologicalProcess.equals("")) {
                        String[] processList = technologicalProcess.split("->");
                        //获取工艺流程第一个工序
                        String interceptProcess = processList[0];
                        Integer firstStep=reportingWorkMapper.getFirstStep(patchLog.getProcessId(),patchLog.getOrderSort(),patchLog.getTechnologyNumber(),interceptProcess);
                          if (firstStep>=patchLog.getPatchNum()){
                              ReportingWork reportingWork = reportingWorkMapper
                                      .selectOne(new QueryWrapper<ReportingWork>().eq("reporting_work_id",patchLog.getReportingWorkId()));
                              //修改小片流程卡数量
                              patchMapper.updateOrderProcessDetailCancel(patchLog,reportingWork);
                              //审核
                              patchMapper.updateReplenishCancel(patchLog);
                          }
                          else {
                              saveState = false;
                          }
                    }else{
                        saveState = false;
                    }
                    Log log = new Log();
                    log.setContent(object.toString());
                    log.setFunction("updateCancelReviewSv补片反审");
                    log.setOperatorId((String) object.get("userId"));
                    log.setOperator((String) object.get("userName"));
                    logService.saveLog(log);
                }
            }
//        } catch (Exception e) {
//            TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint);
//            //将异常传入数据库
//            SysError sysError = new SysError();
//            sysError.setError(e.toString());
//            sysError.setFunc("updateCancelReviewSv");
//            sysErrorService.insert(sysError);
//            saveState = false;
//
//        }
        return saveState;
    }
}