소스 검색

Merge remote-tracking branch 'origin/master'

zx 1 년 전
부모
커밋
9296941f58

+ 14 - 5
src/main/java/cn/ezhizao/project/business/controller/BizDayworkController.java

@@ -40,6 +40,9 @@ public class BizDayworkController extends BaseController {
     @Resource
     private IBizTechnologicalProcessDetailService bizTechnologicalProcessDetailService;
 
+    @Resource
+    private IBizTechnologicalAmendDetailService bizTechnologicalAmendDetailService;
+
     @Resource
     private IBizDayworkCarrierService bizDayworkCarrierService;
 
@@ -154,18 +157,24 @@ public class BizDayworkController extends BaseController {
                     item=null;
                 }
 
-                //如果不是单批单改则查询标准工艺信息
-                if(lot.getIsAmend()==0){
+                //是否单批单改
+                if(lot.getIsAmend()==1){
+                    BizTechnologicalAmendDetail amendDetail =new BizTechnologicalAmendDetail();
+                    amendDetail.setTechnologicalAmendId(lot.getTechnologicalProcessId());
+                    List<BizTechnologicalAmendDetail> amendDetailList=bizTechnologicalAmendDetailService.getList(amendDetail);
+                    map.put("processDetails",amendDetailList);
+                } else if (lot.getIsWasteRecycling()==1) { //是否废品回用
+                    
+                }else{
                     //查询工序列表
                     List<BizTechnologicalProcessDetail>  processDetails=bizTechnologicalProcessDetailService.getProcessDetailsByTechnicalProcessId(lot.getTechnologicalProcessId());
                     map.put("processDetails",processDetails);
-                    map.put("dayworkItem",item);
-                    map.put("lot",lot);
                 }
+                map.put("dayworkItem",item);
+                map.put("lot",lot);
             }else{
                 throw new RuntimeException("未查询到该批次信息!");
             }
-            //如果是单批单改则查询单批单改工艺信息
         } catch (Exception e) {
             throw new RuntimeException("批次信息异常!");
         }

+ 273 - 55
src/main/java/cn/ezhizao/project/business/controller/BizTechnologicalAmendController.java

@@ -15,7 +15,11 @@ import cn.ezhizao.framework.web.page.TableDataInfo;
 import cn.ezhizao.project.business.domain.*;
 import cn.ezhizao.project.business.service.*;
 import cn.ezhizao.project.system.service.ISysDeptService;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import lombok.Data;
