| | |
| | | import com.example.erp.entity.userInfo.Log; |
| | | import com.example.erp.exception.ServiceException; |
| | | import com.example.erp.mapper.pp.FlowCardMapper; |
| | | import com.example.erp.mapper.pp.ReportingWorkMapper; |
| | | import com.example.erp.mapper.sd.*; |
| | | import com.example.erp.service.userInfo.LogService; |
| | | import com.fasterxml.jackson.databind.ObjectMapper; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.awt.*; |
| | | import java.time.LocalDate; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | |
| | | |
| | | private final OrderDetailMapper orderDetailMapper; |
| | | private final OrderMapper orderMapper; |
| | | private final ReportingWorkMapper reportingWorkMapper; |
| | | |
| | | public FlowCardService(FlowCardMapper flowCardMapper, OrderGlassDetailMapper orderGlassDetailMapper, OrderProcessDetailMapper orderProcessDetailMapper, LogService logService, ProductMapper productMapper, ProductDetailMapper productDetailMapper, OrderDetailMapper orderDetailMapper, OrderMapper orderMapper) { |
| | | public FlowCardService(FlowCardMapper flowCardMapper, OrderGlassDetailMapper orderGlassDetailMapper, |
| | | OrderProcessDetailMapper orderProcessDetailMapper, LogService logService, |
| | | ProductMapper productMapper, ProductDetailMapper productDetailMapper, |
| | | OrderDetailMapper orderDetailMapper, OrderMapper orderMapper,ReportingWorkMapper reportingWorkMapper) { |
| | | this.flowCardMapper = flowCardMapper; |
| | | this.orderGlassDetailMapper = orderGlassDetailMapper; |
| | | this.orderProcessDetailMapper = orderProcessDetailMapper; |
| | |
| | | this.productDetailMapper = productDetailMapper; |
| | | this.orderDetailMapper = orderDetailMapper; |
| | | this.orderMapper = orderMapper; |
| | | this.reportingWorkMapper = reportingWorkMapper; |
| | | } |
| | | |
| | | //流程卡管理查询 |
| | |
| | | String processSub = flowCard.getProcess().split("->")[0]; |
| | | //获取工序对应的别称 |
| | | String processName = flowCardMapper.getProcessName(processSub); |
| | | //processName.equals("stepC") || processName.equals("stepD") |
| | | if (processName.equals("stepC") || processName.equals("stepD")) {//工艺是否包含夹胶中空 |
| | | itemmap.put("detail", flowCardMapper.getPrimaryListLimt(flowCard.getProcessId(), |
| | | String.valueOf("null".equals(compound) |
| | |
| | | flowCard.getProcessId(), |
| | | flowCard.getTechnologyNumber(), |
| | | flowCard.getProcess(), |
| | | flowCard.getOrderNumber() |
| | | flowCard.getOrderNumber(), flowCard.getPrintQuantity() |
| | | )); |
| | | } else { |
| | | |
| | | //用于天津现场流程卡打印界面的小片标签打印 |
| | | itemmap.put("data", flowCardMapper.getPrintCustomDataSemiTj( |
| | | flowCard.getProcessId(), |
| | | flowCard.getTechnologyNumber(), |
| | | flowCard.getProcess() |
| | | flowCard.getProcess(), flowCard.getPrintQuantity() |
| | | )); |
| | | } |
| | | list.add(itemmap); |
| | |
| | | } else {//小片标签 |
| | | for (FlowCard flowCard : flowCardList) { |
| | | Map<String, Object> itemmap = new HashMap<>(); |
| | | itemmap.put("data", flowCardMapper.getPrintCustomDataSemi(flowCard.getProcessId(), flowCard.getTechnologyNumber(), flowCard.getProcess(), flowCard.getOrderNumber())); |
| | | itemmap.put("data", flowCardMapper.getPrintCustomDataSemi(flowCard.getProcessId(), flowCard.getTechnologyNumber(), flowCard.getProcess(), flowCard.getOrderNumber(), flowCard.getPrintQuantity())); |
| | | list.add(itemmap); |
| | | } |
| | | } |
| | |
| | | } else {//小片标签 |
| | | for (FlowCard flowCard : flowCardList) { |
| | | Map<String, Object> itemmap = new HashMap<>(); |
| | | itemmap.put("data", flowCardMapper.getPrintCustomDataSemi(flowCard.getProcessId(), flowCard.getTechnologyNumber(), flowCard.getProcess(), flowCard.getOrderNumber())); |
| | | itemmap.put("data", flowCardMapper.getPrintCustomDataSemi(flowCard.getProcessId(), flowCard.getTechnologyNumber(), flowCard.getProcess(), flowCard.getOrderNumber(), flowCard.getPrintQuantity())); |
| | | list.add(itemmap); |
| | | } |
| | | } |
| | |
| | | return map; |
| | | } |
| | | |
| | | public Boolean updateProcessSv(String processId, String technologyNumber, String orderId, String Orderprocess, Map<String, Object> object) { |
| | | public Boolean updateProcessSv(String processId,String orderNumber, String technologyNumber, String orderId, String Orderprocess, Map<String, Object> object) { |
| | | List<OrderProcessDetail> resultList = new ArrayList<>(); |
| | | //获取已报工工艺流程 |
| | | String processOk = flowCardMapper.getProcessOk(processId,orderNumber,technologyNumber); |
| | | if (processOk != null && !processOk.isEmpty()){ |
| | | List<String> okList = Arrays.asList(processOk.split("->")); |
| | | List<String> orderList = Arrays.asList(Orderprocess.split("->")); |
| | | |
| | | //判断该流程卡是否报工 |
| | | Integer count = flowCardMapper.reportingWorkCount(processId); |
| | | if (count == 0) { |
| | | // 判断 processOk 的每个工序是否都包含在 orderProcess 中 |
| | | for (String p : okList) { |
| | | if (!orderList.contains(p)) { |
| | | return false; |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | for (String process : okList) { |
| | | List<OrderProcessDetail> details = |
| | | flowCardMapper.getProcessDetail(processId,orderNumber, technologyNumber, process); |
| | | |
| | | if (details != null && !details.isEmpty()) { |
| | | resultList.addAll(details); |
| | | } |
| | | } |
| | | } |
| | | |
| | | //删除小片工艺表对应的数据 |
| | | flowCardMapper.deleteProcessMp(processId, technologyNumber); |
| | | //重新插入修改好工艺流程卡的数据 |
| | |
| | | } |
| | | } |
| | | } |
| | | //将原来已报工的数据更新 |
| | | if (resultList != null && !resultList.isEmpty()) { |
| | | for (OrderProcessDetail d : resultList) { |
| | | flowCardMapper.updateOrderProcessDetail(d.getProcessId(),d.getOrderNumber(),d.getTechnologyNumber(), |
| | | d.getReportingWorkNumCount(),d.getReportingWorkNum(),d.getBrokenNum(),d.getProcess()); |
| | | |
| | | } |
| | | } |
| | | return true; |
| | | } else { |
| | | return false; |
| | | } |
| | | |
| | | |
| | | } |
| | | |
| | |
| | | map.put("orderOtherMoney", flowCardMapper.selectorderOtherMoney()); |
| | | return map; |
| | | } |
| | | |
| | | public Boolean updateTerminationSv(String processId, Integer orderNumber, Integer value) { |
| | | if (processId!=""){ |
| | | flowCardMapper.updateTerminationMp(processId,orderNumber,value); |
| | | return true; |
| | | }else { |
| | | return false; |
| | | } |
| | | |
| | | } |
| | | |
| | | public Map<String, Object> selectCompletedSv(String processId, Integer orderNumber, String process) { |
| | | Map<String, Object> map = new HashMap<>(); |
| | | String[] processList = process.split("->"); |
| | | //获取工艺流程第一个工序 |
| | | String interceptProcess = processList[0]; |
| | | map.put("data", flowCardMapper.selectCompletedMp(processId, orderNumber,interceptProcess)); |
| | | |
| | | return map; |
| | | } |
| | | } |
| | | |
| | | |