| | |
| | | package com.jcdm.main.om.productionOrde.controller; |
| | | |
| | | import java.text.SimpleDateFormat; |
| | | import java.time.LocalDateTime; |
| | | import java.time.format.DateTimeFormatter; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import javax.servlet.http.HttpServletResponse; |
| | | |
| | | import com.jcdm.main.bs.modelNumber.domain.BsModelNumber; |
| | | import com.jcdm.main.bs.modelNumber.service.IBsModelNumberService; |
| | | import com.jcdm.main.bs.orderScheduling.domain.BsOrderScheduling; |
| | | import com.jcdm.main.bs.orderScheduling.service.IBsOrderSchedulingService; |
| | | import com.jcdm.main.om.productionOrde.domain.OmProductionOrdeInfo; |
| | |
| | | |
| | | @Autowired |
| | | private IBsOrderSchedulingService bsOrderSchedulingService; |
| | | |
| | | @Autowired |
| | | private IBsModelNumberService bsModelNumberService; |
| | | |
| | | /** |
| | | * 查询生产工单列表 |
| | |
| | | } |
| | | |
| | | /** |
| | | * 新增生产工单 |
| | | * 生成按钮 |
| | | */ |
| | | @PostMapping("/orderSchedulingForBoxCode") |
| | | public AjaxResult addOrderSchedulingForBoxCode(@RequestBody OmProductionOrdeInfo omProductionOrdeInfo) |
| | | { |
| | | //获取当前时间 |
| | | LocalDateTime date= LocalDateTime.now(); |
| | | //创建日期时间对象格式化器,日期格式类似: 2023-05-23 22:18:38 |
| | | DateTimeFormatter formatter= DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); |
| | | //将时间转化为对应格式的字符串 |
| | | String fomateDate=date.format(formatter).toString(); |
| | | |
| | | |
| | | Integer startCode = Integer.parseInt(omProductionOrdeInfo.getStartCode());//开始编号 |
| | | Integer planQty = Math.toIntExact(omProductionOrdeInfo.getPlanQty());//计划数量 |
| | | String dateTimeRule = omProductionOrdeInfo.getDateTimeRule(); |
| | | |
| | | for(int i=0;i<planQty;i++){ |
| | | BsOrderScheduling bsOrderScheduling = new BsOrderScheduling(); |
| | | bsOrderScheduling.setOrderNo(omProductionOrdeInfo.getWorkOrderNo()); |
| | | bsOrderScheduling.setModel(omProductionOrdeInfo.getTypeZ()); |
| | | bsOrderScheduling.setEngineNo(omProductionOrdeInfo.getTypeZ() + " "+dateTimeRule+ StringUtils.leftPad(String.valueOf(startCode),3, "0")); |
| | | bsOrderScheduling.setProductionStatus("1"); |
| | | bsOrderScheduling.setOperator(getUserName()); |
| | | // bsOrderScheduling.setOperateTime(String.valueOf(new Date())); |
| | | bsOrderSchedulingService.insertBsOrderScheduling(bsOrderScheduling); |
| | | startCode ++; |
| | | } |
| | | String engineNo = ""; |
| | | if(planQty>0) { |
| | | for (int i = 0; i < planQty; i++) { |
| | | engineNo = omProductionOrdeInfo.getTypeZ() + " " + dateTimeRule + StringUtils.leftPad(String.valueOf(startCode), 3, "0"); |
| | | BsOrderScheduling bsOrderScheduling = new BsOrderScheduling(); |
| | | bsOrderScheduling.setOrderNo(omProductionOrdeInfo.getWorkOrderNo()); |
| | | bsOrderScheduling.setModel(omProductionOrdeInfo.getTypeZ()); |
| | | bsOrderScheduling.setEngineNo(engineNo); |
| | | bsOrderScheduling.setProductionStatus("1"); |
| | | bsOrderScheduling.setOperator(getUserName()); |
| | | bsOrderScheduling.setOperateTime(fomateDate); |
| | | bsOrderScheduling.setProductType(omProductionOrdeInfo.getTypeL());//产品类型 |
| | | bsOrderScheduling.setWhetherOrPrint("0"); |
| | | bsOrderSchedulingService.insertBsOrderScheduling(bsOrderScheduling); |
| | | startCode++; |
| | | } |
| | | |
| | | omProductionOrdeInfo.setOrderStatus("2");//更新工单状态 |
| | | //新增机型序号 |
| | | BsModelNumber bsModelNumber = new BsModelNumber(); |
| | | bsModelNumber.setModel(omProductionOrdeInfo.getTypeZ()); |
| | | bsModelNumber.setModelDate(dateTimeRule); |
| | | bsModelNumber.setMaxnumValue((startCode - 1) + ""); |
| | | bsModelNumber.setSaveTime(fomateDate); |
| | | bsModelNumber.setLastNumber((startCode - 1) + ""); |
| | | bsModelNumberService.insertBsModelNumber(bsModelNumber); |
| | | } |
| | | //更新工单状态 |
| | | omProductionOrdeInfo.setOrderStatus("2"); |
| | | return toAjax(omProductionOrdeInfoService.updateOmProductionOrdeInfo(omProductionOrdeInfo)); |
| | | |
| | | |
| | | } |
| | | |
| | | /** |
| | |
| | | } |
| | | |
| | | /** |
| | | * table列上移下移 |
| | | * 接收工单 |
| | | */ |
| | | @PreAuthorize("@ss.hasPermi('om:productionOrde:receive')") |
| | | @GetMapping("/getProductionNotice") |
| | | public AjaxResult getProductionNotice(OmProductionOrdeInfo omProductionOrdeInfo) |
| | | { |
| | | ReceivingServices.insertWebserviceData(omProductionOrdeInfo.getProductionNotice()); |
| | | return AjaxResult.success(); |
| | | String productionNotice = omProductionOrdeInfo.getProductionNotice(); |
| | | List<OmProductionOrdeInfo> omProductionOrdeInfos = omProductionOrdeInfoService.selectOmProductionOrdeInfoList(omProductionOrdeInfo); |
| | | if(omProductionOrdeInfos.size() == 0){ |
| | | try { |
| | | ReceivingServices.insertWebserviceData(productionNotice); |
| | | } catch (Exception e) { |
| | | return error("接收失败!请检查通知单号"); |
| | | } |
| | | }else { |
| | | return warn("该通知单已经接收完毕,不能重复接收!"); |
| | | } |
| | | return AjaxResult.success("接收成功!"); |
| | | } |
| | | } |