+import org.apache.poi.ss.formula.functions.T;
+import org.springframework.cloud.client.loadbalancer.RequestData;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -73,12 +77,27 @@ public class BizTechnologicalAmendController extends BaseController {
     @Resource
     private IBizLotWasteService bizLotWasteService;
 
+    @Resource
+    private IBizTechnologicalWasteRecyclingService bizTechnologicalWasteRecyclingService;
+
+    @Resource
+    private IBizTechnologicalWasteRecyclingDetailService bizTechnologicalWasteRecyclingDetailService;
+
     @Resource
     private IBizProductionPlanDetailSubDetailService bizProductionPlanDetailSubDetailService;
 
     @Resource
     private IBizDayworkItemService bizDayworkItemService;
 
+    // 静态内部类 RequestData
+    @Data
+    public static class RequestData {
+
+        private List<BizLot> lotList;
+        private List<BizTechnologicalProcessDetail> processList;
+
+    }
+
     /**
      * 查询修改后工艺列表
      */
@@ -94,13 +113,30 @@ public class BizTechnologicalAmendController extends BaseController {
     /**
      * 查询工序数据
      */
-    @PreAuthorize("@ss.hasPermi('business:amend:processList')")
     @GetMapping("/processList")
     public TableDataInfo processList(BizProcess process) throws NoSuchFieldException, IllegalAccessException {
+        startPage();
         return getDataTable(bizProcessService.getList(process));
     }
 
+    /**
+     * 查询工序数据
+     */
+    @GetMapping("/standardProcess/{processId}")
+    public TableDataInfo standardProcess(@PathVariable("processId") Long processId) throws NoSuchFieldException, IllegalAccessException {
+        BizTechnologicalAmend amend = bizTechnologicalAmendService.getById(processId);
+
+        return getDataTable(bizTechnologicalProcessDetailService.getProcessDetailsByTechnicalProcessId(amend.getTechnologicalProcessId()));
+    }
 
+    /**
+     * 查询批次信息
+     *
+     * @param lotCode
+     * @return
+     * @throws NoSuchFieldException
+     * @throws IllegalAccessException
+     */
     @GetMapping("/lotParticulars/{lotCode}")
     public AjaxResult lotParticulars(@PathVariable("lotCode") String lotCode) throws NoSuchFieldException, IllegalAccessException {
         //根据查询批次信息
@@ -112,38 +148,47 @@ public class BizTechnologicalAmendController extends BaseController {
             throw new RuntimeException("批次信息异常!");
         }
         //查询批废
-        BizLotWaste lotWaste= bizLotWasteService.query().eq("lot_id",lot.getId()).eq("deleted",0).one();
+        BizLotWaste lotWaste = bizLotWasteService.query().eq("lot_id", lot.getId()).eq("deleted", 0).one();
         lot.setLotWaste(lotWaste);
         //查询计划单信息
         lot.setProductionPlanDetail(bizProductionPlanDetailService.getById(lot.getProductionPlanDetailId()));
         //查询报工信息
         BizDaywork daywork = new BizDaywork();
         daywork.setLotId(lot.getId());
-        daywork = bizDayworkService.getList(daywork).get(0);
-        lot.setDaywork(daywork);
-        //根据报工id和计划单id查询 furnaceNoInfo
-        BizFurnaceNoInfo furnaceNoInfo = new BizFurnaceNoInfo();
-        furnaceNoInfo.setProductionPlanDetailId(lot.getProductionPlanDetailId());
-        furnaceNoInfo.setDayworkId(daywork.getId());
-
-        //查询箱号
-        BizDayworkCarrier dayworkCarrier = new BizDayworkCarrier();
-        dayworkCarrier.setDayworkId(daywork.getId());
-        dayworkCarrier.setIsChanged(0);
-        List<BizDayworkCarrier> dayworkCarriers = bizDayworkCarrierService.getList(dayworkCarrier);
-        StringBuffer carrierName = new StringBuffer();
-        dayworkCarriers.forEach(item -> {
-            carrierName.append(item.getCarrierCode()).append(", ");
-        });
-        // 删除末尾多余的逗号和空格
-        if (carrierName.length() > 0) {
-            carrierName.delete(carrierName.length() - 2, carrierName.length());
+        List<BizDaywork> dayworks=  bizDayworkService.getList(daywork);
+        if(dayworks.size()>0){
+            daywork = bizDayworkService.getList(daywork).get(0);
+            lot.setDaywork(daywork);
+            //根据报工id和计划单id查询 furnaceNoInfo
+            BizFurnaceNoInfo furnaceNoInfo = new BizFurnaceNoInfo();
+            furnaceNoInfo.setProductionPlanDetailId(lot.getProductionPlanDetailId());
+            furnaceNoInfo.setDayworkId(daywork.getId());
+
+            //查询箱号
+            BizDayworkCarrier dayworkCarrier = new BizDayworkCarrier();
+            dayworkCarrier.setDayworkId(daywork.getId());
+            dayworkCarrier.setIsChanged(0);
+            List<BizDayworkCarrier> dayworkCarriers = bizDayworkCarrierService.getList(dayworkCarrier);
+            StringBuffer carrierName = new StringBuffer();
+            dayworkCarriers.forEach(item -> {
+                carrierName.append(item.getCarrierCode()).append(", ");
+            });
+            // 删除末尾多余的逗号和空格
+            if (carrierName.length() > 0) {
+                carrierName.delete(carrierName.length() - 2, carrierName.length());
+            }
+            lot.setCarrierName(carrierName.toString());
+            //设置furnaceNoInfo
+            lot.setFurnaceNoInfo(bizFurnaceNoInfoService.getList(furnaceNoInfo).size() > 0 ? bizFurnaceNoInfoService.getList(furnaceNoInfo).get(0) : new BizFurnaceNoInfo());
+            lot.getProductionPlanDetail().setRequisitionDepartmentName(sysDeptService.selectDeptById(daywork.getDeptId()).getDeptName());
+
+        }else{
+            lot.setFurnaceNoInfo(new BizFurnaceNoInfo());
+            lot.getProductionPlanDetail().setRequisitionDepartmentName("");
         }
-        lot.setCarrierName(carrierName.toString());
-        //设置furnaceNoInfo
-        lot.setFurnaceNoInfo(bizFurnaceNoInfoService.getList(furnaceNoInfo).size() > 0 ? bizFurnaceNoInfoService.getList(furnaceNoInfo).get(0) : new BizFurnaceNoInfo());
-        lot.getProductionPlanDetail().setRequisitionDepartmentName(sysDeptService.selectDeptById(daywork.getDeptId()).getDeptName());
-        lot = getLot(lot);
+
+        //查询工序信息
+        lot = selectProcess(lot);
 
         return success(lot);
     }
@@ -151,21 +196,73 @@ public class BizTechnologicalAmendController extends BaseController {
     /**
      * 查询工序信息
      */
-    private BizLot getLot(BizLot lot) throws NoSuchFieldException, IllegalAccessException {
+    private BizLot selectProcess(BizLot lot) throws NoSuchFieldException, IllegalAccessException {
 
         BizTechnologicalProcessDetail processDetail = new BizTechnologicalProcessDetail();
+        List<BizTechnologicalProcessDetail> processDetailList = new ArrayList<>();
 
         //是否单批单改
         if (lot.getIsAmend() == 1) {
-
+            //查询更改后的数据
+            BizTechnologicalAmendDetail amendDetail = new BizTechnologicalAmendDetail();
+            amendDetail.setTechnologicalAmendId(lot.getTechnologicalProcessId());
+            List<BizTechnologicalAmendDetail> amendDetailList = bizTechnologicalAmendDetailService.getList(amendDetail);
+
+            for (BizTechnologicalAmendDetail item : amendDetailList) {
+                BizTechnologicalProcessDetail process = new BizTechnologicalProcessDetail();
+                process.setProcessId(item.getProcessId());
+                process.setProcessStepNumber(item.getProcessStepNumber());
+                process.setProcessCode(item.getProcessCode());
+                process.setProcessAlias(item.getProcessAlias());
+                process.setProcessKey(item.getProcessKey());
+                process.setProductShaftCategory(item.getProductShaftCategory());
+                process.setProductShaftCategoryName(item.getProductShaftCategoryName());
+                process.setTechnologicalProcessId(item.getTechnologicalAmendId());
+                process.setProductId(item.getProductId());
+                process.setProductDescription(item.getProductDescription());
+                processDetailList.add(process);
+            }
         } else if (lot.getIsWasteRecycling() == 1) { //是否废品回用
-
+            BizTechnologicalWasteRecyclingDetail wasteRecyclingDetail = new BizTechnologicalWasteRecyclingDetail();
+            wasteRecyclingDetail.setTechnologicalWasteRecyclingId(lot.getTechnologicalProcessId());
+            List<BizTechnologicalWasteRecyclingDetail> processList = bizTechnologicalWasteRecyclingDetailService.getList(wasteRecyclingDetail);
+
+            for (BizTechnologicalWasteRecyclingDetail item : processList) {
+                BizTechnologicalProcessDetail process = new BizTechnologicalProcessDetail();
+                process.setProcessId(item.getProcessId());
+                process.setProcessStepNumber(item.getProcessStepNumber());
+                process.setProcessCode(item.getProcessCode());
+                process.setProcessAlias(item.getProcessAlias());
+                process.setProcessKey(item.getProcessKey());
+                process.setProductShaftCategory(item.getProductShaftCategory());
+                process.setProductShaftCategoryName(item.getProductShaftCategoryName());
+                process.setTechnologicalProcessId(item.getTechnologicalWasteRecyclingId());
+                process.setProductId(item.getProductId());
+                process.setProductDescription(item.getProductDescription());
+                processDetailList.add(process);
+            }
         } else {
             //查询工序信息
             processDetail.setTechnologicalProcessId(lot.getTechnologicalProcessId());
-            List<BizTechnologicalProcessDetail> processDetailList = bizTechnologicalProcessDetailService.query().eq("technological_process_id", lot.getTechnologicalProcessId()).list();
-            //查询报工信息
-            BizDayworkItem item = new BizDayworkItem();
+            processDetailList = bizTechnologicalProcessDetailService.getProcessDetailsByTechnicalProcessId(lot.getTechnologicalProcessId());
+
+        }
+
+        //查询报工信息
+        lot.setTechnologicalProcessDetailList(selectDayworkItem(processDetailList, lot));
+        return lot;
+    }
+
+    /**
+     * 查询报工信息
+     *
+     * @param processDetailList
+     * @param lot
+     */
+    private List<BizTechnologicalProcessDetail> selectDayworkItem(List<BizTechnologicalProcessDetail> processDetailList, BizLot lot) {
+        //查询报工信息
+        BizDayworkItem item = new BizDayworkItem();
+        if(lot.getDaywork()!=null){
             item.setDayworkId(lot.getDaywork().getId());
             List<BizDayworkItem> dayworkItems = bizDayworkItemService.selectList(item);
 
@@ -178,16 +275,22 @@ public class BizTechnologicalAmendController extends BaseController {
                     t.setStatus("2");
                 }
                 for (BizDayworkItem d : dayworkItems) {
+
+                    //如果是单批单改只查询FormDayworkItemId为0的数据
+                    if (lot.getIsAmend() == 1 && d.getFormDayworkItemId() == 0) {
+                        continue;
+                    }
+
                     //根据工序判断,查询每道工序的报工信息
                     if (t.getProcessId().equals(d.getProcessId())) {
                         //查询状态为完成货工序已完成的状态,计算合格量,废品,投入量
-                        if(d.getStatus().equals("2")||d.getStatus().equals("3")){
-                            if(d.getRejectNum()!=null){
-                                t.setAbandonNum(t.getAbandonNum()==null?d.getRejectNum():t.getAbandonNum() + d.getRejectNum());
-                            }else {
+                        if (d.getStatus().equals("2") || d.getStatus().equals("3")) {
+                            if (d.getRejectNum() != null) {
+                                t.setAbandonNum(t.getAbandonNum() == null ? d.getRejectNum() : t.getAbandonNum() + d.getRejectNum());
+                            } else {
                                 t.setAbandonNum(0);
                             }
-                            t.setQualifiedNum(t.getQualifiedNum()==null?d.getQualifiedNum():t.getQualifiedNum() + d.getQualifiedNum());
+                            t.setQualifiedNum(t.getQualifiedNum() == null ? d.getQualifiedNum() : t.getQualifiedNum() + d.getQualifiedNum());
                             t.setInvestNum(d.getProdNum());
                         }
                         //未开始时合格量默,废品默认为0
@@ -206,23 +309,22 @@ public class BizTechnologicalAmendController extends BaseController {
                             t.setStatus("2");
                         }
                         //设置当前批次状态,当第一道序(不包括备料)状态为未开始时批次状态为未开始
-                        if(processDetailList.get(1).getProcessId().equals(t.getProcessId())&&d.getStatus().equals("0")){
+                        if (processDetailList.get(1).getProcessId().equals(t.getProcessId()) && d.getStatus().equals("0")) {
                             lot.getDaywork().setStatus(0);
-                        } else if(processDetailList.get(processDetailList.size() - 1).getProcessId().equals(d.getProcessId())){
+                        } else if (processDetailList.get(processDetailList.size() - 1).getProcessId().equals(d.getProcessId())) {
                             //最后一道工序如果状态为不是"未开始,进行中,已完成"当前批次已完成
-                            if(!d.getStatus().equals("1")&&!d.getStatus().equals("2")&&!d.getStatus().equals("0")){
+                            if (!d.getStatus().equals("1") && !d.getStatus().equals("2") && !d.getStatus().equals("0")) {
                                 lot.getDaywork().setStatus(2);
                             }
-                        }else{
-                            //当前批次已完成
+                        } else {
+                            //当前批次进行中
                             lot.getDaywork().setStatus(1);
                         }
                     }
                 }
             }
-            lot.setTechnologicalProcessDetailList(processDetailList);
         }
-        return lot;
+        return processDetailList;
     }
 
     /**
@@ -238,21 +340,101 @@ public class BizTechnologicalAmendController extends BaseController {
         util.exportExcel(response, list, "修改后工艺数据");
     }
 
+
+    @Log(title = "多批单改", businessType = BusinessType.INSERT)
+    @PostMapping("/addMultiAmend")
+    @Transactional
+    public AjaxResult addMultiAmend(@RequestBody RequestData requestData) {
+        List<BizLot> lotList = requestData.getLotList();
+        List<BizLot> newLotList=new ArrayList<>();
+        List<BizTechnologicalProcessDetail> processDetailList = requestData.getProcessList();
+        for (BizLot item : lotList) {
+            BizLot lot = new BizLot();
+            lot.setLotCode(item.getLotCode());
+            lot = bizLotService.getList(lot).get(0);
+
+            BizTechnologicalProcess technologicalProcess = new BizTechnologicalProcess();
+            //新增修改后工艺信息
+            BizTechnologicalAmend amend = new BizTechnologicalAmend();
+            amend.setTenantId(lot.getTenantId());
+            amend.setLotId(lot.getId());
+            amend.setLotCode(lot.getLotCode());
+            amend.setProductionPlanId(lot.getProductionPlanId());
+            amend.setProductionPlanDetailId(lot.getProductionPlanDetailId());
+            amend.setProductId(lot.getProductId());
+            amend.setAmendmentVersions(1);
+            amend.setTechnologicalProcessId(lot.getTechnologicalProcessId());
+            amend.setTechnologyVersion(lot.getTechnologyVersion());
+            amend.setProductDrawingNumber(technologicalProcess.getProductDrawingNumber());
+            amend.setProductShaftCategory(technologicalProcess.getProductShaftCategory());
+            amend.setProductSpecification(technologicalProcess.getProductSpecification());
+            amend.setProductShaftCategoryName(technologicalProcess.getProductShaftCategoryName());
+            amend.setProductCode(technologicalProcess.getProductCode());
+            amend.setProductDescription(technologicalProcess.getProductDescription());
+            bizTechnologicalAmendService.save(amend);
+
+            List<BizTechnologicalAmendDetail> amendDetailList = new ArrayList<>();
+
+            for (BizTechnologicalProcessDetail detail : processDetailList) {
+                BizTechnologicalAmendDetail amendDetail = new BizTechnologicalAmendDetail();
+                amendDetail.setTechnologicalAmendId(amend.getId());
+                amendDetail.setTenantId(amend.getTenantId());
+                amendDetail.setTechnologyVersion(amend.getTechnologyVersion());
+                amendDetail.setProductId(amend.getProductId());
+                amendDetail.setProductCode(amend.getProductCode());
+                amendDetail.setProcessStepNumber(detail.getProcessStepNumber());
+                amendDetail.setProcessId(detail.getProcessId());
+                amendDetail.setProcessKey(detail.getProcessKey());
+                amendDetail.setProcessCode(detail.getProcessCode());
+                amendDetail.setProcessAlias(detail.getProcessAlias());
+                amendDetail.setProductShaftCategory(amend.getProductShaftCategory());
+                amendDetail.setProductShaftCategoryName(amend.getProductShaftCategoryName());
+                amendDetail.setProductDescription(amend.getProductDescription());
+                amendDetailList.add(amendDetail);
+            }
+            updateDayworkItem(item.getId(), amend.getId());
+
+            //修改批次工艺信息
+            lot.setTechnologicalProcessId(amend.getId());
+            lot.setIsAmend(1);
+            bizTechnologicalAmendDetailService.saveBatch(amendDetailList) ;
+            newLotList.add(lot);
+//            bizLotService.updateById(lot);
+        }
+        return success(bizLotService.saveOrUpdateBatch(newLotList));
+    }
+
     /**
      * 新增修改后工艺
      */
-    @Log(title = "修改后工艺", businessType = BusinessType.INSERT)
+    @Log(title = "单批单改", businessType = BusinessType.INSERT)
     @PostMapping("/addAmend/{lotId}")
     @Transactional
-    public AjaxResult addAmend(@PathVariable("lotId") Long lotId, @RequestBody List<BizProcess> processList) {
+    public AjaxResult addAmend(@PathVariable("lotId") Long lotId, @RequestBody List<BizTechnologicalProcessDetail> detailList) {
         //根据id查询批次信息
         BizLot lot = bizLotService.getById(lotId);
-
         BizTechnologicalProcess technologicalProcess = new BizTechnologicalProcess();
+
+        int num = 0;//修改过的次数
+
         //是否进行过单批单改
         if (lot.getIsAmend() == 1) {
+            //查询单批单改信息
             BizTechnologicalAmend technologicalAmend = bizTechnologicalAmendService.getById(lot.getTechnologicalProcessId());
+
+            //先将lot的工艺id设置为原始工艺id,为了给新改的原始工艺赋值
+            lot.setTechnologicalProcessId(technologicalAmend.getTechnologicalProcessId());
+            //查询修改过几次
+            List<BizTechnologicalAmend> list = bizTechnologicalAmendService.selectUpdateList(lot.getId());
+            num = list.size();
+            //设为停用
+            technologicalAmend.setIsStop(1);
+            bizTechnologicalAmendService.saveOrUpdate(technologicalAmend);
+            //查询原始工艺信息
             technologicalProcess = bizTechnologicalProcessService.getById(technologicalAmend.getTechnologicalProcessId());
+        } else if (lot.getIsWasteRecycling() == 1) { //是否废品回用
+            BizTechnologicalWasteRecycling wasteRecycling = bizTechnologicalWasteRecyclingService.getById(lot.getTechnologicalProcessId());
+            technologicalProcess = bizTechnologicalProcessService.getById(wasteRecycling.getTechnologicalProcessId());
         } else {
             technologicalProcess = bizTechnologicalProcessService.getById(lot.getTechnologicalProcessId());
         }
@@ -265,6 +447,7 @@ public class BizTechnologicalAmendController extends BaseController {
         amend.setProductionPlanId(lot.getProductionPlanId());
         amend.setProductionPlanDetailId(lot.getProductionPlanDetailId());
         amend.setProductId(lot.getProductId());
+        amend.setAmendmentVersions(num + 1);//设置版本号为修改次数+1
         amend.setTechnologicalProcessId(lot.getTechnologicalProcessId());
         amend.setTechnologyVersion(lot.getTechnologyVersion());
         amend.setProductDrawingNumber(technologicalProcess.getProductDrawingNumber());
@@ -276,25 +459,25 @@ public class BizTechnologicalAmendController extends BaseController {
         bizTechnologicalAmendService.save(amend);
 
         List<BizTechnologicalAmendDetail> amendDetailList = new ArrayList<>();
-        int num = 1100;//新增工序排序值
-        //新增工序信息
-        for (BizProcess process : processList) {
+
+        for (BizTechnologicalProcessDetail detail : detailList) {
             BizTechnologicalAmendDetail amendDetail = new BizTechnologicalAmendDetail();
             amendDetail.setTechnologicalAmendId(amend.getId());
             amendDetail.setTenantId(amend.getTenantId());
             amendDetail.setTechnologyVersion(amend.getTechnologyVersion());
             amendDetail.setProductId(amend.getProductId());
             amendDetail.setProductCode(amend.getProductCode());
-            amendDetail.setProcessStepNumber(Integer.toString(num));
-            amendDetail.setProcessId(process.getId());
-            amendDetail.setProcessKey(process.getProcessKey());
-            amendDetail.setProcessCode(process.getProcessCode());
-            amendDetail.setProcessAlias(process.getProcessAlias());
+            amendDetail.setProcessStepNumber(detail.getProcessStepNumber());
+            amendDetail.setProcessId(detail.getProcessId());
+            amendDetail.setProcessKey(detail.getProcessKey());
+            amendDetail.setProcessCode(detail.getProcessCode());
+            amendDetail.setProcessAlias(detail.getProcessAlias());
             amendDetail.setProductShaftCategory(amend.getProductShaftCategory());
             amendDetail.setProductShaftCategoryName(amend.getProductShaftCategoryName());
             amendDetail.setProductDescription(amend.getProductDescription());
             amendDetailList.add(amendDetail);
         }
+        updateDayworkItem(lotId, amend.getId());
 
         //修改批次工艺信息
         lot.setTechnologicalProcessId(amend.getId());
@@ -302,6 +485,41 @@ public class BizTechnologicalAmendController extends BaseController {
         return success(bizTechnologicalAmendDetailService.saveBatch(amendDetailList) && bizLotService.updateById(lot));
     }
 
+    /**
+     * 修改报工信息,将原先的报工信息复制出来
+     *
+     * @param lotId
+     */
+    private void updateDayworkItem(Long lotId, Long amendId) {
+        //查询Daywork数据
+        BizDaywork daywork = bizDayworkService.query().eq("lot_id", lotId).one();
+        if (daywork != null) {
+            //设置批次工艺信息
+            daywork.setTechnologicalProcessId(amendId);
+            //修改报工
+            bizDayworkService.saveOrUpdate(daywork);
+            //查询DayworkItem数据
+            List<BizDayworkItem> dayworkItemList = bizDayworkItemService.getList(new BizDayworkItem().setDayworkId(daywork.getId()));
+            //新增DayworkItem数据
+            List<BizDayworkItem> newDayworkItemList = new ArrayList<>();
+            for (BizDayworkItem dayworkItem : dayworkItemList) {
+                //查询工序信息
+                if (!dayworkItem.getStatus().equals("0")) {
+                    BizDayworkItem newDayworkItem = dayworkItem;
+                    newDayworkItem.setFormDayworkItemId(dayworkItem.getId());
+                    newDayworkItem.setTechnologicalProcessId(amendId);
+                    newDayworkItem.setId(null);
+                    //新增报工信息
+                    newDayworkItemList.add(newDayworkItem);
+                }
+            }
+            if (newDayworkItemList.size() > 0) {
+                //插入报工信息
+                bizDayworkItemService.saveBatch(newDayworkItemList);
+            }
+        }
+    }
+
     /**
      * 获取修改后工艺详细信息
      */

+ 4 - 0
src/main/java/cn/ezhizao/project/business/domain/BizDayworkItem.java

@@ -154,6 +154,10 @@ public class BizDayworkItem extends BaseEntity {
     @TableField(exist = false)
     private List<BizProcess> processSequence;
 
+    /** 来源Id */
+    @ApiModelProperty(value = "来源Id")
+    private Long formDayworkItemId;
+
     /**下到序 */
     @TableField(exist = false)
     private BizProcess nextProcess;

+ 4 - 0
src/main/java/cn/ezhizao/project/business/domain/BizTechnologicalAmend.java

@@ -92,4 +92,8 @@ public class BizTechnologicalAmend extends BaseEntity
     @ApiModelProperty(value = "是否停用(0 否,1 是)")
     private Integer isStop;
 
+    @Excel(name = "修改版本(第几次修改此批工艺)")
+    @ApiModelProperty(value = "修改版本(第几次修改此批工艺)")
+    private Integer amendmentVersions;
+
 }

+ 17 - 0
src/main/java/cn/ezhizao/project/business/mapper/BizTechnologicalAmendMapper.java

@@ -1,6 +1,8 @@
 package cn.ezhizao.project.business.mapper;
 
 import java.util.List;
+
+import cn.ezhizao.project.business.domain.BizTechnologicalAmendDetail;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import cn.ezhizao.project.business.domain.BizTechnologicalAmend;
 
@@ -26,4 +28,19 @@ public interface BizTechnologicalAmendMapper extends BaseMapper<BizTechnological
      * @return 删除结果
     */
     public int physicalDelete(BizTechnologicalAmend bizTechnologicalAmend);
+
+    /**
+     * 根据id查询
+     * @param id
+     * @return
+     */
+    BizTechnologicalAmend getById(Long id);
+
+
+    /**
+     * 根据lotId查询历史修改工艺
+     * @param lotId
+     * @return
+     */
+    List<BizTechnologicalAmend> selectUpdateList(Long lotId);
 }

+ 2 - 0
src/main/java/cn/ezhizao/project/business/service/IBizTechnologicalAmendDetailService.java

@@ -27,4 +27,6 @@ public interface IBizTechnologicalAmendDetailService extends IService<BizTechnol
      */
     public int physicalDelete(BizTechnologicalAmendDetail bizTechnologicalAmendDetail);
 
+
+
 }

+ 17 - 0
src/main/java/cn/ezhizao/project/business/service/IBizTechnologicalAmendService.java

@@ -1,6 +1,8 @@
 package cn.ezhizao.project.business.service;
 
 import java.util.List;
+
+import cn.ezhizao.project.business.domain.BizTechnologicalAmendDetail;
 import com.baomidou.mybatisplus.extension.service.IService;
 import cn.ezhizao.project.business.domain.BizTechnologicalAmend;
 
@@ -27,4 +29,19 @@ public interface IBizTechnologicalAmendService extends IService<BizTechnological
      */
     public int physicalDelete(BizTechnologicalAmend bizTechnologicalAmend);
 
+
+    /**
+     * 根据id 查询数据
+     * @param id
+     * @return
+     */
+    BizTechnologicalAmend getById(Long id);
+
+    /**
+     * 根据批次ID查询历史修改工艺
+     * @param lotId
+     * @return
+     */
+    List<BizTechnologicalAmend> selectUpdateList(Long lotId);
+
 }

+ 14 - 1
src/main/java/cn/ezhizao/project/business/service/impl/BizTechnologicalAmendServiceImpl.java

@@ -2,6 +2,8 @@ package cn.ezhizao.project.business.service.impl;
 
 import java.util.List;
 import javax.annotation.Resource;
+
+import cn.ezhizao.project.business.domain.BizTechnologicalAmendDetail;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 import cn.ezhizao.project.business.mapper.BizTechnologicalAmendMapper;
@@ -38,6 +40,17 @@ public class BizTechnologicalAmendServiceImpl  extends ServiceImpl<BizTechnologi
      * @return 删除结果
      */
     @Override
-    public int physicalDelete(BizTechnologicalAmend bizTechnologicalAmend){ return bizTechnologicalAmendMapper.physicalDelete(bizTechnologicalAmend); };
+    public int physicalDelete(BizTechnologicalAmend bizTechnologicalAmend){ return bizTechnologicalAmendMapper.physicalDelete(bizTechnologicalAmend); }
+
+    @Override
+    public BizTechnologicalAmend getById(Long id) {
+        return bizTechnologicalAmendMapper.getById(id);
+    }
+
+    @Override
+    public List<BizTechnologicalAmend> selectUpdateList(Long lotId) {
+        return bizTechnologicalAmendMapper.selectUpdateList(lotId);
+    }
+
 
 }

+ 2 - 2
src/main/resources/application.yml

@@ -50,8 +50,8 @@ spring:
   cloud:
     nacos:
       discovery:
-        server-addr: 192.168.10.40:8848 # Nacos服务器地址
-#        server-addr: 120.46.159.163:7148 # Nacos服务器地址
+#        server-addr: 192.168.10.40:8848 # Nacos服务器地址
+        server-addr: 120.46.159.163:7148 # Nacos服务器地址
         namespace: ezhizao_dms # 命名空间
         #config:
         #server-addr: 114.116.195.82:8848 # Nacos服务器地址

+ 2 - 9
src/main/resources/mybatis/business/BizTechnologicalAmendDetailMapper.xml

@@ -13,15 +13,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         SELECT * FROM biz_technological_amend_detail
         <trim prefix=" WHERE" suffix="" suffixOverrides="AND">
             deleted = 0
-            <if test="technologyVersion != null  and technologyVersion != ''"> AND technology_version = #{technologyVersion}</if>
-            <if test="productCode != null  and productCode != ''"> AND product_code = #{productCode}</if>
-            <if test="processStepNumber != null  and processStepNumber != ''"> AND process_step_number = #{processStepNumber}</if>
-            <if test="processKey != null  and processKey != ''"> AND process_key = #{processKey}</if>
-            <if test="processCode != null  and processCode != ''"> AND process_code = #{processCode}</if>
-            <if test="processAlias != null  and processAlias != ''"> AND process_alias = #{processAlias}</if>
-            <if test="productShaftCategory != null  and productShaftCategory != ''"> AND product_shaft_category = #{productShaftCategory}</if>
-            <if test="productShaftCategoryName != null  and productShaftCategoryName != ''"> AND product_shaft_category_name like concat('%', #{productShaftCategoryName}, '%')</if>
-            <if test="productDescription != null  and productDescription != ''"> AND product_description = #{productDescription}</if>
+            <if test="technologicalAmendId != null">AND technological_amend_id = #{technologicalAmendId}</if>
+
         </trim>
     </select>
 

+ 20 - 1
src/main/resources/mybatis/business/BizTechnologicalAmendMapper.xml

@@ -13,12 +13,31 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         SELECT * FROM biz_technological_amend
         <trim prefix=" WHERE" suffix="" suffixOverrides="AND">
             deleted = 0
+            AND is_stop = 0
             <if test="lotCode != null  and lotCode != ''"> AND lot_code = #{lotCode}</if>
             <if test="technologyVersion != null  and technologyVersion != ''"> AND technology_version = #{technologyVersion}</if>
-            <if test="isStop != null "> AND is_stop = #{isStop}</if>
         </trim>
     </select>
 
+    <select id="getById" parameterType="Long" resultMap="BizTechnologicalAmendResult">
+        SELECT * FROM biz_technological_amend
+        <trim prefix=" WHERE" suffix="" suffixOverrides="AND">
+            <if test="id != null">
+                id = #{id} AND
+            </if>
+        </trim>
+    </select>
+
+    <select id="selectUpdateList" parameterType="Long" resultMap="BizTechnologicalAmendResult">
+        SELECT * FROM biz_technological_amend
+        <trim prefix=" WHERE" suffix="" suffixOverrides="AND">
+            <if test="lotId != null">
+                lot_id = #{lotId} AND
+            </if>
+        </trim>
+    </select>
+
+
     <delete id="physicalDelete">
         DELETE FROM biz_technological_amend
         <trim prefix=" WHERE" suffix="" suffixOverrides="AND">