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.orderScheduling.domain.BsOrderScheduling; import com.jcdm.main.bs.orderScheduling.service.IBsOrderSchedulingService; import com.jcdm.main.om.productionOrde.domain.OmProductionOrdeInfo; import com.jcdm.main.om.productionOrde.service.IOmProductionOrdeInfoService; import com.jcdm.main.webservice.service.ReceivingServices; import org.apache.commons.lang3.StringUtils; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PutMapping; import org.springframework.web.bind.annotation.DeleteMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import com.jcdm.common.annotation.Log; import com.jcdm.common.core.controller.BaseController; import com.jcdm.common.core.domain.AjaxResult; import com.jcdm.common.enums.BusinessType; import com.jcdm.common.utils.poi.ExcelUtil; import com.jcdm.common.core.page.TableDataInfo; import static org.apache.commons.lang3.SystemUtils.getUserName; /** * 生产工单Controller * * @author ruimin * @date 2023-12-11 */ @RestController @RequestMapping("/om/productionOrde") public class OmProductionOrdeInfoController extends BaseController { @Autowired private IOmProductionOrdeInfoService omProductionOrdeInfoService; @Autowired private IBsOrderSchedulingService bsOrderSchedulingService; /** * 查询生产工单列表 */ @PreAuthorize("@ss.hasPermi('om:productionOrde:list')") @GetMapping("/list") public TableDataInfo list(OmProductionOrdeInfo omProductionOrdeInfo) { startPage(); List list = omProductionOrdeInfoService.selectOmProductionOrdeInfoList(omProductionOrdeInfo); return getDataTable(list); } /** * 导出生产工单列表 */ @PreAuthorize("@ss.hasPermi('om:productionOrde:export')") @Log(title = "生产工单", businessType = BusinessType.EXPORT) @PostMapping("/export") public void export(HttpServletResponse response, OmProductionOrdeInfo omProductionOrdeInfo) { List list = omProductionOrdeInfoService.selectOmProductionOrdeInfoList(omProductionOrdeInfo); ExcelUtil util = new ExcelUtil(OmProductionOrdeInfo.class); util.exportExcel(response, list, "生产工单数据"); } /** * 获取生产工单详细信息 */ @PreAuthorize("@ss.hasPermi('om:productionOrde:query')") @GetMapping(value = "/{id}") public AjaxResult getInfo(@PathVariable("id") Long id) { return success(omProductionOrdeInfoService.selectOmProductionOrdeInfoById(id)); } /** * 新增生产工单 */ @PreAuthorize("@ss.hasPermi('om:productionOrde:add')") @Log(title = "生产工单", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody OmProductionOrdeInfo omProductionOrdeInfo) { return toAjax(omProductionOrdeInfoService.insertOmProductionOrdeInfo(omProductionOrdeInfo)); } /** * 新增生产工单 */ @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