diff --git a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcCheckProjectController.java b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcCheckProjectController.java index 236ea38f1..4113023b9 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcCheckProjectController.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcCheckProjectController.java @@ -1,7 +1,11 @@ package com.op.quality.controller; +import java.io.IOException; import java.util.List; import javax.servlet.http.HttpServletResponse; + +import com.op.common.security.utils.SecurityUtils; +import com.op.system.api.domain.SysUser; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -20,6 +24,7 @@ import com.op.common.core.web.controller.BaseController; import com.op.common.core.web.domain.AjaxResult; import com.op.common.core.utils.poi.ExcelUtil; import com.op.common.core.web.page.TableDataInfo; +import org.springframework.web.multipart.MultipartFile; /** * 检验项目维护Controller @@ -62,6 +67,28 @@ public class QcCheckProjectController extends BaseController { util.exportExcel(response, list, "检验项目维护数据"); } + /** + * 导入检验项目维护列表 + */ + @RequiresPermissions("quality:project:import") + @Log(title = "检验项目维护", businessType = BusinessType.EXPORT) + @PostMapping("/importData") + public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception { + ExcelUtil util = new ExcelUtil(QcCheckProject.class); + List projectList = util.importExcel(file.getInputStream()); + String operName = SecurityUtils.getUsername(); + String message = qcCheckProjectService.importCheckProject(projectList, updateSupport, operName); + return success(message); + } + /** + * 检验项目导入模板 + */ + @PostMapping("/importTemplate") + public void importTemplate(HttpServletResponse response) throws IOException { + ExcelUtil util = new ExcelUtil(QcCheckProject.class); + util.importTemplateExcel(response, "检测项目"); + } + /** * 获取检验项目维护详细信息 */ diff --git a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcProjectTypeController.java b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcProjectTypeController.java new file mode 100644 index 000000000..9dea39b14 --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcProjectTypeController.java @@ -0,0 +1,97 @@ +package com.op.quality.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; +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.op.common.log.annotation.Log; +import com.op.common.log.enums.BusinessType; +import com.op.common.security.annotation.RequiresPermissions; +import com.op.quality.domain.QcProjectType; +import com.op.quality.service.IQcProjectTypeService; +import com.op.common.core.web.controller.BaseController; +import com.op.common.core.web.domain.AjaxResult; +import com.op.common.core.utils.poi.ExcelUtil; +import com.op.common.core.web.page.TableDataInfo; + +/** + * 检验方案维护Controller + * + * @author Open Platform + * @date 2023-12-27 + */ +@RestController +@RequestMapping("/qcProjectType") +public class QcProjectTypeController extends BaseController { + @Autowired + private IQcProjectTypeService qcProjectTypeService; + + /** + * 查询检验方案维护列表 + */ + @RequiresPermissions("quality:qcProjectType:list") + @GetMapping("/list") + public TableDataInfo list(QcProjectType qcProjectType) { + startPage(); + List list = qcProjectTypeService.selectQcProjectTypeList(qcProjectType); + return getDataTable(list); + } + + /** + * 导出检验方案维护列表 + */ + @RequiresPermissions("quality:qcProjectType:export") + @Log(title = "检验方案维护", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, QcProjectType qcProjectType) { + List list = qcProjectTypeService.selectQcProjectTypeList(qcProjectType); + ExcelUtil util = new ExcelUtil(QcProjectType.class); + util.exportExcel(response, list, "检验方案维护数据"); + } + + /** + * 获取检验方案维护详细信息 + */ + @RequiresPermissions("quality:qcProjectType:query") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") String id) { + return success(qcProjectTypeService.selectQcProjectTypeById(id)); + } + + /** + * 新增检验方案维护 + */ + @RequiresPermissions("quality:qcProjectType:add") + @Log(title = "检验方案维护", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody QcProjectType qcProjectType) { + return toAjax(qcProjectTypeService.insertQcProjectType(qcProjectType)); + } + + /** + * 修改检验方案维护 + */ + @RequiresPermissions("quality:qcProjectType:edit") + @Log(title = "检验方案维护", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody QcProjectType qcProjectType) { + return toAjax(qcProjectTypeService.updateQcProjectType(qcProjectType)); + } + + /** + * 删除检验方案维护 + */ + @RequiresPermissions("quality:qcProjectType:remove") + @Log(title = "检验方案维护", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable String[] ids) { + return toAjax(qcProjectTypeService.deleteQcProjectTypeByIds(ids)); + } +} diff --git a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcSampleRuleController.java b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcSampleRuleController.java new file mode 100644 index 000000000..073de6521 --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcSampleRuleController.java @@ -0,0 +1,97 @@ +package com.op.quality.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; +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.op.common.log.annotation.Log; +import com.op.common.log.enums.BusinessType; +import com.op.common.security.annotation.RequiresPermissions; +import com.op.quality.domain.QcSampleRule; +import com.op.quality.service.IQcSampleRuleService; +import com.op.common.core.web.controller.BaseController; +import com.op.common.core.web.domain.AjaxResult; +import com.op.common.core.utils.poi.ExcelUtil; +import com.op.common.core.web.page.TableDataInfo; + +/** + * 来料抽样规则Controller + * + * @author Open Platform + * @date 2023-12-28 + */ +@RestController +@RequestMapping("/qcSampleRule") +public class QcSampleRuleController extends BaseController { + @Autowired + private IQcSampleRuleService qcSampleRuleService; + + /** + * 查询来料抽样规则列表 + */ + @RequiresPermissions("quality:qcSampleRule:list") + @GetMapping("/list") + public TableDataInfo list(QcSampleRule qcSampleRule) { + startPage(); + List list = qcSampleRuleService.selectQcSampleRuleList(qcSampleRule); + return getDataTable(list); + } + + /** + * 导出来料抽样规则列表 + */ + @RequiresPermissions("quality:qcSampleRule:export") + @Log(title = "来料抽样规则", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, QcSampleRule qcSampleRule) { + List list = qcSampleRuleService.selectQcSampleRuleList(qcSampleRule); + ExcelUtil util = new ExcelUtil(QcSampleRule.class); + util.exportExcel(response, list, "来料抽样规则数据"); + } + + /** + * 获取来料抽样规则详细信息 + */ + @RequiresPermissions("quality:qcSampleRule:query") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") String id) { + return success(qcSampleRuleService.selectQcSampleRuleById(id)); + } + + /** + * 新增来料抽样规则 + */ + @RequiresPermissions("quality:qcSampleRule:add") + @Log(title = "来料抽样规则", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody QcSampleRule qcSampleRule) { + return toAjax(qcSampleRuleService.insertQcSampleRule(qcSampleRule)); + } + + /** + * 修改来料抽样规则 + */ + @RequiresPermissions("quality:qcSampleRule:edit") + @Log(title = "来料抽样规则", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody QcSampleRule qcSampleRule) { + return toAjax(qcSampleRuleService.updateQcSampleRule(qcSampleRule)); + } + + /** + * 删除来料抽样规则 + */ + @RequiresPermissions("quality:qcSampleRule:remove") + @Log(title = "来料抽样规则", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable String[] ids) { + return toAjax(qcSampleRuleService.deleteQcSampleRuleByIds(ids)); + } +} diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckProject.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckProject.java index 141dea068..57307e84d 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckProject.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckProject.java @@ -52,16 +52,27 @@ public class QcCheckProject extends BaseEntity { /** 工厂编码 */ @Excel(name = "工厂编码") private String factoryCode; - + @Excel(name = "抽样方案") private String samplePlan; - + @Excel(name = "合格判定") private String judge; - + @Excel(name = "缺陷等级") private String defectLevel; + @Excel(name = "检验方案类型") + private String projectType; private String materialCode; private String typeCode; private String groupId; + + public String getProjectType() { + return projectType; + } + + public void setProjectType(String projectType) { + this.projectType = projectType; + } + public String getMaterialCode() { return materialCode; } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckReportIncome.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckReportIncome.java index c52725762..6bf0ff3f5 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckReportIncome.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckReportIncome.java @@ -115,6 +115,9 @@ public class QcCheckReportIncome extends BaseEntity { /** 删除标识1删除0正常 */ private String delFlag; + @Excel(name = "抽样数量") + private BigDecimal sampleQuality; + private String incomeTimeStart; private String incomeTimeEnd; private String checkTimeStart; @@ -122,6 +125,13 @@ public class QcCheckReportIncome extends BaseEntity { private String typeCode;//大类 private String checkType;//小类 + public BigDecimal getSampleQuality() { + return sampleQuality; + } + + public void setSampleQuality(BigDecimal sampleQuality) { + this.sampleQuality = sampleQuality; + } public String getCheckType() { return checkType; diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcProjectType.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcProjectType.java new file mode 100644 index 000000000..5b63d8f17 --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcProjectType.java @@ -0,0 +1,97 @@ +package com.op.quality.domain; + +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.op.common.core.annotation.Excel; +import com.op.common.core.web.domain.BaseEntity; + +/** + * 检验方案维护对象 qc_project_type + * + * @author Open Platform + * @date 2023-12-27 + */ +public class QcProjectType extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** id */ + private String id; + + /** 检测项方案编号 */ + @Excel(name = "检测项方案编号") + private String projectTypeCode; + + /** 检测项方案名称 */ + @Excel(name = "检测项方案名称") + private String projectTypeName; + + /** 预留字段1 */ + @Excel(name = "预留字段1") + private String attr1; + + /** 工厂编码 */ + @Excel(name = "工厂编码") + private String factoryCode; + + /** 删除标识1删除0正常 */ + private String delFlag; + + public void setId(String id) { + this.id = id; + } + + public String getId() { + return id; + } + public void setProjectTypeCode(String projectTypeCode) { + this.projectTypeCode = projectTypeCode; + } + + public String getProjectTypeCode() { + return projectTypeCode; + } + public void setProjectTypeName(String projectTypeName) { + this.projectTypeName = projectTypeName; + } + + public String getProjectTypeName() { + return projectTypeName; + } + public void setAttr1(String attr1) { + this.attr1 = attr1; + } + + public String getAttr1() { + return attr1; + } + public void setFactoryCode(String factoryCode) { + this.factoryCode = factoryCode; + } + + public String getFactoryCode() { + return factoryCode; + } + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getDelFlag() { + return delFlag; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("projectTypeCode", getProjectTypeCode()) + .append("projectTypeName", getProjectTypeName()) + .append("attr1", getAttr1()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("factoryCode", getFactoryCode()) + .append("delFlag", getDelFlag()) + .toString(); + } +} diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcSampleRule.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcSampleRule.java new file mode 100644 index 000000000..cbba0e13f --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcSampleRule.java @@ -0,0 +1,137 @@ +package com.op.quality.domain; + +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.op.common.core.annotation.Excel; +import com.op.common.core.web.domain.BaseEntity; + +/** + * 来料抽样规则对象 qc_sample_rule + * + * @author Open Platform + * @date 2023-12-28 + */ +public class QcSampleRule extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** id */ + private String id; + + /** 开始值 */ + @Excel(name = "开始值") + private Long startValue; + + /** 检测项方案名称 */ + @Excel(name = "结束值") + private Long endValue; + + /** 预留字段1 */ + @Excel(name = "预留字段1") + private String attr1; + + /** 工厂编码 */ + @Excel(name = "工厂编码") + private String factoryCode; + + /** 删除标识1删除0正常 */ + private String delFlag; + + /** 抽样数量 */ + @Excel(name = "抽样数量") + private Long sampleQuality; + + /** 小节点 */ + @Excel(name = "小节点") + private String checkType; + + /** 大节点 */ + @Excel(name = "大节点") + private String typeCode; + + public void setId(String id) { + this.id = id; + } + + public String getId() { + return id; + } + + public Long getStartValue() { + return startValue; + } + + public void setStartValue(Long startValue) { + this.startValue = startValue; + } + + public Long getEndValue() { + return endValue; + } + + public void setEndValue(Long endValue) { + this.endValue = endValue; + } + + public void setAttr1(String attr1) { + this.attr1 = attr1; + } + + public String getAttr1() { + return attr1; + } + public void setFactoryCode(String factoryCode) { + this.factoryCode = factoryCode; + } + + public String getFactoryCode() { + return factoryCode; + } + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getDelFlag() { + return delFlag; + } + public void setSampleQuality(Long sampleQuality) { + this.sampleQuality = sampleQuality; + } + + public Long getSampleQuality() { + return sampleQuality; + } + public void setCheckType(String checkType) { + this.checkType = checkType; + } + + public String getCheckType() { + return checkType; + } + + public void setTypeCode(String typeCode) { + this.typeCode = typeCode; + } + + public String getTypeCode() { + return typeCode; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("start", getStartValue()) + .append("end", getEndValue()) + .append("attr1", getAttr1()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("factoryCode", getFactoryCode()) + .append("delFlag", getDelFlag()) + .append("sampleQuality", getSampleQuality()) + .append("checkType", getCheckType()) + .append("typeCode", getTypeCode()) + .toString(); + } +} diff --git a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckProjectMapper.java b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckProjectMapper.java index 7a1c30d64..068127acf 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckProjectMapper.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcCheckProjectMapper.java @@ -4,6 +4,7 @@ import java.util.List; import com.op.quality.domain.QcCheckProject; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; /** * 检验项目维护Mapper接口 @@ -63,4 +64,7 @@ public interface QcCheckProjectMapper { public QcCheckProject selectSerialNumber(); + public QcCheckProject selectCheckProjectByRuleName(@Param("ruleName") String ruleName, + @Param("projectType") String projectType); + } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcProjectTypeMapper.java b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcProjectTypeMapper.java new file mode 100644 index 000000000..71e279d94 --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcProjectTypeMapper.java @@ -0,0 +1,63 @@ +package com.op.quality.mapper; + +import java.util.List; + +import com.op.quality.domain.QcProjectType; +import org.apache.ibatis.annotations.Mapper; + +/** + * 检验方案维护Mapper接口 + * + * @author Open Platform + * @date 2023-12-27 + */ +@Mapper +public interface QcProjectTypeMapper { + /** + * 查询检验方案维护 + * + * @param id 检验方案维护主键 + * @return 检验方案维护 + */ + public QcProjectType selectQcProjectTypeById(String id); + + /** + * 查询检验方案维护列表 + * + * @param qcProjectType 检验方案维护 + * @return 检验方案维护集合 + */ + public List selectQcProjectTypeList(QcProjectType qcProjectType); + + /** + * 新增检验方案维护 + * + * @param qcProjectType 检验方案维护 + * @return 结果 + */ + public int insertQcProjectType(QcProjectType qcProjectType); + + /** + * 修改检验方案维护 + * + * @param qcProjectType 检验方案维护 + * @return 结果 + */ + public int updateQcProjectType(QcProjectType qcProjectType); + + /** + * 删除检验方案维护 + * + * @param id 检验方案维护主键 + * @return 结果 + */ + public int deleteQcProjectTypeById(String id); + + /** + * 批量删除检验方案维护 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteQcProjectTypeByIds(String[] ids); +} diff --git a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcSampleRuleMapper.java b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcSampleRuleMapper.java new file mode 100644 index 000000000..02a8e0628 --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcSampleRuleMapper.java @@ -0,0 +1,63 @@ +package com.op.quality.mapper; + +import java.util.List; + +import com.op.quality.domain.QcSampleRule; +import org.apache.ibatis.annotations.Mapper; + +/** + * 来料抽样规则Mapper接口 + * + * @author Open Platform + * @date 2023-12-28 + */ +@Mapper +public interface QcSampleRuleMapper { + /** + * 查询来料抽样规则 + * + * @param id 来料抽样规则主键 + * @return 来料抽样规则 + */ + public QcSampleRule selectQcSampleRuleById(String id); + + /** + * 查询来料抽样规则列表 + * + * @param qcSampleRule 来料抽样规则 + * @return 来料抽样规则集合 + */ + public List selectQcSampleRuleList(QcSampleRule qcSampleRule); + + /** + * 新增来料抽样规则 + * + * @param qcSampleRule 来料抽样规则 + * @return 结果 + */ + public int insertQcSampleRule(QcSampleRule qcSampleRule); + + /** + * 修改来料抽样规则 + * + * @param qcSampleRule 来料抽样规则 + * @return 结果 + */ + public int updateQcSampleRule(QcSampleRule qcSampleRule); + + /** + * 删除来料抽样规则 + * + * @param id 来料抽样规则主键 + * @return 结果 + */ + public int deleteQcSampleRuleById(String id); + + /** + * 批量删除来料抽样规则 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteQcSampleRuleByIds(String[] ids); +} diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckProjectService.java b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckProjectService.java index 0f3999235..11b5cf21d 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckProjectService.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcCheckProjectService.java @@ -57,4 +57,10 @@ public interface IQcCheckProjectService { * @return 结果 */ public int deleteQcCheckProjectById(String id); + /** + * 导入检验项目维护信息 + * + * @return 结果 + */ + public String importCheckProject(List projectList, Boolean isUpdateSupport, String operName); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcProjectTypeService.java b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcProjectTypeService.java new file mode 100644 index 000000000..56ab6b49f --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcProjectTypeService.java @@ -0,0 +1,60 @@ +package com.op.quality.service; + +import java.util.List; +import com.op.quality.domain.QcProjectType; + +/** + * 检验方案维护Service接口 + * + * @author Open Platform + * @date 2023-12-27 + */ +public interface IQcProjectTypeService { + /** + * 查询检验方案维护 + * + * @param id 检验方案维护主键 + * @return 检验方案维护 + */ + public QcProjectType selectQcProjectTypeById(String id); + + /** + * 查询检验方案维护列表 + * + * @param qcProjectType 检验方案维护 + * @return 检验方案维护集合 + */ + public List selectQcProjectTypeList(QcProjectType qcProjectType); + + /** + * 新增检验方案维护 + * + * @param qcProjectType 检验方案维护 + * @return 结果 + */ + public int insertQcProjectType(QcProjectType qcProjectType); + + /** + * 修改检验方案维护 + * + * @param qcProjectType 检验方案维护 + * @return 结果 + */ + public int updateQcProjectType(QcProjectType qcProjectType); + + /** + * 批量删除检验方案维护 + * + * @param ids 需要删除的检验方案维护主键集合 + * @return 结果 + */ + public int deleteQcProjectTypeByIds(String[] ids); + + /** + * 删除检验方案维护信息 + * + * @param id 检验方案维护主键 + * @return 结果 + */ + public int deleteQcProjectTypeById(String id); +} diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcSampleRuleService.java b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcSampleRuleService.java new file mode 100644 index 000000000..7b23f75f8 --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcSampleRuleService.java @@ -0,0 +1,60 @@ +package com.op.quality.service; + +import java.util.List; +import com.op.quality.domain.QcSampleRule; + +/** + * 来料抽样规则Service接口 + * + * @author Open Platform + * @date 2023-12-28 + */ +public interface IQcSampleRuleService { + /** + * 查询来料抽样规则 + * + * @param id 来料抽样规则主键 + * @return 来料抽样规则 + */ + public QcSampleRule selectQcSampleRuleById(String id); + + /** + * 查询来料抽样规则列表 + * + * @param qcSampleRule 来料抽样规则 + * @return 来料抽样规则集合 + */ + public List selectQcSampleRuleList(QcSampleRule qcSampleRule); + + /** + * 新增来料抽样规则 + * + * @param qcSampleRule 来料抽样规则 + * @return 结果 + */ + public int insertQcSampleRule(QcSampleRule qcSampleRule); + + /** + * 修改来料抽样规则 + * + * @param qcSampleRule 来料抽样规则 + * @return 结果 + */ + public int updateQcSampleRule(QcSampleRule qcSampleRule); + + /** + * 批量删除来料抽样规则 + * + * @param ids 需要删除的来料抽样规则主键集合 + * @return 结果 + */ + public int deleteQcSampleRuleByIds(String[] ids); + + /** + * 删除来料抽样规则信息 + * + * @param id 来料抽样规则主键 + * @return 结果 + */ + public int deleteQcSampleRuleById(String id); +} diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckProjectServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckProjectServiceImpl.java index 6e6fd6068..36737b326 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckProjectServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckProjectServiceImpl.java @@ -3,19 +3,26 @@ package com.op.quality.service.impl; import java.util.List; import com.baomidou.dynamic.datasource.annotation.DS; +import com.op.common.core.exception.ServiceException; import com.op.common.core.utils.DateUtils; import com.op.common.core.utils.StringUtils; +import com.op.common.core.utils.bean.BeanValidators; import com.op.common.core.utils.uuid.IdUtils; import com.op.common.security.utils.SecurityUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.op.quality.mapper.QcCheckProjectMapper; import com.op.quality.domain.QcCheckProject; import com.op.quality.service.IQcCheckProjectService; +import org.springframework.util.CollectionUtils; +import org.springframework.util.ObjectUtils; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; import javax.servlet.http.HttpServletRequest; +import javax.validation.Validator; /** * 检验项目维护Service业务层处理 @@ -25,9 +32,14 @@ import javax.servlet.http.HttpServletRequest; */ @Service public class QcCheckProjectServiceImpl implements IQcCheckProjectService { + private static final Logger log = LoggerFactory.getLogger(QcCheckProject.class); + @Autowired private QcCheckProjectMapper qcCheckProjectMapper; + @Autowired + protected Validator validator; + /** * 查询检验项目维护 * @@ -113,6 +125,60 @@ public class QcCheckProjectServiceImpl implements IQcCheckProjectService { return qcCheckProjectMapper.deleteQcCheckProjectById(id); } + @Override + @DS("#header.poolName") + public String importCheckProject(List projectList, Boolean isUpdateSupport, String operName) { + if (CollectionUtils.isEmpty(projectList)) { + throw new ServiceException("导入的检测项目数据为空!"); + } + int successNum = 0; + int failproNum = 0; + StringBuilder successMsg = new StringBuilder(); + StringBuilder failproMsg = new StringBuilder(); + + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + String key = "#header.poolName"; + String factoryCode = request.getHeader(key.substring(8)).replace("ds_", ""); + for (QcCheckProject project : projectList) { + try { + QcCheckProject pro = qcCheckProjectMapper.selectCheckProjectByRuleName(project.getRuleName(),project.getProjectType()); + if (ObjectUtils.isEmpty(pro)) { + BeanValidators.validateWithException(validator, project); + project.setId(IdUtils.fastSimpleUUID()); + project.setCreateTime(DateUtils.getNowDate()); + project.setCreateBy(operName); + project.setFactoryCode(factoryCode); + qcCheckProjectMapper.insertQcCheckProject(project); + successNum++; + successMsg.append("
" + successNum + "。检测项目" + project.getRuleName()+ "导入成功"); + } else if (isUpdateSupport) { + BeanValidators.validateWithException(validator, project); + project.setId(pro.getId()); + project.setUpdateTime(DateUtils.getNowDate()); + project.setUpdateBy(operName); + qcCheckProjectMapper.updateQcCheckProject(project); + successNum++; + successMsg.append("
" + successNum + "。检测项目[" + project.getRuleName()+ "]更新成功"); + }else { + failproNum++; + failproMsg.append("
" + failproNum + "。检测项目[" + project.getRuleName()+ "]已存在"); + } + }catch (Exception e) { + failproNum++; + String msg = "
" + failproNum + "、检测项目[" + project.getRuleName() + "]导入失败"; + failproMsg.append(msg + e.getMessage()); + log.error(msg, e); + } + } + if (failproNum > 0) { + failproMsg.insert(0, "很抱歉,导入失败!共" + failproNum + " 条数据格式不正确,错误如下:"); + throw new ServiceException(failproMsg.toString()); + } else { + successMsg.insert(0, "恭喜您,数据已全部导入成功! 共" + successNum + " 条,数据如下:"); + } + return successMsg.toString(); + } + private String getOrderNum() { String orderNum = ""; String now = DateUtils.getDate(); diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcProjectTypeServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcProjectTypeServiceImpl.java new file mode 100644 index 000000000..d1a278c4f --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcProjectTypeServiceImpl.java @@ -0,0 +1,109 @@ +package com.op.quality.service.impl; + +import java.util.List; + +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.common.security.utils.SecurityUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.op.quality.mapper.QcProjectTypeMapper; +import com.op.quality.domain.QcProjectType; +import com.op.quality.service.IQcProjectTypeService; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.servlet.http.HttpServletRequest; + +/** + * 检验方案维护Service业务层处理 + * + * @author Open Platform + * @date 2023-12-27 + */ +@Service +public class QcProjectTypeServiceImpl implements IQcProjectTypeService { + @Autowired + private QcProjectTypeMapper qcProjectTypeMapper; + + /** + * 查询检验方案维护 + * + * @param id 检验方案维护主键 + * @return 检验方案维护 + */ + @Override + @DS("#header.poolName") + public QcProjectType selectQcProjectTypeById(String id) { + return qcProjectTypeMapper.selectQcProjectTypeById(id); + } + + /** + * 查询检验方案维护列表 + * + * @param qcProjectType 检验方案维护 + * @return 检验方案维护 + */ + @Override + @DS("#header.poolName") + public List selectQcProjectTypeList(QcProjectType qcProjectType) { + return qcProjectTypeMapper.selectQcProjectTypeList(qcProjectType); + } + + /** + * 新增检验方案维护 + * + * @param qcProjectType 检验方案维护 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int insertQcProjectType(QcProjectType qcProjectType) { + qcProjectType.setId(IdUtils.fastSimpleUUID()); + qcProjectType.setCreateBy(SecurityUtils.getUsername()); + qcProjectType.setCreateTime(DateUtils.getNowDate()); + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + String key = "#header.poolName"; + qcProjectType.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_","")); + return qcProjectTypeMapper.insertQcProjectType(qcProjectType); + } + + /** + * 修改检验方案维护 + * + * @param qcProjectType 检验方案维护 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int updateQcProjectType(QcProjectType qcProjectType) { + qcProjectType.setUpdateTime(DateUtils.getNowDate()); + qcProjectType.setUpdateBy(SecurityUtils.getUsername()); + return qcProjectTypeMapper.updateQcProjectType(qcProjectType); + } + + /** + * 批量删除检验方案维护 + * + * @param ids 需要删除的检验方案维护主键 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int deleteQcProjectTypeByIds(String[] ids) { + return qcProjectTypeMapper.deleteQcProjectTypeByIds(ids); + } + + /** + * 删除检验方案维护信息 + * + * @param id 检验方案维护主键 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int deleteQcProjectTypeById(String id) { + return qcProjectTypeMapper.deleteQcProjectTypeById(id); + } +} diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcSampleRuleServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcSampleRuleServiceImpl.java new file mode 100644 index 000000000..819217e0c --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcSampleRuleServiceImpl.java @@ -0,0 +1,109 @@ +package com.op.quality.service.impl; + +import java.util.List; + +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.common.security.utils.SecurityUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.op.quality.mapper.QcSampleRuleMapper; +import com.op.quality.domain.QcSampleRule; +import com.op.quality.service.IQcSampleRuleService; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.servlet.http.HttpServletRequest; + +/** + * 来料抽样规则Service业务层处理 + * + * @author Open Platform + * @date 2023-12-28 + */ +@Service +public class QcSampleRuleServiceImpl implements IQcSampleRuleService { + @Autowired + private QcSampleRuleMapper qcSampleRuleMapper; + + /** + * 查询来料抽样规则 + * + * @param id 来料抽样规则主键 + * @return 来料抽样规则 + */ + @Override + @DS("#header.poolName") + public QcSampleRule selectQcSampleRuleById(String id) { + return qcSampleRuleMapper.selectQcSampleRuleById(id); + } + + /** + * 查询来料抽样规则列表 + * + * @param qcSampleRule 来料抽样规则 + * @return 来料抽样规则 + */ + @Override + @DS("#header.poolName") + public List selectQcSampleRuleList(QcSampleRule qcSampleRule) { + return qcSampleRuleMapper.selectQcSampleRuleList(qcSampleRule); + } + + /** + * 新增来料抽样规则 + * + * @param qcSampleRule 来料抽样规则 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int insertQcSampleRule(QcSampleRule qcSampleRule) { + qcSampleRule.setCreateTime(DateUtils.getNowDate()); + qcSampleRule.setId(IdUtils.fastSimpleUUID()); + qcSampleRule.setCreateBy(SecurityUtils.getUsername()); + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + String key = "#header.poolName"; + qcSampleRule.setFactoryCode(request.getHeader(key.substring(8)).replace("ds_","")); + return qcSampleRuleMapper.insertQcSampleRule(qcSampleRule); + } + + /** + * 修改来料抽样规则 + * + * @param qcSampleRule 来料抽样规则 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int updateQcSampleRule(QcSampleRule qcSampleRule) { + qcSampleRule.setUpdateTime(DateUtils.getNowDate()); + qcSampleRule.setUpdateBy(SecurityUtils.getUsername()); + return qcSampleRuleMapper.updateQcSampleRule(qcSampleRule); + } + + /** + * 批量删除来料抽样规则 + * + * @param ids 需要删除的来料抽样规则主键 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int deleteQcSampleRuleByIds(String[] ids) { + return qcSampleRuleMapper.deleteQcSampleRuleByIds(ids); + } + + /** + * 删除来料抽样规则信息 + * + * @param id 来料抽样规则主键 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int deleteQcSampleRuleById(String id) { + return qcSampleRuleMapper.deleteQcSampleRuleById(id); + } +} diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckProjectMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckProjectMapper.xml index 5ee4c824d..1b49846f1 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckProjectMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckProjectMapper.xml @@ -23,13 +23,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + select id, order_num, rule_name, property_code, check_mode, check_tool, unit_code, check_standard, attr1, create_by, create_time, update_by, update_time, factory_code, del_flag,sample_plan, - judge,defect_level + judge,defect_level,project_type from qc_check_project @@ -46,6 +47,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and attr1 = #{attr1} and factory_code = #{factoryCode} and judge = #{judge} + project_type = #{projectType} order by create_time @@ -76,6 +78,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" sample_plan, judge, defect_level, + project_type, @@ -97,6 +100,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{samplePlan}, #{judge}, #{defectLevel}, + #{projectType}, @@ -120,6 +124,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" sample_plan = #{samplePlan}, judge = #{judge}, defect_level = #{defectLevel}, + project_type = #{projectType}, where id = #{id} @@ -141,4 +146,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" WHERE CONVERT(varchar(10),create_time, 120) = CONVERT(varchar(10),GETDATE(), 120) + + diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckReportIncomeMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckReportIncomeMapper.xml index ccd11f365..dcdc372f9 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckReportIncomeMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckReportIncomeMapper.xml @@ -33,11 +33,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + select record_id, check_no, income_batch_no, order_no, material_code, material_name, quality, unit, - supplier_code, supplier_name, income_time, check_loc, check_status, check_man_code, check_man_name, + supplier_code, supplier_name, income_time, check_loc, check_status, check_man_code, check_man_name,sample_quality, check_time, check_result, status, attr1, attr2, attr3, attr4, create_by, create_time, update_by, update_time, factory_code, del_flag from qc_check_task @@ -46,7 +47,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select qct.record_id, qct.check_no, qct.income_batch_no, qct.order_no, qct.material_code, qct.material_name, qct.quality, qct.unit, qct.supplier_code, qct.supplier_name, qct.income_time, qct.check_loc, qct.check_status, - qct.check_man_code, qct.check_man_name,qct.check_time, qct.check_result, qct.status, + qct.check_man_code, qct.check_man_name,qct.check_time, qct.check_result, qct.status,qct.sample_quality, qct.create_by,qct.create_time, qct.update_by, qct.update_time,qct.check_type, q.type_code from qc_check_task qct @@ -132,7 +133,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" td.update_time updateTime, qctp.upper_diff upperDiff, qctp.down_diff downDiff, - qctp.sample + qctp.sample, + qctp.sample_num sampleNum from qc_check_task_detail td left join qc_check_type_project qctp on td.type_project_id = qctp.id where td.belong_to = #{recordId} diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcProjectTypeMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcProjectTypeMapper.xml new file mode 100644 index 000000000..fb48d98d4 --- /dev/null +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcProjectTypeMapper.xml @@ -0,0 +1,93 @@ + + + + + + + + + + + + + + + + + + + select id, project_type_code, project_type_name, attr1, create_by, create_time, update_by, update_time, factory_code, del_flag from qc_project_type + + + + + + + + insert into qc_project_type + + id, + project_type_code, + project_type_name, + attr1, + create_by, + create_time, + update_by, + update_time, + factory_code, + del_flag, + + + #{id}, + #{projectTypeCode}, + #{projectTypeName}, + #{attr1}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{factoryCode}, + #{delFlag}, + + + + + update qc_project_type + + project_type_code = #{projectTypeCode}, + project_type_name = #{projectTypeName}, + attr1 = #{attr1}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + factory_code = #{factoryCode}, + del_flag = #{delFlag}, + + where id = #{id} + + + + delete from qc_project_type where id = #{id} + + + + delete from qc_project_type where id in + + #{id} + + + \ No newline at end of file diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcSampleRuleMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcSampleRuleMapper.xml new file mode 100644 index 000000000..ee006ebbd --- /dev/null +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcSampleRuleMapper.xml @@ -0,0 +1,108 @@ + + + + + + + + + + + + + + + + + + + + + + select id, start_value, end_value, attr1, create_by, create_time, update_by, update_time, factory_code, del_flag, sample_quality, check_type, type_code from qc_sample_rule + + + + + + + + insert into qc_sample_rule + + id, + start_value, + end_value, + attr1, + create_by, + create_time, + update_by, + update_time, + factory_code, + del_flag, + sample_quality, + check_type, + type_code, + + + #{id}, + #{startValue}, + #{endValue}, + #{attr1}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{factoryCode}, + #{delFlag}, + #{sampleQuality}, + #{checkType}, + #{typeCode}, + + + + + update qc_sample_rule + + start_value = #{startValue}, + end_value = #{endValue}, + attr1 = #{attr1}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + factory_code = #{factoryCode}, + del_flag = #{delFlag}, + sample_quality = #{sampleQuality}, + check_type = #{checkType}, + type_code = #{typeCode}, + + where id = #{id} + + + + delete from qc_sample_rule where id = #{id} + + + + delete from qc_sample_rule where id in + + #{id} + + + \ No newline at end of file diff --git a/op-modules/op-wms/src/main/java/com/op/wms/controller/OdsProcureOrderController.java b/op-modules/op-wms/src/main/java/com/op/wms/controller/OdsProcureOrderController.java index 5568bd0fc..58d83e6b1 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/controller/OdsProcureOrderController.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/controller/OdsProcureOrderController.java @@ -120,6 +120,8 @@ public class OdsProcureOrderController extends BaseController { @PostMapping("/PurchaseOrderdeliPda") public AjaxResult PurchaseOrderdeliPda(@RequestBody OdsProcureOrder odsProcureOrder) { +// odsProcureOrderService.PurchaseOrderdeliPdas(odsProcureOrder); +// return success(null); int tem =odsProcureOrderService.PurchaseOrderdeliPda(odsProcureOrder); return success(tem); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsProductPutController.java b/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsProductPutController.java index 2fd71e0fb..180d35cf7 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsProductPutController.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsProductPutController.java @@ -17,7 +17,7 @@ import com.op.common.core.web.page.TableDataInfo; /** * 成品生产入库Controller - * + * * @author Open Platform * @date 2023-08-31 */ @@ -96,5 +96,12 @@ public class WmsProductPutController extends BaseController { public AjaxResult selectWmsProductPutByWorkOrder(@PathVariable("workOrder") String workOrder){ return AjaxResult.success(wmsProductPutService.selectWmsProductPutByWorkOrder(workOrder)); } + /** + * 手持接口:根据报工单号查询 + */ + @PostMapping("/s/WmsProductPutByWorkOrderquery") + public AjaxResult WmsProductPutByWorkOrderquery(@RequestBody WmsProductPut wmsProductPut){ + return AjaxResult.success(wmsProductPutService.WmsProductPutByWorkOrderquery(wmsProductPut)); + } } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/mapper/OdsProcureOrderMapper.java b/op-modules/op-wms/src/main/java/com/op/wms/mapper/OdsProcureOrderMapper.java index 697f57dfc..558ec2ade 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/mapper/OdsProcureOrderMapper.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/mapper/OdsProcureOrderMapper.java @@ -60,4 +60,6 @@ public interface OdsProcureOrderMapper { public int deleteOdsProcureOrderByIDs(String[] IDs); Integer updateRealityNuById(OdsProcureOrder odsProcureOrder); + + String selectBaseSupplier(OdsProcureOrder odsProcureOrder); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/mapper/OdsProcureOutOrderMapper.java b/op-modules/op-wms/src/main/java/com/op/wms/mapper/OdsProcureOutOrderMapper.java index e318ab39c..543496b2e 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/mapper/OdsProcureOutOrderMapper.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/mapper/OdsProcureOutOrderMapper.java @@ -73,4 +73,6 @@ public interface OdsProcureOutOrderMapper { List selectOdsProcureOutOrderListZU(OdsProcureOutOrder odsProcureOutOrder); List selectOdsProcureOutOrderListZUT(OdsProcureOutOrder odsProcureOutOrder1); + + List selectOdsProcureOutOrderListByu1(@Param("list")List orderList); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/mapper/WmsProductPutMapper.java b/op-modules/op-wms/src/main/java/com/op/wms/mapper/WmsProductPutMapper.java index 1ec730734..5ec180822 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/mapper/WmsProductPutMapper.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/mapper/WmsProductPutMapper.java @@ -6,14 +6,14 @@ import com.op.wms.domain.WmsProductPut; /** * 成品生产入库Mapper接口 - * + * * @author Open Platform * @date 2023-08-31 */ public interface WmsProductPutMapper { /** * 查询成品生产入库 - * + * * @param id 成品生产入库主键 * @return 成品生产入库 */ @@ -21,7 +21,7 @@ public interface WmsProductPutMapper { /** * 查询成品生产入库列表 - * + * * @param wmsProductPut 成品生产入库 * @return 成品生产入库集合 */ @@ -29,7 +29,7 @@ public interface WmsProductPutMapper { /** * 新增成品生产入库 - * + * * @param wmsProductPut 成品生产入库 * @return 结果 */ @@ -37,7 +37,7 @@ public interface WmsProductPutMapper { /** * 修改成品生产入库 - * + * * @param wmsProductPut 成品生产入库 * @return 结果 */ @@ -45,7 +45,7 @@ public interface WmsProductPutMapper { /** * 删除成品生产入库 - * + * * @param id 成品生产入库主键 * @return 结果 */ @@ -53,7 +53,7 @@ public interface WmsProductPutMapper { /** * 批量删除成品生产入库 - * + * * @param ids 需要删除的数据主键集合 * @return 结果 */ @@ -63,4 +63,6 @@ public interface WmsProductPutMapper { * 手持接口:根据报工单号查询 */ public WmsProductPut selectWmsProductPutByWorkOrder(String workOrder); + + WmsProductPut selectMesReportWork(WmsProductPut wmsProductPut); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/IOdsProcureOrderService.java b/op-modules/op-wms/src/main/java/com/op/wms/service/IOdsProcureOrderService.java index 5cb221329..e7754fb39 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/IOdsProcureOrderService.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/IOdsProcureOrderService.java @@ -92,4 +92,6 @@ public interface IOdsProcureOrderService { void OutboundPostingSAP(List odsProcureOutOrder); AjaxResult sapPurchaseOrderSync(OdsProcureOrder odsProcureOrder); + + void PurchaseOrderdeliPdas(OdsProcureOrder odsProcureOrder); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/IWmsProductPutService.java b/op-modules/op-wms/src/main/java/com/op/wms/service/IWmsProductPutService.java index d7e17ac3a..8f7a54b2f 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/IWmsProductPutService.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/IWmsProductPutService.java @@ -5,14 +5,14 @@ import com.op.wms.domain.WmsProductPut; /** * 成品生产入库Service接口 - * + * * @author Open Platform * @date 2023-08-31 */ public interface IWmsProductPutService { /** * 查询成品生产入库 - * + * * @param id 成品生产入库主键 * @return 成品生产入库 */ @@ -20,7 +20,7 @@ public interface IWmsProductPutService { /** * 查询成品生产入库列表 - * + * * @param wmsProductPut 成品生产入库 * @return 成品生产入库集合 */ @@ -28,7 +28,7 @@ public interface IWmsProductPutService { /** * 新增成品生产入库 - * + * * @param wmsProductPut 成品生产入库 * @return 结果 */ @@ -36,7 +36,7 @@ public interface IWmsProductPutService { /** * 修改成品生产入库 - * + * * @param wmsProductPut 成品生产入库 * @return 结果 */ @@ -44,7 +44,7 @@ public interface IWmsProductPutService { /** * 批量删除成品生产入库 - * + * * @param ids 需要删除的成品生产入库主键集合 * @return 结果 */ @@ -52,7 +52,7 @@ public interface IWmsProductPutService { /** * 删除成品生产入库信息 - * + * * @param id 成品生产入库主键 * @return 结果 */ @@ -62,4 +62,6 @@ public interface IWmsProductPutService { * 手持接口:根据报工单号查询 */ public WmsProductPut selectWmsProductPutByWorkOrder(String workOrder); + + public WmsProductPut WmsProductPutByWorkOrderquery(WmsProductPut wmsProductPut); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOrderServiceImpl.java b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOrderServiceImpl.java index f88747b42..398228d02 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOrderServiceImpl.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/OdsProcureOrderServiceImpl.java @@ -16,7 +16,9 @@ import com.op.common.core.domain.R; import com.op.common.core.web.domain.AjaxResult; import com.op.common.security.utils.SecurityUtils; +import com.op.system.api.RemoteQualityService; import com.op.system.api.RemoteSapService; +import com.op.system.api.domain.quality.QcCheckTaskIncomeDTO; import com.op.system.api.domain.sap.SapBackflushMPQuery; import com.op.system.api.domain.sap.SapMaterialPosting; import com.op.system.api.domain.sap.SapPurchaseOrderQuery; @@ -37,6 +39,10 @@ import com.op.wms.mapper.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.op.wms.service.IOdsProcureOrderService; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.servlet.http.HttpServletRequest; /** * 包材采购单Service业务层处理 @@ -58,6 +64,8 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { private OdsProcureOutOrderMapper odsProcureOutOrderMapper; @Autowired private RemoteSapService remoteSapService; + @Autowired + private RemoteQualityService remoteQualityService; @Autowired private BaseWarehouseMapper baseWarehouseMapper; @@ -174,6 +182,25 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { odsProcureOrder.setOrderStatus("2"); } Integer tem= odsProcureOrderMapper.updateRealityNuById(odsProcureOrder); + //插入检验集计划 + QcCheckTaskIncomeDTO qcCheckTaskIncomeDTO=new QcCheckTaskIncomeDTO(); + qcCheckTaskIncomeDTO.setCheckLoc("mjtest"); + qcCheckTaskIncomeDTO.setCheckType("checkTypeLL"); + qcCheckTaskIncomeDTO.setCheckManCode("mobile"); + qcCheckTaskIncomeDTO.setCheckManName("手持测试用户"); + qcCheckTaskIncomeDTO.setSupplierCode(order.getSupplierCode()); + String name= odsProcureOrderMapper.selectBaseSupplier(odsProcureOrder); + qcCheckTaskIncomeDTO.setSupplierName(name); + qcCheckTaskIncomeDTO.setOrderType("bc"); + qcCheckTaskIncomeDTO.setUnit(order.getUnit()); + qcCheckTaskIncomeDTO.setFactoryCode(odsProcureOrder.getFactoryCode()); + qcCheckTaskIncomeDTO.setQuality(odsProcureOrder.getPlanNumber()); + qcCheckTaskIncomeDTO.setMaterialCode(odsProcureOrder.getMaterialCode()); + qcCheckTaskIncomeDTO.setMaterialName(odsProcureOrder.getSupplierName()); + qcCheckTaskIncomeDTO.setIncomeBatchNo(odsProcureOrder.getIncomeBatchNo()); + qcCheckTaskIncomeDTO.setOrderNo(order.getProcureCode()); + qcCheckTaskIncomeDTO.setIncomeTime(new Date()); + remoteQualityService.createIncomeTask(qcCheckTaskIncomeDTO); return tem; } @@ -215,6 +242,7 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { wmsOdsMateStorageNewsSn.setUserDefined2(wmsRawOrderInSn.getUserDefined2());//批次 wmsOdsMateStorageNewsSn.setFactoryCode(wmsRawOrderInSn.getFactoryCode()); wmsOdsMateStorageNewsSn.setSapFactoryCode(wmsRawOrderInSn.getFactoryCode()); + wmsOdsMateStorageNewsSn.setActiveFlag("1"); wmsOdsMateStorageNewsSnMapper.insertWmsOdsMateStorageNewsSn(wmsOdsMateStorageNewsSn); //修改库存 //2,修改库存---/加库存数量-/-冻结数量 @@ -231,7 +259,7 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { wmsOdsMateStorageNews1.setWhCode(wmsRawOrderInSn.getWhCode()); wmsOdsMateStorageNews1.setWlCode(wmsRawOrderInSn.getWlCode()); wmsOdsMateStorageNews1.setAmount(wmsRawOrderInSn.getAmount()); - wmsOdsMateStorageNews1.setStorageAmount(wmsRawOrderInSn.getAmount()); + wmsOdsMateStorageNews1.setStorageAmount(new BigDecimal("0")); wmsOdsMateStorageNews1.setMaterialCode(wmsRawOrderInSn.getMaterialCode()); wmsOdsMateStorageNews1.setMaterialDesc(wmsRawOrderInSn.getMaterialDesc()); wmsOdsMateStorageNews1.setStorageType("BC"); @@ -246,7 +274,6 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { wmsOdsMateStorageNewsSnMapper.updateAdd(wmsOdsEmStorageNews); } wmsRawOrderInSnMapper.updateU1Byid(wmsRawOrderInSn); - } @Override @@ -533,10 +560,11 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { @Override @DS("#header.poolName") public void OutboundPostingSAP(List orderList) { - // * 退料的移动类型为 262 // * 领料的移动类型为 261 - List orderList1=odsProcureOutOrderMapper.selectOdsProcureOutOrderListByIds(orderList); + // List orderList1=odsProcureOutOrderMapper.selectOdsProcureOutOrderListByIds(orderList); + List orderList1=odsProcureOutOrderMapper.selectOdsProcureOutOrderListByu1(orderList); + //查询这个地方先暂时去掉Order_Status = '3' 条件 for (OdsProcureOutOrder odsProcureOutOrder: orderList1) { //取sap仓库号 @@ -642,6 +670,31 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { return AjaxResult.success(); } + @Override + public void PurchaseOrderdeliPdas(OdsProcureOrder odsProcureOrder) { + DynamicDataSourceContextHolder.push("ds_" + odsProcureOrder.getFactoryCode()); + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest(); + + request.setAttribute("#header.poolName", "ds_" + odsProcureOrder.getFactoryCode()); + QcCheckTaskIncomeDTO qcCheckTaskIncomeDTO=new QcCheckTaskIncomeDTO(); + qcCheckTaskIncomeDTO.setCheckLoc("mjtest"); + qcCheckTaskIncomeDTO.setCheckType("checkTypeLL"); + qcCheckTaskIncomeDTO.setCheckManCode("mobile"); + qcCheckTaskIncomeDTO.setCheckManName("手持测试用户"); + qcCheckTaskIncomeDTO.setSupplierCode("1"); + qcCheckTaskIncomeDTO.setFactoryCode("1000"); + qcCheckTaskIncomeDTO.setSupplierName("1"); + qcCheckTaskIncomeDTO.setOrderType("bc"); + qcCheckTaskIncomeDTO.setUnit("1"); + qcCheckTaskIncomeDTO.setQuality(new BigDecimal("1")); + qcCheckTaskIncomeDTO.setMaterialCode("1"); + qcCheckTaskIncomeDTO.setMaterialName("1"); + qcCheckTaskIncomeDTO.setIncomeBatchNo("1"); + qcCheckTaskIncomeDTO.setOrderNo("1"); + qcCheckTaskIncomeDTO.setIncomeTime(new Date()); + remoteQualityService.createIncomeTask(qcCheckTaskIncomeDTO); + } + public String DesignatedPalletOutboundWCS(WMSDesignatedPalle wmsDesignatedPalle){ // 定义请求的URL地址 String url = "http://192.168.202.37:9001/api/v1/ReceiveMesMsg/packingMaterialsOutBoundByPallet"; diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsProductPutServiceImpl.java b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsProductPutServiceImpl.java index 521df355d..b3e316982 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsProductPutServiceImpl.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/WmsProductPutServiceImpl.java @@ -19,7 +19,7 @@ import com.op.wms.service.IWmsProductPutService; /** * 成品生产入库Service业务层处理 - * + * * @author Open Platform * @date 2023-08-31 */ @@ -32,7 +32,7 @@ public class WmsProductPutServiceImpl implements IWmsProductPutService { /** * 查询成品生产入库 - * + * * @param id 成品生产入库主键 * @return 成品生产入库 */ @@ -44,7 +44,7 @@ public class WmsProductPutServiceImpl implements IWmsProductPutService { /** * 查询成品生产入库列表 - * + * * @param wmsProductPut 成品生产入库 * @return 成品生产入库 */ @@ -56,7 +56,7 @@ public class WmsProductPutServiceImpl implements IWmsProductPutService { /** * 新增成品生产入库 - * + * * @param wmsProductPut 成品生产入库 * @return 结果 */ @@ -69,7 +69,7 @@ public class WmsProductPutServiceImpl implements IWmsProductPutService { /** * 修改成品生产入库 - * + * * @param wmsProductPut 成品生产入库 * @return 结果 */ @@ -82,7 +82,7 @@ public class WmsProductPutServiceImpl implements IWmsProductPutService { /** * 批量删除成品生产入库 - * + * * @param ids 需要删除的成品生产入库主键 * @return 结果 */ @@ -94,7 +94,7 @@ public class WmsProductPutServiceImpl implements IWmsProductPutService { /** * 删除成品生产入库信息 - * + * * @param id 成品生产入库主键 * @return 结果 */ @@ -124,4 +124,11 @@ public class WmsProductPutServiceImpl implements IWmsProductPutService { // } return wmsProductPutMapper.selectWmsProductPutByWorkOrder(workOrder); } + + @Override + public WmsProductPut WmsProductPutByWorkOrderquery(WmsProductPut wmsProductPut) { + DynamicDataSourceContextHolder.push("ds_" +wmsProductPut.getFactoryCode()); + WmsProductPut wmsProductPut1= wmsProductPutMapper.selectMesReportWork(wmsProductPut); + return wmsProductPut1; + } } diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/OdsProcureOrderMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/OdsProcureOrderMapper.xml index 60db94ef9..3a40d3a1e 100644 --- a/op-modules/op-wms/src/main/resources/mapper/wms/OdsProcureOrderMapper.xml +++ b/op-modules/op-wms/src/main/resources/mapper/wms/OdsProcureOrderMapper.xml @@ -207,4 +207,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" where ID = #{ID} + diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/OdsProcureOutOrderMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/OdsProcureOutOrderMapper.xml index 1267b32b2..2d76839db 100644 --- a/op-modules/op-wms/src/main/resources/mapper/wms/OdsProcureOutOrderMapper.xml +++ b/op-modules/op-wms/src/main/resources/mapper/wms/OdsProcureOutOrderMapper.xml @@ -315,5 +315,51 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{item.ID} - + diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/WmsProductPutMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/WmsProductPutMapper.xml index 7f333af11..5ea7ec9b3 100644 --- a/op-modules/op-wms/src/main/resources/mapper/wms/WmsProductPutMapper.xml +++ b/op-modules/op-wms/src/main/resources/mapper/wms/WmsProductPutMapper.xml @@ -3,7 +3,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - + @@ -46,7 +46,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - + + SELECT + report_code work_order, + product_code, + product_name, + unit unit_of_measure, + quantity plan_quantity + FROM + mes_report_work + WHERE + report_code=#{workOrder} + and + parent_order = '0' + + +