diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteMesFallbackFactory.java b/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteMesFallbackFactory.java index 90269508..1c9fb7b0 100644 --- a/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteMesFallbackFactory.java +++ b/op-api/op-api-system/src/main/java/com/op/system/api/factory/RemoteMesFallbackFactory.java @@ -3,9 +3,6 @@ package com.op.system.api.factory; import com.op.common.core.domain.BaseFileData; import com.op.common.core.domain.R; import com.op.system.api.RemoteMesService; -import com.op.system.api.RemoteUserService; -import com.op.system.api.domain.SysUser; -import com.op.system.api.model.LoginUser; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.cloud.openfeign.FallbackFactory; @@ -33,3 +30,4 @@ public class RemoteMesFallbackFactory implements FallbackFactory list = proProcessService.selectProProcessList(proProcess); return getDataTable(list); @@ -57,14 +55,15 @@ public class ProProcessController extends BaseController /** * 查询所有可用工序的清单 + * * @return */ @RequiresPermissions("mes:pro:process:list") @GetMapping("/listAll") - public AjaxResult listAll(){ + public AjaxResult listAll() { ProProcess process = new ProProcess(); process.setEnableFlag("Y"); - List list =proProcessService.selectProProcessList(process); + List list = proProcessService.selectProProcessList(process); return AjaxResult.success(list); } @@ -74,8 +73,7 @@ public class ProProcessController extends BaseController @RequiresPermissions("@ss.hasPermi('mes:pro:process:export')") @Log(title = "生产工序", businessType = BusinessType.EXPORT) @PostMapping("/export") - public void export(HttpServletResponse response, ProProcess proProcess) - { + public void export(HttpServletResponse response, ProProcess proProcess) { List list = proProcessService.selectProProcessList(proProcess); ExcelUtil util = new ExcelUtil(ProProcess.class); util.exportExcel(response, list, "生产工序数据"); @@ -86,8 +84,7 @@ public class ProProcessController extends BaseController */ @RequiresPermissions("mes:pro:process:query") @GetMapping(value = "/{processId}") - public AjaxResult getInfo(@PathVariable("processId") String processId) - { + public AjaxResult getInfo(@PathVariable("processId") String processId) { return AjaxResult.success(proProcessService.selectProProcessByProcessId(processId)); } @@ -97,12 +94,11 @@ public class ProProcessController extends BaseController @RequiresPermissions("mes:pro:process:add") @Log(title = "生产工序", businessType = BusinessType.INSERT) @PostMapping - public AjaxResult add(@RequestBody ProProcess proProcess) - { - if(!proProcessService.checkProcessCodeUnique(proProcess)){ + public AjaxResult add(@RequestBody ProProcess proProcess) { + if (!proProcessService.checkProcessCodeUnique(proProcess)) { return AjaxResult.error("工序编码已存在!"); } - if(!proProcessService.checkProcessNameUnique(proProcess)){ + if (!proProcessService.checkProcessNameUnique(proProcess)) { return AjaxResult.error("工序名称已存在!"); } return toAjax(proProcessService.insertProProcess(proProcess)); @@ -114,12 +110,11 @@ public class ProProcessController extends BaseController @RequiresPermissions("mes:pro:process:edit") @Log(title = "生产工序", businessType = BusinessType.UPDATE) @PutMapping - public AjaxResult edit(@RequestBody ProProcess proProcess) - { - if(proProcessService.checkProcessCodeUnique(proProcess)){ + public AjaxResult edit(@RequestBody ProProcess proProcess) { + if (!proProcessService.checkProcessCodeUnique(proProcess)) { return AjaxResult.error("工序编码已存在!"); } - if(proProcessService.checkProcessNameUnique(proProcess)){ + if (!proProcessService.checkProcessNameUnique(proProcess)) { return AjaxResult.error("工序名称已存在!"); } return toAjax(proProcessService.updateProProcess(proProcess)); @@ -130,9 +125,8 @@ public class ProProcessController extends BaseController */ @RequiresPermissions("mes:pro:process:remove") @Log(title = "生产工序", businessType = BusinessType.DELETE) - @DeleteMapping("/{processIds}") - public AjaxResult remove(@PathVariable String[] processIds) - { + @DeleteMapping("/{processIds}") + public AjaxResult remove(@PathVariable String[] processIds) { return toAjax(proProcessService.deleteProProcessByProcessIds(processIds)); } } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/controller/ProRecipeContentController.java b/op-modules/op-mes/src/main/java/com/op/mes/controller/ProRecipeContentController.java new file mode 100644 index 00000000..46afcccc --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/controller/ProRecipeContentController.java @@ -0,0 +1,91 @@ +package com.op.mes.controller; + +import com.op.common.core.utils.poi.ExcelUtil; +import com.op.common.core.web.controller.BaseController; +import com.op.common.core.web.domain.AjaxResult; +import com.op.common.core.web.page.TableDataInfo; +import com.op.common.log.annotation.Log; +import com.op.common.log.enums.BusinessType; +import com.op.mes.domain.ProRecipeContent; +import com.op.mes.service.IProRecipeContentService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + + +/** + * 配药配方管理内容Controller + * + * @author yinjinlu + * @date 2022-05-12 + */ +@RestController +@RequestMapping("/pro/recipecontent") +public class ProRecipeContentController extends BaseController { + @Autowired + private IProRecipeContentService proRecipeContentService; + + /** + * 查询配药配方管理内容列表 + */ + //@RequiresPermissions("mes:pro:recipecontent:list") + @GetMapping("/list") + public TableDataInfo list(ProRecipeContent proRecipeContent) { + startPage(); + List list = proRecipeContentService.selectProRecipeContentList(proRecipeContent); + return getDataTable(list); + } + + /** + * 导出配药配方管理内容列表 + */ + //@RequiresPermissions("mes:pro:recipecontent:export") + @Log(title = "配药配方管理内容", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ProRecipeContent proRecipeContent) { + List list = proRecipeContentService.selectProRecipeContentList(proRecipeContent); + ExcelUtil util = new ExcelUtil(ProRecipeContent.class); + util.exportExcel(response, list, "配药配方管理内容数据"); + } + + /** + * 获取配药配方管理内容详细信息 + */ + //@RequiresPermissions("mes:pro:recipecontent:query") + @GetMapping(value = "/{contentId}") + public AjaxResult getInfo(@PathVariable("contentId") String contentId) { + return AjaxResult.success(proRecipeContentService.selectProRecipeContentByContentId(contentId)); + } + + /** + * 新增配药配方管理内容 + */ + //@RequiresPermissions("mes:pro:recipecontent:add") + @Log(title = "配药配方管理内容", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ProRecipeContent proRecipeContent) { + return toAjax(proRecipeContentService.insertProRecipeContent(proRecipeContent)); + } + + /** + * 修改配药配方管理内容 + */ + //@RequiresPermissions("mes:pro:recipecontent:edit") + @Log(title = "配药配方管理内容", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ProRecipeContent proRecipeContent) { + return toAjax(proRecipeContentService.updateProRecipeContent(proRecipeContent)); + } + + /** + * 删除配药配方管理内容 + */ + //@RequiresPermissions("mes:pro:recipecontent:remove") + @Log(title = "配药配方管理内容", businessType = BusinessType.DELETE) + @DeleteMapping("/{contentIds}") + public AjaxResult remove(@PathVariable String[] contentIds) { + return toAjax(proRecipeContentService.deleteProRecipeContentByContentIds(contentIds)); + } +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/controller/ProRecipeController.java b/op-modules/op-mes/src/main/java/com/op/mes/controller/ProRecipeController.java new file mode 100644 index 00000000..2dedd01c --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/controller/ProRecipeController.java @@ -0,0 +1,118 @@ +package com.op.mes.controller; + +import com.op.common.core.utils.poi.ExcelUtil; +import com.op.common.core.web.controller.BaseController; +import com.op.common.core.web.domain.AjaxResult; +import com.op.common.core.web.page.TableDataInfo; +import com.op.common.log.annotation.Log; +import com.op.common.log.enums.BusinessType; +import com.op.common.security.annotation.RequiresPermissions; +import com.op.mes.domain.ProRecipe; +import com.op.mes.service.IProRecipeService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + + +/** + * 配药配方Controller + * + * @author yinjinlu + * @date 2022-05-11 + */ +@RestController +@RequestMapping("/pro/recipe") +public class ProRecipeController extends BaseController { + @Autowired + private IProRecipeService proRecipeService; + + /** + * 查询配药配方列表 + */ + @RequiresPermissions("mes:pro:recipe:list") + @GetMapping("/list") + public TableDataInfo list(ProRecipe proRecipe) { + startPage(); + List list = proRecipeService.selectProRecipeList(proRecipe); + return getDataTable(list); + } + + /** + * 查询所有可用配方的清单 + * + * @return + */ + @RequiresPermissions("mes:pro:recipe:list") + @GetMapping("/listAll") + public AjaxResult listAll() { + ProRecipe recipe = new ProRecipe(); + recipe.setEnableFlag("Y"); + List list = proRecipeService.selectProRecipeList(recipe); + return AjaxResult.success(list); + } + + /** + * 导出配药配方列表 + */ + @RequiresPermissions("@ss.hasPermi('mes:pro:recipe:export')") + @Log(title = "配药配方", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ProRecipe proRecipe) { + List list = proRecipeService.selectProRecipeList(proRecipe); + ExcelUtil util = new ExcelUtil(ProRecipe.class); + util.exportExcel(response, list, "配药配方数据"); + } + + /** + * 获取配药配方详细信息 + */ + @RequiresPermissions("mes:pro:recipe:query") + @GetMapping(value = "/{recipeId}") + public AjaxResult getInfo(@PathVariable("recipeId") String recipeId) { + return AjaxResult.success(proRecipeService.selectProRecipeByRecipeId(recipeId)); + } + + /** + * 新增配药配方 + */ + @RequiresPermissions("mes:pro:recipe:add") + @Log(title = "配药配方", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ProRecipe proRecipe) { + if (!proRecipeService.checkRecipeCodeUnique(proRecipe)) { + return AjaxResult.error("配方编码已存在!"); + } + if (!proRecipeService.checkRecipeNameUnique(proRecipe)) { + return AjaxResult.error("配方名称已存在!"); + } + return toAjax(proRecipeService.insertProRecipe(proRecipe)); + } + + /** + * 修改配药配方 + */ + @RequiresPermissions("mes:pro:recipe:edit") + @Log(title = "配药配方", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ProRecipe proRecipe) { + if (!proRecipeService.checkRecipeCodeUnique(proRecipe)) { + return AjaxResult.error("配方编码已存在!"); + } + if (!proRecipeService.checkRecipeNameUnique(proRecipe)) { + return AjaxResult.error("配方名称已存在!"); + } + return toAjax(proRecipeService.updateProRecipe(proRecipe)); + } + + /** + * 删除配药配方 + */ + @RequiresPermissions("mes:pro:recipe:remove") + @Log(title = "配药配方", businessType = BusinessType.DELETE) + @DeleteMapping("/{recipeIds}") + public AjaxResult remove(@PathVariable String[] recipeIds) { + return toAjax(proRecipeService.deleteProRecipeByRecipeIds(recipeIds)); + } +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/domain/ProOrderWorkorder.java b/op-modules/op-mes/src/main/java/com/op/mes/domain/ProOrderWorkorder.java index 5939263d..2428f9c7 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/domain/ProOrderWorkorder.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/domain/ProOrderWorkorder.java @@ -78,7 +78,8 @@ public class ProOrderWorkorder extends TreeEntity { @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "工单生产日期", width = 30, dateFormat = "yyyy-MM-dd") private Date productDate; - + private String productDateStart; + private String productDateEnd; /** 班次 */ @Excel(name = "班次") private String shiftId; @@ -406,6 +407,22 @@ public class ProOrderWorkorder extends TreeEntity { return factoryCode; } + public String getProductDateStart() { + return productDateStart; + } + + public void setProductDateStart(String productDateStart) { + this.productDateStart = productDateStart; + } + + public String getProductDateEnd() { + return productDateEnd; + } + + public void setProductDateEnd(String productDateEnd) { + this.productDateEnd = productDateEnd; + } + @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) @@ -451,4 +468,4 @@ public class ProOrderWorkorder extends TreeEntity { .append("bucketName",getBucketName()) .toString(); } -} \ No newline at end of file +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/domain/ProRecipe.java b/op-modules/op-mes/src/main/java/com/op/mes/domain/ProRecipe.java index 3ba8ebda..c76729f2 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/domain/ProRecipe.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/domain/ProRecipe.java @@ -14,39 +14,56 @@ import java.util.List; * @author yinjinlu * @date 2022-05-12 */ -public class ProRecipe extends BaseEntity -{ +public class ProRecipe extends BaseEntity { private static final long serialVersionUID = 1L; - /** 工序ID */ - private String processId; - - /** 工序编码 */ - @Excel(name = "工序编码") - private String processCode; - - /** 工序名称 */ - @Excel(name = "工序名称") - private String processName; - - /** 工艺要求 */ + /** + * 工序ID + */ + private String recipeId; + + /** + * 工序编码 + */ + @Excel(name = "配方编码") + private String recipeCode; + + /** + * 工序名称 + */ + @Excel(name = "配方名称") + private String recipeName; + + /** + * 工艺要求 + */ @Excel(name = "工艺要求") private String attention; - /** 是否启用 */ + /** + * 是否启用 + */ @Excel(name = "是否启用") private String enableFlag; - /** 预留字段1 */ + /** + * 预留字段1 + */ private String attr1; - /** 预留字段2 */ + /** + * 预留字段2 + */ private String attr2; - /** 预留字段3 */ + /** + * 预留字段3 + */ private Long attr3; - /** 预留字段4 */ + /** + * 预留字段4 + */ private Long attr4; private String fileList; @@ -58,7 +75,7 @@ public class ProRecipe extends BaseEntity //1允许多单并行 private String sync; //工作中心 - private String workCenter; + private String version; //工作时长 private Double workTime; @@ -71,11 +88,11 @@ public class ProRecipe extends BaseEntity } public String getWorkCenter() { - return workCenter; + return version; } - public void setWorkCenter(String workCenter) { - this.workCenter = workCenter; + public void setWorkCenter(String version) { + this.version = version; } public Double getWorkTime() { @@ -118,105 +135,96 @@ public class ProRecipe extends BaseEntity this.fileList = fileList; } - public void setProcessId(String processId) - { - this.processId = processId; + public String getRecipeCode() { + return recipeCode; } - public String getProcessId() - { - return processId; - } - public void setProcessCode(String processCode) - { - this.processCode = processCode; + public void setRecipeCode(String recipeCode) { + this.recipeCode = recipeCode; } - public String getProcessCode() - { - return processCode; - } - public void setProcessName(String processName) - { - this.processName = processName; + public String getRecipeName() { + return recipeName; } - public String getProcessName() - { - return processName; + public void setRecipeName(String recipeName) { + this.recipeName = recipeName; } - public void setAttention(String attention) - { + + public void setAttention(String attention) { this.attention = attention; } - public String getAttention() - { + public String getAttention() { return attention; } - public void setEnableFlag(String enableFlag) - { + + public void setEnableFlag(String enableFlag) { this.enableFlag = enableFlag; } - public String getEnableFlag() - { + public String getEnableFlag() { return enableFlag; } - public void setAttr1(String attr1) - { + + public void setAttr1(String attr1) { this.attr1 = attr1; } - public String getAttr1() - { + public String getAttr1() { return attr1; } - public void setAttr2(String attr2) - { + + public void setAttr2(String attr2) { this.attr2 = attr2; } - public String getAttr2() - { + public String getAttr2() { return attr2; } - public void setAttr3(Long attr3) - { + + public void setAttr3(Long attr3) { this.attr3 = attr3; } - public Long getAttr3() - { + public Long getAttr3() { return attr3; } - public void setAttr4(Long attr4) - { + + public void setAttr4(Long attr4) { this.attr4 = attr4; } - public Long getAttr4() - { + public Long getAttr4() { return attr4; } + public String getRecipeId() { + return recipeId; + } + + public void setRecipeId(String recipeId) { + this.recipeId = recipeId; + } + @Override public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("processId", getProcessId()) - .append("processCode", getProcessCode()) - .append("processName", getProcessName()) - .append("attention", getAttention()) - .append("enableFlag", getEnableFlag()) - .append("remark", getRemark()) - .append("attr1", getAttr1()) - .append("attr2", getAttr2()) - .append("attr3", getAttr3()) - .append("attr4", getAttr4()) - .append("createBy", getCreateBy()) - .append("createTime", getCreateTime()) - .append("updateBy", getUpdateBy()) - .append("updateTime", getUpdateTime()) - .toString(); + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("recipeId", getRecipeId()) + .append("processCode", getRecipeCode()) + .append("processName", getRecipeName()) + .append("attention", getAttention()) + .append("enableFlag", getEnableFlag()) + .append("remark", getRemark()) + .append("attr1", getAttr1()) + .append("attr2", getAttr2()) + .append("attr3", getAttr3()) + .append("attr4", getAttr4()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .toString(); } + } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/domain/ProRecipeContent.java b/op-modules/op-mes/src/main/java/com/op/mes/domain/ProRecipeContent.java index 522f7437..a98752b6 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/domain/ProRecipeContent.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/domain/ProRecipeContent.java @@ -19,8 +19,8 @@ public class ProRecipeContent extends BaseEntity private String contentId; /** 工序ID */ - @Excel(name = "工序ID") - private String processId; + @Excel(name = "配方ID") + private String recipeId; /** 顺序编号 */ @Excel(name = "顺序编号") @@ -63,14 +63,14 @@ public class ProRecipeContent extends BaseEntity { return contentId; } - public void setProcessId(String processId) + public void setProcessId(String recipeId) { - this.processId = processId; + this.recipeId = recipeId; } - public String getProcessId() + public String getRecipeId() { - return processId; + return recipeId; } public void setOrderNum(Integer orderNum) { @@ -158,7 +158,7 @@ public class ProRecipeContent extends BaseEntity public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) .append("contentId", getContentId()) - .append("processId", getProcessId()) + .append("recipeId", getRecipeId()) .append("orderNum", getOrderNum()) .append("contentText", getContentText()) .append("device", getDevice()) diff --git a/op-modules/op-mes/src/main/java/com/op/mes/mapper/ProOrderMapper.java b/op-modules/op-mes/src/main/java/com/op/mes/mapper/ProOrderMapper.java index a3dc46af..42c9beb7 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/mapper/ProOrderMapper.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/mapper/ProOrderMapper.java @@ -6,6 +6,10 @@ import com.op.mes.domain.Convert; import com.op.mes.domain.ProLine; import com.op.mes.domain.ProOrder; import com.op.mes.domain.ProShift; +import com.baomidou.dynamic.datasource.annotation.DS; +import com.op.mes.domain.*; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; /** * 订单Mapper接口 @@ -137,4 +141,6 @@ public interface ProOrderMapper { * @return */ public List selectPackageLine(); + + public void updateOrderBatch(@Param("workers") List workers); } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/mapper/ProOrderWorkorderMapper.java b/op-modules/op-mes/src/main/java/com/op/mes/mapper/ProOrderWorkorderMapper.java index 044fe229..b3e8f34c 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/mapper/ProOrderWorkorderMapper.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/mapper/ProOrderWorkorderMapper.java @@ -67,7 +67,7 @@ public interface ProOrderWorkorderMapper { * @return */ List selectFirWorkOrder(String id); - + ProOrderWorkorder selectWorkOrderByCode(String workorderCode); /** * 通过code查询子工单 * @@ -83,6 +83,8 @@ public interface ProOrderWorkorderMapper { * @return */ List selectWorkOrderByTime(Date productDate); + /**下发生产订单**/ + public int downProOrderWorkorderByWorkorderIds(String[] workorderIds); /** * 通过订单id查询最大的code的工单 @@ -91,4 +93,4 @@ public interface ProOrderWorkorderMapper { * @return */ String selectEndWorkOrder(String id); -} \ No newline at end of file +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/mapper/ProRecipeContentMapper.java b/op-modules/op-mes/src/main/java/com/op/mes/mapper/ProRecipeContentMapper.java new file mode 100644 index 00000000..e1478d87 --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/mapper/ProRecipeContentMapper.java @@ -0,0 +1,65 @@ +package com.op.mes.mapper; + +import com.op.mes.domain.ProRecipeContent; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + + +/** + * 配药配方内容Mapper接口 + * + * @author yinjinlu + * @date 2022-05-12 + */ +@Mapper +public interface ProRecipeContentMapper +{ + /** + * 查询配药配方内容 + * + * @param contentId 配药配方内容主键 + * @return 配药配方内容 + */ + public ProRecipeContent selectProRecipeContentByContentId(String contentId); + + /** + * 查询配药配方内容列表 + * + * @param proRecipeContent 配药配方内容 + * @return 配药配方内容集合 + */ + public List selectProRecipeContentList(ProRecipeContent proRecipeContent); + + /** + * 新增配药配方内容 + * + * @param proRecipeContent 配药配方内容 + * @return 结果 + */ + public int insertProRecipeContent(ProRecipeContent proRecipeContent); + + /** + * 修改配药配方内容 + * + * @param proRecipeContent 配药配方内容 + * @return 结果 + */ + public int updateProRecipeContent(ProRecipeContent proRecipeContent); + + /** + * 删除配药配方内容 + * + * @param contentId 配药配方内容主键 + * @return 结果 + */ + public int deleteProRecipeContentByContentId(String contentId); + + /** + * 批量删除配药配方内容 + * + * @param contentIds 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteProRecipeContentByContentIds(String[] contentIds); +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/mapper/ProRecipeMapper.java b/op-modules/op-mes/src/main/java/com/op/mes/mapper/ProRecipeMapper.java new file mode 100644 index 00000000..2e755666 --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/mapper/ProRecipeMapper.java @@ -0,0 +1,69 @@ +package com.op.mes.mapper; + +import com.op.mes.domain.ProRecipe; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + + +/** + * 配药配方管理Mapper接口 + * + * @author yinjinlu + * @date 2022-05-11 + */ +@Mapper +public interface ProRecipeMapper +{ + /** + * 查询配药配方管理 + * + * @param processId 配药配方管理主键 + * @return 配药配方管理 + */ + public ProRecipe selectProRecipeByRecipeId(String processId); + + /** + * 查询配药配方管理列表 + * + * @param proRecipe 配药配方管理 + * @return 配药配方管理集合 + */ + public List selectProRecipeList(ProRecipe proRecipe); + + public ProRecipe checkRecipeCodeUnique(ProRecipe proRecipe); + public ProRecipe checkRecipeNameUnique(ProRecipe proRecipe); + + + /** + * 新增配药配方管理 + * + * @param proRecipe 配药配方管理 + * @return 结果 + */ + public int insertProRecipe(ProRecipe proRecipe); + + /** + * 修改配药配方管理 + * + * @param proRecipe 配药配方管理 + * @return 结果 + */ + public int updateProRecipe(ProRecipe proRecipe); + + /** + * 删除配药配方管理 + * + * @param processId 配药配方管理主键 + * @return 结果 + */ + public int deleteProRecipeByRecipeId(String processId); + + /** + * 批量删除配药配方管理 + * + * @param processIds 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteProRecipeByRecipeIds(String[] processIds); +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/IProOrderWorkorderService.java b/op-modules/op-mes/src/main/java/com/op/mes/service/IProOrderWorkorderService.java index be181667..65df5462 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/IProOrderWorkorderService.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/IProOrderWorkorderService.java @@ -59,4 +59,11 @@ public interface IProOrderWorkorderService { * @return 结果 */ public int deleteProOrderWorkorderByWorkorderId(String workorderId); -} \ No newline at end of file + + /** + * 下发生产工单 + * @param workorderIds + * @return + */ + public int downProOrderWorkorderByWorkorderIds(String[] workorderIds); +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/IProRecipeContentService.java b/op-modules/op-mes/src/main/java/com/op/mes/service/IProRecipeContentService.java new file mode 100644 index 00000000..bbd8a14d --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/IProRecipeContentService.java @@ -0,0 +1,63 @@ +package com.op.mes.service; + +import com.op.mes.domain.ProRecipeContent; + +import java.util.List; + + +/** + * 配药配方内容Service接口 + * + * @author yinjinlu + * @date 2022-05-12 + */ +public interface IProRecipeContentService +{ + /** + * 查询配药配方内容 + * + * @param contentId 配药配方内容主键 + * @return 配药配方内容 + */ + public ProRecipeContent selectProRecipeContentByContentId(String contentId); + + /** + * 查询配药配方内容列表 + * + * @param proRecipeContent 配药配方内容 + * @return 配药配方内容集合 + */ + public List selectProRecipeContentList(ProRecipeContent proRecipeContent); + + /** + * 新增配药配方内容 + * + * @param proRecipeContent 配药配方内容 + * @return 结果 + */ + public int insertProRecipeContent(ProRecipeContent proRecipeContent); + + /** + * 修改配药配方内容 + * + * @param proRecipeContent 配药配方内容 + * @return 结果 + */ + public int updateProRecipeContent(ProRecipeContent proRecipeContent); + + /** + * 批量删除配药配方内容 + * + * @param contentIds 需要删除的配药配方内容主键集合 + * @return 结果 + */ + public int deleteProRecipeContentByContentIds(String[] contentIds); + + /** + * 删除配药配方内容信息 + * + * @param contentId 配药配方内容主键 + * @return 结果 + */ + public int deleteProRecipeContentByContentId(String contentId); +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/IProRecipeService.java b/op-modules/op-mes/src/main/java/com/op/mes/service/IProRecipeService.java new file mode 100644 index 00000000..1ce99bc7 --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/IProRecipeService.java @@ -0,0 +1,65 @@ +package com.op.mes.service; + +import com.op.mes.domain.ProRecipe; + +import java.util.List; + +/** + * 配药配方Service接口 + * + * @author yinjinlu + * @date 2022-05-11 + */ +public interface IProRecipeService +{ + /** + * 查询配药配方 + * + * @param processId 配药配方主键 + * @return 配药配方 + */ + public ProRecipe selectProRecipeByRecipeId(String processId); + + /** + * 查询配药配方列表 + * + * @param proRecipe 配药配方 + * @return 配药配方集合 + */ + public List selectProRecipeList(ProRecipe proRecipe); + + public Boolean checkRecipeCodeUnique(ProRecipe proRecipe); + public Boolean checkRecipeNameUnique(ProRecipe proRecipe); + + /** + * 新增配药配方 + * + * @param proRecipe 配药配方 + * @return 结果 + */ + public int insertProRecipe(ProRecipe proRecipe); + + /** + * 修改配药配方 + * + * @param proRecipe 配药配方 + * @return 结果 + */ + public int updateProRecipe(ProRecipe proRecipe); + + /** + * 批量删除配药配方 + * + * @param processIds 需要删除的配药配方主键集合 + * @return 结果 + */ + public int deleteProRecipeByRecipeIds(String[] processIds); + + /** + * 删除配药配方信息 + * + * @param processId 配药配方主键 + * @return 结果 + */ + public int deleteProRecipeByRecipeId(String processId); +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/ProOrderServiceImpl.java b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/ProOrderServiceImpl.java index 5aa080ae..989ffa45 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/ProOrderServiceImpl.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/ProOrderServiceImpl.java @@ -249,6 +249,7 @@ public class ProOrderServiceImpl implements IProOrderService { * @return 订单 */ @Override + @DS("#header.poolName") public ProOrder selectProOrderById(String id) { return proOrderMapper.selectProOrderById(id); } @@ -476,4 +477,4 @@ public class ProOrderServiceImpl implements IProOrderService { return 1; } } -} \ No newline at end of file +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/ProOrderWorkorderServiceImpl.java b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/ProOrderWorkorderServiceImpl.java index 362c81d1..8e41a1ac 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/ProOrderWorkorderServiceImpl.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/ProOrderWorkorderServiceImpl.java @@ -1,12 +1,19 @@ package com.op.mes.service.impl; +import com.baomidou.dynamic.datasource.annotation.DS; import com.op.common.core.utils.DateUtils; import com.op.mes.domain.ProOrderWorkorder; +import com.op.mes.mapper.ProOrderMapper; +import com.op.mes.mapper.ProOrderWorkorderBatchMapper; import com.op.mes.mapper.ProOrderWorkorderMapper; import com.op.mes.service.IProOrderWorkorderService; +import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; +import java.util.ArrayList; import java.util.List; @@ -20,7 +27,10 @@ import java.util.List; public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { @Autowired private ProOrderWorkorderMapper proOrderWorkorderMapper; - + @Autowired + private ProOrderWorkorderBatchMapper proOrderWorkorderBatchMapper; + @Autowired + private ProOrderMapper proOrderMapper; /** * 查询生产工单 * @@ -28,6 +38,7 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { * @return 生产工单 */ @Override + @DS("#header.poolName") public ProOrderWorkorder selectProOrderWorkorderByWorkorderId(String workorderId) { return proOrderWorkorderMapper.selectProOrderWorkorderByWorkorderId(workorderId); } @@ -39,7 +50,9 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { * @return 生产工单 */ @Override + @DS("#header.poolName") public List selectProOrderWorkorderList(ProOrderWorkorder proOrderWorkorder) { + return proOrderWorkorderMapper.selectProOrderWorkorderList(proOrderWorkorder); } @@ -50,6 +63,7 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { * @return 结果 */ @Override + @DS("#header.poolName") public int insertProOrderWorkorder(ProOrderWorkorder proOrderWorkorder) { proOrderWorkorder.setCreateTime(DateUtils.getNowDate()); return proOrderWorkorderMapper.insertProOrderWorkorder(proOrderWorkorder); @@ -62,6 +76,7 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { * @return 结果 */ @Override + @DS("#header.poolName") public int updateProOrderWorkorder(ProOrderWorkorder proOrderWorkorder) { proOrderWorkorder.setUpdateTime(DateUtils.getNowDate()); return proOrderWorkorderMapper.updateProOrderWorkorder(proOrderWorkorder); @@ -74,10 +89,51 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { * @return 结果 */ @Override + @DS("#header.poolName") + @Transactional public int deleteProOrderWorkorderByWorkorderIds(String[] workorderIds) { - return proOrderWorkorderMapper.deleteProOrderWorkorderByWorkorderIds(workorderIds); + for(String workorderId:workorderIds){ + //要删除的工单id们 + List delteIds = new ArrayList<>(); + delteIds.add(workorderId); + //最底级,用来还原订单拆分数量 + List workers = new ArrayList<>(); + ProOrderWorkorder work = proOrderWorkorderMapper.selectProOrderWorkorderByWorkorderId(workorderId); + if(work != null){ + workers.add(work); + ProOrderWorkorder bottomWork = work; + Boolean run = true; + while(run){ + //上级 + ProOrderWorkorder topworkers = proOrderWorkorderMapper.selectWorkOrderByCode(bottomWork.getParentOrder()); + //有上级code + if(topworkers!=null) { + workers.add(topworkers); + delteIds.add(topworkers.getWorkorderId()); + bottomWork.setParentOrder(topworkers.getParentOrder()); + }else{ + run = false; + } + } + } + String[] workorderIds0 = (String[])delteIds.toArray(new String[delteIds.size()]); + if(workorderIds0.length>0){ + //删除工单(字母)pro_order_workorder + proOrderWorkorderMapper.deleteProOrderWorkorderByWorkorderIds(workorderIds0); + //删除批次pro_order_workorder_batch + proOrderWorkorderBatchMapper.deleteProOrderWorkorderBatchByWorkorderIds(workorderIds0); + } + + if(!CollectionUtils.isEmpty(workers)){ + //释放订单拆分数pro_order + proOrderMapper.updateOrderBatch(workers); + } + + } + return 1; } + /** * 删除生产工单信息 * @@ -85,7 +141,20 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { * @return 结果 */ @Override + @DS("#header.poolName") public int deleteProOrderWorkorderByWorkorderId(String workorderId) { return proOrderWorkorderMapper.deleteProOrderWorkorderByWorkorderId(workorderId); } -} \ No newline at end of file + + /** + * 下发生产工单信息 + * @param workorderIds 生产工单主键 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int downProOrderWorkorderByWorkorderIds(String[] workorderIds) { + int m= proOrderWorkorderMapper.downProOrderWorkorderByWorkorderIds(workorderIds); + return m; + } +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/ProRecipeContentServiceImpl.java b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/ProRecipeContentServiceImpl.java new file mode 100644 index 00000000..b3d6dc10 --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/ProRecipeContentServiceImpl.java @@ -0,0 +1,106 @@ +package com.op.mes.service.impl; + +import com.baomidou.dynamic.datasource.annotation.DS; +import com.op.common.core.utils.DateUtils; +import com.op.common.core.utils.uuid.IdUtils; +import com.op.mes.domain.ProRecipeContent; +import com.op.mes.mapper.ProRecipeContentMapper; +import com.op.mes.service.IProRecipeContentService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 生产工序内容Service业务层处理 + * + * @author yinjinlu + * @date 2022-05-12 + */ +@Service +public class ProRecipeContentServiceImpl implements IProRecipeContentService +{ + @Autowired + private ProRecipeContentMapper proRecipeContentMapper; + + /** + * 查询生产工序内容 + * + * @param contentId 生产工序内容主键 + * @return 生产工序内容 + */ + @Override + @DS("#header.poolName") + public ProRecipeContent selectProRecipeContentByContentId(String contentId) + { + return proRecipeContentMapper.selectProRecipeContentByContentId(contentId); + } + + /** + * 查询生产工序内容列表 + * + * @param proRecipeContent 生产工序内容 + * @return 生产工序内容 + */ + @Override + @DS("#header.poolName") + public List selectProRecipeContentList(ProRecipeContent proRecipeContent) + { + return proRecipeContentMapper.selectProRecipeContentList(proRecipeContent); + } + + /** + * 新增生产工序内容 + * + * @param proRecipeContent 生产工序内容 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int insertProRecipeContent(ProRecipeContent proRecipeContent) + { + proRecipeContent.setCreateTime(DateUtils.getNowDate()); + proRecipeContent.setContentId(IdUtils.fastSimpleUUID()); + return proRecipeContentMapper.insertProRecipeContent(proRecipeContent); + } + + /** + * 修改生产工序内容 + * + * @param proRecipeContent 生产工序内容 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int updateProRecipeContent(ProRecipeContent proRecipeContent) + { + proRecipeContent.setUpdateTime(DateUtils.getNowDate()); + return proRecipeContentMapper.updateProRecipeContent(proRecipeContent); + } + + /** + * 批量删除生产工序内容 + * + * @param contentIds 需要删除的生产工序内容主键 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int deleteProRecipeContentByContentIds(String[] contentIds) + { + return proRecipeContentMapper.deleteProRecipeContentByContentIds(contentIds); + } + + /** + * 删除生产工序内容信息 + * + * @param contentId 生产工序内容主键 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int deleteProRecipeContentByContentId(String contentId) + { + return proRecipeContentMapper.deleteProRecipeContentByContentId(contentId); + } +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/ProRecipeServiceImpl.java b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/ProRecipeServiceImpl.java new file mode 100644 index 00000000..821e75ed --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/ProRecipeServiceImpl.java @@ -0,0 +1,189 @@ +package com.op.mes.service.impl; + +import com.baomidou.dynamic.datasource.annotation.DS; +import com.op.common.core.constant.UserConstants; +import com.op.common.core.domain.BaseFileData; +import com.op.common.core.utils.DateUtils; +import com.op.common.core.utils.StringUtils; +import com.op.common.core.utils.uuid.IdUtils; +import com.op.common.security.utils.SecurityUtils; +import com.op.mes.domain.BaseFile; +import com.op.mes.domain.ProRecipe; +import com.op.mes.mapper.BaseFileMapper; +import com.op.mes.mapper.ProRecipeMapper; +import com.op.mes.service.IProRecipeService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + * 生产工序Service业务层处理 + * + * @author yinjinlu + * @date 2022-05-11 + */ +@Service +public class ProRecipeServiceImpl implements IProRecipeService { + @Autowired + private ProRecipeMapper proRecipeMapper; + + @Autowired + private BaseFileMapper baseFileMapper; + + /** + * 查询生产工序 + * + * @param processId 生产工序主键 + * @return 生产工序 + */ + @Override + @DS("#header.poolName") + public ProRecipe selectProRecipeByRecipeId(String processId) { + ProRecipe p = proRecipeMapper.selectProRecipeByRecipeId(processId); + List files = baseFileMapper.getBaseFileBatch(processId); + if (!CollectionUtils.isEmpty(files)) { + p.setFiles(files); + } + return p; + } + + /** + * 查询生产工序列表 + * + * @param proRecipe 生产工序 + * @return 生产工序 + */ + @Override + @DS("#header.poolName") + public List selectProRecipeList(ProRecipe proRecipe) { + return proRecipeMapper.selectProRecipeList(proRecipe); + } + + /** + * 检查工序编码是否唯一 + * + * @param proRecipe + * @return + */ + @Override + @DS("#header.poolName") + public Boolean checkRecipeCodeUnique(ProRecipe proRecipe) { + ProRecipe process = proRecipeMapper.checkRecipeCodeUnique(proRecipe); + if (StringUtils.isNotNull(process) && !process.getRecipeId().equals(proRecipe.getRecipeId())) { + return UserConstants.NOT_UNIQUE; + } + return UserConstants.UNIQUE; + } + + + /** + * 检查工序名称是否唯一 + * + * @param proRecipe + * @return + */ + @Override + @DS("#header.poolName") + public Boolean checkRecipeNameUnique(ProRecipe proRecipe) { + ProRecipe process = proRecipeMapper.checkRecipeNameUnique(proRecipe); + + if (StringUtils.isNotNull(process) && !process.getRecipeId().equals(proRecipe.getRecipeId())) { + return UserConstants.NOT_UNIQUE; + } + return UserConstants.UNIQUE; + } + + /** + * 新增生产工序 + * + * @param proRecipe 生产工序 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int insertProRecipe(ProRecipe proRecipe) { + proRecipe.setRecipeId(IdUtils.fastSimpleUUID()); + proRecipe.setCreateTime(DateUtils.getNowDate()); + + //上传附件 + if (StringUtils.isNotEmpty(proRecipe.getFileList())) { + String[] ids = proRecipe.getFileList().split(","); + List files = new ArrayList<>(); + BaseFileData file = null; + for (String id : ids) { + file = new BaseFileData(); + file.setFileId(IdUtils.fastSimpleUUID()); + file.setFileName(id.split("&fileName=")[1]); + file.setFileAddress(id); + file.setSourceId(proRecipe.getRecipeId()); + file.setCreateBy(SecurityUtils.getUsername()); + file.setCreateTime(new Date()); + files.add(file); + } + baseFileMapper.insertBaseFileBatch(files); + } + + return proRecipeMapper.insertProRecipe(proRecipe); + } + + /** + * 修改生产工序 + * + * @param proRecipe 生产工序 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int updateProRecipe(ProRecipe proRecipe) { + + //上传附件 + if (StringUtils.isNotEmpty(proRecipe.getFileList())) { + baseFileMapper.deleteBaseFileBySourceId(proRecipe.getRecipeId()); + String[] ids = proRecipe.getFileList().split(","); + List files = new ArrayList<>(); + BaseFileData file = null; + for (String id : ids) { + file = new BaseFileData(); + file.setFileId(IdUtils.fastSimpleUUID()); + file.setFileAddress(id); + file.setFileName(id.split("&fileName=")[1]); + file.setSourceId(proRecipe.getRecipeId()); + file.setCreateBy(SecurityUtils.getUsername()); + file.setCreateTime(new Date()); + files.add(file); + } + baseFileMapper.insertBaseFileBatch(files); + } + + proRecipe.setUpdateTime(DateUtils.getNowDate()); + return proRecipeMapper.updateProRecipe(proRecipe); + } + + /** + * 批量删除生产工序 + * + * @param processIds 需要删除的生产工序主键 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int deleteProRecipeByRecipeIds(String[] processIds) { + return proRecipeMapper.deleteProRecipeByRecipeIds(processIds); + } + + /** + * 删除生产工序信息 + * + * @param processId 生产工序主键 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int deleteProRecipeByRecipeId(String processId) { + return proRecipeMapper.deleteProRecipeByRecipeId(processId); + } +} diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/ProOrderMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/ProOrderMapper.xml index a5ba576f..302369cb 100644 --- a/op-modules/op-mes/src/main/resources/mapper/mes/ProOrderMapper.xml +++ b/op-modules/op-mes/src/main/resources/mapper/mes/ProOrderMapper.xml @@ -217,8 +217,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" where id = #{id} + + + update pro_order set quantity_split = quantity_split-#{worker.quantitySplit}, + update_time = GETDATE() + where id = #{worker.orderId} + + - + delete from pro_order where id = #{id} diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/ProOrderWorkorderMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/ProOrderWorkorderMapper.xml index 527da2d4..3702d3b7 100644 --- a/op-modules/op-mes/src/main/resources/mapper/mes/ProOrderWorkorderMapper.xml +++ b/op-modules/op-mes/src/main/resources/mapper/mes/ProOrderWorkorderMapper.xml @@ -70,6 +70,8 @@ and prod_type = #{prodType} and factory_code = #{factoryCode} and is_end = #{isEnd} + and CONVERT(varchar(10),product_date, 120) >= '${productDateStart}' + and '${productDateEnd}%' >= CONVERT(varchar(10),product_date, 120) @@ -93,6 +95,10 @@ WHERE CONVERT(date, create_time) = #{productDate} ) + + + + and recipe_id = #{recipeId} + and order_num = #{orderNum} + and content_text = #{contentText} + and device = #{device} + and material = #{material} + and doc_url = #{docUrl} + + order by order_num asc + + + + + + insert into pro_recipe_content + + content_id, + recipe_id, + order_num, + content_text, + device, + material, + doc_url, + remark, + attr1, + attr2, + attr3, + attr4, + create_by, + create_time, + update_by, + update_time, + + + #{contentId}, + #{recipeId}, + #{orderNum}, + #{contentText}, + #{device}, + #{material}, + #{docUrl}, + #{remark}, + #{attr1}, + #{attr2}, + #{attr3}, + #{attr4}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + + + + + update pro_recipe_content + + recipe_id = #{recipeId}, + order_num = #{orderNum}, + content_text = #{contentText}, + device = #{device}, + material = #{material}, + doc_url = #{docUrl}, + remark = #{remark}, + attr1 = #{attr1}, + attr2 = #{attr2}, + attr3 = #{attr3}, + attr4 = #{attr4}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + + where content_id = #{contentId} + + + + delete from pro_recipe_content where content_id = #{contentId} + + + + delete from pro_recipe_content where content_id in + + #{contentId} + + + diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/ProRecipeMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/ProRecipeMapper.xml new file mode 100644 index 00000000..4bcf12ad --- /dev/null +++ b/op-modules/op-mes/src/main/resources/mapper/mes/ProRecipeMapper.xml @@ -0,0 +1,146 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + select recipe_id, recipe_code, recipe_name, attention, + enable_flag, remark, attr1, attr2, attr3, attr4, create_by, create_time, + update_by, update_time,split_merge,split_merg_num,sync,version,work_time + from pro_recipe + + + + + + + + + + + + insert into pro_recipe + + recipe_id, + recipe_code, + recipe_name, + attention, + enable_flag, + remark, + attr1, + attr2, + attr3, + attr4, + create_by, + create_time, + update_by, + update_time, + split_merge, + split_merg_num, + sync, + version, + work_time, + + + #{recipeId}, + #{recipeCode}, + #{recipeName}, + #{attention}, + #{enableFlag}, + #{remark}, + #{attr1}, + #{attr2}, + #{attr3}, + #{attr4}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{splitMerge}, + #{splitMergNum}, + #{sync}, + #{version}, + #{workTime}, + + + + update pro_recipe + + recipe_code = #{recipeCode}, + recipe_name = #{recipeName}, + attention = #{attention}, + enable_flag = #{enableFlag}, + remark = #{remark}, + attr1 = #{attr1}, + attr2 = #{attr2}, + attr3 = #{attr3}, + attr4 = #{attr4}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + split_merge = #{splitMerge}, + split_merg_num = #{splitMergNum}, + sync = #{sync}, + version = #{version}, + work_time = #{workTime}, + + where recipe_id = #{recipeId} + + + + delete from pro_recipe where recipe_id = #{recipeId} + + + + delete from pro_recipe where recipe_id in + + #{recipeId} + + +