From 521f1de96f459322d87d26f85250094e05f2ff74 Mon Sep 17 00:00:00 2001 From: shaoyong Date: Wed, 21 Aug 2024 14:22:39 +0800 Subject: [PATCH 01/28] =?UTF-8?q?=E7=AE=B1=E5=9E=8B=E5=88=86=E7=B1=BB?= =?UTF-8?q?=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../op/mes/controller/MesBoxController.java | 110 ++++++++++ .../controller/MesBoxDetailController.java | 115 ++++++++++ .../main/java/com/op/mes/domain/MesBox.java | 75 +++++++ .../java/com/op/mes/domain/MesBoxDetail.java | 176 ++++++++++++++++ .../com/op/mes/mapper/MesBoxDetailMapper.java | 61 ++++++ .../java/com/op/mes/mapper/MesBoxMapper.java | 63 ++++++ .../op/mes/service/IMesBoxDetailService.java | 64 ++++++ .../com/op/mes/service/IMesBoxService.java | 63 ++++++ .../service/impl/MesBoxDetailServiceImpl.java | 106 ++++++++++ .../mes/service/impl/MesBoxServiceImpl.java | 106 ++++++++++ .../mapper/mes/MesBoxDetailMapper.xml | 196 ++++++++++++++++++ .../resources/mapper/mes/MesBoxMapper.xml | 133 ++++++++++++ 12 files changed, 1268 insertions(+) create mode 100644 op-modules/op-mes/src/main/java/com/op/mes/controller/MesBoxController.java create mode 100644 op-modules/op-mes/src/main/java/com/op/mes/controller/MesBoxDetailController.java create mode 100644 op-modules/op-mes/src/main/java/com/op/mes/domain/MesBox.java create mode 100644 op-modules/op-mes/src/main/java/com/op/mes/domain/MesBoxDetail.java create mode 100644 op-modules/op-mes/src/main/java/com/op/mes/mapper/MesBoxDetailMapper.java create mode 100644 op-modules/op-mes/src/main/java/com/op/mes/mapper/MesBoxMapper.java create mode 100644 op-modules/op-mes/src/main/java/com/op/mes/service/IMesBoxDetailService.java create mode 100644 op-modules/op-mes/src/main/java/com/op/mes/service/IMesBoxService.java create mode 100644 op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesBoxDetailServiceImpl.java create mode 100644 op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesBoxServiceImpl.java create mode 100644 op-modules/op-mes/src/main/resources/mapper/mes/MesBoxDetailMapper.xml create mode 100644 op-modules/op-mes/src/main/resources/mapper/mes/MesBoxMapper.xml diff --git a/op-modules/op-mes/src/main/java/com/op/mes/controller/MesBoxController.java b/op-modules/op-mes/src/main/java/com/op/mes/controller/MesBoxController.java new file mode 100644 index 000000000..6a17bb585 --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/controller/MesBoxController.java @@ -0,0 +1,110 @@ +package com.op.mes.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.baomidou.dynamic.datasource.annotation.DS; +import com.op.system.api.domain.SysDictType; +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.mes.domain.MesBox; +import com.op.mes.service.IMesBoxService; +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 2024-08-20 + */ +@RestController +@RequestMapping("/mesBox") +public class MesBoxController extends BaseController { + @Autowired + private IMesBoxService mesBoxService; + +/** + * 查询箱体类型列表 + */ +@RequiresPermissions("mes:mesBox:list") +@GetMapping("/list") + public TableDataInfo list(MesBox mesBox) { + startPage(); + List list = mesBoxService.selectMesBoxList(mesBox); + return getDataTable(list); + } + + /** + * 导出箱体类型列表 + */ + @RequiresPermissions("mes:mesBox:export") + @Log(title = "箱体类型", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, MesBox mesBox) { + List list = mesBoxService.selectMesBoxList(mesBox); + ExcelUtil util = new ExcelUtil(MesBox. class); + util.exportExcel(response, list, "箱体类型数据"); + } + + /** + * 获取箱体类型详细信息 + */ + @RequiresPermissions("mes:mesBox:query") + @GetMapping(value = "/{boxId}") + public AjaxResult getInfo(@PathVariable("boxId") Long boxId) { + return success(mesBoxService.selectMesBoxByBoxId(boxId)); + } + + /** + * 新增箱体类型 + */ + @RequiresPermissions("mes:mesBox:add") + @Log(title = "箱体类型", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody MesBox mesBox) { + return toAjax(mesBoxService.insertMesBox(mesBox)); + } + + /** + * 修改箱体类型 + */ + @RequiresPermissions("mes:mesBox:edit") + @Log(title = "箱体类型", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody MesBox mesBox) { + return toAjax(mesBoxService.updateMesBox(mesBox)); + } + + /** + * 删除箱体类型 + */ + @RequiresPermissions("mes:mesBox:remove") + @Log(title = "箱体类型", businessType = BusinessType.DELETE) + @DeleteMapping("/{boxIds}") + public AjaxResult remove(@PathVariable Long[] boxIds) { + return toAjax(mesBoxService.deleteMesBoxByBoxIds(boxIds)); + } + + /** + * 获取字典选择框列表 + */ + @GetMapping("/optionSelect") + @DS("#header.poolName") + public AjaxResult optionSelect() { + List boxTypes = mesBoxService.selectDictTypeAll(); + return success(boxTypes); + } +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/controller/MesBoxDetailController.java b/op-modules/op-mes/src/main/java/com/op/mes/controller/MesBoxDetailController.java new file mode 100644 index 000000000..8e5324777 --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/controller/MesBoxDetailController.java @@ -0,0 +1,115 @@ +package com.op.mes.controller; + +import java.util.ArrayList; +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.baomidou.dynamic.datasource.annotation.DS; +import com.op.common.core.utils.StringUtils; +import com.op.system.api.domain.SysDictData; +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.mes.domain.MesBoxDetail; +import com.op.mes.service.IMesBoxDetailService; +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 2024-08-20 + */ +@RestController +@RequestMapping("/mesBoxDetail") +public class MesBoxDetailController extends BaseController { + @Autowired + private IMesBoxDetailService mesBoxDetailService; + +/** + * 查询箱体数据列表 + */ +@RequiresPermissions("mes:mesBoxDetail:list") +@GetMapping("/list") + public TableDataInfo list(MesBoxDetail mesBoxDetail) { + startPage(); + List list = mesBoxDetailService.selectMesBoxDetailList(mesBoxDetail); + return getDataTable(list); + } + + /** + * 导出箱体数据列表 + */ + @RequiresPermissions("mes:mesBoxDetail:export") + @Log(title = "箱体数据", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, MesBoxDetail mesBoxDetail) { + List list = mesBoxDetailService.selectMesBoxDetailList(mesBoxDetail); + ExcelUtil util = new ExcelUtil(MesBoxDetail. class); + util.exportExcel(response, list, "箱体数据数据"); + } + + /** + * 获取箱体数据详细信息 + */ + @RequiresPermissions("mes:mesBoxDetail:query") + @GetMapping(value = "/{boxCode}") + public AjaxResult getInfo(@PathVariable("boxCode") Long boxCode) { + return success(mesBoxDetailService.selectMesBoxDetailByBoxCode(boxCode)); + } + + /** + * 根据箱体类型查询箱体数据信息 + */ + @GetMapping(value = "/type/{boxType}") + @DS("#header.poolName") + public AjaxResult dictType(@PathVariable String boxType) { + List data = mesBoxDetailService.selectBoxDataByType(boxType); + if (StringUtils.isNull(data)) { + data = new ArrayList(); + } + return success(data); + } + + /** + * 新增箱体数据 + */ + @RequiresPermissions("mes:mesBoxDetail:add") + @Log(title = "箱体数据", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody MesBoxDetail mesBoxDetail) { + return toAjax(mesBoxDetailService.insertMesBoxDetail(mesBoxDetail)); + } + + /** + * 修改箱体数据 + */ + @RequiresPermissions("mes:mesBoxDetail:edit") + @Log(title = "箱体数据", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody MesBoxDetail mesBoxDetail) { + return toAjax(mesBoxDetailService.updateMesBoxDetail(mesBoxDetail)); + } + + /** + * 删除箱体数据 + */ + @RequiresPermissions("mes:mesBoxDetail:remove") + @Log(title = "箱体数据", businessType = BusinessType.DELETE) + @DeleteMapping("/{boxCodes}") + public AjaxResult remove(@PathVariable Long[] boxCodes) { + return toAjax(mesBoxDetailService.deleteMesBoxDetailByBoxCodes(boxCodes)); + } +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/domain/MesBox.java b/op-modules/op-mes/src/main/java/com/op/mes/domain/MesBox.java new file mode 100644 index 000000000..5fa0f862e --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/domain/MesBox.java @@ -0,0 +1,75 @@ +package com.op.mes.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; + +/** + * 箱体类型对象 mes_box + * + * @author Open Platform + * @date 2024-08-20 + */ +public class MesBox extends BaseEntity { +private static final long serialVersionUID=1L; + + /** 字典主键 */ + private Long boxId; + + /** 字典名称 */ + @Excel(name = "字典名称") + private String boxName; + + /** 字典类型 */ + @Excel(name = "字典类型") + private String boxType; + + /** 状态(0正常 */ + @Excel(name = "状态", readConverterExp = "状态(0正常") + private String status; + + public void setBoxId(Long boxId){ + this.boxId = boxId; + } + + public Long getBoxId(){ + return boxId; + } + public void setBoxName(String boxName){ + this.boxName = boxName; + } + + public String getBoxName(){ + return boxName; + } + public void setBoxType(String boxType){ + this.boxType = boxType; + } + + public String getBoxType(){ + return boxType; + } + public void setStatus(String status){ + this.status = status; + } + + public String getStatus(){ + return status; + } + +@Override +public String toString(){ + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("boxId",getBoxId()) + .append("boxName",getBoxName()) + .append("boxType",getBoxType()) + .append("status",getStatus()) + .append("createBy",getCreateBy()) + .append("createTime",getCreateTime()) + .append("updateBy",getUpdateBy()) + .append("updateTime",getUpdateTime()) + .append("remark",getRemark()) + .toString(); + } + } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/domain/MesBoxDetail.java b/op-modules/op-mes/src/main/java/com/op/mes/domain/MesBoxDetail.java new file mode 100644 index 000000000..06f2040c9 --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/domain/MesBoxDetail.java @@ -0,0 +1,176 @@ +package com.op.mes.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; + +/** + * 字典数据对象 mes_box_detail + * + * @author Open Platform + * @date 2024-08-20 + */ +public class MesBoxDetail extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 箱型编码 + */ + private Long boxCode; + + /** + * 箱型排序 + */ + @Excel(name = "箱型排序") + private Long boxSort; + + /** + * 箱型标签 + */ + @Excel(name = "箱型标签") + private String boxLabel; + + /** + * 箱型关键字 + */ + @Excel(name = "箱型关键字") + private String boxKey; + + /** + * 箱型值 + */ + @Excel(name = "箱型值") + private String boxValue; + + /** + * 箱型类型 + */ + @Excel(name = "箱型类型") + private String boxType; + + /** + * 样式属性(其他样式扩展) + */ + @Excel(name = "样式属性", readConverterExp = "其=他样式扩展") + private String cssClass; + + /** + * 表格回显样式 + */ + @Excel(name = "表格回显样式") + private String listClass; + + /** + * 是否默认(Y是 + */ + @Excel(name = "是否默认", readConverterExp = "是否默认(Y是") + private String isDefault; + + /** + * 状态(0正常 + */ + @Excel(name = "状态", readConverterExp = "状态(0正常") + private String status; + + public void setBoxCode(Long boxCode) { + this.boxCode = boxCode; + } + + public Long getBoxCode() { + return boxCode; + } + + public void setBoxSort(Long boxSort) { + this.boxSort = boxSort; + } + + public Long getBoxSort() { + return boxSort; + } + + public void setBoxLabel(String boxLabel) { + this.boxLabel = boxLabel; + } + + public String getBoxLabel() { + return boxLabel; + } + + + public String getBoxKey() { + return boxKey; + } + + public void setBoxKey(String boxKey) { + this.boxKey = boxKey; + } + + public void setBoxValue(String boxValue) { + this.boxValue = boxValue; + } + + public String getBoxValue() { + return boxValue; + } + + public void setBoxType(String boxType) { + this.boxType = boxType; + } + + public String getBoxType() { + return boxType; + } + + public void setCssClass(String cssClass) { + this.cssClass = cssClass; + } + + public String getCssClass() { + return cssClass; + } + + public void setListClass(String listClass) { + this.listClass = listClass; + } + + public String getListClass() { + return listClass; + } + + public void setIsDefault(String isDefault) { + this.isDefault = isDefault; + } + + public String getIsDefault() { + return isDefault; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getStatus() { + return status; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("boxCode", getBoxCode()) + .append("boxSort", getBoxSort()) + .append("boxLabel", getBoxLabel()) + .append("boxValue", getBoxValue()) + .append("boxType", getBoxType()) + .append("cssClass", getCssClass()) + .append("listClass", getListClass()) + .append("isDefault", getIsDefault()) + .append("status", getStatus()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("remark", getRemark()) + .toString(); + } +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesBoxDetailMapper.java b/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesBoxDetailMapper.java new file mode 100644 index 000000000..410f2d3c6 --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesBoxDetailMapper.java @@ -0,0 +1,61 @@ +package com.op.mes.mapper; + +import java.util.List; + +import com.op.mes.domain.MesBoxDetail; + +/** + * 字典数据Mapper接口 + * + * @author Open Platform + * @date 2024-08-20 + */ +public interface MesBoxDetailMapper { + /** + * 查询字典数据 + * + * @param boxCode 字典数据主键 + * @return 字典数据 + */ + public MesBoxDetail selectMesBoxDetailByBoxCode(Long boxCode); + + /** + * 查询字典数据列表 + * + * @param mesBoxDetail 字典数据 + * @return 字典数据集合 + */ + public List selectMesBoxDetailList(MesBoxDetail mesBoxDetail); + + /** + * 新增字典数据 + * + * @param mesBoxDetail 字典数据 + * @return 结果 + */ + public int insertMesBoxDetail(MesBoxDetail mesBoxDetail); + + /** + * 修改字典数据 + * + * @param mesBoxDetail 字典数据 + * @return 结果 + */ + public int updateMesBoxDetail(MesBoxDetail mesBoxDetail); + + /** + * 删除字典数据 + * + * @param boxCode 字典数据主键 + * @return 结果 + */ + public int deleteMesBoxDetailByBoxCode(Long boxCode); + + /** + * 批量删除字典数据 + * + * @param boxCodes 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteMesBoxDetailByBoxCodes(Long[] boxCodes); +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesBoxMapper.java b/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesBoxMapper.java new file mode 100644 index 000000000..46042a6eb --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesBoxMapper.java @@ -0,0 +1,63 @@ +package com.op.mes.mapper; + +import java.util.List; + +import com.op.mes.domain.MesBox; + +/** + * 箱体类型Mapper接口 + * + * @author Open Platform + * @date 2024-08-20 + */ +public interface MesBoxMapper { + /** + * 查询箱体类型 + * + * @param boxId 箱体类型主键 + * @return 箱体类型 + */ + public MesBox selectMesBoxByBoxId(Long boxId); + + /** + * 查询箱体类型列表 + * + * @param mesBox 箱体类型 + * @return 箱体类型集合 + */ + public List selectMesBoxList(MesBox mesBox); + + /** + * 新增箱体类型 + * + * @param mesBox 箱体类型 + * @return 结果 + */ + public int insertMesBox(MesBox mesBox); + + /** + * 修改箱体类型 + * + * @param mesBox 箱体类型 + * @return 结果 + */ + public int updateMesBox(MesBox mesBox); + + /** + * 删除箱体类型 + * + * @param boxId 箱体类型主键 + * @return 结果 + */ + public int deleteMesBoxByBoxId(Long boxId); + + /** + * 批量删除箱体类型 + * + * @param boxIds 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteMesBoxByBoxIds(Long[] boxIds); + + List selectDictTypeAll(); +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/IMesBoxDetailService.java b/op-modules/op-mes/src/main/java/com/op/mes/service/IMesBoxDetailService.java new file mode 100644 index 000000000..b1ec26876 --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/IMesBoxDetailService.java @@ -0,0 +1,64 @@ +package com.op.mes.service; + +import java.util.List; + +import com.op.mes.domain.MesBoxDetail; +import com.op.system.api.domain.SysDictData; + +/** + * 字典数据Service接口 + * + * @author Open Platform + * @date 2024-08-20 + */ +public interface IMesBoxDetailService { + /** + * 查询字典数据 + * + * @param boxCode 字典数据主键 + * @return 字典数据 + */ + public MesBoxDetail selectMesBoxDetailByBoxCode(Long boxCode); + + /** + * 查询字典数据列表 + * + * @param mesBoxDetail 字典数据 + * @return 字典数据集合 + */ + public List selectMesBoxDetailList(MesBoxDetail mesBoxDetail); + + /** + * 新增字典数据 + * + * @param mesBoxDetail 字典数据 + * @return 结果 + */ + public int insertMesBoxDetail(MesBoxDetail mesBoxDetail); + + /** + * 修改字典数据 + * + * @param mesBoxDetail 字典数据 + * @return 结果 + */ + public int updateMesBoxDetail(MesBoxDetail mesBoxDetail); + + /** + * 批量删除字典数据 + * + * @param boxCodes 需要删除的字典数据主键集合 + * @return 结果 + */ + public int deleteMesBoxDetailByBoxCodes(Long[] boxCodes); + + /** + * 删除字典数据信息 + * + * @param boxCode 字典数据主键 + * @return 结果 + */ + public int deleteMesBoxDetailByBoxCode(Long boxCode); + + List selectBoxDataByType(String boxType); +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/IMesBoxService.java b/op-modules/op-mes/src/main/java/com/op/mes/service/IMesBoxService.java new file mode 100644 index 000000000..7425c2f99 --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/IMesBoxService.java @@ -0,0 +1,63 @@ +package com.op.mes.service; + +import java.util.List; + +import com.op.mes.domain.MesBox; + +/** + * 箱体类型Service接口 + * + * @author Open Platform + * @date 2024-08-20 + */ +public interface IMesBoxService { + /** + * 查询箱体类型 + * + * @param boxId 箱体类型主键 + * @return 箱体类型 + */ + public MesBox selectMesBoxByBoxId(Long boxId); + + /** + * 查询箱体类型列表 + * + * @param mesBox 箱体类型 + * @return 箱体类型集合 + */ + public List selectMesBoxList(MesBox mesBox); + + /** + * 新增箱体类型 + * + * @param mesBox 箱体类型 + * @return 结果 + */ + public int insertMesBox(MesBox mesBox); + + /** + * 修改箱体类型 + * + * @param mesBox 箱体类型 + * @return 结果 + */ + public int updateMesBox(MesBox mesBox); + + /** + * 批量删除箱体类型 + * + * @param boxIds 需要删除的箱体类型主键集合 + * @return 结果 + */ + public int deleteMesBoxByBoxIds(Long[] boxIds); + + /** + * 删除箱体类型信息 + * + * @param boxId 箱体类型主键 + * @return 结果 + */ + public int deleteMesBoxByBoxId(Long boxId); + + List selectDictTypeAll(); +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesBoxDetailServiceImpl.java b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesBoxDetailServiceImpl.java new file mode 100644 index 000000000..04675f787 --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesBoxDetailServiceImpl.java @@ -0,0 +1,106 @@ +package com.op.mes.service.impl; + +import java.util.List; + +import com.baomidou.dynamic.datasource.annotation.DS; +import com.op.common.core.utils.DateUtils; +import com.op.common.security.utils.SecurityUtils; +import com.op.system.api.domain.SysDictData; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.op.mes.mapper.MesBoxDetailMapper; +import com.op.mes.domain.MesBoxDetail; +import com.op.mes.service.IMesBoxDetailService; + +/** + * 字典数据Service业务层处理 + * + * @author Open Platform + * @date 2024-08-20 + */ +@Service +public class MesBoxDetailServiceImpl implements IMesBoxDetailService { + @Autowired + private MesBoxDetailMapper mesBoxDetailMapper; + + /** + * 查询字典数据 + * + * @param boxCode 字典数据主键 + * @return 字典数据 + */ + @Override + @DS("#header.poolName") + public MesBoxDetail selectMesBoxDetailByBoxCode(Long boxCode) { + return mesBoxDetailMapper.selectMesBoxDetailByBoxCode(boxCode); + } + + /** + * 查询字典数据列表 + * + * @param mesBoxDetail 字典数据 + * @return 字典数据 + */ + @Override + @DS("#header.poolName") + public List selectMesBoxDetailList(MesBoxDetail mesBoxDetail) { + return mesBoxDetailMapper.selectMesBoxDetailList(mesBoxDetail); + } + + /** + * 新增字典数据 + * + * @param mesBoxDetail 字典数据 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int insertMesBoxDetail(MesBoxDetail mesBoxDetail) { + mesBoxDetail.setCreateBy(SecurityUtils.getUsername()); + mesBoxDetail.setCreateTime(DateUtils.getNowDate()); + return mesBoxDetailMapper.insertMesBoxDetail(mesBoxDetail); + } + + /** + * 修改字典数据 + * + * @param mesBoxDetail 字典数据 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int updateMesBoxDetail(MesBoxDetail mesBoxDetail) { + mesBoxDetail.setUpdateBy(SecurityUtils.getUsername()); + mesBoxDetail.setUpdateTime(DateUtils.getNowDate()); + return mesBoxDetailMapper.updateMesBoxDetail(mesBoxDetail); + } + + /** + * 批量删除字典数据 + * + * @param boxCodes 需要删除的字典数据主键 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int deleteMesBoxDetailByBoxCodes(Long[] boxCodes) { + return mesBoxDetailMapper.deleteMesBoxDetailByBoxCodes(boxCodes); + } + + /** + * 删除字典数据信息 + * + * @param boxCode 字典数据主键 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int deleteMesBoxDetailByBoxCode(Long boxCode) { + return mesBoxDetailMapper.deleteMesBoxDetailByBoxCode(boxCode); + } + + @Override + public List selectBoxDataByType(String boxType) { + return null; + } +} diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesBoxServiceImpl.java b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesBoxServiceImpl.java new file mode 100644 index 000000000..3f1a05e2c --- /dev/null +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesBoxServiceImpl.java @@ -0,0 +1,106 @@ +package com.op.mes.service.impl; + +import java.util.List; + +import com.baomidou.dynamic.datasource.annotation.DS; +import com.op.common.core.utils.DateUtils; +import com.op.common.security.utils.SecurityUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.op.mes.mapper.MesBoxMapper; +import com.op.mes.domain.MesBox; +import com.op.mes.service.IMesBoxService; + +/** + * 箱体类型Service业务层处理 + * + * @author Open Platform + * @date 2024-08-20 + */ +@Service +public class MesBoxServiceImpl implements IMesBoxService { + @Autowired + private MesBoxMapper mesBoxMapper; + + /** + * 查询箱体类型 + * + * @param boxId 箱体类型主键 + * @return 箱体类型 + */ + @Override + @DS("#header.poolName") + public MesBox selectMesBoxByBoxId(Long boxId) { + return mesBoxMapper.selectMesBoxByBoxId(boxId); + } + + /** + * 查询箱体类型列表 + * + * @param mesBox 箱体类型 + * @return 箱体类型 + */ + @Override + @DS("#header.poolName") + public List selectMesBoxList(MesBox mesBox) { + return mesBoxMapper.selectMesBoxList(mesBox); + } + + /** + * 新增箱体类型 + * + * @param mesBox 箱体类型 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int insertMesBox(MesBox mesBox) { + mesBox.setUpdateBy(SecurityUtils.getUsername()); + mesBox.setCreateTime(DateUtils.getNowDate()); + return mesBoxMapper.insertMesBox(mesBox); + } + + /** + * 修改箱体类型 + * + * @param mesBox 箱体类型 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int updateMesBox(MesBox mesBox) { + mesBox.setUpdateBy(SecurityUtils.getUsername()); + mesBox.setUpdateTime(DateUtils.getNowDate()); + return mesBoxMapper.updateMesBox(mesBox); + } + + /** + * 批量删除箱体类型 + * + * @param boxIds 需要删除的箱体类型主键 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int deleteMesBoxByBoxIds(Long[] boxIds) { + return mesBoxMapper.deleteMesBoxByBoxIds(boxIds); + } + + /** + * 删除箱体类型信息 + * + * @param boxId 箱体类型主键 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int deleteMesBoxByBoxId(Long boxId) { + return mesBoxMapper.deleteMesBoxByBoxId(boxId); + } + + @Override + @DS("#header.poolName") + public List selectDictTypeAll() { + return mesBoxMapper.selectDictTypeAll(); + } +} diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/MesBoxDetailMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/MesBoxDetailMapper.xml new file mode 100644 index 000000000..91244db29 --- /dev/null +++ b/op-modules/op-mes/src/main/resources/mapper/mes/MesBoxDetailMapper.xml @@ -0,0 +1,196 @@ + + + + + + + + + + + + + + + + + + + + + + + + select box_code, box_sort, box_label, box_key, box_value, box_type, css_class, list_class, is_default, status, create_by, create_time, update_by, update_time, remark from mes_box_detail + + + + + + + + insert into mes_box_detail + + box_code, + + box_sort, + + box_label, + + box_key, + + box_value, + + box_type, + + css_class, + + list_class, + + is_default, + + status, + + create_by, + + create_time, + + update_by, + + update_time, + + remark, + + + + #{boxCode}, + + #{boxSort}, + + #{boxLabel}, + + #{boxKey}, + + #{boxValue}, + + #{boxType}, + + #{cssClass}, + + #{listClass}, + + #{isDefault}, + + #{status}, + + #{createBy}, + + #{createTime}, + + #{updateBy}, + + #{updateTime}, + + #{remark}, + + + + + + update mes_box_detail + + box_sort = + #{boxSort}, + + box_label = + #{boxLabel}, + + box_key = + #{boxKey}, + + box_value = + #{boxValue}, + + box_type = + #{boxType}, + + css_class = + #{cssClass}, + + list_class = + #{listClass}, + + is_default = + #{isDefault}, + + status = + #{status}, + + create_by = + #{createBy}, + + create_time = + #{createTime}, + + update_by = + #{updateBy}, + + update_time = + #{updateTime}, + + remark = + #{remark}, + + + where box_code = #{boxCode} + + + + delete from mes_box_detail where box_code = #{boxCode} + + + + delete from mes_box_detail where box_code in + + #{boxCode} + + + diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/MesBoxMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/MesBoxMapper.xml new file mode 100644 index 000000000..6dc55a129 --- /dev/null +++ b/op-modules/op-mes/src/main/resources/mapper/mes/MesBoxMapper.xml @@ -0,0 +1,133 @@ + + + + + + + + + + + + + + + + + + select box_id, box_name, box_type, status, create_by, create_time, update_by, update_time, remark from mes_box + + + + + + + + insert into mes_box + + box_id, + + box_name, + + box_type, + + status, + + create_by, + + create_time, + + update_by, + + update_time, + + remark, + + + + #{boxId}, + + #{boxName}, + + #{boxType}, + + #{status}, + + #{createBy}, + + #{createTime}, + + #{updateBy}, + + #{updateTime}, + + #{remark}, + + + + + + update mes_box + + box_name = + #{boxName}, + + box_type = + #{boxType}, + + status = + #{status}, + + create_by = + #{createBy}, + + create_time = + #{createTime}, + + update_by = + #{updateBy}, + + update_time = + #{updateTime}, + + remark = + #{remark}, + + + where box_id = #{boxId} + + + + + + delete from mes_box where box_id = #{boxId} + + + + delete from mes_box where box_id in + + #{boxId} + + + From 99c3e0e3e7869204fbd29e57158da0387ba6fc94 Mon Sep 17 00:00:00 2001 From: A0010407 Date: Wed, 21 Aug 2024 15:15:02 +0800 Subject: [PATCH 02/28] =?UTF-8?q?2024-08-21=20=E8=AE=A1=E5=88=92-=E7=94=9F?= =?UTF-8?q?=E4=BA=A7=E5=B7=A5=E5=8D=95=E7=AE=A1=E7=90=86-=E4=BA=A7?= =?UTF-8?q?=E5=93=81=E6=A0=87=E8=AF=86=E5=8D=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ProOrderWorkorderController.java | 6 +++ .../com/op/plan/domain/ProOrderWorkorder.java | 9 ++++ .../plan/mapper/ProOrderWorkorderMapper.java | 7 +++ .../service/IProOrderWorkorderService.java | 2 + .../impl/ProOrderWorkorderServiceImpl.java | 54 +++++++++++++++++-- .../mapper/plan/ProOrderWorkorderMapper.xml | 35 ++++++++++-- 6 files changed, 103 insertions(+), 10 deletions(-) diff --git a/op-modules/op-plan/src/main/java/com/op/plan/controller/ProOrderWorkorderController.java b/op-modules/op-plan/src/main/java/com/op/plan/controller/ProOrderWorkorderController.java index b226c0d40..b97567057 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/controller/ProOrderWorkorderController.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/controller/ProOrderWorkorderController.java @@ -314,4 +314,10 @@ public class ProOrderWorkorderController extends BaseController { public List getIdCardList(@RequestBody ProOrderWorkorder proOrderWorkorder) { return proOrderWorkorderService.getIdCardList(proOrderWorkorder); } + + //获取批次号 + @GetMapping("/getBatchCode/{workorderId}") + public List getBatchCode(@PathVariable("workorderId") String workorderId) { + return proOrderWorkorderService.getBatchCode(workorderId); + } } diff --git a/op-modules/op-plan/src/main/java/com/op/plan/domain/ProOrderWorkorder.java b/op-modules/op-plan/src/main/java/com/op/plan/domain/ProOrderWorkorder.java index c29121fe9..35f2f893c 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/domain/ProOrderWorkorder.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/domain/ProOrderWorkorder.java @@ -339,6 +339,8 @@ public class ProOrderWorkorder extends TreeEntity { private String palletCode; private String recordId; + private String addFlag; + public String getRecordId() { return recordId; } @@ -787,6 +789,13 @@ public class ProOrderWorkorder extends TreeEntity { this.sortNo = sortNo; } + public void setAddFlag(String addFlag) { + this.addFlag = addFlag; + } + public String getAddFlag() { + return addFlag; + } + @Override public String toString() { return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) diff --git a/op-modules/op-plan/src/main/java/com/op/plan/mapper/ProOrderWorkorderMapper.java b/op-modules/op-plan/src/main/java/com/op/plan/mapper/ProOrderWorkorderMapper.java index d19835380..c99b5c2d0 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/mapper/ProOrderWorkorderMapper.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/mapper/ProOrderWorkorderMapper.java @@ -237,5 +237,12 @@ public interface ProOrderWorkorderMapper { List getPreIdCardList(ProOrderWorkorder proOrderWorkorder); int addBatchPallet(@Param("list")List dtos); + + Integer selectPalletByUniqueBarCode(ProOrderWorkorder pw); + + //void addOnePallet(ProOrderWorkorder pw);//新增一个标识卡 + void updateOnePallet(ProOrderWorkorder pw);//更新一个标识卡 + + List getBatchCode(String workorderId);//获取批次号下拉框 } diff --git a/op-modules/op-plan/src/main/java/com/op/plan/service/IProOrderWorkorderService.java b/op-modules/op-plan/src/main/java/com/op/plan/service/IProOrderWorkorderService.java index bc8f05c64..0b6c1d9b2 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/service/IProOrderWorkorderService.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/service/IProOrderWorkorderService.java @@ -151,4 +151,6 @@ public interface IProOrderWorkorderService { List getProdLineList(); List getIdCardList(ProOrderWorkorder proOrderWorkorder); + + List getBatchCode(String workorderId);//获取批次号 } diff --git a/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java b/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java index d4ac68ba8..0eed90e75 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java @@ -1259,13 +1259,18 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { return proOrderWorkorderBatchMapper.getProdLineList(); } + @Override + @DS("#header.poolName") + public List getBatchCode(String workorderId) { + return proOrderWorkorderMapper.getBatchCode(workorderId); + } + @Override @DS("#header.poolName") public List getIdCardList(ProOrderWorkorder proOrderWorkorder) { List dtos = new ArrayList<>(); List dtos0 = proOrderWorkorderMapper.getPreIdCardList(proOrderWorkorder); - - if(!CollectionUtils.isEmpty(dtos0) && dtos0.get(0).getPalletNo() == null){//说明没生成过标识卡 + if(!CollectionUtils.isEmpty(dtos0) && dtos0.get(0).getPalletNo() == null && proOrderWorkorder.getAddFlag().equals("0")){//说明没生成过标识卡 增打标志0 ProOrderWorkorder pw = null; int i = 1; Date nowDate = DateUtils.getNowDate(); @@ -1288,8 +1293,10 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { pw.setBatchQuantity(pn); } pw.setPalletNo(i++); - pw.setPalletCode(pow.getPalletCode()+"-"+pw.getPalletNo()); + pw.setPalletCode(pow.getWorkorderCode() + "-" + pow.getBatchCode() + "-" + pw.getPalletNo());//workorderCode 实际上是订单号 pw.setCreateTime(nowDate); + pw.setCreateBy(SecurityUtils.getUsername()); + pw.setAddFlag("0");//增打标志 dtos.add(pw); pall = pall.subtract(pn); } @@ -1298,10 +1305,47 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { if(!CollectionUtils.isEmpty(dtos)){ proOrderWorkorderMapper.addBatchPallet(dtos); } - }else{ + }else if(proOrderWorkorder.getAddFlag().equals("1")){ + //增打 增打过来的会有批次号、批次数量、板次 增打标志1 根据唯一二维码去判断是不是生成过标识卡 有增打标志 + Integer palletNo = proOrderWorkorder.getPalletNo();//板次 + proOrderWorkorder.setPalletNo(null);//板次置空 去查询 获取产品等信息 + List dtos1 = proOrderWorkorderMapper.getPreIdCardList(proOrderWorkorder); + ProOrderWorkorder pow = dtos1.get(0); + proOrderWorkorder.setPalletNo(palletNo); + String uniqueBarCode = pow.getWorkorderCode() + "-" + proOrderWorkorder.getBatchCode() + "-" + palletNo;//订单号+批次+板次 唯一二维码标识 + ProOrderWorkorder pw = new ProOrderWorkorder(); + pw.setProductName(pow.getProductName());//产品名 + pw.setWorkorderCode(pow.getWorkorderCode());//工单号 实际是订单号 + pw.setBatchCode(proOrderWorkorder.getBatchCode());//批次号 + pw.setProductDateStr(pow.getProductDateStr());//生产日期 + pw.setRecordId(IdUtils.fastSimpleUUID());//记录 + pw.setBatchQuantity(proOrderWorkorder.getBatchQuantity());//批次数量 + pw.setPalletNo(palletNo);//板次 + pw.setPalletCode(uniqueBarCode);//唯一二维码 + pw.setUpdateTime(DateUtils.getNowDate()); + pw.setUpdateBy(SecurityUtils.getUsername()); + pw.setCreateTime(DateUtils.getNowDate()); + pw.setCreateBy(SecurityUtils.getUsername()); + + pw.setAddFlag("0"); + Integer supplementMsg = proOrderWorkorderMapper.selectPalletByUniqueBarCode(pw);//补打标志 + pw.setAddFlag("1"); + Integer addMsg = proOrderWorkorderMapper.selectPalletByUniqueBarCode(pw);//增打标志 + + List dto = new ArrayList<>(); + if(supplementMsg == 0 && addMsg == 0){//没有正常生成、补打过 没有增打过 + dto.add(pw); + proOrderWorkorderMapper.addBatchPallet(dto); + }else if(supplementMsg == 0 && addMsg >= 1){//没有正常生成过、补打过 增打过 + proOrderWorkorderMapper.updateOnePallet(pw); + }else if(supplementMsg >= 1){//补打过、正常打过 没有增打过 + return dto; + } + dtos.add(pw); + + }else if(!CollectionUtils.isEmpty(dtos0) && dtos0.get(0).getPalletNo() != null && proOrderWorkorder.getAddFlag().equals("0")){ dtos.addAll(dtos0); } - return dtos; } diff --git a/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderWorkorderMapper.xml b/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderWorkorderMapper.xml index c054fdd74..ef9f462d5 100644 --- a/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderWorkorderMapper.xml +++ b/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderWorkorderMapper.xml @@ -819,16 +819,41 @@ ) + + update pro_order_workorder_batch_pallet + + quantity = #{batchQuantity}, + update_by = #{updateBy}, + update_time = #{updateTime}, + factory_code = #{factoryCode}, + + where pallet_code = #{palletCode} + + + INSERT INTO pro_order_workorder_batch_pallet ( - id,workorder_code,batch_code,quantity,pallet_num, - create_time,pallet_code + id,workorder_code,batch_code,quantity,pallet_num,create_by, + create_time,pallet_code,add_flag )VALUES - ( + ( #{d.recordId},#{d.workorderCode},#{d.batchCode},#{d.batchQuantity},#{d.palletNo}, - #{d.createTime},#{d.palletCode} - ) + #{d.createBy},#{d.createTime},#{d.palletCode},#{d.addFlag} + ) From 4bae9ca274cc687d2584db8e19fb135475a44222 Mon Sep 17 00:00:00 2001 From: shaoyong Date: Wed, 21 Aug 2024 17:18:15 +0800 Subject: [PATCH 03/28] =?UTF-8?q?=E5=9E=9B=E5=9E=8B=E5=A2=9E=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/op/wms/domain/BaseProduct.java | 9 +++++++++ .../main/java/com/op/wms/domain/BaseProductAttached.java | 9 +++++++++ .../resources/mapper/wms/BaseProductAttachedMapper.xml | 5 ++++- .../src/main/resources/mapper/wms/BaseProductMapper.xml | 5 +++-- 4 files changed, 25 insertions(+), 3 deletions(-) diff --git a/op-modules/op-wms/src/main/java/com/op/wms/domain/BaseProduct.java b/op-modules/op-wms/src/main/java/com/op/wms/domain/BaseProduct.java index 129af20e9..02bc8cbbd 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/domain/BaseProduct.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/domain/BaseProduct.java @@ -355,6 +355,15 @@ public class BaseProduct extends BaseEntity { private String mvgr5; private String palletNum; private String warehouseCycle; + private String packType; + + public String getPackType() { + return packType; + } + + public void setPackType(String packType) { + this.packType = packType; + } public String getMvgr5() { return mvgr5; diff --git a/op-modules/op-wms/src/main/java/com/op/wms/domain/BaseProductAttached.java b/op-modules/op-wms/src/main/java/com/op/wms/domain/BaseProductAttached.java index cf47713e2..f0d05c8ff 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/domain/BaseProductAttached.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/domain/BaseProductAttached.java @@ -124,6 +124,15 @@ public class BaseProductAttached extends BaseEntity { private String other; private String warehouseCycle; private String palletNum; + private String packType; + + public String getPackType() { + return packType; + } + + public void setPackType(String packType) { + this.packType = packType; + } public String getPalletNum() { return palletNum; diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/BaseProductAttachedMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/BaseProductAttachedMapper.xml index 540b1b0af..513633c3a 100644 --- a/op-modules/op-wms/src/main/resources/mapper/wms/BaseProductAttachedMapper.xml +++ b/op-modules/op-wms/src/main/resources/mapper/wms/BaseProductAttachedMapper.xml @@ -88,6 +88,7 @@ man_standar, warehouse_cycle, pallet_num, + pack_type, spray_way, blank_diameter, blank_no, @@ -110,6 +111,7 @@ #{manStandar}, #{warehouseCycle}, #{palletNum}, + #{packType}, #{sprayWay}, #{blankDiameter}, #{blankNo}, @@ -155,7 +157,8 @@ iei = #{iei}, man_standar = #{manStandar}, warehouse_cycle = #{warehouseCycle}, - pallet_num = #{palletNum} + pallet_num = #{palletNum}, + pack_type = #{packType} where id = #{id} diff --git a/op-modules/op-wms/src/main/resources/mapper/wms/BaseProductMapper.xml b/op-modules/op-wms/src/main/resources/mapper/wms/BaseProductMapper.xml index 6337fe2e5..b2f48290d 100644 --- a/op-modules/op-wms/src/main/resources/mapper/wms/BaseProductMapper.xml +++ b/op-modules/op-wms/src/main/resources/mapper/wms/BaseProductMapper.xml @@ -68,7 +68,7 @@ - + @@ -185,7 +185,8 @@ bpa.support_no, bpa.pvc, bpa.support_plate, - bpa.other,bpa.warehouse_cycle,bpa.pallet_num palletNum + bpa.other,bpa.warehouse_cycle,bpa.pallet_num palletNum, + bpa.pack_type from base_product bp left join base_product_attached bpa on bpa.product_code = right(bp.product_code,11) where product_id = #{productId} From 5bee31b7e5fb3066a900f01ca80225e80a48312a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E6=81=92=E6=9D=B0?= <2658502433@qq.com> Date: Thu, 22 Aug 2024 09:59:05 +0800 Subject: [PATCH 04/28] =?UTF-8?q?=E7=89=A9=E6=96=99=E9=99=84=E5=B1=9E?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=E5=AF=BC=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../BaseProductAttachedController.java | 92 ++++++- .../op/mes/domain/BaseProductAttached.java | 260 ++++++++++-------- .../mes/mapper/BaseProductAttachedMapper.java | 5 + .../service/IBaseProductAttachedService.java | 5 + .../impl/BaseProductAttachedServiceImpl.java | 183 ++++++++++++ .../mapper/mes/BaseProductAttachedMapper.xml | 37 ++- 6 files changed, 466 insertions(+), 116 deletions(-) diff --git a/op-modules/op-mes/src/main/java/com/op/mes/controller/BaseProductAttachedController.java b/op-modules/op-mes/src/main/java/com/op/mes/controller/BaseProductAttachedController.java index 0849d568c..ddd5f97de 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/controller/BaseProductAttachedController.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/controller/BaseProductAttachedController.java @@ -1,8 +1,13 @@ package com.op.mes.controller; +import java.io.IOException; +import java.util.ArrayList; import java.util.List; +import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServletResponse; +import com.op.common.core.domain.ExcelCol; +import com.op.common.core.utils.poi.ExcelMapUtil; import com.op.common.core.utils.poi.ExcelUtil; import com.op.common.core.web.controller.BaseController; import com.op.common.core.web.domain.AjaxResult; @@ -12,6 +17,7 @@ import com.op.common.security.annotation.RequiresPermissions; import com.op.mes.domain.BaseProductAttached; import com.op.mes.service.IBaseProductAttachedService; +import org.apache.poi.xssf.streaming.SXSSFWorkbook; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -22,6 +28,7 @@ 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 org.springframework.web.multipart.MultipartFile; /** * 物料附属信息Controller @@ -83,7 +90,12 @@ public class BaseProductAttachedController extends BaseController @PostMapping public AjaxResult add(@RequestBody BaseProductAttached baseProductAttached) { - return toAjax(baseProductAttachedService.insertBaseProductAttached(baseProductAttached)); + + if (baseProductAttachedService.checkSpareCodeUnique(baseProductAttached)) { + return AjaxResult.error("备品备件编码已存在!"); + } else { + return toAjax(baseProductAttachedService.insertBaseProductAttached(baseProductAttached)); + } } /** @@ -109,4 +121,82 @@ public class BaseProductAttachedController extends BaseController { return toAjax(baseProductAttachedService.deleteBaseProductAttachedByIds(ids)); } + + /** + * 生成物料附属信息模板 + * + * @param response + * @throws IOException + */ + @PostMapping("/importTemplate") + @Log(title = "生成备品备件信息模板", businessType = BusinessType.EXPORT) + public void importTemplate(HttpServletResponse response) throws IOException { + + ArrayList excelCols = new ArrayList<>(); + excelCols.add(new ExcelCol("产品编号", "productCode", 20)); + excelCols.add(new ExcelCol("品类", "category", 20)); + excelCols.add(new ExcelCol("每PC单圈", "pc", 20)); + excelCols.add(new ExcelCol("标准效率", "iei", 20)); + excelCols.add(new ExcelCol("标准用人", "manStandar", 20)); + excelCols.add(new ExcelCol("喷药方式", "sprayWay", 20)); + + excelCols.add(new ExcelCol("白坯直径", "blankDiameter", 20)); + excelCols.add(new ExcelCol("白坯物料号", "blankNo", 20)); + excelCols.add(new ExcelCol("标准喷药量", "sprayVolume", 20)); + + excelCols.add(new ExcelCol("药液料号", "liquidNo", 20)); + excelCols.add(new ExcelCol("标准内膜用量", "endometrialDosage", 20)); + excelCols.add(new ExcelCol("标准外模用量(KG/PC)", "outerFilmDosage", 20)); + + + excelCols.add(new ExcelCol("支架", "support", 20)); + excelCols.add(new ExcelCol("支架物料号", "supportNo", 20)); + excelCols.add(new ExcelCol("吸塑", "pvc", 20)); + + + excelCols.add(new ExcelCol("支架盘", "supportPlate", 20)); + + excelCols.add(new ExcelCol("创建人", "createBy", 20)); + excelCols.add(new ExcelCol("库检周期", "warehouseCycle", 20)); + excelCols.add(new ExcelCol("托盘上箱数", "palletNum", 20)); + excelCols.add(new ExcelCol("垛形", "packType", 20)); + + String titleName = "物料附属信息导入"; + SXSSFWorkbook workbook = null; + try { + //设置响应头 + response.setHeader("Content-disposition", + "attachment; filename=" + titleName); + response.setContentType("application/octet-stream;charset=UTF-8"); + ServletOutputStream outputStream = response.getOutputStream(); + //调用工具类 + workbook = ExcelMapUtil.initWorkbook(titleName, null, excelCols, null); + workbook.write(outputStream); + } catch (Exception e) { + e.printStackTrace(); + } finally { + if (workbook != null) { + workbook.dispose(); + } + } + } + + /** + * 导入物料附属信息基本信息接口 + * + * @param file + * @return + * @throws Exception + */ + @Log(title = "导入物料基本信息", businessType = BusinessType.IMPORT) + @PostMapping("/importFile") + @RequiresPermissions("mes:attached:import") + public AjaxResult importFile(MultipartFile file) throws Exception { + // 创建接收对象 + ExcelUtil util = new ExcelUtil<>(BaseProductAttached.class); + // 接收表格信息 + List orderList = util.importExcel(file.getInputStream()); + return baseProductAttachedService.importFile(orderList); + } + } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/domain/BaseProductAttached.java b/op-modules/op-mes/src/main/java/com/op/mes/domain/BaseProductAttached.java index 730984fa8..9af6c2573 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/domain/BaseProductAttached.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/domain/BaseProductAttached.java @@ -54,7 +54,7 @@ public class BaseProductAttached extends BaseEntity private String blankNo; /** 标准喷药量(KG/PC) */ - @Excel(name = "标准喷药量", readConverterExp = "K=G/PC") + @Excel(name = "标准喷药量") private BigDecimal sprayVolume; /** 药液料号 */ @@ -62,7 +62,7 @@ public class BaseProductAttached extends BaseEntity private String liquidNo; /** 标准内膜用量(KG/PC) */ - @Excel(name = "标准内膜用量", readConverterExp = "K=G/PC") + @Excel(name = "标准内膜用量") private BigDecimal endometrialDosage; /** 标准外模用量(KG/PC) */ @@ -89,191 +89,225 @@ public class BaseProductAttached extends BaseEntity @Excel(name = "其它") private String other; - public void setId(String id) - { + /** 创建人 */ + @Excel(name = "创建人") + private String createBy; + + /** 库检周期 */ + @Excel(name = "库检周期") + private String warehouseCycle; + + /** 托盘上箱数 */ + @Excel(name = "托盘上箱数") + private BigDecimal palletNum; + + /** 垛形 */ + @Excel(name = "垛形") + private String packType; + + public String getId() { + return id; + } + + public void setId(String id) { this.id = id; } - public String getId() - { - return id; + public String getProductCode() { + return productCode; } - public void setProductCode(String productCode) - { + + public void setProductCode(String productCode) { this.productCode = productCode; } - public String getProductCode() - { - return productCode; + public String getCategory() { + return category; } - public void setCategory(String category) - { + + public void setCategory(String category) { this.category = category; } - public String getCategory() - { - return category; + public String getPc() { + return pc; } - public void setPc(String pc) - { + + public void setPc(String pc) { this.pc = pc; } - public String getPc() - { - return pc; + public BigDecimal getIei() { + return iei; } - public void setIei(BigDecimal iei) - { + + public void setIei(BigDecimal iei) { this.iei = iei; } - public BigDecimal getIei() - { - return iei; + public BigDecimal getManStandar() { + return manStandar; } - public void setManStandar(BigDecimal manStandar) - { + + public void setManStandar(BigDecimal manStandar) { this.manStandar = manStandar; } - public BigDecimal getManStandar() - { - return manStandar; + public String getSprayWay() { + return sprayWay; } - public void setSprayWay(String sprayWay) - { + + public void setSprayWay(String sprayWay) { this.sprayWay = sprayWay; } - public String getSprayWay() - { - return sprayWay; + public BigDecimal getBlankDiameter() { + return blankDiameter; } - public void setBlankDiameter(BigDecimal blankDiameter) - { + + public void setBlankDiameter(BigDecimal blankDiameter) { this.blankDiameter = blankDiameter; } - public BigDecimal getBlankDiameter() - { - return blankDiameter; + public String getBlankNo() { + return blankNo; } - public void setBlankNo(String blankNo) - { + + public void setBlankNo(String blankNo) { this.blankNo = blankNo; } - public String getBlankNo() - { - return blankNo; + public BigDecimal getSprayVolume() { + return sprayVolume; } - public void setSprayVolume(BigDecimal sprayVolume) - { + + public void setSprayVolume(BigDecimal sprayVolume) { this.sprayVolume = sprayVolume; } - public BigDecimal getSprayVolume() - { - return sprayVolume; + public String getLiquidNo() { + return liquidNo; } - public void setLiquidNo(String liquidNo) - { + + public void setLiquidNo(String liquidNo) { this.liquidNo = liquidNo; } - public String getLiquidNo() - { - return liquidNo; + public BigDecimal getEndometrialDosage() { + return endometrialDosage; } - public void setEndometrialDosage(BigDecimal endometrialDosage) - { + + public void setEndometrialDosage(BigDecimal endometrialDosage) { this.endometrialDosage = endometrialDosage; } - public BigDecimal getEndometrialDosage() - { - return endometrialDosage; + public BigDecimal getOuterFilmDosage() { + return outerFilmDosage; } - public void setOuterFilmDosage(BigDecimal outerFilmDosage) - { + + public void setOuterFilmDosage(BigDecimal outerFilmDosage) { this.outerFilmDosage = outerFilmDosage; } - public BigDecimal getOuterFilmDosage() - { - return outerFilmDosage; + public Long getSupport() { + return support; } - public void setSupport(Long support) - { + + public void setSupport(Long support) { this.support = support; } - public Long getSupport() - { - return support; + public String getSupportNo() { + return supportNo; } - public void setSupportNo(String supportNo) - { + + public void setSupportNo(String supportNo) { this.supportNo = supportNo; } - public String getSupportNo() - { - return supportNo; + public Long getPvc() { + return pvc; } - public void setPvc(Long pvc) - { + + public void setPvc(Long pvc) { this.pvc = pvc; } - public Long getPvc() - { - return pvc; + public Long getSupportPlate() { + return supportPlate; } - public void setSupportPlate(Long supportPlate) - { + + public void setSupportPlate(Long supportPlate) { this.supportPlate = supportPlate; } - public Long getSupportPlate() - { - return supportPlate; + public String getOther() { + return other; } - public void setOther(String other) - { + + public void setOther(String other) { this.other = other; } - public String getOther() - { - return other; + @Override + public String getCreateBy() { + return createBy; + } + + @Override + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public String getWarehouseCycle() { + return warehouseCycle; + } + + public void setWarehouseCycle(String warehouseCycle) { + this.warehouseCycle = warehouseCycle; + } + + public BigDecimal getPalletNum() { + return palletNum; + } + + public void setPalletNum(BigDecimal palletNum) { + this.palletNum = palletNum; + } + + public String getPackType() { + return packType; + } + + public void setPackType(String packType) { + this.packType = packType; } @Override public String toString() { - return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) - .append("id", getId()) - .append("productCode", getProductCode()) - .append("category", getCategory()) - .append("pc", getPc()) - .append("iei", getIei()) - .append("manStandar", getManStandar()) - .append("sprayWay", getSprayWay()) - .append("blankDiameter", getBlankDiameter()) - .append("blankNo", getBlankNo()) - .append("sprayVolume", getSprayVolume()) - .append("liquidNo", getLiquidNo()) - .append("endometrialDosage", getEndometrialDosage()) - .append("outerFilmDosage", getOuterFilmDosage()) - .append("support", getSupport()) - .append("supportNo", getSupportNo()) - .append("pvc", getPvc()) - .append("supportPlate", getSupportPlate()) - .append("other", getOther()) - .append("createBy", getCreateBy()) - .toString(); + return "BaseProductAttached{" + + "id='" + id + '\'' + + ", productCode='" + productCode + '\'' + + ", category='" + category + '\'' + + ", pc='" + pc + '\'' + + ", iei=" + iei + + ", manStandar=" + manStandar + + ", sprayWay='" + sprayWay + '\'' + + ", blankDiameter=" + blankDiameter + + ", blankNo='" + blankNo + '\'' + + ", sprayVolume=" + sprayVolume + + ", liquidNo='" + liquidNo + '\'' + + ", endometrialDosage=" + endometrialDosage + + ", outerFilmDosage=" + outerFilmDosage + + ", support=" + support + + ", supportNo='" + supportNo + '\'' + + ", pvc=" + pvc + + ", supportPlate=" + supportPlate + + ", other='" + other + '\'' + + ", createBy='" + createBy + '\'' + + ", warehouseCycle='" + warehouseCycle + '\'' + + ", palletNum=" + palletNum + + ", packType='" + packType + '\'' + + '}'; } } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/mapper/BaseProductAttachedMapper.java b/op-modules/op-mes/src/main/java/com/op/mes/mapper/BaseProductAttachedMapper.java index 1bea48073..098c9c6ef 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/mapper/BaseProductAttachedMapper.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/mapper/BaseProductAttachedMapper.java @@ -59,4 +59,9 @@ public interface BaseProductAttachedMapper * @return 结果 */ public int deleteBaseProductAttachedByIds(String[] ids); + + BaseProductAttached selectBaseProductAttachedByProductCode(String productCode); + + //检查productCode + String checkSpareCodeUnique(BaseProductAttached baseProductAttached); } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/IBaseProductAttachedService.java b/op-modules/op-mes/src/main/java/com/op/mes/service/IBaseProductAttachedService.java index fd8afd075..301e0d441 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/IBaseProductAttachedService.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/IBaseProductAttachedService.java @@ -3,6 +3,7 @@ package com.op.mes.service; import java.util.List; +import com.op.common.core.web.domain.AjaxResult; import com.op.mes.domain.BaseProductAttached; @@ -61,4 +62,8 @@ public interface IBaseProductAttachedService * @return 结果 */ public int deleteBaseProductAttachedById(String id); + + AjaxResult importFile(List list); + boolean checkSpareCodeUnique(BaseProductAttached baseProductAttached); + } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/BaseProductAttachedServiceImpl.java b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/BaseProductAttachedServiceImpl.java index 46a917a7a..3c2e32f5d 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/BaseProductAttachedServiceImpl.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/BaseProductAttachedServiceImpl.java @@ -4,12 +4,25 @@ import java.util.List; import com.baomidou.dynamic.datasource.annotation.DS; 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.core.web.domain.AjaxResult; +import com.op.common.security.utils.SecurityUtils; import com.op.mes.domain.BaseProductAttached; import com.op.mes.mapper.BaseProductAttachedMapper; import com.op.mes.service.IBaseProductAttachedService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.servlet.http.HttpServletRequest; + +import static com.op.common.core.web.domain.AjaxResult.error; +import static com.op.common.core.web.domain.AjaxResult.success; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** @@ -24,6 +37,8 @@ public class BaseProductAttachedServiceImpl implements IBaseProductAttachedServi @Autowired private BaseProductAttachedMapper baseProductAttachedMapper; + protected Logger logger = LoggerFactory.getLogger(getClass()); + /** * 查询物料附属信息 * @@ -62,6 +77,7 @@ public class BaseProductAttachedServiceImpl implements IBaseProductAttachedServi { baseProductAttached.setId(IdUtils.fastSimpleUUID()); baseProductAttached.setCreateTime(DateUtils.getNowDate()); + baseProductAttached.setCreateBy(SecurityUtils.getUsername()); return baseProductAttachedMapper.insertBaseProductAttached(baseProductAttached); } @@ -104,4 +120,171 @@ public class BaseProductAttachedServiceImpl implements IBaseProductAttachedServi { return baseProductAttachedMapper.deleteBaseProductAttachedById(id); } + + + /** + * 导入 + * @param baseProductAttached + * @return + */ + @Override + @DS("#header.poolName") + @Transactional + public AjaxResult importFile(List baseProductAttached) { + BaseProductAttached example=null; + for (BaseProductAttached table : baseProductAttached) { + table.setId(IdUtils.fastSimpleUUID()); + table.setCreateBy(SecurityUtils.getUsername()); + } + + //数据校验 + // 数据校验 + AjaxResult checkResult = checkImportFile(baseProductAttached); + + // 如果数据校验成功 + if (checkResult.isSuccess()) { + String info = syncImportFunc(baseProductAttached); + return success("信息导入完成。其中导入失败的信息:" + info); + } + // 校验失败 + return checkResult; + } + + + + private String syncImportFunc(List baseProductAttached) { + String failEquipment = ""; + for (BaseProductAttached table : baseProductAttached) { + String msg = syncFunc(table); + if (StringUtils.isNotBlank(msg)) { + failEquipment += msg + ","; + } + } + return failEquipment; + } + + @Transactional(rollbackFor = Exception.class) + public String syncFunc(BaseProductAttached table) { + String failSpareParts = ""; + BaseProductAttached Exist = baseProductAttachedMapper.selectBaseProductAttachedByProductCode(table.getProductCode()); + //不存在就插入 + if (Exist == null) { + baseProductAttachedMapper.insertBaseProductAttached(table); + logger.info("=======物料附属信息" + table.getProductCode() + "=======导入成功"); + + //存在,不允许插入 + } else { + failSpareParts = table.getProductCode(); + logger.info("=======物料附属信息" + failSpareParts + "=======导入失败"); + } + return failSpareParts; + } + + + /** + * 校验导入信息 + */ + public AjaxResult checkImportFile(List baseProductAttached){ + // 传入对象不能为空 + if (baseProductAttached.size() == 0 || StringUtils.isNull(baseProductAttached)) { + return error(500, "导入的信息不能为空!信息导入失败!"); + } + + + for (BaseProductAttached productAttached : baseProductAttached) { + //产品编码 + if (productAttached.getProductCode().isEmpty() || productAttached.getProductCode()==null){ + return error(500, "产品编号不能为空!信息导入失败!"); + } + //品类 + if (productAttached.getCategory().isEmpty() || productAttached.getCategory()==null){ + return error(500, "品类不能为空!信息导入失败!"); + } + //每PC单圈 + if (productAttached.getPc().isEmpty() || productAttached.getPc()==null){ + return error(500, "每PC单圈不能为空!信息导入失败!"); + } + //标准效率 + if (productAttached.getIei().toString().isEmpty() || productAttached.getIei()==null){ + return error(500, "标准效率不能为空!信息导入失败!"); + } + //标准用人 + if (productAttached.getManStandar().toString().isEmpty() || productAttached.getManStandar()==null){ + return error(500, "标准用人不能为空!信息导入失败!"); + } + //喷药方式 +// if (productAttached.getSprayWay().isEmpty() || productAttached.getSprayWay()==null){ +// return error(500, "喷药方式不能为空!信息导入失败!"); +// } + //白坯直径 + if (productAttached.getBlankDiameter().toString().isEmpty() || productAttached.getBlankDiameter()==null){ + return error(500, "白坯直径不能为空!信息导入失败!"); + } + //白坯物料号 + if (productAttached.getBlankNo().isEmpty() || productAttached.getBlankNo()==null){ + return error(500, "白坯物料号不能为空!信息导入失败!"); + } + //标准喷药量 + if (productAttached.getSprayVolume().toString().isEmpty() || productAttached.getSprayVolume()==null){ + return error(500, "标准喷药量不能为空!信息导入失败!"); + } + //药液料号 + if (productAttached.getLiquidNo().isEmpty() || productAttached.getLiquidNo()==null){ + return error(500, "药液料号不能为空!信息导入失败!"); + } + //标准内膜用量 + if (productAttached.getEndometrialDosage().toString().isEmpty() || productAttached.getEndometrialDosage()==null){ + return error(500, "标准内膜用量不能为空!信息导入失败!"); + } + //标准外膜用量 + if (productAttached.getOuterFilmDosage().toString().isEmpty() || productAttached.getOuterFilmDosage()==null){ + return error(500, "标准外膜用量不能为空!信息导入失败!"); + } + //支架 + if (productAttached.getSupport().toString().isEmpty() || productAttached.getSupport()==null){ + return error(500, "支架不能为空!信息导入失败!"); + } + //支架物料号 + if (productAttached.getSupportNo().isEmpty() || productAttached.getSupportNo()==null){ + return error(500, "支架物料号不能为空!信息导入失败!"); + } + //吸塑 + if (productAttached.getPvc().toString().isEmpty() || productAttached.getPvc()==null){ + return error(500, "吸塑不能为空!信息导入失败!"); + } + //支架盘 + if (productAttached.getSupportPlate().toString().isEmpty() || productAttached.getSupportPlate()==null){ + return error(500, "支架盘不能为空!信息导入失败!"); + } + //库检周期 + if (productAttached.getWarehouseCycle().isEmpty() || productAttached.getSupportPlate()==null){ + return error(500, "库检周期不能为空!信息导入失败!"); + } + //库检周期 + if (productAttached.getWarehouseCycle().isEmpty() || productAttached.getWarehouseCycle()==null){ + return error(500, "库检周期不能为空!信息导入失败!"); + } + //托盘上箱数 + if (productAttached.getPalletNum().toString().isEmpty() || productAttached.getPalletNum()==null){ + return error(500, "托盘上箱数不能为空!信息导入失败!"); + } + //垛形 + if (productAttached.getPackType().isEmpty() || productAttached.getPackType()==null){ + return error(500, "垛形不能为空!信息导入失败!"); + } + } + return success(); + + } + + @Override + @DS("#header.poolName") + public boolean checkSpareCodeUnique(BaseProductAttached baseProductAttached) { + String spareCode = baseProductAttachedMapper.checkSpareCodeUnique(baseProductAttached); + if (spareCode == null) { + return false; + } else { + return true; + } + } } diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/BaseProductAttachedMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/BaseProductAttachedMapper.xml index 887c5cea0..dc025030c 100644 --- a/op-modules/op-mes/src/main/resources/mapper/mes/BaseProductAttachedMapper.xml +++ b/op-modules/op-mes/src/main/resources/mapper/mes/BaseProductAttachedMapper.xml @@ -24,10 +24,15 @@ + + + - select id, product_code, category, pc, iei, man_standar, spray_way, blank_diameter, blank_no, spray_volume, liquid_no, endometrial_dosage, outer_film_dosage, support, support_no, pvc, support_plate, other, create_by from base_product_attached + select id, product_code, category, pc, iei, man_standar, spray_way, blank_diameter, blank_no, spray_volume, liquid_no, endometrial_dosage, outer_film_dosage, support, support_no, pvc, + support_plate, + other, create_by, warehouse_cycle,pallet_num,pack_type from base_product_attached @@ -57,7 +67,18 @@ where id = #{id} - + + + + + insert into base_product_attached @@ -80,6 +101,10 @@ support_plate, other, create_by, + + warehouse_cycle, + pallet_num, + pack_type, #{id}, @@ -101,6 +126,9 @@ #{supportPlate}, #{other}, #{createBy}, + #{warehouseCycle}, + #{palletNum}, + #{packType}, @@ -125,6 +153,11 @@ support_plate = #{supportPlate}, other = #{other}, create_by = #{createBy}, + + + warehouse_cycle = #{warehouseCycle}, + pallet_num = #{palletNum}, + pack_type = #{packType}, where id = #{id} From c75289012a270b378130a2c36905b544bdcd0d94 Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Thu, 22 Aug 2024 11:45:05 +0800 Subject: [PATCH 05/28] =?UTF-8?q?=E5=B7=A1=E6=A3=80=E6=8A=A5=E8=A1=A84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../op/quality/domain/QcCheckTaskDefect.java | 8 ++ .../op/quality/domain/QcCheckTaskDetail.java | 9 ++ .../quality/mapper/QcStaticTableMapper.java | 2 + .../impl/QcCheckTaskIncomeServiceImpl.java | 19 +-- .../service/impl/QcProCheckServiceImpl.java | 2 + .../impl/QcStaticTableServiceImpl.java | 15 +- .../quality/QcCheckTaskDefectMapper.xml | 9 +- .../quality/QcCheckTaskIncomeMapper.xml | 4 +- .../mapper/quality/QcInterfaceMapper.xml | 33 ++--- .../mapper/quality/QcStaticTableMapper.xml | 131 ++++++++++++++---- 10 files changed, 170 insertions(+), 62 deletions(-) diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskDefect.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskDefect.java index 0bb070308..bc848b91c 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskDefect.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskDefect.java @@ -93,7 +93,15 @@ public class QcCheckTaskDefect extends BaseEntity { private String defectCodes; private String defectNames; private String defectQualitys; + private String classId; + public String getClassId() { + return classId; + } + + public void setClassId(String classId) { + this.classId = classId; + } public String getDefectCodes() { return defectCodes; } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskDetail.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskDetail.java index e1603e694..fd418b716 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskDetail.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcCheckTaskDetail.java @@ -138,6 +138,7 @@ public class QcCheckTaskDetail extends BaseEntity { private String defectCodes; private String defectNames; private String defectQualitys; + private String classTypeCodes; private String itemType; private String judgeRate; private String samplePlan; @@ -147,6 +148,14 @@ public class QcCheckTaskDetail extends BaseEntity { private String sampleAql; private String checkLevel; + public String getClassTypeCodes() { + return classTypeCodes; + } + + public void setClassTypeCodes(String classTypeCodes) { + this.classTypeCodes = classTypeCodes; + } + public String getCheckLevel() { return checkLevel; } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcStaticTableMapper.java b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcStaticTableMapper.java index 3662d820d..02e1b577c 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcStaticTableMapper.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcStaticTableMapper.java @@ -91,4 +91,6 @@ public interface QcStaticTableMapper { Map getNoOkNum(QcStaticTable qcStaticTable); List getTableHzNoOkData(QcStaticTable qcStaticTable); + @MapKey("ymdms") + Map getNoOkRatioNum(QcStaticTable qcStaticTable); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskIncomeServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskIncomeServiceImpl.java index 00e1bc590..0a8005d78 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskIncomeServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskIncomeServiceImpl.java @@ -750,20 +750,17 @@ public class QcCheckTaskIncomeServiceImpl implements } } - + if(qcCheckTaskIncome.getSampleQuality()!=null && qcCheckTaskIncome.getSampleQuality().equals(BigDecimal.ZERO)){ + qcCheckTask.setSampleQuality(sampleQuality); + }else{ + qcCheckTask.setSampleQuality(qcCheckTaskIncome.getSampleQuality()); + } /**qc_check_task_cg**/ List valiData = qcCheckTaskIncomeMapper.selectQcCheckTaskCgByRecordId(belongId); // 判断表中是否存在此条数据 if (valiData != null && valiData.size() > 0) { n = qcCheckTaskIncomeMapper.updateQcCheckTaskCg(qcCheckTask);//updateQcCheckTaskCG }else { - - if(qcCheckTaskIncome.getSampleQuality().equals(BigDecimal.ZERO)){ - qcCheckTask.setSampleQuality(sampleQuality); - }else{ - qcCheckTask.setSampleQuality(qcCheckTaskIncome.getSampleQuality()); - } - qcCheckTask.setCheckNo(qcCheckTaskIncome.getCheckNo()); qcCheckTask.setOrderNo(qcCheckTaskIncome.getOrderNo()); qcCheckTask.setMaterialCode(qcCheckTaskIncome.getMaterialCode()); @@ -798,10 +795,12 @@ public class QcCheckTaskIncomeServiceImpl implements String[] defectCodes = detail.getDefectCodes().split(","); String[] defectNames = detail.getDefectNames().split(","); String[] defectQualitys = detail.getDefectQualitys().split(","); + String[] classIds = detail.getClassTypeCodes().split(","); for(int d=0;d implements } } - if(qcCheckTaskIncome.getSampleQuality().equals(BigDecimal.ZERO)){ + if(qcCheckTaskIncome.getSampleQuality()!=null && qcCheckTaskIncome.getSampleQuality().equals(BigDecimal.ZERO)){ qcCheckTask.setSampleQuality(sampleQuality); }else{ qcCheckTask.setSampleQuality(qcCheckTaskIncome.getSampleQuality()); @@ -923,11 +922,13 @@ public class QcCheckTaskIncomeServiceImpl implements String[] defectCodes = detail.getDefectCodes().split(","); String[] defectNames = detail.getDefectNames().split(","); String[] defectQualitys = detail.getDefectQualitys().split(","); + String[] classIds = detail.getClassTypeCodes().split(","); for(int d=0;d cols1 = qcStaticTableMapper.getTableHzTitle(qcStaticTable); @@ -887,17 +887,19 @@ public class QcStaticTableServiceImpl implements IQcStaticTableService { @DS("#header.poolName") public List getTableHzData(QcStaticTable qcStaticTable) { List dtos = new ArrayList<>(); - qcStaticTable.setDataType("unqualified_remark"); + //qcStaticTable.setDataType("unqualified_remark"); qcStaticTable.setRemark(qcStaticTable.getCheckType()); List noOkTyps = qcStaticTableMapper.getTableHzTitle(qcStaticTable); //第一列日期 List days = this.getHzDays(qcStaticTable.getIncomeTimeStr(),qcStaticTable.getYmdms()); - //抽样数、不良数、不良率 + //抽样数 Map samples = qcStaticTableMapper.getSamplesNum(qcStaticTable); if(samples.isEmpty()){ return dtos; } - //不良数 + //不良数(折算后)、不良率 + Map noOkNumRs = qcStaticTableMapper.getNoOkRatioNum(qcStaticTable); + //不良数(不折算) Map noOks = qcStaticTableMapper.getNoOkNum(qcStaticTable); HashMap colMap = null; for(String col:days){ @@ -905,9 +907,10 @@ public class QcStaticTableServiceImpl implements IQcStaticTableService { colMap.put("timeCol",col); String samKey = col; QcStaticTable sampl = samples.get(samKey); - if(sampl!=null&&!sampl.getSampleQuality().equals("0.00")){ + QcStaticTable noOkNumR = noOkNumRs.get(samKey); + if(sampl!=null&&!sampl.getSampleQuality().equals("0.00")&&noOkNumR!=null && !noOkNumR.getNoOkQuality().equals("0.00")){ colMap.put("sampleQuality",sampl.getSampleQuality().replaceAll("\\..*", "")); - BigDecimal noOkRate = new BigDecimal(sampl.getNoOkQuality()).multiply(new BigDecimal("100.00")) + BigDecimal noOkRate = new BigDecimal(noOkNumR.getNoOkQuality()).multiply(new BigDecimal("100.00")) .divide(new BigDecimal(sampl.getSampleQuality()),2, BigDecimal.ROUND_HALF_UP); colMap.put("noOkRate",noOkRate); }else{ diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskDefectMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskDefectMapper.xml index 251b177eb..d3051a871 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskDefectMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskDefectMapper.xml @@ -158,7 +158,14 @@ WHERE belong_to_detail = qctd.belong_to_detail and belong_to = qctd.belong_to FOR xml path('') ),1,1,'' - ) defectQualitys + ) defectQualitys, + STUFF( + (SELECT ',' + CAST(class_id AS VARCHAR(40)) + FROM qc_check_task_defect + WHERE belong_to_detail = qctd.belong_to_detail and belong_to = qctd.belong_to + FOR xml path('') + ),1,1,'' + ) classId FROM qc_check_task_defect qctd where qctd.del_flag = '0' and belong_to= #{belongTo} and belong_to_detail is not null GROUP by qctd.belong_to,qctd.belong_to_detail diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskIncomeMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskIncomeMapper.xml index bcb892350..a1a6502c1 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskIncomeMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskIncomeMapper.xml @@ -686,14 +686,14 @@ insert into qc_check_task_defect( record_id,belong_to,belong_to_detail, defect_code,defect_subclass, - noOk_quality, + noOk_quality,class_id, create_by,create_time,factory_code ) values ( #{item.recordId},#{item.belongTo},#{item.belongToDetail}, #{item.defectCode},#{item.defectSubclass}, - #{item.noOkQuality}, + #{item.noOkQuality},#{item.classId}, #{item.createBy},#{item.createTime},#{item.factoryCode} ) diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcInterfaceMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcInterfaceMapper.xml index 119013bbc..072c12706 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcInterfaceMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcInterfaceMapper.xml @@ -40,7 +40,7 @@ select sum(sample_quality) sampleQuality, - sum(noOk_quality) noOkQuality, ymdms FROM( - select CONVERT(varchar(7),qct.create_time, 120) AS ymdms, qct.sample_quality, qct.noOk_quality + select CONVERT(varchar(7),qct.create_time, 120) AS ymdms, qct.sample_quality from qc_check_task qct where check_type = #{checkType} and CONVERT(varchar(4),qct.create_time, 120) = #{incomeTimeStr} @@ -514,10 +515,9 @@ select sum(sample_quality) sampleQuality, - sum(noOk_quality) noOkQuality, ymdms FROM( - select CONVERT(varchar(10),qct.create_time, 120) AS ymdms, qct.sample_quality, qct.noOk_quality + select CONVERT(varchar(10),qct.create_time, 120) AS ymdms, qct.sample_quality from qc_check_task qct where check_type = #{checkType} and CONVERT(varchar(7),qct.create_time, 120) = #{incomeTimeStr} @@ -527,10 +527,9 @@ select sum(sample_quality) sampleQuality, - sum(noOk_quality) noOkQuality, RIGHT('00' + CAST(ymdms AS VARCHAR(2)), 2) ymdms FROM( - select DATEPART(HOUR, qct.create_time) AS ymdms, qct.sample_quality, qct.noOk_quality + select DATEPART(HOUR, qct.create_time) AS ymdms, qct.sample_quality from qc_check_task qct where check_type = #{checkType} and CONVERT(varchar(10),qct.create_time, 120) = #{incomeTimeStr} @@ -539,55 +538,112 @@ group by ymdms + From 3a9b3e393ba07746e24449fe6a28fe939efe93b2 Mon Sep 17 00:00:00 2001 From: A0010407 Date: Thu, 22 Aug 2024 12:43:24 +0800 Subject: [PATCH 06/28] =?UTF-8?q?2024-08-22=20wms=20-=20=E8=AE=BE=E5=A4=87?= =?UTF-8?q?=20-=20=E5=AD=97=E6=AE=B5=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/op/wms/domain/BaseEquipment.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/op-modules/op-wms/src/main/java/com/op/wms/domain/BaseEquipment.java b/op-modules/op-wms/src/main/java/com/op/wms/domain/BaseEquipment.java index 446e5a064..920c9462e 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/domain/BaseEquipment.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/domain/BaseEquipment.java @@ -63,10 +63,10 @@ public class BaseEquipment extends BaseEntity { private String attr2; @Excel(name = "预留字段3") - private Long attr3; + private String attr3; @Excel(name = "预留字段4") - private Long attr4; + private String attr4; @Excel(name = "单台能力工时") private String unitWorkingHours; @@ -677,19 +677,19 @@ public class BaseEquipment extends BaseEntity { return attr2; } - public void setAttr3(Long attr3) { + public void setAttr3(String attr3) { this.attr3 = attr3; } - public Long getAttr3() { + public String getAttr3() { return attr3; } - public void setAttr4(Long attr4) { + public void setAttr4(String attr4) { this.attr4 = attr4; } - public Long getAttr4() { + public String getAttr4() { return attr4; } From c1de5e8c1d3cece85bc58b325c3ecbae61da6be8 Mon Sep 17 00:00:00 2001 From: mengjiao <3338049200@qq,com> Date: Thu, 22 Aug 2024 12:46:22 +0800 Subject: [PATCH 07/28] =?UTF-8?q?=E6=88=90=E5=93=81=E5=85=A5=E5=BA=93?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=EF=BC=8C=E5=92=8C=E6=89=93=E5=8D=B0=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/OdsProcureOrderController.java | 2 +- .../controller/WmsToWCSmissionController.java | 12 +- .../com/op/wms/domain/OdsProcureOrder.java | 10 + .../op/wms/mapper/OdsProcureOrderMapper.java | 3 + .../op/wms/mapper/WmsProductPutMapper.java | 5 + .../wms/service/IOdsProcureOrderService.java | 2 +- .../impl/OdsProcureOrderServiceImpl.java | 70 ++++++- .../impl/WmsProductPutServiceImpl.java | 19 +- .../mapper/wms/OdsProcureOrderMapper.xml | 181 +++++++++++++++++- .../mapper/wms/WmsProductPutMapper.xml | 28 +++ 10 files changed, 313 insertions(+), 19 deletions(-) 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 ed54e9e3a..ac695e1b0 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 @@ -51,7 +51,7 @@ public class OdsProcureOrderController extends BaseController { } /**获取标识卡**/ @PostMapping("/getIdCardList") - public List getIdCardList(@RequestBody OdsProcureOrder odsProcureOrder) { + public List getIdCardList(@RequestBody OdsProcureOrder odsProcureOrder) { return odsProcureOrderService.getIdCardList(odsProcureOrder); } /** diff --git a/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java b/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java index 2f4196c10..ea4baa5a9 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java @@ -306,11 +306,15 @@ public class WmsToWCSmissionController { */ @PostMapping("/WmsProductPutByWorkOrderqueryBS") public AjaxResult WmsProductPutByWorkOrderqueryBS(@RequestBody WmsProductPut wmsProductPut) { - WmsProductPut wmsProductPut1= wmsProductPutService.WmsProductPutByWorkOrderqueryBS(wmsProductPut); - if (wmsProductPut1==null) { - return AjaxResult.error("标识卡未绑定"); + try { + // 调用服务层方法获取 WmsProductPut 对象 + WmsProductPut wmsProductPut1 = wmsProductPutService.WmsProductPutByWorkOrderqueryBS(wmsProductPut); + // 返回成功结果 + return AjaxResult.success(wmsProductPut1); + } catch (Exception e) { + // 捕捉到异常时,返回错误提示 + return AjaxResult.error("扫描标识卡异常,检查标识卡是否有问题:" + e.getMessage()); } - return AjaxResult.success(wmsProductPut1); } diff --git a/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOrder.java b/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOrder.java index 77433d6a9..b75833448 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOrder.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOrder.java @@ -71,6 +71,8 @@ public class OdsProcureOrder extends BaseEntity { */ @Excel(name = "工厂编码") private String siteCode; + private String cardNum; + /** * 仓库编码--收货仓库 */ @@ -283,6 +285,14 @@ public class OdsProcureOrder extends BaseEntity { this.Remark = Remark; } + public String getCardNum() { + return cardNum; + } + + public void setCardNum(String cardNum) { + this.cardNum = cardNum; + } + /** * 供应商名称 */ 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 7c9cdaa14..09de2d8fa 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 @@ -3,6 +3,7 @@ package com.op.wms.mapper; import java.util.List; import com.op.wms.domain.OdsProcureOrder; +import org.apache.ibatis.annotations.Param; /** * 包材采购单Mapper接口 @@ -72,4 +73,6 @@ public interface OdsProcureOrderMapper { void updateOdsProcureOrderByProcureCode(OdsProcureOrder odsProcureOrder); List getIdCardList(OdsProcureOrder odsProcureOrder); + + void addBatchPallet(@Param("list")List dtos); } 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 6f378db43..68dea54f1 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 @@ -4,6 +4,7 @@ import java.util.List; import com.op.system.api.domain.wms.wmsReportWork; +import com.op.wms.domain.ProOrderWorkorder; import com.op.wms.domain.WmsProductPut; import org.apache.ibatis.annotations.Param; @@ -81,6 +82,10 @@ public interface WmsProductPutMapper { WmsProductPut selectProOrderWorkorderBatchPallet(WmsProductPut wmsProductPut); + WmsProductPut selectProOrderWorkorderBatchPalletcode(WmsProductPut wmsProductPut); + + WmsProductPut selectProOrderWorkorderBatchPalletAtter(ProOrderWorkorder proOrderWorkorder); + // String selectWmsProductPutNum(wmsReportWork wmsReportWork); } 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 4fb5c8f8a..19e19d677 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 @@ -112,5 +112,5 @@ public interface IOdsProcureOrderService { void OutboundPostingSAPfc(List orderList); - List getIdCardList(OdsProcureOrder odsProcureOrder); + List getIdCardList(OdsProcureOrder odsProcureOrder); } 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 bcf451688..ef625d195 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 @@ -15,6 +15,7 @@ import java.util.*; import com.op.common.core.domain.R; +import com.op.common.core.utils.DateUtils; import com.op.common.core.web.domain.AjaxResult; import com.op.common.security.utils.SecurityUtils; import com.op.system.api.RemoteOpenService; @@ -41,6 +42,7 @@ 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.util.CollectionUtils; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; @@ -77,6 +79,9 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { private WmsRawOrderInMapper wmsRawOrderInMapper; @Autowired private RemoteOpenService remoteOpenService; + @Autowired + private BaseProductAttachedMapper baseProductAttachedMapper; + /** * 查询包材采购单 * @@ -1075,10 +1080,69 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { @Override - public List getIdCardList(OdsProcureOrder odsProcureOrder) { - List orderList= odsProcureOrderMapper.getIdCardList(odsProcureOrder); + @DS("#header.poolName") + public List getIdCardList(OdsProcureOrder odsProcureOrder) { +// DynamicDataSourceContextHolder.push("ds_" + odsProcureOrder.getFactoryCode()); + List dtos = new ArrayList<>(); + OdsProcureOrder order=odsProcureOrderMapper.selectOdsProcureOrderByID(odsProcureOrder.getID()); + //根据采购单获取一托盘要装多少 + BaseProductAttached baseProductAttached=new BaseProductAttached(); + String trimmedMaterialCode = order.getMaterialCode().substring(7); + baseProductAttached.setProductCode(trimmedMaterialCode); + List baseProductAttacheds= baseProductAttachedMapper.selectBaseProductAttachedList(baseProductAttached); + if (baseProductAttacheds.size()==0){ + //没有配置附属信息 + return null; + } + String name = odsProcureOrderMapper.selectBaseSupplier(order); + order.setSupplierName(name); + List dtos0= odsProcureOrderMapper.getIdCardList(order); + if(dtos0.size()==0){ + //说明没生成过标识卡 + OdsProcureOrder pw = new OdsProcureOrder(); + int i = 1; + String palletNum = baseProductAttacheds.get(0).getPalletNum(); + Date nowDate = DateUtils.getNowDate(); - return null; + if(palletNum!=null){ + BigDecimal pall = order.getPlanNumber(); + BigDecimal pn = new BigDecimal(palletNum); + while(pall.compareTo(BigDecimal.ZERO)>0){ + pw = new OdsProcureOrder(); + pw.setSiteCode(order.getSiteCode()); + + pw.setProcureCode(order.getProcureCode()); + pw.setUserDefined3(order.getUserDefined3());//行项目 + pw.setMaterialCode(order.getMaterialCode()); + pw.setMaterialDesc(order.getMaterialDesc()); + pw.setPlanNumber(pn); + pw.setSupplierCode(order.getSupplierCode()); + pw.setSupplierName(order.getSupplierName()); + pw.setUserDefined8(order.getUserDefined8()); + pw.setUserDefined11(order.getUserDefined11()); + pw.setUnit(order.getUnit()); + if(pall.compareTo(pn)<0) {//最后一托盘 + pw.setPlanNumber(pall); + }else{ + pw.setPlanNumber(pn); + } + pw.setCardNum(String.valueOf(i++)); + String dateString = pw.getUserDefined11().replace("-", ""); + pw.setUserDefined1(pw.getProcureCode()+"-"+pw.getUserDefined3()+"-"+pw.getUserDefined8()+"-"+dateString+"-"+pw.getCardNum());//采购单+行项目+类型+日期+板次 + pw.setCreateTime(nowDate); + pw.setActive("1"); + dtos.add(pw); + pall = pall.subtract(pn); + } + } + + if(!CollectionUtils.isEmpty(dtos)){ + odsProcureOrderMapper.addBatchPallet(dtos); + } + }else{ + dtos.addAll(dtos0); + } + return dtos; } public String DesignatedPalletOutboundWCS(WMSDesignatedPalle wmsDesignatedPalle) { 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 288d346a0..4281320d7 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 @@ -1032,11 +1032,11 @@ public class WmsProductPutServiceImpl implements IWmsProductPutService { public WmsProductPut WmsProductPutByWorkOrderqueryBS(WmsProductPut wmsProductPut) { // 使用 split 方法根据 '-' 分割字符串,结果是一个字符串数组 DynamicDataSourceContextHolder.push("ds_" + wmsProductPut.getFactoryCode()); - String[] attributes = wmsProductPut.getPallet().split("-"); - // 通过索引访问分割后的数组,获取所需的三个属性 - String attribute1 = attributes[0]; // 获取第一个属性 - String attribute2 = attributes[1]; // 获取第二个属性 - String attribute3 = attributes[2]; // 获取第三个属性 +// String[] attributes = wmsProductPut.getPallet().split("-"); + WmsProductPut wmsProductPutTEM= wmsProductPutMapper.selectProOrderWorkorderBatchPalletcode(wmsProductPut); + String attribute1 = wmsProductPutTEM.getAttribute1(); // 获取第一个属性 + String attribute2 = wmsProductPutTEM.getAttribute2(); // 获取第二个属性 + String attribute3 = wmsProductPutTEM.getAttribute3(); // 获取第三个属性 wmsProductPut.setAttribute1(attribute1); wmsProductPut.setAttribute2(attribute2); wmsProductPut.setAttribute3(attribute3); @@ -1091,11 +1091,12 @@ public class WmsProductPutServiceImpl implements IWmsProductPutService { @Override public ProOrderWorkorder finishedProductProductionRecordscar(ProOrderWorkorder proOrderWorkorder) { DynamicDataSourceContextHolder.push("ds_" + proOrderWorkorder.getFactoryCode()); - String[] attributes = proOrderWorkorder.getAttr1().split("-"); + //String[] attributes = proOrderWorkorder.getAttr1().split("-"); // 通过索引访问分割后的数组,获取所需的三个属性 - String attribute1 = attributes[0]; // 获取第一个属性 - String attribute2 = attributes[1]; // 获取第二个属性 - String attribute3 = attributes[2]; // 获取第三个属性 + WmsProductPut wmsProductPutTEM= wmsProductPutMapper.selectProOrderWorkorderBatchPalletAtter(proOrderWorkorder); + String attribute1 = wmsProductPutTEM.getAttribute1(); // 获取第一个属性 + String attribute2 = wmsProductPutTEM.getAttribute2(); // 获取第二个属性 + String attribute3 = wmsProductPutTEM.getAttribute3(); // 获取第三个属性 proOrderWorkorder.setWorkorderCodeSap(attribute1); proOrderWorkorder.setBatchCode(attribute2); WmsProductPut wmsProductPut =new WmsProductPut(); 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 ff983ecb5..5a84bf583 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 @@ -14,6 +14,7 @@ + @@ -250,7 +251,185 @@ and Active= #{Active} - + SELECT + Site_code, + ID, + Procure_Code, + Material_Code, + Material_Desc, + Plan_Date, + Plan_Number, + Unit, + COALESCE ( Reality_Number, 0 ) Reality_Number, + card_num cardNum, + User_Defined1, + User_Defined2, + User_Defined3, + User_Defined4, + User_Defined5, + User_Defined6, + User_Defined7, + User_Defined8, + User_Defined9, + User_Defined10, + User_Defined11, + Supplier_Code, + Supplier_Name, + Remark, + Create_By, + Create_Date, + Last_Update_By, + Last_Update_Date, + Active, + Enterprise_Id, + Enterprise_Code, + COALESCE ( Operation_Number, 0 ) Operation_Number + FROM + ods_procure_order_card + where Procure_Code=#{procureCode} and User_Defined3= #{userDefined3} and User_Defined8= #{userDefined8} and User_Defined11= #{userDefined11} + + + + + + insert into ods_procure_order_card + + + + Site_code, + + ID, + + card_num, + + Procure_Code, + + Material_Code, + + Material_Desc, + + Plan_Date, + + Plan_Number, + + Unit, + + Reality_Number, + + Order_Status, + + User_Defined1, + + User_Defined2, + + User_Defined3, + + User_Defined4, + + User_Defined5, + + User_Defined6, + + User_Defined7, + + User_Defined8, + + User_Defined9, + + User_Defined10, + + User_Defined11, + + Supplier_Code, + + Supplier_Name, + + Remark, + + Create_By, + + Create_Date, + + Last_Update_By, + + Last_Update_Date, + + Active, + + Enterprise_Id, + + Enterprise_Code, + + + + + #{dto.siteCode}, + + #{dto.ID}, + + #{dto.cardNum}, + + #{dto.procureCode}, + + #{dto.materialCode}, + + #{dto.materialDesc}, + + #{dto.planDate}, + + #{dto.planNumber}, + + #{dto.Unit}, + + #{dto.realityNumber}, + + #{dto.orderStatus}, + + #{dto.userDefined1}, + + #{dto.userDefined2}, + + #{dto.userDefined3}, + + #{dto.userDefined4}, + + #{dto.userDefined5}, + + #{dto.userDefined6}, + + #{dto.userDefined7}, + + #{dto.userDefined8}, + + #{dto.userDefined9}, + + #{dto.userDefined10}, + + #{dto.userDefined11}, + + #{dto.supplierCode}, + + #{dto.supplierName}, + + #{dto.Remark}, + + #{dto.createBy}, + + #{dto.createDate}, + + #{dto.lastUpdateBy}, + + #{dto.lastUpdateDate}, + + #{dto.Active}, + + #{dto.enterpriseId}, + + #{dto.enterpriseCode}, + + + 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 c731dae69..ece6f4c01 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 @@ -39,6 +39,9 @@ + + + @@ -432,4 +435,29 @@ AND pro_order_workorder_batch_pallet.pallet_num= #{pallet} + + + From 63f07e88c6d57f0f793ebca22fa3b8d1c9bcd018 Mon Sep 17 00:00:00 2001 From: A0010407 Date: Thu, 22 Aug 2024 13:23:48 +0800 Subject: [PATCH 08/28] =?UTF-8?q?2024-08-22=20=E8=AE=BE=E5=A4=87=E6=A8=A1?= =?UTF-8?q?=E5=9D=97-=E8=AE=BE=E5=A4=87-=E6=94=B9=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/op/device/domain/EquEquipment.java | 12 ++++++------ .../main/java/com/op/device/domain/Equipment.java | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/op-modules/op-device/src/main/java/com/op/device/domain/EquEquipment.java b/op-modules/op-device/src/main/java/com/op/device/domain/EquEquipment.java index 46647fcba..23e3d0ee6 100644 --- a/op-modules/op-device/src/main/java/com/op/device/domain/EquEquipment.java +++ b/op-modules/op-device/src/main/java/com/op/device/domain/EquEquipment.java @@ -104,13 +104,13 @@ public class EquEquipment extends BaseEntity { * 预留字段3 */ @Excel(name = "预留字段3") - private Long attr3; + private String attr3; /** * 预留字段4 */ @Excel(name = "预留字段4") - private Long attr4; + private String attr4; /** * 工段 @@ -394,19 +394,19 @@ public class EquEquipment extends BaseEntity { return attr2; } - public void setAttr3(Long attr3) { + public void setAttr3(String attr3) { this.attr3 = attr3; } - public Long getAttr3() { + public String getAttr3() { return attr3; } - public void setAttr4(Long attr4) { + public void setAttr4(String attr4) { this.attr4 = attr4; } - public Long getAttr4() { + public String getAttr4() { return attr4; } diff --git a/op-modules/op-device/src/main/java/com/op/device/domain/Equipment.java b/op-modules/op-device/src/main/java/com/op/device/domain/Equipment.java index ac49f6b14..c69693a80 100644 --- a/op-modules/op-device/src/main/java/com/op/device/domain/Equipment.java +++ b/op-modules/op-device/src/main/java/com/op/device/domain/Equipment.java @@ -96,13 +96,13 @@ public class Equipment extends BaseEntity { * 预留字段3 */ @Excel(name = "预留字段3") - private Long attr3; + private String attr3; /** * 预留字段4 */ @Excel(name = "预留字段4") - private Long attr4; + private String attr4; /** * 工段 @@ -347,19 +347,19 @@ public class Equipment extends BaseEntity { return attr2; } - public void setAttr3(Long attr3) { + public void setAttr3(String attr3) { this.attr3 = attr3; } - public Long getAttr3() { + public String getAttr3() { return attr3; } - public void setAttr4(Long attr4) { + public void setAttr4(String attr4) { this.attr4 = attr4; } - public Long getAttr4() { + public String getAttr4() { return attr4; } From e5adc98b7481d5189d08d8a243865bebe1c5d362 Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Thu, 22 Aug 2024 15:47:42 +0800 Subject: [PATCH 09/28] =?UTF-8?q?=E5=B7=A1=E6=A3=80=E6=8A=A5=E8=A1=A84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ABAP_AS_WITH_POOL.jcoDestination | 11 - dev_jco_rfc.trc | 230 ++++++++++++++++++ op-auth/src/main/resources/bootstrap.yml | 12 +- op-gateway/src/main/resources/bootstrap.yml | 14 +- .../src/main/resources/bootstrap.yml | 14 +- .../op-file/src/main/resources/bootstrap.yml | 16 +- .../op-gen/src/main/resources/bootstrap.yml | 13 +- .../op-job/src/main/resources/bootstrap.yml | 14 +- .../op-mes/src/main/resources/bootstrap.yml | 12 +- .../op-open/src/main/resources/bootstrap.yml | 16 +- .../op-plan/src/main/resources/bootstrap.yml | 12 +- .../QcDefectTypeClassController.java | 107 ++++++++ .../op/quality/domain/QcDefectTypeClass.java | 143 +++++++++++ .../mapper/QcDefectTypeClassMapper.java | 64 +++++ .../service/IQcDefectTypeClassService.java | 65 +++++ .../impl/QcDefectTypeClassServiceImpl.java | 111 +++++++++ .../src/main/resources/bootstrap.yml | 8 +- .../quality/QcDefectTypeClassMapper.xml | 194 +++++++++++++++ .../op-sap/src/main/resources/bootstrap.yml | 12 +- .../src/main/resources/bootstrap.yml | 12 +- .../src/main/resources/bootstrap.yml | 12 +- .../op-wms/src/main/resources/bootstrap.yml | 12 +- 22 files changed, 1004 insertions(+), 100 deletions(-) delete mode 100644 ABAP_AS_WITH_POOL.jcoDestination create mode 100644 op-modules/op-quality/src/main/java/com/op/quality/controller/QcDefectTypeClassController.java create mode 100644 op-modules/op-quality/src/main/java/com/op/quality/domain/QcDefectTypeClass.java create mode 100644 op-modules/op-quality/src/main/java/com/op/quality/mapper/QcDefectTypeClassMapper.java create mode 100644 op-modules/op-quality/src/main/java/com/op/quality/service/IQcDefectTypeClassService.java create mode 100644 op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcDefectTypeClassServiceImpl.java create mode 100644 op-modules/op-quality/src/main/resources/mapper/quality/QcDefectTypeClassMapper.xml diff --git a/ABAP_AS_WITH_POOL.jcoDestination b/ABAP_AS_WITH_POOL.jcoDestination deleted file mode 100644 index 74ee2038a..000000000 --- a/ABAP_AS_WITH_POOL.jcoDestination +++ /dev/null @@ -1,11 +0,0 @@ -#for test only! -#Fri Feb 02 11:11:00 CST 2024 -jco.destination.pool_capacity=true -jco.client.lang=zh -jco.client.ashost=192.168.0.130 -jco.client.saprouter= -jco.client.user=MES -jco.client.sysnr=0 -jco.destination.peak_limit=20 -jco.client.passwd=123456 -jco.client.client=800 diff --git a/dev_jco_rfc.trc b/dev_jco_rfc.trc index b255ea6ab..55598a5de 100644 --- a/dev_jco_rfc.trc +++ b/dev_jco_rfc.trc @@ -73,6 +73,185 @@ Caused by: java.lang.NullPointerException ... 63 more +**** Error file opened at 20240111 164451 China Standard Time Rel 3.0.8 (2011-11-28) [721.913] +Error: >Thu Jan 11 16:44:51,560< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 16:44:55,319< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 16:49:04,522< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 16:49:08,215< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 16:50:08,396< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 16:50:12,521< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 16:52:25,915< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 16:52:29,518< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 16:54:16,079< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 16:54:19,679< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 16:54:22,525< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 16:54:26,108< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 16:55:32,052< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 16:55:35,705< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 16:56:23,406< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 16:56:27,066< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 16:59:45,369< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 16:59:49,619< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:00:18,266< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:00:28,280< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:05:06,677< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:07:27,288< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:09:50,015< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:11:35,473< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:11:53,389< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:13:32,715< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:13:53,701< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:14:44,332< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:15:58,852< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:18:02,274< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:18:50,315< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:20:44,293< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:25:11,895< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:34:46,104< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:35:39,742< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:36:24,165< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:38:10,872< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:41:09,642< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:41:59,356< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:42:51,751< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:45:34,021< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:46:14,888< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:47:26,853< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:50:17,775< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:53:12,231< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:54:03,321< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:56:27,055< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:57:53,784< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:58:20,978< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 17:59:33,781< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 18:00:54,567< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 18:01:36,649< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 18:01:48,844< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 18:02:31,503< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 18:03:26,898< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 18:04:24,525< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 18:05:48,654< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 18:07:20,674< >RfcGetException rc (7) message: ## 800 ######## +Thu Jan 11 18:08:23,214< >RfcGetException rc (7) message: ## 800 ######## +Thu Dec 14 15:15:38,905< >RfcGetException rc (7) message: Invalid value in OPTION field of value table for IN itab operator. operator. Thu Jan 25 18:04:22,996< >RfcGetException rc (7) message: ## 600 ######## Wed Feb 28 09:51:23,384< >RfcGetException rc (7) message: ## 800 ######## +Wed Feb 28 09:55:24,676< >RfcGetException rc (7) message: ## 800 ######## +Wed Feb 28 09:56:02,286< >RfcGetException rc (7) message: ## 800 ######## +Mon Mar 11 16:16:17,464< >RfcGetException rc (3) message: CPIC-CALL: CMRCV on convId: 17090475 + +ERROR connection to partner '192.168.0.54:3300' broken +TIME Mon Mar 11 16:16:17 2024 +RELEASE 721 +COMPONENT NI (network interface) +VERSION 40 +RC -6 +MODULE nixxi.cpp +LINE 4851 +DETAIL NiIRead: P=192.168.0.54:3300; L=2.0.0.1:62053 +SYSTEM CALL recv +COUNTER 3 + +Mon Mar 11 16:16:17,467< RfcException: [QAS|erpqos] + message: CPIC-CALL: CMRCV on convId: 17090475 + +ERROR connection to partner '192.168.0.54:3300' broken +TIME Mon Mar 11 16:16:17 2024 +RELEASE 721 +COMPONENT NI (network interface) +VERSION 40 +RC -6 +MODULE nixxi.cpp +LINE 4851 +DETAIL NiIRead: P=192.168.0.54:3300; L=2.0.0.1:62053 +SYSTEM CALL recv +COUNTER 3 + + Return code: RFC_SYS_EXCEPTION(3) + error group: 102 + key: RFC_ERROR_COMMUNICATION +Exception raised by QAS|erpqos + diff --git a/op-auth/src/main/resources/bootstrap.yml b/op-auth/src/main/resources/bootstrap.yml index e4d188414..e0d5ba624 100644 --- a/op-auth/src/main/resources/bootstrap.yml +++ b/op-auth/src/main/resources/bootstrap.yml @@ -17,16 +17,16 @@ spring: # 服务注册地址 #--spring.cloud.nacos.discovery.namespace=chj --spring.cloud.nacos.config.namespace=chj # namespace: lanju-op-test - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 config: #命名空间 - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-gateway/src/main/resources/bootstrap.yml b/op-gateway/src/main/resources/bootstrap.yml index 912fc831d..587efe918 100644 --- a/op-gateway/src/main/resources/bootstrap.yml +++ b/op-gateway/src/main/resources/bootstrap.yml @@ -15,16 +15,16 @@ spring: discovery: # username: nacos # password: sfnacos2023 - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 config: #命名空间 - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 # 配置文件格式 file-extension: yml # 共享配置 @@ -40,7 +40,7 @@ spring: datasource: ds1: nacos: - server-addr: 140.249.53.142:8848 + server-addr: 175.27.215.92:8848 dataId: sentinel-op-gateway groupId: DEFAULT_GROUP data-type: json diff --git a/op-modules/op-device/src/main/resources/bootstrap.yml b/op-modules/op-device/src/main/resources/bootstrap.yml index b3bf9ac16..2d1a795e3 100644 --- a/op-modules/op-device/src/main/resources/bootstrap.yml +++ b/op-modules/op-device/src/main/resources/bootstrap.yml @@ -13,15 +13,17 @@ spring: cloud: nacos: discovery: - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + # server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 config: - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + # server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-file/src/main/resources/bootstrap.yml b/op-modules/op-file/src/main/resources/bootstrap.yml index f1c1d493d..033cb8caa 100644 --- a/op-modules/op-file/src/main/resources/bootstrap.yml +++ b/op-modules/op-file/src/main/resources/bootstrap.yml @@ -12,17 +12,17 @@ spring: cloud: nacos: discovery: + namespace: lanju-op + group: zxl # 服务注册地址 - namespace: lanju-op-test - group: test - # 服务注册地址 - server-addr: 192.168.202.20:8848 + # server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 config: - # 配置中心地址 - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + # server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-gen/src/main/resources/bootstrap.yml b/op-modules/op-gen/src/main/resources/bootstrap.yml index 4f69cfc2d..75c3c997a 100644 --- a/op-modules/op-gen/src/main/resources/bootstrap.yml +++ b/op-modules/op-gen/src/main/resources/bootstrap.yml @@ -13,17 +13,16 @@ spring: cloud: nacos: discovery: - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 config: #命名空间 - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - # server-addr: 192.168.202.20:8848 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-job/src/main/resources/bootstrap.yml b/op-modules/op-job/src/main/resources/bootstrap.yml index 9e64e0ffe..449112aad 100644 --- a/op-modules/op-job/src/main/resources/bootstrap.yml +++ b/op-modules/op-job/src/main/resources/bootstrap.yml @@ -13,15 +13,17 @@ spring: cloud: nacos: discovery: - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + # server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 config: - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + # server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-mes/src/main/resources/bootstrap.yml b/op-modules/op-mes/src/main/resources/bootstrap.yml index 1a148b145..63c4ede5d 100644 --- a/op-modules/op-mes/src/main/resources/bootstrap.yml +++ b/op-modules/op-mes/src/main/resources/bootstrap.yml @@ -13,16 +13,16 @@ spring: cloud: nacos: discovery: - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 # server-addr: 192.168.202.20:8848 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 config: - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-open/src/main/resources/bootstrap.yml b/op-modules/op-open/src/main/resources/bootstrap.yml index b9dd2cae6..29d71df08 100644 --- a/op-modules/op-open/src/main/resources/bootstrap.yml +++ b/op-modules/op-open/src/main/resources/bootstrap.yml @@ -13,17 +13,15 @@ spring: cloud: nacos: discovery: - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 config: - namespace: lanju-op-test - group: test - #命名空间 - #group: local - # 配置中心地址 - server-addr: 192.168.202.20:8848 + namespace: lanju-op + group: zxl + # 服务注册地址 + server-addr: 175.27.215.92:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-plan/src/main/resources/bootstrap.yml b/op-modules/op-plan/src/main/resources/bootstrap.yml index 89a3d22c2..39d689e46 100644 --- a/op-modules/op-plan/src/main/resources/bootstrap.yml +++ b/op-modules/op-plan/src/main/resources/bootstrap.yml @@ -13,15 +13,15 @@ spring: cloud: nacos: discovery: - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 config: - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcDefectTypeClassController.java b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcDefectTypeClassController.java new file mode 100644 index 000000000..90f4db30a --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcDefectTypeClassController.java @@ -0,0 +1,107 @@ +package com.op.quality.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.baomidou.dynamic.datasource.annotation.DS; +import com.op.common.core.utils.poi.ExcelUtil; +import com.op.quality.domain.QcDefectTypeClass; +import com.op.quality.service.IQcDefectTypeClassService; +import com.op.system.api.domain.SysDictData; +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.common.core.web.controller.BaseController; +import com.op.common.core.web.domain.AjaxResult; +import com.op.common.core.web.page.TableDataInfo; + +/** + * 故障类型-缺陷描述分类Controller + * + * @author Open Platform + * @date 2024-08-20 + */ +@RestController +@RequestMapping("/defectClass") +public class QcDefectTypeClassController extends BaseController { + @Autowired + private IQcDefectTypeClassService qcDefectTypeClassService; + +/** + * 查询故障类型-缺陷描述分类列表 + */ +@RequiresPermissions("system:class:list") +@GetMapping("/list") + public TableDataInfo list(QcDefectTypeClass qcDefectTypeClass) { + startPage(); + List list = qcDefectTypeClassService.selectQcDefectTypeClassList(qcDefectTypeClass); + return getDataTable(list); + } + + /** + * 导出故障类型-缺陷描述分类列表 + */ + @RequiresPermissions("system:class:export") + @Log(title = "故障类型-缺陷描述分类", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, QcDefectTypeClass qcDefectTypeClass) { + List list = qcDefectTypeClassService.selectQcDefectTypeClassList(qcDefectTypeClass); + ExcelUtil util = new ExcelUtil(QcDefectTypeClass. class); + util.exportExcel(response, list, "故障类型-缺陷描述分类数据"); + } + + /** + * 获取故障类型-缺陷描述分类详细信息 + */ + @RequiresPermissions("system:class:query") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") String id) { + return success(qcDefectTypeClassService.selectQcDefectTypeClassById(id)); + } + + /** + * 新增故障类型-缺陷描述分类 + */ + @RequiresPermissions("system:class:add") + @Log(title = "故障类型-缺陷描述分类", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody QcDefectTypeClass qcDefectTypeClass) { + return toAjax(qcDefectTypeClassService.insertQcDefectTypeClass(qcDefectTypeClass)); + } + + /** + * 修改故障类型-缺陷描述分类 + */ + @RequiresPermissions("system:class:edit") + @Log(title = "故障类型-缺陷描述分类", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody QcDefectTypeClass qcDefectTypeClass) { + return toAjax(qcDefectTypeClassService.updateQcDefectTypeClass(qcDefectTypeClass)); + } + + /** + * 删除故障类型-缺陷描述分类 + */ + @RequiresPermissions("system:class:remove") + @Log(title = "故障类型-缺陷描述分类", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable String[] ids) { + return toAjax(qcDefectTypeClassService.deleteQcDefectTypeClassByIds(ids)); + } + + @GetMapping("/getClassInfoList") + @DS("#header.poolName") + public AjaxResult getClassInfoList(QcDefectTypeClass qcDefectTypeClass) { + List list = qcDefectTypeClassService.getClassInfoList(qcDefectTypeClass); + return success(list); + } +} diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcDefectTypeClass.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcDefectTypeClass.java new file mode 100644 index 000000000..4d782302a --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcDefectTypeClass.java @@ -0,0 +1,143 @@ +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_defect_type_class + * + * @author Open Platform + * @date 2024-08-20 + */ +public class QcDefectTypeClass extends BaseEntity { +private static final long serialVersionUID=1L; + + /** 主键 */ + private String id; + + /** 不良类型id */ + @Excel(name = "不良类型id") + private String defectId; + + /** 不良类型编码 */ + @Excel(name = "不良类型编码") + private String defectCode; + + /** 缺陷名称 */ + @Excel(name = "缺陷名称") + private String className; + + /** 工厂编码 */ + @Excel(name = "工厂编码") + private String factoryCode; + + /** 备用字段1 */ + @Excel(name = "备用字段1") + private String attr1; + + /** 备用字段2 */ + @Excel(name = "备用字段2") + private String attr2; + + /** 备用字段3 */ + @Excel(name = "备用字段3") + private String attr3; + + /** 删除标志 */ + private String delFlag; + private String sort; + + public String getSort() { + return sort; + } + + public void setSort(String sort) { + this.sort = sort; + } + + public void setId(String id){ + this.id = id; + } + + public String getId(){ + return id; + } + public void setDefectId(String defectId){ + this.defectId = defectId; + } + + public String getDefectId(){ + return defectId; + } + public void setDefectCode(String defectCode){ + this.defectCode = defectCode; + } + + public String getDefectCode(){ + return defectCode; + } + public void setClassName(String className){ + this.className = className; + } + + public String getClassName(){ + return className; + } + public void setFactoryCode(String factoryCode){ + this.factoryCode = factoryCode; + } + + public String getFactoryCode(){ + return factoryCode; + } + public void setAttr1(String attr1){ + this.attr1 = attr1; + } + + public String getAttr1(){ + return attr1; + } + public void setAttr2(String attr2){ + this.attr2 = attr2; + } + + public String getAttr2(){ + return attr2; + } + public void setAttr3(String attr3){ + this.attr3 = attr3; + } + + public String getAttr3(){ + return attr3; + } + 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("defectId",getDefectId()) + .append("defectCode",getDefectCode()) + .append("className",getClassName()) + .append("remark",getRemark()) + .append("factoryCode",getFactoryCode()) + .append("attr1",getAttr1()) + .append("attr2",getAttr2()) + .append("attr3",getAttr3()) + .append("delFlag",getDelFlag()) + .append("createBy",getCreateBy()) + .append("createTime",getCreateTime()) + .append("updateBy",getUpdateBy()) + .append("updateTime",getUpdateTime()) + .toString(); + } + } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcDefectTypeClassMapper.java b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcDefectTypeClassMapper.java new file mode 100644 index 000000000..cf850f316 --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcDefectTypeClassMapper.java @@ -0,0 +1,64 @@ +package com.op.quality.mapper; + +import com.op.quality.domain.QcDefectTypeClass; + +import java.util.List; + + +/** + * 故障类型-缺陷描述分类Mapper接口 + * + * @author Open Platform + * @date 2024-08-20 + */ +public interface QcDefectTypeClassMapper { + /** + * 查询故障类型-缺陷描述分类 + * + * @param id 故障类型-缺陷描述分类主键 + * @return 故障类型-缺陷描述分类 + */ + public QcDefectTypeClass selectQcDefectTypeClassById(String id); + + /** + * 查询故障类型-缺陷描述分类列表 + * + * @param qcDefectTypeClass 故障类型-缺陷描述分类 + * @return 故障类型-缺陷描述分类集合 + */ + public List selectQcDefectTypeClassList(QcDefectTypeClass qcDefectTypeClass); + + /** + * 新增故障类型-缺陷描述分类 + * + * @param qcDefectTypeClass 故障类型-缺陷描述分类 + * @return 结果 + */ + public int insertQcDefectTypeClass(QcDefectTypeClass qcDefectTypeClass); + + /** + * 修改故障类型-缺陷描述分类 + * + * @param qcDefectTypeClass 故障类型-缺陷描述分类 + * @return 结果 + */ + public int updateQcDefectTypeClass(QcDefectTypeClass qcDefectTypeClass); + + /** + * 删除故障类型-缺陷描述分类 + * + * @param id 故障类型-缺陷描述分类主键 + * @return 结果 + */ + public int deleteQcDefectTypeClassById(String id); + + /** + * 批量删除故障类型-缺陷描述分类 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteQcDefectTypeClassByIds(String[] ids); + + List getClassInfoList(QcDefectTypeClass qcDefectTypeClass); +} diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcDefectTypeClassService.java b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcDefectTypeClassService.java new file mode 100644 index 000000000..2705f3fb4 --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcDefectTypeClassService.java @@ -0,0 +1,65 @@ +package com.op.quality.service; + +import com.op.quality.domain.QcDefectTypeClass; + +import java.util.List; + + + +/** + * 故障类型-缺陷描述分类Service接口 + * + * @author Open Platform + * @date 2024-08-20 + */ +public interface IQcDefectTypeClassService { + /** + * 查询故障类型-缺陷描述分类 + * + * @param id 故障类型-缺陷描述分类主键 + * @return 故障类型-缺陷描述分类 + */ + public QcDefectTypeClass selectQcDefectTypeClassById(String id); + + /** + * 查询故障类型-缺陷描述分类列表 + * + * @param qcDefectTypeClass 故障类型-缺陷描述分类 + * @return 故障类型-缺陷描述分类集合 + */ + public List selectQcDefectTypeClassList(QcDefectTypeClass qcDefectTypeClass); + + /** + * 新增故障类型-缺陷描述分类 + * + * @param qcDefectTypeClass 故障类型-缺陷描述分类 + * @return 结果 + */ + public int insertQcDefectTypeClass(QcDefectTypeClass qcDefectTypeClass); + + /** + * 修改故障类型-缺陷描述分类 + * + * @param qcDefectTypeClass 故障类型-缺陷描述分类 + * @return 结果 + */ + public int updateQcDefectTypeClass(QcDefectTypeClass qcDefectTypeClass); + + /** + * 批量删除故障类型-缺陷描述分类 + * + * @param ids 需要删除的故障类型-缺陷描述分类主键集合 + * @return 结果 + */ + public int deleteQcDefectTypeClassByIds(String[] ids); + + /** + * 删除故障类型-缺陷描述分类信息 + * + * @param id 故障类型-缺陷描述分类主键 + * @return 结果 + */ + public int deleteQcDefectTypeClassById(String id); + + List getClassInfoList(QcDefectTypeClass qcDefectTypeClass); +} diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcDefectTypeClassServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcDefectTypeClassServiceImpl.java new file mode 100644 index 000000000..49bf3e062 --- /dev/null +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcDefectTypeClassServiceImpl.java @@ -0,0 +1,111 @@ +package com.op.quality.service.impl; + +import java.security.Security; +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 com.op.quality.domain.QcDefectTypeClass; +import com.op.quality.mapper.QcDefectTypeClassMapper; +import com.op.quality.service.IQcDefectTypeClassService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + + +/** + * 故障类型-缺陷描述分类Service业务层处理 + * + * @author Open Platform + * @date 2024-08-20 + */ +@Service +public class QcDefectTypeClassServiceImpl implements IQcDefectTypeClassService { + @Autowired + private QcDefectTypeClassMapper qcDefectTypeClassMapper; + + /** + * 查询故障类型-缺陷描述分类 + * + * @param id 故障类型-缺陷描述分类主键 + * @return 故障类型-缺陷描述分类 + */ + @Override + @DS("#header.poolName") + public QcDefectTypeClass selectQcDefectTypeClassById(String id) { + return qcDefectTypeClassMapper.selectQcDefectTypeClassById(id); + } + + /** + * 查询故障类型-缺陷描述分类列表 + * + * @param qcDefectTypeClass 故障类型-缺陷描述分类 + * @return 故障类型-缺陷描述分类 + */ + @Override + @DS("#header.poolName") + public List selectQcDefectTypeClassList(QcDefectTypeClass qcDefectTypeClass) { + return qcDefectTypeClassMapper.selectQcDefectTypeClassList(qcDefectTypeClass); + } + + /** + * 新增故障类型-缺陷描述分类 + * + * @param qcDefectTypeClass 故障类型-缺陷描述分类 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int insertQcDefectTypeClass(QcDefectTypeClass qcDefectTypeClass) { + qcDefectTypeClass.setCreateTime(DateUtils.getNowDate()); + qcDefectTypeClass.setId(IdUtils.fastSimpleUUID()); + qcDefectTypeClass.setCreateBy(SecurityUtils.getUsername()); + return qcDefectTypeClassMapper.insertQcDefectTypeClass(qcDefectTypeClass); + } + + /** + * 修改故障类型-缺陷描述分类 + * + * @param qcDefectTypeClass 故障类型-缺陷描述分类 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int updateQcDefectTypeClass(QcDefectTypeClass qcDefectTypeClass) { + qcDefectTypeClass.setUpdateTime(DateUtils.getNowDate()); + qcDefectTypeClass.setUpdateBy(SecurityUtils.getUsername()); + return qcDefectTypeClassMapper.updateQcDefectTypeClass(qcDefectTypeClass); + } + + /** + * 批量删除故障类型-缺陷描述分类 + * + * @param ids 需要删除的故障类型-缺陷描述分类主键 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int deleteQcDefectTypeClassByIds(String[] ids) { + return qcDefectTypeClassMapper.deleteQcDefectTypeClassByIds(ids); + } + + /** + * 删除故障类型-缺陷描述分类信息 + * + * @param id 故障类型-缺陷描述分类主键 + * @return 结果 + */ + @Override + @DS("#header.poolName") + public int deleteQcDefectTypeClassById(String id) { + return qcDefectTypeClassMapper.deleteQcDefectTypeClassById(id); + } + + @Override + public List getClassInfoList(QcDefectTypeClass qcDefectTypeClass) { + return qcDefectTypeClassMapper.getClassInfoList(qcDefectTypeClass); + } + + +} diff --git a/op-modules/op-quality/src/main/resources/bootstrap.yml b/op-modules/op-quality/src/main/resources/bootstrap.yml index 27544deb6..b73385328 100644 --- a/op-modules/op-quality/src/main/resources/bootstrap.yml +++ b/op-modules/op-quality/src/main/resources/bootstrap.yml @@ -14,14 +14,14 @@ spring: nacos: discovery: namespace: lanju-op - group: chj + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 config: namespace: lanju-op - group: chj + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcDefectTypeClassMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcDefectTypeClassMapper.xml new file mode 100644 index 000000000..720767d85 --- /dev/null +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcDefectTypeClassMapper.xml @@ -0,0 +1,194 @@ + + + + + + + + + + + + + + + + + + + + + + + + select id, defect_id, defect_code, class_name, remark, factory_code, attr1, + attr2, attr3, del_flag, create_by, create_time, update_by, update_time ,sort + from qc_defect_type_class + + + + + + + + + insert into qc_defect_type_class + + id, + + defect_id, + + defect_code, + + class_name, + + remark, + + factory_code, + + attr1, + + attr2, + + attr3, + + del_flag, + + create_by, + + create_time, + + update_by, + + update_time, + + sort, + + + #{id}, + + #{defectId}, + + #{defectCode}, + + #{className}, + + #{remark}, + + #{factoryCode}, + + #{attr1}, + + #{attr2}, + + #{attr3}, + + #{delFlag}, + + #{createBy}, + + #{createTime}, + + #{updateBy}, + + #{updateTime}, + #{sort}, + + + + + update qc_defect_type_class + + defect_id = + #{defectId}, + + defect_code = + #{defectCode}, + + class_name = + #{className}, + + remark = + #{remark}, + + factory_code = + #{factoryCode}, + + attr1 = + #{attr1}, + + attr2 = + #{attr2}, + + attr3 = + #{attr3}, + + del_flag = + #{delFlag}, + + create_by = + #{createBy}, + + create_time = + #{createTime}, + + update_by = + #{updateBy}, + + update_time = + #{updateTime}, + + sort = #{sort}, + + where id = #{id} + + + + delete from qc_defect_type_class where id = #{id} + + + + delete from qc_defect_type_class where id in + + #{id} + + + diff --git a/op-modules/op-sap/src/main/resources/bootstrap.yml b/op-modules/op-sap/src/main/resources/bootstrap.yml index ce8e98df1..bd77cc0c0 100644 --- a/op-modules/op-sap/src/main/resources/bootstrap.yml +++ b/op-modules/op-sap/src/main/resources/bootstrap.yml @@ -13,15 +13,15 @@ spring: cloud: nacos: discovery: - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 config: - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-system/src/main/resources/bootstrap.yml b/op-modules/op-system/src/main/resources/bootstrap.yml index 4763c75d9..f219da313 100644 --- a/op-modules/op-system/src/main/resources/bootstrap.yml +++ b/op-modules/op-system/src/main/resources/bootstrap.yml @@ -14,17 +14,17 @@ spring: nacos: discovery: # namespace: lanju-op-test - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 # server-addr: 192.168.202.20:8848 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 config: - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 # server-addr: 192.168.202.20:8848 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-technology/src/main/resources/bootstrap.yml b/op-modules/op-technology/src/main/resources/bootstrap.yml index 62798ef14..8359972df 100644 --- a/op-modules/op-technology/src/main/resources/bootstrap.yml +++ b/op-modules/op-technology/src/main/resources/bootstrap.yml @@ -13,15 +13,15 @@ spring: cloud: nacos: discovery: - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 config: - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-wms/src/main/resources/bootstrap.yml b/op-modules/op-wms/src/main/resources/bootstrap.yml index b64379139..2aa5669a8 100644 --- a/op-modules/op-wms/src/main/resources/bootstrap.yml +++ b/op-modules/op-wms/src/main/resources/bootstrap.yml @@ -13,15 +13,15 @@ spring: cloud: nacos: discovery: - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 config: - namespace: lanju-op-test - group: test + namespace: lanju-op + group: zxl # 服务注册地址 - server-addr: 192.168.202.20:8848 + server-addr: 175.27.215.92:8848 # 配置文件格式 file-extension: yml # 共享配置 From 8b77bd8751a48294bae84dfffde8465ecd60c34f Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Thu, 22 Aug 2024 17:21:39 +0800 Subject: [PATCH 10/28] =?UTF-8?q?=E8=BE=85=E5=8A=A9=E6=8E=92=E6=9F=A5?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E5=A4=9A=E7=BA=BF=E4=BD=93bug=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/op/plan/service/impl/ProOrderServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderServiceImpl.java b/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderServiceImpl.java index af69dc4dc..938863718 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderServiceImpl.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderServiceImpl.java @@ -1371,7 +1371,7 @@ public class ProOrderServiceImpl implements IProOrderService { if(CollectionUtils.isEmpty(proOrder.getChildren())){//1层订单 proOrder.setEndFlag(1); } - int endCode = getEndCode(proOrder.getId()); + int endCode = getEndCode(proOrder.getId())+i; String belongWorkOrder = proOrder.getOrderCode()+"-"+endCode; proOrder.setBelongWorkOrder(belongWorkOrder); proOrder.setWorkerOrder(belongWorkOrder); From 6af7ebdc92197f89e662c254e8fcb0f3e24514cc Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Thu, 22 Aug 2024 17:32:29 +0800 Subject: [PATCH 11/28] =?UTF-8?q?=E5=BC=80=E5=8F=91=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E8=BF=98=E5=8E=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- op-auth/src/main/resources/bootstrap.yml | 18 +++++++++--------- op-gateway/src/main/resources/bootstrap.yml | 18 +++++++++--------- .../op-device/src/main/resources/bootstrap.yml | 16 ++++++++-------- .../op-energy/src/main/resources/bootstrap.yml | 2 ++ .../op-file/src/main/resources/bootstrap.yml | 16 ++++++++-------- .../op-job/src/main/resources/bootstrap.yml | 16 ++++++++-------- .../op-mes/src/main/resources/bootstrap.yml | 15 ++++++++------- .../op-open/src/main/resources/bootstrap.yml | 14 ++++++++------ .../op-plan/src/main/resources/bootstrap.yml | 14 ++++++++------ .../src/main/resources/bootstrap.yml | 14 ++++++++------ .../op-sap/src/main/resources/bootstrap.yml | 14 ++++++++------ .../src/main/resources/bootstrap.yml | 14 ++++++++------ .../op-system/src/main/resources/bootstrap.yml | 17 ++++++++--------- .../src/main/resources/bootstrap.yml | 14 ++++++++------ .../op-wms/src/main/resources/bootstrap.yml | 14 ++++++++------ 15 files changed, 116 insertions(+), 100 deletions(-) diff --git a/op-auth/src/main/resources/bootstrap.yml b/op-auth/src/main/resources/bootstrap.yml index e0d5ba624..c062389c2 100644 --- a/op-auth/src/main/resources/bootstrap.yml +++ b/op-auth/src/main/resources/bootstrap.yml @@ -12,21 +12,21 @@ spring: cloud: nacos: discovery: -# username: nacos -# password: sfnacos2023 + # username: nacos + # password: sfnacos2023 # 服务注册地址 #--spring.cloud.nacos.discovery.namespace=chj --spring.cloud.nacos.config.namespace=chj -# namespace: lanju-op-test - namespace: lanju-op - group: zxl + # namespace: lanju-op-test + namespace: lanju-op-test + group: test # 服务注册地址 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 config: #命名空间 - namespace: lanju-op - group: zxl + namespace: lanju-op-test + group: test # 服务注册地址 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-gateway/src/main/resources/bootstrap.yml b/op-gateway/src/main/resources/bootstrap.yml index 587efe918..de7b74c12 100644 --- a/op-gateway/src/main/resources/bootstrap.yml +++ b/op-gateway/src/main/resources/bootstrap.yml @@ -13,18 +13,18 @@ spring: cloud: nacos: discovery: -# username: nacos -# password: sfnacos2023 - namespace: lanju-op - group: zxl + # username: nacos + # password: sfnacos2023 + namespace: lanju-op-test + group: test # 服务注册地址 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 config: #命名空间 - namespace: lanju-op - group: zxl + namespace: lanju-op-test + group: test # 服务注册地址 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 # 配置文件格式 file-extension: yml # 共享配置 @@ -40,7 +40,7 @@ spring: datasource: ds1: nacos: - server-addr: 175.27.215.92:8848 + server-addr: 140.249.53.142:8848 dataId: sentinel-op-gateway groupId: DEFAULT_GROUP data-type: json diff --git a/op-modules/op-device/src/main/resources/bootstrap.yml b/op-modules/op-device/src/main/resources/bootstrap.yml index 2d1a795e3..5d2f97a86 100644 --- a/op-modules/op-device/src/main/resources/bootstrap.yml +++ b/op-modules/op-device/src/main/resources/bootstrap.yml @@ -13,17 +13,17 @@ spring: cloud: nacos: discovery: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - # server-addr: 192.168.202.20:8848 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 config: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - # server-addr: 192.168.202.20:8848 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-energy/src/main/resources/bootstrap.yml b/op-modules/op-energy/src/main/resources/bootstrap.yml index d2004e93c..82e9492a0 100644 --- a/op-modules/op-energy/src/main/resources/bootstrap.yml +++ b/op-modules/op-energy/src/main/resources/bootstrap.yml @@ -13,11 +13,13 @@ spring: cloud: nacos: discovery: + #命名空间 namespace: lanju-op-test group: test # 服务注册地址 server-addr: 192.168.202.20:8848 config: + #命名空间 namespace: lanju-op-test group: test # 服务注册地址 diff --git a/op-modules/op-file/src/main/resources/bootstrap.yml b/op-modules/op-file/src/main/resources/bootstrap.yml index 033cb8caa..c389fd948 100644 --- a/op-modules/op-file/src/main/resources/bootstrap.yml +++ b/op-modules/op-file/src/main/resources/bootstrap.yml @@ -12,17 +12,17 @@ spring: cloud: nacos: discovery: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - # server-addr: 192.168.202.20:8848 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 config: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - # server-addr: 192.168.202.20:8848 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-job/src/main/resources/bootstrap.yml b/op-modules/op-job/src/main/resources/bootstrap.yml index 449112aad..bba464405 100644 --- a/op-modules/op-job/src/main/resources/bootstrap.yml +++ b/op-modules/op-job/src/main/resources/bootstrap.yml @@ -13,17 +13,17 @@ spring: cloud: nacos: discovery: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - # server-addr: 192.168.202.20:8848 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 config: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - # server-addr: 192.168.202.20:8848 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-mes/src/main/resources/bootstrap.yml b/op-modules/op-mes/src/main/resources/bootstrap.yml index 63c4ede5d..a0e1c0df2 100644 --- a/op-modules/op-mes/src/main/resources/bootstrap.yml +++ b/op-modules/op-mes/src/main/resources/bootstrap.yml @@ -13,16 +13,17 @@ spring: cloud: nacos: discovery: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - # server-addr: 192.168.202.20:8848 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 config: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-open/src/main/resources/bootstrap.yml b/op-modules/op-open/src/main/resources/bootstrap.yml index 29d71df08..2f72dde4c 100644 --- a/op-modules/op-open/src/main/resources/bootstrap.yml +++ b/op-modules/op-open/src/main/resources/bootstrap.yml @@ -13,15 +13,17 @@ spring: cloud: nacos: discovery: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 config: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-plan/src/main/resources/bootstrap.yml b/op-modules/op-plan/src/main/resources/bootstrap.yml index 39d689e46..f18b4d216 100644 --- a/op-modules/op-plan/src/main/resources/bootstrap.yml +++ b/op-modules/op-plan/src/main/resources/bootstrap.yml @@ -13,15 +13,17 @@ spring: cloud: nacos: discovery: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 config: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-quality/src/main/resources/bootstrap.yml b/op-modules/op-quality/src/main/resources/bootstrap.yml index b73385328..e1e532ffd 100644 --- a/op-modules/op-quality/src/main/resources/bootstrap.yml +++ b/op-modules/op-quality/src/main/resources/bootstrap.yml @@ -13,15 +13,17 @@ spring: cloud: nacos: discovery: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 config: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-sap/src/main/resources/bootstrap.yml b/op-modules/op-sap/src/main/resources/bootstrap.yml index bd77cc0c0..f3ebf4cb7 100644 --- a/op-modules/op-sap/src/main/resources/bootstrap.yml +++ b/op-modules/op-sap/src/main/resources/bootstrap.yml @@ -13,15 +13,17 @@ spring: cloud: nacos: discovery: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 config: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-security/src/main/resources/bootstrap.yml b/op-modules/op-security/src/main/resources/bootstrap.yml index 26eba7e2c..c384bfc13 100644 --- a/op-modules/op-security/src/main/resources/bootstrap.yml +++ b/op-modules/op-security/src/main/resources/bootstrap.yml @@ -13,15 +13,17 @@ spring: cloud: nacos: discovery: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 config: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-system/src/main/resources/bootstrap.yml b/op-modules/op-system/src/main/resources/bootstrap.yml index f219da313..116003a6c 100644 --- a/op-modules/op-system/src/main/resources/bootstrap.yml +++ b/op-modules/op-system/src/main/resources/bootstrap.yml @@ -13,18 +13,17 @@ spring: cloud: nacos: discovery: - # namespace: lanju-op-test - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - # server-addr: 192.168.202.20:8848 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 config: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - # server-addr: 192.168.202.20:8848 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-technology/src/main/resources/bootstrap.yml b/op-modules/op-technology/src/main/resources/bootstrap.yml index 8359972df..c195551d7 100644 --- a/op-modules/op-technology/src/main/resources/bootstrap.yml +++ b/op-modules/op-technology/src/main/resources/bootstrap.yml @@ -13,15 +13,17 @@ spring: cloud: nacos: discovery: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 config: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 # 配置文件格式 file-extension: yml # 共享配置 diff --git a/op-modules/op-wms/src/main/resources/bootstrap.yml b/op-modules/op-wms/src/main/resources/bootstrap.yml index 2aa5669a8..879feea76 100644 --- a/op-modules/op-wms/src/main/resources/bootstrap.yml +++ b/op-modules/op-wms/src/main/resources/bootstrap.yml @@ -13,15 +13,17 @@ spring: cloud: nacos: discovery: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 config: - namespace: lanju-op - group: zxl + #命名空间 + namespace: lanju-op-test + group: test # 服务注册地址 - server-addr: 175.27.215.92:8848 + server-addr: 192.168.202.20:8848 # 配置文件格式 file-extension: yml # 共享配置 From 22b8bc240bc69f66de0a8526e1638241cfee64dc Mon Sep 17 00:00:00 2001 From: shaoyong Date: Thu, 22 Aug 2024 18:15:15 +0800 Subject: [PATCH 12/28] =?UTF-8?q?=E7=AE=B1=E5=9E=8B=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../op/mes/controller/MesBoxController.java | 19 ++++-- .../java/com/op/mes/mapper/MesBoxMapper.java | 4 ++ .../com/op/mes/service/IMesBoxService.java | 2 + .../mes/service/impl/MesBoxServiceImpl.java | 28 +++++++- .../resources/mapper/mes/MesBoxMapper.xml | 65 +++++++++++-------- 5 files changed, 83 insertions(+), 35 deletions(-) diff --git a/op-modules/op-mes/src/main/java/com/op/mes/controller/MesBoxController.java b/op-modules/op-mes/src/main/java/com/op/mes/controller/MesBoxController.java index 6a17bb585..0fead3bd8 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/controller/MesBoxController.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/controller/MesBoxController.java @@ -4,6 +4,7 @@ import java.util.List; import javax.servlet.http.HttpServletResponse; import com.baomidou.dynamic.datasource.annotation.DS; +import com.op.common.security.utils.SecurityUtils; import com.op.system.api.domain.SysDictType; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; @@ -36,11 +37,11 @@ public class MesBoxController extends BaseController { @Autowired private IMesBoxService mesBoxService; -/** - * 查询箱体类型列表 - */ -@RequiresPermissions("mes:mesBox:list") -@GetMapping("/list") + /** + * 查询箱体类型列表 + */ + @RequiresPermissions("mes:mesBox:list") + @GetMapping("/list") public TableDataInfo list(MesBox mesBox) { startPage(); List list = mesBoxService.selectMesBoxList(mesBox); @@ -55,7 +56,7 @@ public class MesBoxController extends BaseController { @PostMapping("/export") public void export(HttpServletResponse response, MesBox mesBox) { List list = mesBoxService.selectMesBoxList(mesBox); - ExcelUtil util = new ExcelUtil(MesBox. class); + ExcelUtil util = new ExcelUtil(MesBox.class); util.exportExcel(response, list, "箱体类型数据"); } @@ -75,6 +76,9 @@ public class MesBoxController extends BaseController { @Log(title = "箱体类型", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody MesBox mesBox) { + if (!mesBoxService.checkBoxTypeUnique(mesBox)) { + return error("新增箱型'" + mesBox.getBoxName() + "'失败,箱体类型已存在"); + } return toAjax(mesBoxService.insertMesBox(mesBox)); } @@ -85,6 +89,9 @@ public class MesBoxController extends BaseController { @Log(title = "箱体类型", businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@RequestBody MesBox mesBox) { + if (!mesBoxService.checkBoxTypeUnique(mesBox)) { + return error("修改箱型'" + mesBox.getBoxName() + "'失败,箱体类型已存在"); + } return toAjax(mesBoxService.updateMesBox(mesBox)); } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesBoxMapper.java b/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesBoxMapper.java index 46042a6eb..00aab9cce 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesBoxMapper.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesBoxMapper.java @@ -60,4 +60,8 @@ public interface MesBoxMapper { public int deleteMesBoxByBoxIds(Long[] boxIds); List selectDictTypeAll(); + + MesBox checkBoxTypeUnique(String boxType); + + int countBoxDataByType(String boxType); } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/IMesBoxService.java b/op-modules/op-mes/src/main/java/com/op/mes/service/IMesBoxService.java index 7425c2f99..b3d3d6a59 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/IMesBoxService.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/IMesBoxService.java @@ -60,4 +60,6 @@ public interface IMesBoxService { public int deleteMesBoxByBoxId(Long boxId); List selectDictTypeAll(); + + boolean checkBoxTypeUnique(MesBox mesBox); } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesBoxServiceImpl.java b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesBoxServiceImpl.java index 3f1a05e2c..ddfc79a49 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesBoxServiceImpl.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesBoxServiceImpl.java @@ -3,8 +3,13 @@ package com.op.mes.service.impl; import java.util.List; import com.baomidou.dynamic.datasource.annotation.DS; +import com.op.common.core.constant.UserConstants; +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.security.utils.DictUtils; import com.op.common.security.utils.SecurityUtils; +import com.op.system.api.domain.SysDictType; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.op.mes.mapper.MesBoxMapper; @@ -55,7 +60,7 @@ public class MesBoxServiceImpl implements IMesBoxService { @Override @DS("#header.poolName") public int insertMesBox(MesBox mesBox) { - mesBox.setUpdateBy(SecurityUtils.getUsername()); + mesBox.setCreateBy(SecurityUtils.getUsername()); mesBox.setCreateTime(DateUtils.getNowDate()); return mesBoxMapper.insertMesBox(mesBox); } @@ -83,7 +88,16 @@ public class MesBoxServiceImpl implements IMesBoxService { @Override @DS("#header.poolName") public int deleteMesBoxByBoxIds(Long[] boxIds) { - return mesBoxMapper.deleteMesBoxByBoxIds(boxIds); + int n = 0; + for (Long boxId : boxIds) { + MesBox boxType = selectMesBoxByBoxId(boxId); + if (mesBoxMapper.countBoxDataByType(boxType.getBoxType()) > 0) { + throw new ServiceException(String.format("%1$s已分配,不能删除", boxType.getBoxName())); + } + n += mesBoxMapper.deleteMesBoxByBoxIds(boxIds); + } + return n; + } /** @@ -103,4 +117,14 @@ public class MesBoxServiceImpl implements IMesBoxService { public List selectDictTypeAll() { return mesBoxMapper.selectDictTypeAll(); } + + @Override + public boolean checkBoxTypeUnique(MesBox mesBox) { + Long boxId = StringUtils.isNull(mesBox.getBoxId()) ? -1L : mesBox.getBoxId(); + MesBox boxType = mesBoxMapper.checkBoxTypeUnique(mesBox.getBoxType()); + if (StringUtils.isNotNull(boxType) && boxType.getBoxId().longValue() != boxId.longValue()) { + return UserConstants.NOT_UNIQUE; + } + return UserConstants.UNIQUE; + } } diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/MesBoxMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/MesBoxMapper.xml index 6dc55a129..ba3f68e2e 100644 --- a/op-modules/op-mes/src/main/resources/mapper/mes/MesBoxMapper.xml +++ b/op-modules/op-mes/src/main/resources/mapper/mes/MesBoxMapper.xml @@ -33,12 +33,13 @@ and status = #{status} + where del_flag = '0' @@ -88,30 +89,30 @@ update mes_box - box_name = - #{boxName}, - - box_type = - #{boxType}, - - status = - #{status}, - - create_by = - #{createBy}, - - create_time = - #{createTime}, - - update_by = - #{updateBy}, - - update_time = - #{updateTime}, - - remark = - #{remark}, - + box_name = + #{boxName}, + + box_type = + #{boxType}, + + status = + #{status}, + + create_by = + #{createBy}, + + create_time = + #{createTime}, + + update_by = + #{updateBy}, + + update_time = + #{updateTime}, + + remark = + #{remark}, + where box_id = #{boxId} @@ -120,14 +121,24 @@ + + - delete from mes_box where box_id = #{boxId} + update mes_box set del_flag = '1' where box_id = #{boxId} - delete from mes_box where box_id in + update mes_box set del_flag = '1' where box_id in #{boxId} + + From d082384d27b42e6594a9dfb4e8daaf14497344e3 Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Fri, 23 Aug 2024 10:43:28 +0800 Subject: [PATCH 13/28] =?UTF-8?q?=E8=B4=A8=E9=87=8F=E6=8A=A5=E8=A1=A8?= =?UTF-8?q?=E7=9B=B8=E5=85=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../op/mes/domain/vo/MesDailyReportVo.java | 10 ++++- .../op/mes/mapper/MesReportWorkMapper.java | 2 + .../impl/MesReportWorkServiceImpl.java | 6 +++ .../mapper/mes/MesReportWorkMapper.xml | 8 ++++ .../QcDefectTypeClassController.java | 7 ++++ .../controller/QcDefectTypeController.java | 7 ++++ .../com/op/quality/domain/QcDefectType.java | 9 +++++ .../op/quality/domain/QcDefectTypeClass.java | 9 +++++ .../mapper/QcDefectTypeClassMapper.java | 2 + .../op/quality/mapper/QcDefectTypeMapper.java | 2 + .../service/IQcDefectTypeClassService.java | 2 + .../quality/service/IQcDefectTypeService.java | 3 ++ .../impl/QcCheckTaskIncomeServiceImpl.java | 19 +++++++-- .../impl/QcDefectTypeClassServiceImpl.java | 5 ++- .../service/impl/QcDefectTypeServiceImpl.java | 8 ++++ .../quality/QcCheckTaskIncomeMapper.xml | 10 ++++- .../quality/QcCheckUnqualifiedMapper.xml | 11 ++++- .../quality/QcDefectTypeClassMapper.xml | 8 ++++ .../mapper/quality/QcDefectTypeMapper.xml | 40 ++++++++++--------- .../mapper/quality/QcStaticTableMapper.xml | 7 +++- 20 files changed, 146 insertions(+), 29 deletions(-) diff --git a/op-modules/op-mes/src/main/java/com/op/mes/domain/vo/MesDailyReportVo.java b/op-modules/op-mes/src/main/java/com/op/mes/domain/vo/MesDailyReportVo.java index 3d17560ee..cf2fb73be 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/domain/vo/MesDailyReportVo.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/domain/vo/MesDailyReportVo.java @@ -95,10 +95,18 @@ public class MesDailyReportVo extends BaseEntity { private String workCenter; private String equipmentTypeCode; - + private String reason; private String machineCode; private BigDecimal reportRate; + public String getReason() { + return reason; + } + + public void setReason(String reason) { + this.reason = reason; + } + public BigDecimal getReportRate() { return reportRate; } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesReportWorkMapper.java b/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesReportWorkMapper.java index 60250a8b2..dd30bbac7 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesReportWorkMapper.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/mapper/MesReportWorkMapper.java @@ -188,4 +188,6 @@ public interface MesReportWorkMapper { //当月产线产量汇总 //当月产线品类汇总 List getmonthProductionSutCategory(MesMonthReportVo mesMonthReportVo); + + String getProductReason(QuantityDto quantityDto); } diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesReportWorkServiceImpl.java b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesReportWorkServiceImpl.java index 4c6bc8144..8b31813d0 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesReportWorkServiceImpl.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesReportWorkServiceImpl.java @@ -424,6 +424,12 @@ public class MesReportWorkServiceImpl implements IMesReportWorkService { quantityDto.setWorkorderCode(workorderCode); quantityDto.setMachineCode(machineCode); + //影响效率原因 + String reasons = mesReportWorkMapper.getProductReason(quantityDto); + if(!reasons.equals(";;")&&StringUtils.isNotBlank(reasons)){ + dto.setReason(reasons); + } + QuantityDto parentMesReport = mesReportWorkMapper.getRealQuantity(quantityDto); QuantityDto sonMesReport = mesReportWorkMapper.getSumQuantity(quantityDto); if(sonMesReport == null){//单层工单的情况 diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/MesReportWorkMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/MesReportWorkMapper.xml index d132b6be6..71f13f3f0 100644 --- a/op-modules/op-mes/src/main/resources/mapper/mes/MesReportWorkMapper.xml +++ b/op-modules/op-mes/src/main/resources/mapper/mes/MesReportWorkMapper.xml @@ -953,6 +953,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + insert into mes_report_work diff --git a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcDefectTypeClassController.java b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcDefectTypeClassController.java index 90f4db30a..f2c25f75d 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcDefectTypeClassController.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcDefectTypeClassController.java @@ -104,4 +104,11 @@ public class QcDefectTypeClassController extends BaseController { List list = qcDefectTypeClassService.getClassInfoList(qcDefectTypeClass); return success(list); } + + @GetMapping("/getClassInfoListByCheckType") + @DS("#header.poolName") + public AjaxResult getClassInfoListByCheckType(QcDefectTypeClass qcDefectTypeClass) { + List list = qcDefectTypeClassService.getClassInfoListByCheckType(qcDefectTypeClass); + return success(list); + } } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcDefectTypeController.java b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcDefectTypeController.java index 5a0405d26..abd4b9ef9 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcDefectTypeController.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcDefectTypeController.java @@ -8,6 +8,7 @@ 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.QcCheckType; import com.op.quality.domain.QcDefectType; import com.op.quality.service.IQcDefectTypeService; import org.springframework.beans.factory.annotation.Autowired; @@ -95,4 +96,10 @@ public class QcDefectTypeController extends BaseController { List list = qcDefectTypeService.getDefectTypeListByDefectType(defectType); return getDataTable(list); } + + @GetMapping("/getCheckTypes") + public List getCheckTypes(QcCheckType qcCheckType) { + List list = qcDefectTypeService.getCheckTypes(qcCheckType); + return list; + } } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcDefectType.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcDefectType.java index 5c29f66f5..f8ce99556 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcDefectType.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcDefectType.java @@ -75,9 +75,18 @@ public class QcDefectType extends BaseEntity { // 创建日期结束 private String createTimeEnd; private String checkType; + private String checkName; private BigDecimal ratio; + public String getCheckName() { + return checkName; + } + + public void setCheckName(String checkName) { + this.checkName = checkName; + } + public String getCheckType() { return checkType; } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcDefectTypeClass.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcDefectTypeClass.java index 4d782302a..65ce23292 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcDefectTypeClass.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcDefectTypeClass.java @@ -48,6 +48,15 @@ private static final long serialVersionUID=1L; /** 删除标志 */ private String delFlag; private String sort; + private String checkType; + + public String getCheckType() { + return checkType; + } + + public void setCheckType(String checkType) { + this.checkType = checkType; + } public String getSort() { return sort; diff --git a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcDefectTypeClassMapper.java b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcDefectTypeClassMapper.java index cf850f316..7891acc60 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcDefectTypeClassMapper.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcDefectTypeClassMapper.java @@ -61,4 +61,6 @@ public interface QcDefectTypeClassMapper { public int deleteQcDefectTypeClassByIds(String[] ids); List getClassInfoList(QcDefectTypeClass qcDefectTypeClass); + + List getClassInfoListByCheckType(QcDefectTypeClass qcDefectTypeClass); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcDefectTypeMapper.java b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcDefectTypeMapper.java index 8cd9a9828..ebe3bf4b7 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcDefectTypeMapper.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcDefectTypeMapper.java @@ -1,5 +1,6 @@ package com.op.quality.mapper; +import com.op.quality.domain.QcCheckType; import com.op.quality.domain.QcDefectType; import org.apache.ibatis.annotations.Mapper; @@ -70,4 +71,5 @@ public interface QcDefectTypeMapper { public List getDefectTypeListByDefectType(String defectType); + List getCheckTypes(QcCheckType qcCheckType); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcDefectTypeClassService.java b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcDefectTypeClassService.java index 2705f3fb4..6c1e491f0 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcDefectTypeClassService.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcDefectTypeClassService.java @@ -62,4 +62,6 @@ public interface IQcDefectTypeClassService { public int deleteQcDefectTypeClassById(String id); List getClassInfoList(QcDefectTypeClass qcDefectTypeClass); + + List getClassInfoListByCheckType(QcDefectTypeClass qcDefectTypeClass); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcDefectTypeService.java b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcDefectTypeService.java index 3e81172b4..864cf5d32 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcDefectTypeService.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcDefectTypeService.java @@ -1,6 +1,7 @@ package com.op.quality.service; import com.op.common.core.web.domain.AjaxResult; +import com.op.quality.domain.QcCheckType; import com.op.quality.domain.QcDefectType; import java.util.List; @@ -61,4 +62,6 @@ public interface IQcDefectTypeService { public int deleteQcDefectTypeByDefectId(String defectId); public List getDefectTypeListByDefectType(String defectType); + + List getCheckTypes(QcCheckType qcCheckType); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskIncomeServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskIncomeServiceImpl.java index 0a8005d78..f72755d32 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskIncomeServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcCheckTaskIncomeServiceImpl.java @@ -800,7 +800,11 @@ public class QcCheckTaskIncomeServiceImpl implements defect = new QcCheckTaskDefect(); defect.setDefectCode(defectCodes[d]); defect.setDefectSubclass(defectNames[d].split(":")[0]); - defect.setClassId(classIds[d]); + if(d < classIds.length){ + defect.setClassId(classIds[d]); + }else{ + defect.setClassId(""); + } defect.setNoOkQuality(new BigDecimal(defectQualitys[d])); defect.setRecordId(IdUtils.fastSimpleUUID()); defect.setCreateTime(nowTime); @@ -928,7 +932,11 @@ public class QcCheckTaskIncomeServiceImpl implements defect.setDefectCode(defectCodes[d]); defect.setDefectSubclass(defectNames[d].split(":")[0]); defect.setNoOkQuality(new BigDecimal(defectQualitys[d])); - defect.setClassId(classIds[d]); + if(d < classIds.length){ + defect.setClassId(classIds[d]); + }else{ + defect.setClassId(""); + } defect.setRecordId(IdUtils.fastSimpleUUID()); defect.setCreateTime(nowTime); defect.setCreateBy(updateBy); @@ -1211,7 +1219,10 @@ public class QcCheckTaskIncomeServiceImpl implements } public static void main(String args[]){ - QcCheckTaskIncomeServiceImpl impl = new QcCheckTaskIncomeServiceImpl(); - System.out.println(impl.getConvertUnit("ST")); + String str = "11,,22,"; + System.out.println(str.split(",")[0]); + System.out.println(str.split(",")[1]); + System.out.println(str.split(",")[2]); + } } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcDefectTypeClassServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcDefectTypeClassServiceImpl.java index 49bf3e062..4e806db90 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcDefectTypeClassServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcDefectTypeClassServiceImpl.java @@ -107,5 +107,8 @@ public class QcDefectTypeClassServiceImpl implements IQcDefectTypeClassService { return qcDefectTypeClassMapper.getClassInfoList(qcDefectTypeClass); } - + @Override + public List getClassInfoListByCheckType(QcDefectTypeClass qcDefectTypeClass) { + return qcDefectTypeClassMapper.getClassInfoListByCheckType(qcDefectTypeClass); + } } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcDefectTypeServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcDefectTypeServiceImpl.java index ea07ae0d1..5fa0c625e 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcDefectTypeServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcDefectTypeServiceImpl.java @@ -5,6 +5,7 @@ import com.op.common.core.context.SecurityContextHolder; import com.op.common.core.utils.DateUtils; import com.op.common.core.utils.uuid.IdUtils; import com.op.common.core.web.domain.AjaxResult; +import com.op.quality.domain.QcCheckType; import com.op.quality.domain.QcDefectType; import com.op.quality.mapper.QcDefectTypeMapper; import com.op.quality.service.IQcDefectTypeService; @@ -172,4 +173,11 @@ public class QcDefectTypeServiceImpl implements IQcDefectTypeService { public List getDefectTypeListByDefectType(String defectType) { return qcDefectTypeMapper.getDefectTypeListByDefectType(defectType); } + + @Override + @DS("#header.poolName") + public List getCheckTypes(QcCheckType qcCheckType) { + return qcDefectTypeMapper.getCheckTypes(qcCheckType); + } + } diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskIncomeMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskIncomeMapper.xml index a1a6502c1..fa37c7b2f 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskIncomeMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcCheckTaskIncomeMapper.xml @@ -570,13 +570,19 @@ order by qctd.defect_code diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcDefectTypeClassMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcDefectTypeClassMapper.xml index 720767d85..1812b2d06 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcDefectTypeClassMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcDefectTypeClassMapper.xml @@ -68,6 +68,14 @@ and del_flag = '0' order by sort + insert into qc_defect_type_class diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcDefectTypeMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcDefectTypeMapper.xml index 1cfd69dc7..6a7a029a2 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcDefectTypeMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcDefectTypeMapper.xml @@ -20,6 +20,8 @@ + + @@ -30,30 +32,29 @@ + diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcStaticTableMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcStaticTableMapper.xml index c216ba461..7bbeff110 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcStaticTableMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcStaticTableMapper.xml @@ -491,10 +491,15 @@ GROUP by qctd.belong_to,qctd.belong_to_detail Date: Fri, 23 Aug 2024 18:02:12 +0800 Subject: [PATCH 15/28] =?UTF-8?q?=E7=AE=B1=E5=9E=8B=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/op/mes/domain/MesBoxDetail.java | 36 +++++++++++++++++-- .../mes/service/impl/MesBoxServiceImpl.java | 1 + .../mapper/mes/MesBoxDetailMapper.xml | 35 ++++++++++++++++-- .../resources/mapper/mes/MesBoxMapper.xml | 2 +- 4 files changed, 67 insertions(+), 7 deletions(-) diff --git a/op-modules/op-mes/src/main/java/com/op/mes/domain/MesBoxDetail.java b/op-modules/op-mes/src/main/java/com/op/mes/domain/MesBoxDetail.java index 06f2040c9..0b8106573 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/domain/MesBoxDetail.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/domain/MesBoxDetail.java @@ -5,6 +5,8 @@ import org.apache.commons.lang3.builder.ToStringStyle; import com.op.common.core.annotation.Excel; import com.op.common.core.web.domain.BaseEntity; +import java.math.BigDecimal; + /** * 字典数据对象 mes_box_detail * @@ -41,7 +43,7 @@ public class MesBoxDetail extends BaseEntity { * 箱型值 */ @Excel(name = "箱型值") - private String boxValue; + private BigDecimal boxValue; /** * 箱型类型 @@ -73,6 +75,10 @@ public class MesBoxDetail extends BaseEntity { @Excel(name = "状态", readConverterExp = "状态(0正常") private String status; + private BigDecimal length; + private BigDecimal width; + private BigDecimal height; + public void setBoxCode(Long boxCode) { this.boxCode = boxCode; } @@ -106,11 +112,11 @@ public class MesBoxDetail extends BaseEntity { this.boxKey = boxKey; } - public void setBoxValue(String boxValue) { + public void setBoxValue(BigDecimal boxValue) { this.boxValue = boxValue; } - public String getBoxValue() { + public BigDecimal getBoxValue() { return boxValue; } @@ -154,6 +160,30 @@ public class MesBoxDetail extends BaseEntity { return status; } + public BigDecimal getLength() { + return length; + } + + public void setLength(BigDecimal length) { + this.length = length; + } + + public BigDecimal getWidth() { + return width; + } + + public void setWidth(BigDecimal width) { + this.width = width; + } + + public BigDecimal getHeight() { + return height; + } + + public void setHeight(BigDecimal height) { + this.height = height; + } + @Override public String toString() { return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesBoxServiceImpl.java b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesBoxServiceImpl.java index ddfc79a49..0fd4bb215 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesBoxServiceImpl.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesBoxServiceImpl.java @@ -119,6 +119,7 @@ public class MesBoxServiceImpl implements IMesBoxService { } @Override + @DS("#header.poolName") public boolean checkBoxTypeUnique(MesBox mesBox) { Long boxId = StringUtils.isNull(mesBox.getBoxId()) ? -1L : mesBox.getBoxId(); MesBox boxType = mesBoxMapper.checkBoxTypeUnique(mesBox.getBoxType()); diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/MesBoxDetailMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/MesBoxDetailMapper.xml index 91244db29..e5a6d30d8 100644 --- a/op-modules/op-mes/src/main/resources/mapper/mes/MesBoxDetailMapper.xml +++ b/op-modules/op-mes/src/main/resources/mapper/mes/MesBoxDetailMapper.xml @@ -20,15 +20,23 @@ + + + - select box_code, box_sort, box_label, box_key, box_value, box_type, css_class, list_class, is_default, status, create_by, create_time, update_by, update_time, remark from mes_box_detail + select box_code, box_sort, box_label, box_key, + box_value, box_type, css_class, list_class, + is_default, status, create_by, create_time, + update_by, update_time, remark, + length, width, height from mes_box_detail + del_flag = '0' and box_name like concat('%', #{boxName}, '%') @@ -33,7 +34,6 @@ and status = #{status} - where del_flag = '0' + insert into mes_report_work From 379c7842135cf82cb96348d93ab526b7c258b800 Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Mon, 26 Aug 2024 11:57:02 +0800 Subject: [PATCH 18/28] =?UTF-8?q?=E7=94=9F=E4=BA=A7=E6=97=A5=E6=8A=A5?= =?UTF-8?q?=E8=A1=A8=E7=9B=B8=E5=85=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../op/mes/controller/MesLineController.java | 1 + .../main/java/com/op/mes/domain/MesLine.java | 11 +- .../resources/mapper/mes/MesLineMapper.xml | 4 + .../mapper/mes/MesReportWorkMapper.xml | 2 +- .../controller/QcInterfaceController.java | 13 +- .../controller/QcStaticTableController.java | 37 ++- .../com/op/quality/domain/QcInterface.java | 9 + .../com/op/quality/domain/QcStaticTable.java | 9 + .../op/quality/mapper/QcInterfaceMapper.java | 2 + .../quality/mapper/QcStaticTableMapper.java | 6 + .../quality/service/IQcInterfaceService.java | 1 + .../service/IQcStaticTableService.java | 6 + .../service/impl/QcInterfaceServiceImpl.java | 155 +++++------- .../impl/QcStaticTableServiceImpl.java | 138 ++++++++++- .../mapper/quality/QcInterfaceMapper.xml | 232 ++++++++++++------ .../mapper/quality/QcStaticTableMapper.xml | 107 ++++++++ 16 files changed, 543 insertions(+), 190 deletions(-) diff --git a/op-modules/op-mes/src/main/java/com/op/mes/controller/MesLineController.java b/op-modules/op-mes/src/main/java/com/op/mes/controller/MesLineController.java index a36a6e880..fc4e81ad4 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/controller/MesLineController.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/controller/MesLineController.java @@ -139,6 +139,7 @@ public class MesLineController extends BaseController { excelCols.add(new ExcelCol("标准用人", "useMan", 20)); excelCols.add(new ExcelCol("标准效率", "efficiency", 20)); excelCols.add(new ExcelCol("标准工时", "attr1", 20)); + excelCols.add(new ExcelCol("标准效率(PC/H)", "hourEfficiency", 20)); String titleName = "线体产品信息导入"; SXSSFWorkbook workbook = null; try { diff --git a/op-modules/op-mes/src/main/java/com/op/mes/domain/MesLine.java b/op-modules/op-mes/src/main/java/com/op/mes/domain/MesLine.java index 96a59ba92..97ae9ce69 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/domain/MesLine.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/domain/MesLine.java @@ -47,7 +47,8 @@ public class MesLine extends BaseEntity { */ @Excel(name = "标准效率") private BigDecimal efficiency; - + @Excel(name = "标准效率(PC/H)") + private BigDecimal hourEfficiency; /** * 检验工具 */ @@ -83,6 +84,14 @@ public class MesLine extends BaseEntity { private BigDecimal standarXl;//标准效率 private BigDecimal actXl;//实际效率 + public BigDecimal getHourEfficiency() { + return hourEfficiency; + } + + public void setHourEfficiency(BigDecimal hourEfficiency) { + this.hourEfficiency = hourEfficiency; + } + public String getProductCode() { return productCode; } diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/MesLineMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/MesLineMapper.xml index 6815cce65..1159895cf 100644 --- a/op-modules/op-mes/src/main/resources/mapper/mes/MesLineMapper.xml +++ b/op-modules/op-mes/src/main/resources/mapper/mes/MesLineMapper.xml @@ -108,6 +108,7 @@ product_name, use_man, efficiency, + hour_efficiency, attr1, attr2, attr3, @@ -126,6 +127,7 @@ #{productName}, #{useMan}, #{efficiency}, + #{hourEfficiency}, #{attr1}, #{attr2}, #{attr3}, @@ -146,6 +148,7 @@ use_man = #{useMan}, efficiency = #{efficiency}, + hour_efficiency= #{hourEfficiency}, attr1 = #{attr1}, attr2 = #{attr2}, attr3 = #{attr3}, @@ -164,6 +167,7 @@ use_man = #{useMan}, efficiency = #{efficiency}, + hour_efficiency= #{hourEfficiency}, attr1 = #{attr1}, attr2 = #{attr2}, attr3 = #{attr3}, diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/MesReportWorkMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/MesReportWorkMapper.xml index 2129a115d..ba186b9d0 100644 --- a/op-modules/op-mes/src/main/resources/mapper/mes/MesReportWorkMapper.xml +++ b/op-modules/op-mes/src/main/resources/mapper/mes/MesReportWorkMapper.xml @@ -681,7 +681,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" pow.quantity_split quantitySplit, pow.attr3 teamLeaderName, mlp.use_man manStandard, - mlp.efficiency efficiency, + mlp.hour_efficiency efficiency, mlp.attr1 unitWorkingHours, pow.workorder_code workorderCode, pow.workorder_name workorderName, diff --git a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcInterfaceController.java b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcInterfaceController.java index 0a7b00e23..80bcf72e2 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcInterfaceController.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcInterfaceController.java @@ -46,7 +46,7 @@ public class QcInterfaceController { } /** - * 来料--异常分布 + * 巡检--异常分布 * * @param qcInterface * @return @@ -56,6 +56,17 @@ public class QcInterfaceController { return qcInterfaceService.getCheckProjectsPie(qcInterface); } + /** + * 来料--异常分布 + * + * @param qcInterface + * @return + */ + @PostMapping("/getCheckProjectsPieLL") + public List getCheckProjectsPieLL(@RequestBody QcInterface qcInterface) { + return qcInterfaceService.getCheckProjectsPieLL(qcInterface); + } + /** * 来料--供应商来料订单批次不良详情 * diff --git a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcStaticTableController.java b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcStaticTableController.java index 1a3bb13ed..130dfc2cf 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/controller/QcStaticTableController.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/controller/QcStaticTableController.java @@ -22,6 +22,7 @@ import com.op.system.api.domain.quality.FactoryDto; import org.apache.commons.lang.StringUtils; import org.apache.poi.xssf.streaming.SXSSFWorkbook; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PutMapping; @@ -72,7 +73,29 @@ public class QcStaticTableController extends BaseController { } startPage(); List list = qcStaticTableService.selectQcStaticTableList(qcStaticTable); - return getDataTable(list); + if(!CollectionUtils.isEmpty(list)){ + return getDataTable(list); + } + return null; + } + + @PostMapping("/getIncomeChartList") + @Log(title = "供应商质量统计图表", businessType = BusinessType.QUERY) + public List getIncomeChartList(@RequestBody QcStaticTable qcStaticTable) { + if (StringUtils.isNotBlank(qcStaticTable.getSupplierCode())) { + List codes = Arrays.asList(qcStaticTable.getSupplierCode().split(",")); + qcStaticTable.setSupplierCodes(codes); + } + //默认时间范围T 00:00:00~T+1 00:00:00 + if (StringUtils.isEmpty(qcStaticTable.getYearMonth())) { + LocalDate date = LocalDate.now(); + DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM"); + String ymStr = dtf.format(date); + qcStaticTable.setYearMonth(ymStr);//end + } + startPage(); + List list = qcStaticTableService.getIncomeChartList(qcStaticTable); + return list; } @RequiresPermissions("quality:qcTableIncome:list") @@ -506,4 +529,16 @@ public class QcStaticTableController extends BaseController { public List getTableHzNoOkData(@RequestBody QcStaticTable qcStaticTable) { return qcStaticTableService.getTableHzNoOkData(qcStaticTable); } + /** + * 检验分析报表--首检不良趋势图 + **/ + + @PostMapping("/getTableHzDataSC") + public List getTableHzDataSC(@RequestBody QcStaticTable qcStaticTable) { + return qcStaticTableService.getTableHzDataSC(qcStaticTable); + } + @PostMapping("/getTableHzNoOkDataSC") + public List getTableHzNoOkDataSC(@RequestBody QcStaticTable qcStaticTable) { + return qcStaticTableService.getTableHzNoOkDataSC(qcStaticTable); + } } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcInterface.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcInterface.java index 908cfe8f1..828514934 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcInterface.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcInterface.java @@ -53,6 +53,15 @@ public class QcInterface extends BaseEntity { private List dataBarArrays; private List dataLineArrays; private String equipmentTypeCode; + private String checkType; + + public String getCheckType() { + return checkType; + } + + public void setCheckType(String checkType) { + this.checkType = checkType; + } public String getEquipmentTypeCode() { return equipmentTypeCode; diff --git a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcStaticTable.java b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcStaticTable.java index ac22c1fe4..aa3f91bbc 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/domain/QcStaticTable.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/domain/QcStaticTable.java @@ -41,6 +41,7 @@ public class QcStaticTable extends BaseEntity { private String typeCode; private String checkResult; private String noOkBatchRate; + private Double noOkBatchRateVal; private String shiftId; private String ymArrayStart; private String ymArrayEnd; @@ -114,6 +115,14 @@ public class QcStaticTable extends BaseEntity { private List columns1; private List columns2; + public Double getNoOkBatchRateVal() { + return noOkBatchRateVal; + } + + public void setNoOkBatchRateVal(Double noOkBatchRateVal) { + this.noOkBatchRateVal = noOkBatchRateVal; + } + public String getYmdUntype() { return ymdUntype; } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcInterfaceMapper.java b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcInterfaceMapper.java index a125d650c..6121e3e04 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcInterfaceMapper.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcInterfaceMapper.java @@ -51,4 +51,6 @@ public interface QcInterfaceMapper { Map getLineChartsDatas(QcInterface qcInterface); QcInterface getProduceHz1(QcInterface qcInterface); + + List getCheckProjectsPieLL(QcInterface qcInterface); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcStaticTableMapper.java b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcStaticTableMapper.java index 02e1b577c..7c39eb6db 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcStaticTableMapper.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/mapper/QcStaticTableMapper.java @@ -93,4 +93,10 @@ public interface QcStaticTableMapper { List getTableHzNoOkData(QcStaticTable qcStaticTable); @MapKey("ymdms") Map getNoOkRatioNum(QcStaticTable qcStaticTable); + @MapKey("ymdms") + Map getSamplesPCNum(QcStaticTable qcStaticTable); + @MapKey("ymdUntype") + Map getNoOkPCNum(QcStaticTable qcStaticTable); + + List getTableHzNoOkDataSC(QcStaticTable qcStaticTable); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcInterfaceService.java b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcInterfaceService.java index ddf9d41ce..7059b0ef0 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcInterfaceService.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcInterfaceService.java @@ -38,4 +38,5 @@ public interface IQcInterfaceService { QcLineChartDto getLineQcData(QcInterface qcInterface); + List getCheckProjectsPieLL(QcInterface qcInterface); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcStaticTableService.java b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcStaticTableService.java index b9134bf62..e72c34567 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/IQcStaticTableService.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/IQcStaticTableService.java @@ -56,4 +56,10 @@ public interface IQcStaticTableService { List getTableHzData(QcStaticTable qcStaticTable); List getTableHzNoOkData(QcStaticTable qcStaticTable); + + List getTableHzDataSC(QcStaticTable qcStaticTable); + + List getTableHzNoOkDataSC(QcStaticTable qcStaticTable); + + List getIncomeChartList(QcStaticTable qcStaticTable); } diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcInterfaceServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcInterfaceServiceImpl.java index 321d0a739..114426714 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcInterfaceServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcInterfaceServiceImpl.java @@ -3,10 +3,11 @@ package com.op.quality.service.impl; import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder; import com.op.common.core.utils.DateUtils; +import com.op.common.core.utils.StringUtils; import com.op.quality.domain.*; import com.op.quality.mapper.QcInterfaceMapper; +import com.op.quality.mapper.QcStaticTableMapper; import com.op.quality.service.IQcInterfaceService; -import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; @@ -29,6 +30,8 @@ import java.util.*; public class QcInterfaceServiceImpl implements IQcInterfaceService { @Autowired private QcInterfaceMapper qcInterfaceMapper; + @Autowired + private QcStaticTableMapper qcStaticTableMapper; @Override public List getDictData(QcInterface qcInterface) { @@ -42,37 +45,47 @@ public class QcInterfaceServiceImpl implements IQcInterfaceService { String nowYMD = DateUtils.getDate(); qcInterface.setYmd(nowYMD); -//发布会 -// List dtos = qcInterfaceMapper.getOverallInfo(qcInterface); -// if (!CollectionUtils.isEmpty(dtos) && dtos.size() == 2) { -// QcInterface qif = new QcInterface(); -// qif.setYmdTypeName("okRate"); -// if (dtos.get(1).getQuality().equals("0")) { -// qif.setQuality("100%"); -// } else { -// BigDecimal okRate = (new BigDecimal(dtos.get(0).getQuality()) -// .subtract(new BigDecimal(dtos.get(1).getQuality()))) -// .multiply(new BigDecimal("100")) -// .divide(new BigDecimal(dtos.get(0).getQuality()), 2, RoundingMode.HALF_UP); -// qif.setQuality(okRate.toString() + "%"); -// } -// dtos.add(qif); -// } - /**质量看板测试开始**/ - List dtos = new ArrayList<>(); - QcInterface qi0 = new QcInterface(); - qi0.setYmdTypeName("all"); - qi0.setQuality("33"); - dtos.add(qi0); - QcInterface qi1 = new QcInterface(); - qi1.setYmdTypeName("unOk"); - qi1.setQuality("0"); - dtos.add(qi1); - QcInterface qi2 = new QcInterface(); - qi2.setYmdTypeName("okRate"); - qi2.setQuality("100%"); - dtos.add(qi2); - /**质量看板测试结束**/ + qcInterface.setTypeCode("checkTypeLL"); + List dtos = qcInterfaceMapper.getOverallInfo(qcInterface); + if (!CollectionUtils.isEmpty(dtos)) { + QcInterface qi0 = new QcInterface(); + qi0.setYmdTypeName("all"); + qi0.setQuality(dtos.get(0).getQuality()); + dtos.add(qi0); + QcInterface qi1 = new QcInterface(); + qi1.setYmdTypeName("unOk"); + qi1.setQuality(dtos.get(0).getNoOkQuality()); + dtos.add(qi1); + QcInterface qif = new QcInterface(); + qif.setYmdTypeName("okRate"); + if (dtos.get(0).getNoOkQuality().equals("0.00")) { + qif.setQuality("100%"); + } else { + BigDecimal okRate = (new BigDecimal(dtos.get(0).getQuality()) + .subtract(new BigDecimal(dtos.get(0).getNoOkQuality()))) + .multiply(new BigDecimal("100")) + .divide(new BigDecimal(dtos.get(0).getQuality()), 2, RoundingMode.HALF_UP); + qif.setQuality(okRate.toString() + "%"); + } + dtos.add(qif); + dtos.remove(0); + }else{ + + } +// /**质量看板测试开始**/ +// QcInterface qi0 = new QcInterface(); +// qi0.setYmdTypeName("all"); +// qi0.setQuality("0"); +// dtos.add(qi0); +// QcInterface qi1 = new QcInterface(); +// qi1.setYmdTypeName("unOk"); +// qi1.setQuality("0"); +// dtos.add(qi1); +// QcInterface qi2 = new QcInterface(); +// qi2.setYmdTypeName("okRate"); +// qi2.setQuality("0.00%"); +// dtos.add(qi2); +// /**质量看板测试结束**/ return dtos; } @@ -86,12 +99,24 @@ public class QcInterfaceServiceImpl implements IQcInterfaceService { return dtos; } + @Override + public List getCheckProjectsPieLL(QcInterface qcInterface) { + DynamicDataSourceContextHolder.push(qcInterface.getFactoryCode()); + + String nowYMD = DateUtils.getDate(); + qcInterface.setYmd(nowYMD); + qcInterface.setCheckType("checkTypeLL"); + List dtos = qcInterfaceMapper.getCheckProjectsPieLL(qcInterface); + return dtos; + } + @Override public List getSupplierBadTOP5(QcInterface qcInterface) { DynamicDataSourceContextHolder.push(qcInterface.getFactoryCode()); String nowYMD = DateUtils.getDate(); qcInterface.setYmd(nowYMD); + qcInterface.setCheckType("checkTypeLL"); List dtos = qcInterfaceMapper.getSupplierBadTOP5(qcInterface); return dtos; } @@ -138,68 +163,6 @@ public class QcInterfaceServiceImpl implements IQcInterfaceService { dto.setCheckStatus("0".equals(dto.getCheckStatus()) ? "待检测" : "检测完成"); dto.setCheckResult("Y".equals(dto.getCheckResult()) ? "合格" : "不合格"); } -// /**质量看板测试开始**/ -// QcInterface q0 = new QcInterface(); -// q0.setCheckNo("20240305001"); -// q0.setIncomeBatchNo("20270122LJ20240123BBBA0G"); -// q0.setOrderNo("000800000083-1"); -// q0.setMaterialName("10小时无烟型黑蚊香(繁体)纸盒"); -// q0.setQuality("19000"); -// q0.setUnit("个"); -// q0.setSupplierName("中山市粤华包装有限公司"); -// q0.setIncomeTime("2024-03-05 00:00:00"); -// q0.setCheckTime("2024-03-05 11:32:00"); -// q0.setCheckResult("合格"); -// q0.setCheckManName("马娥章"); -// q0.setCheckName("来料检验"); -// dtos.add(q0); -// -// QcInterface q1 = new QcInterface(); -// q1.setCheckNo("20240306002"); -// q1.setIncomeBatchNo("20270122LJ20240123BCCA0F"); -// q1.setOrderNo("0008000001093-1"); -// q1.setMaterialName("依素猫狗(黄色)气雾盖"); -// q1.setQuality("5000"); -// q1.setUnit("个"); -// q1.setSupplierName("广州盛盈环保科技有限公司"); -// q1.setIncomeTime("2024-03-05 00:00:00"); -// q1.setCheckTime("2024-03-05 13:32:00"); -// q1.setCheckResult("合格"); -// q1.setCheckManName("马娥章"); -// q1.setCheckName("来料检验"); -// dtos.add(q1); -// -// QcInterface q2 = new QcInterface(); -// q2.setCheckNo("20240307002"); -// q2.setIncomeBatchNo("20270122LJ20240456BCCA0D"); -// q2.setOrderNo("0008000001193-1"); -// q2.setMaterialName("King Brand蚊片(450装)纸箱"); -// q2.setQuality("5800"); -// q2.setUnit("个"); -// q2.setSupplierName("广州市网能产品设计有限公司"); -// q2.setIncomeTime("2024-08-06 00:00:00"); -// q2.setCheckTime("2024-08-06 13:42:00"); -// q2.setCheckResult("合格"); -// q2.setCheckManName("马娥章"); -// q2.setCheckName("来料检验"); -// dtos.add(q2); -// -// QcInterface q3 = new QcInterface(); -// q3.setCheckNo("20240308001"); -// q3.setIncomeBatchNo("20270122LJ20240456BCBB0D"); -// q3.setOrderNo("0008000001203-1"); -// q3.setMaterialName("榄菊牌清香型蚊液(空白)纸箱"); -// q3.setQuality("7800"); -// q3.setUnit("个"); -// q3.setSupplierName("广州市网能产品设计有限公司"); -// q3.setCheckTime("2024-03-05 13:50:00"); -// q3.setIncomeTime("2024-08-06 00:00:00"); -// q3.setCheckResult("合格"); -// q3.setCheckManName("马娥章"); -// q3.setCheckName("来料检验"); -// dtos.add(q3); -// -// /**质量看板测试结束**/ return dtos; } @@ -398,7 +361,7 @@ public class QcInterfaceServiceImpl implements IQcInterfaceService { List dataLine0 = new ArrayList<>();//不合格率 for (String day0 : daystr0) { QcInterface last = noOkNum.get(day0); - if (last != null) { + if (last != null&& !"0.00".equals(last.getQuality())) { dataBar0.add(last.getNoOkQuality()); BigDecimal norate0 = new BigDecimal(last.getNoOkQuality()).multiply(new BigDecimal(100)) .divide(new BigDecimal(last.getQuality()), 2, RoundingMode.HALF_UP); @@ -413,7 +376,7 @@ public class QcInterfaceServiceImpl implements IQcInterfaceService { List dataLine1 = new ArrayList<>();//不合格率 for (String day1 : daystr1) { QcInterface now = noOkNum.get(day1); - if (now != null) { + if (now != null && !"0.00".equals(now.getQuality())) { dataBar1.add(now.getNoOkQuality()); BigDecimal norate0 = new BigDecimal(now.getNoOkQuality()).multiply(new BigDecimal(100)) .divide(new BigDecimal(now.getQuality()), 2, RoundingMode.HALF_UP); diff --git a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcStaticTableServiceImpl.java b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcStaticTableServiceImpl.java index 9e0b332b4..0a893699a 100644 --- a/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcStaticTableServiceImpl.java +++ b/op-modules/op-quality/src/main/java/com/op/quality/service/impl/QcStaticTableServiceImpl.java @@ -118,9 +118,65 @@ public class QcStaticTableServiceImpl implements IQcStaticTableService { } } return tabledtos; -// return tabledtos.stream() -// .filter(obj -> obj.getBatchs() != 0) -// .collect(Collectors.toList()); + } + + @Override + @DS("#header.poolName") + public List getIncomeChartList(QcStaticTable qcStaticTable) { + qcStaticTable.setTypeCode("material"); + /**base_supplier**供应商**/ + List tabledtos = qcStaticTableMapper.selectQcStaticTableList(qcStaticTable); + if (CollectionUtils.isEmpty(tabledtos)) { + return null; + } + /**qc_check_task**总批数**/ + Map pcMap = qcStaticTableMapper.selectPcMap(qcStaticTable, tabledtos); + if (pcMap == null) { + return null; + } + /**qc_check_task**不合格批次数**/ + qcStaticTable.setCheckResult("N"); + Map noOkPcMap = qcStaticTableMapper.selectPcMap(qcStaticTable, tabledtos); + + + for (QcStaticTable tabledto : tabledtos) { + QcStaticTable pcdto = pcMap.get(tabledto.getSupplierCode()); + QcStaticTable numdto = noOkPcMap.get(tabledto.getSupplierCode()); + if (pcdto != null) { + //总批次 + tabledto.setBatchs(pcdto.getBatchs()); + //总数量 + tabledto.setNums(pcdto.getNums()); + } else { + tabledto.setBatchs(0); + tabledto.setNums(0); + } + if (numdto != null) { + //不合格批次 + tabledto.setNoOkBatchs(numdto.getBatchs()); + } else { + tabledto.setNoOkBatchs(0); + } + //合格批次 + int okBatchs = tabledto.getBatchs() - tabledto.getNoOkBatchs(); + tabledto.setOkBatchs(okBatchs); + //批次不良率 + if (tabledto.getBatchs() != 0) { + BigDecimal noOkBatchRate = new BigDecimal(tabledto.getNoOkBatchs()).multiply(new BigDecimal("100.00")) + .divide(new BigDecimal(tabledto.getBatchs()), BigDecimal.ROUND_CEILING) + .setScale(2, BigDecimal.ROUND_HALF_UP); + tabledto.setNoOkBatchRate(noOkBatchRate.toString() + "%"); + tabledto.setNoOkBatchRateVal(noOkBatchRate.doubleValue()); + } else { + tabledto.setNoOkBatchRate("0.00%"); + tabledto.setNoOkBatchRateVal(0.00); + } + } + tabledtos = tabledtos.stream() + .filter(pieData -> !pieData.getNoOkBatchRate().equals("0.00%")) + .sorted(Comparator.comparingDouble(QcStaticTable::getNoOkBatchRateVal).reversed()) + .collect(java.util.stream.Collectors.toList()); + return tabledtos; } /** @@ -795,15 +851,10 @@ public class QcStaticTableServiceImpl implements IQcStaticTableService { //qcStaticTable.setDataType("unqualified_remark"); qcStaticTable.setRemark(qcStaticTable.getCheckType()); List cols1 = qcStaticTableMapper.getTableHzTitle(qcStaticTable); - if(CollectionUtils.isEmpty(cols1)){ return dto; } - dto.setColumns1(cols1); -// List cols2 = qcStaticTableMapper.getTableHzTitle2(qcStaticTable); -// -// dto.setColumns2(cols2); return dto; } @@ -882,7 +933,7 @@ public class QcStaticTableServiceImpl implements IQcStaticTableService { } return days; } - + /**巡检**/ @Override @DS("#header.poolName") public List getTableHzData(QcStaticTable qcStaticTable) { @@ -935,7 +986,6 @@ public class QcStaticTableServiceImpl implements IQcStaticTableService { return dtos; } - @Override @DS("#header.poolName") public List getTableHzNoOkData(QcStaticTable qcStaticTable) { @@ -956,7 +1006,75 @@ public class QcStaticTableServiceImpl implements IQcStaticTableService { } return dtos; } + /**首检**/ + @Override + @DS("#header.poolName") + public List getTableHzDataSC(QcStaticTable qcStaticTable) { + List dtos = new ArrayList<>(); + qcStaticTable.setRemark(qcStaticTable.getCheckType()); + List noOkTyps = qcStaticTableMapper.getTableHzTitle(qcStaticTable); + //第一列日期 + List days = this.getHzDays(qcStaticTable.getIncomeTimeStr(),qcStaticTable.getYmdms()); + //抽样批次数、不合格数 + Map samples = qcStaticTableMapper.getSamplesPCNum(qcStaticTable); + if(samples.isEmpty()){ + return dtos; + } + HashMap colMap = null; + for(String col:days){ + colMap = new HashMap(); + colMap.put("timeCol",col); + String samKey = col; + QcStaticTable sampl = samples.get(samKey); + if(sampl!=null&&!sampl.getSampleQuality().equals("0.00")){ + colMap.put("sampleQuality",sampl.getSampleQuality().replaceAll("\\..*", "")); + BigDecimal noOkRate = new BigDecimal(sampl.getNoOkQuality()).multiply(new BigDecimal("100.00")) + .divide(new BigDecimal(sampl.getSampleQuality()),2, BigDecimal.ROUND_HALF_UP); + colMap.put("noOkRate",noOkRate); + }else{ + colMap.put("sampleQuality","0"); + colMap.put("noOkRate","0"); + } + //不良数(不折算) + Map noOks = qcStaticTableMapper.getNoOkPCNum(qcStaticTable); + //缺陷不良 + for(int i=0;i< noOkTyps.size();i++){ + String noOkTyp = noOkTyps.get(i); + String noOkTypeKey = col+noOkTyp; + QcStaticTable noOk = noOks.get(noOkTypeKey); + if(noOk!=null&&noOk.getNoOkQuality()!=null) { + colMap.put("col"+i, noOk.getNoOkQuality().replaceAll("\\..*", "")); + }else{ + colMap.put("col"+i, "0"); + } + } + + dtos.add(colMap); + } + + return dtos; + } + @Override + @DS("#header.poolName") + public List getTableHzNoOkDataSC(QcStaticTable qcStaticTable) { + //不良数 + List dtos = qcStaticTableMapper.getTableHzNoOkDataSC(qcStaticTable); + + BigDecimal totalNoOkQuality = BigDecimal.ZERO; + //求不良数和 + for (QcStaticTable dto : dtos) { + totalNoOkQuality = totalNoOkQuality.add(new BigDecimal(dto.getNoOkQuality())); + } + //求占比 + for (QcStaticTable dto : dtos) { + BigDecimal noOkratio = new BigDecimal(dto.getNoOkQuality()) + .divide(totalNoOkQuality,2, BigDecimal.ROUND_HALF_UP); + dto.setNoOkNumRate(noOkratio.toString()); + dto.setNoOkQuality(dto.getNoOkQuality().replaceAll("\\..*", "")); + } + return dtos; + } /****/ public List getHzDays(String timeStr,String ymd) { // 返回的日期集合 diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcInterfaceMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcInterfaceMapper.xml index 072c12706..dbe8ce651 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcInterfaceMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcInterfaceMapper.xml @@ -12,35 +12,43 @@ where dict_type = #{dictType} and status = '0' + diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcStaticTableMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcStaticTableMapper.xml index 7bbeff110..99524e471 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcStaticTableMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcStaticTableMapper.xml @@ -690,4 +690,111 @@ group by t.class_name ) t0 order by noOkQuality desc + + + From 0a230ffae24ffe3fd956dcd4c64276793c126c72 Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Mon, 26 Aug 2024 12:02:39 +0800 Subject: [PATCH 19/28] =?UTF-8?q?=E7=94=9F=E4=BA=A7=E6=97=A5=E6=8A=A5?= =?UTF-8?q?=E8=A1=A8=E7=9B=B8=E5=85=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../op/mes/service/impl/MesReportWorkServiceImpl.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesReportWorkServiceImpl.java b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesReportWorkServiceImpl.java index 6ca63047f..d682dee4f 100644 --- a/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesReportWorkServiceImpl.java +++ b/op-modules/op-mes/src/main/java/com/op/mes/service/impl/MesReportWorkServiceImpl.java @@ -432,8 +432,8 @@ public class MesReportWorkServiceImpl implements IMesReportWorkService { quantityDto.setMachineCode(machineCode); //影响效率原因 String reasons = mesReportWorkMapper.getProductReason(quantityDto); - if(StringUtils.isNotBlank(reasons)&&!reasons.equals(";;")){ - dto.setReason(reasons); + if(StringUtils.isNotBlank(reasons)){ + dto.setReason(reasons.replaceAll(";+", " ")); } QuantityDto parentMesReport = mesReportWorkMapper.getRealQuantity(quantityDto); @@ -866,5 +866,11 @@ public class MesReportWorkServiceImpl implements IMesReportWorkService { } return map; } + public static void main(String[] args) { + String originalString = "这是;;一个;测试;字符串;;;;用来测试替换功能"; + String replacedString = originalString.replaceAll(";+", " "); + System.out.println("原始字符串: " + originalString); + System.out.println("替换后的字符串: " + replacedString); + } } From 369c57a3029d1f4427164a63cb446907e21ffdc1 Mon Sep 17 00:00:00 2001 From: mengjiao <3338049200@qq,com> Date: Mon, 26 Aug 2024 13:43:32 +0800 Subject: [PATCH 20/28] =?UTF-8?q?=E6=88=90=E5=93=81=E5=85=A5=E5=BA=93?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E7=9A=84=E8=BF=87=E8=B4=A6=E6=8C=89=E9=92=AE?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=EF=BC=8C=E6=B7=BB=E5=8A=A0=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E6=89=B9=E6=AC=A1=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/OdsProcureOrderController.java | 4 +- .../controller/WmsToWCSmissionController.java | 6 +- .../wms/service/IOdsProcureOrderService.java | 2 +- .../impl/OdsProcureOrderServiceImpl.java | 117 ++++++++++++++++-- .../impl/WmsProductPutServiceImpl.java | 7 ++ 5 files changed, 119 insertions(+), 17 deletions(-) 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 ac695e1b0..5e5e9701b 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 @@ -51,8 +51,8 @@ public class OdsProcureOrderController extends BaseController { } /**获取标识卡**/ @PostMapping("/getIdCardList") - public List getIdCardList(@RequestBody OdsProcureOrder odsProcureOrder) { - return odsProcureOrderService.getIdCardList(odsProcureOrder); + public AjaxResult getIdCardList(@RequestBody OdsProcureOrder odsProcureOrder) { + return success(odsProcureOrderService.getIdCardList(odsProcureOrder)); } /** * 导出包材采购单列表 diff --git a/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java b/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java index ea4baa5a9..7b90d76d9 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/controller/WmsToWCSmissionController.java @@ -760,7 +760,11 @@ public class WmsToWCSmissionController { } return iWmsToWCSmissionService.liftTakeOrPutCompleted(wcsdto); } - +// /**获取标识卡**/ +// @PostMapping("/getIdCardList") +// public AjaxResult getIdCardList(@RequestBody OdsProcureOrder odsProcureOrder) { +// return success(odsProcureOrderService.getIdCardList(odsProcureOrder)); +// } /** * 查询库区列表 */ 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 19e19d677..d923e2807 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 @@ -112,5 +112,5 @@ public interface IOdsProcureOrderService { void OutboundPostingSAPfc(List orderList); - List getIdCardList(OdsProcureOrder odsProcureOrder); + String getIdCardList(OdsProcureOrder odsProcureOrder); } 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 42b92e918..77942afa2 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 @@ -1096,8 +1096,8 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { @Override @DS("#header.poolName") - public List getIdCardList(OdsProcureOrder odsProcureOrder) { -// DynamicDataSourceContextHolder.push("ds_" + odsProcureOrder.getFactoryCode()); + public String getIdCardList(OdsProcureOrder odsProcureOrder) { + // DynamicDataSourceContextHolder.push("ds_" + odsProcureOrder.getFactoryCode()); List dtos = new ArrayList<>(); OdsProcureOrder order=odsProcureOrderMapper.selectOdsProcureOrderByID(odsProcureOrder.getID()); //根据采购单获取一托盘要装多少 @@ -1107,7 +1107,7 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { List baseProductAttacheds= baseProductAttachedMapper.selectBaseProductAttachedList(baseProductAttached); if (baseProductAttacheds.size()==0){ //没有配置附属信息 - return null; + return "没有配置附属信息"; } String name = odsProcureOrderMapper.selectBaseSupplier(order); order.setSupplierName(name); @@ -1134,6 +1134,7 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { pw.setSupplierCode(order.getSupplierCode()); pw.setSupplierName(order.getSupplierName()); pw.setUserDefined8(order.getUserDefined8()); + pw.setUserDefined7(order.getUserDefined7()); pw.setUserDefined11(order.getUserDefined11()); pw.setUnit(order.getUnit()); if(pall.compareTo(pn)<0) {//最后一托盘 @@ -1157,9 +1158,88 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { }else{ dtos.addAll(dtos0); } - return dtos; + String msg= dayin(dtos); + return msg; } + public String dayin( List orderList) { + // 定义请求的URL地址 + String url = "http://172.18.80.215:8022/printService/printServiceTest"; + // 创建OkHttpClient实例,用于发送HTTP请求 + OkHttpClient client = new OkHttpClient(); + + // 定义请求体的媒体类型为json + MediaType mediaType = MediaType.parse("application/json"); + + // 创建一个JSONArray,用于存储多个订单的信息 + JSONArray jsonArray = new JSONArray(); + try { + // 创建JSON对象payload,并设置请求参数 + // 遍历传入的订单列表 + for (OdsProcureOrder order : orderList) { + + JSONObject payload = new JSONObject(); + + payload.put("supplier", order.getSupplierName()); + + payload.put("itemName", order.getMaterialDesc()); + + payload.put("itemCode", order.getMaterialCode()); + + payload.put("warehousingDate", order.getUserDefined11()); + + payload.put("batch", order.getUserDefined7()); + + payload.put("number", order.getPlanNumber()); + payload.put("qrcode", order.getUserDefined1()); + // 将当前订单的JSON对象添加到JSONArray中 + jsonArray.add(payload); + } + // 创建请求体,将JSONArray转换为字符串 + RequestBody body = RequestBody.create(mediaType, jsonArray.toString()); + // 创建POST请求 + Request request = new Request.Builder() + .url(url) + .post(body) + .build(); + // 执行请求并获取响应 + Response response = client.newCall(request).execute(); + // 获取响应数据并转换为JSON对象 + String responseData = response.body().string(); + JSONObject result = JSONObject.parseObject(responseData); + // 获取返回结果结果JSON对象,请求编码、状态码和消息 + result.get("msg"); + + String message = (String) result.get("code"); + response.close(); + return message; + } catch (IOException e) { + // 捕获IOException并处理异常 + e.printStackTrace(); // 在控制台打印异常信息,建议记录到日志文件 + return "请求失败,异常信息:" + e.getMessage(); // 返回异常信息 + } finally { + // 关闭OkHttpClient + client.dispatcher().executorService().shutdown(); + } + } + + + + + + + + + + + + + + + + + + public String DesignatedPalletOutboundWCS(WMSDesignatedPalle wmsDesignatedPalle) { // 定义请求的URL地址 String url = "http://192.168.202.37:9001/api/v1/ReceiveMesMsg/packingMaterialsOutBoundByPallet"; @@ -1188,15 +1268,26 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { .build(); // 执行请求并获取响应 Response response = client.newCall(request).execute(); - // 获取响应数据并转换为JSON对象 - String responseData = response.body().string(); - JSONObject result = JSONObject.parseObject(responseData); - // 获取返回结果结果JSON对象,请求编码、状态码和消息 - result.get("reqCode"); - result.get("code"); - String message = (String) result.get("message"); - response.close(); - return message; + // 确保响应体不为空 + if (response.body() != null) { + // 获取响应数据并转换为字符串 + String responseData = response.body().string(); + // 将响应数据解析为JSON对象 + JSONObject result = JSONObject.parseObject(responseData); + // 获取返回结果中的状态码 + int code = result.getIntValue("code"); + // 获取返回结果中的消息字段 + String message = result.getString("msg"); + + // 判断状态码是否为0,表示成功 + if (code == 0) { + return message; // 返回成功消息 + } else { + return "打印失败,状态码:" + code; // 返回失败消息及状态码 + } + } else { + return "响应体为空"; // 响应体为空的处理 + } } catch (IOException e) { // 捕获IOException并处理异常 e.printStackTrace(); // 这里最好记录异常到日志文件或者进行其他处理 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 4281320d7..330f5feb9 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 @@ -1159,6 +1159,13 @@ public class WmsProductPutServiceImpl implements IWmsProductPutService { wmsProductPutk.setStatus("2"); wmsProductPutk.setSapStatus("0"); wmsProductPutk.setAttr3(formattedDate);// + if (wmsProductPutk.getBatchNumber().length()==24){ + //String batch = mesReportWork.getBatch().substring(12); + String batch = InterceptionRules(wmsProductPutk.getBatchNumber()); + wmsProductPutk.setAttr4(batch); + }else { + wmsProductPutk.setAttr4(wmsProductPutk.getBatchNumber()); + } wmsProductPutk.setCreateBy(wmsProductPut.getCreateBy()); wmsProductPutk.setCreateTime(new Date()); wmsProductPutk.setPutQuantity(new BigDecimal(wmsProductPut1.getNumber())); From a595ae9b8bcfbfc11c8445f1237f219b44a255b0 Mon Sep 17 00:00:00 2001 From: mengjiao <3338049200@qq,com> Date: Mon, 26 Aug 2024 15:32:25 +0800 Subject: [PATCH 21/28] =?UTF-8?q?=E7=89=A9=E6=96=99=E6=A0=87=E8=AF=86?= =?UTF-8?q?=E5=8D=A1=E5=AF=B9=E6=8E=A5=E6=89=93=E5=8D=B0=E6=9C=BA=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/OdsProcureOrderController.java | 5 +++ .../com/op/wms/domain/OdsProcureOrder.java | 10 +++++ .../wms/service/IOdsProcureOrderService.java | 2 + .../impl/OdsProcureOrderServiceImpl.java | 38 +++++++++++++++++-- .../mapper/wms/OdsProcureOrderMapper.xml | 1 + 5 files changed, 52 insertions(+), 4 deletions(-) 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 5e5e9701b..2099b8686 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 @@ -54,6 +54,11 @@ public class OdsProcureOrderController extends BaseController { public AjaxResult getIdCardList(@RequestBody OdsProcureOrder odsProcureOrder) { return success(odsProcureOrderService.getIdCardList(odsProcureOrder)); } + /**获补打标识卡**/ + @PostMapping("/getIdCardListDA") + public AjaxResult getIdCardListDA(@RequestBody OdsProcureOrder odsProcureOrder) { + return success(odsProcureOrderService.getIdCardListDA(odsProcureOrder)); + } /** * 导出包材采购单列表 */ diff --git a/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOrder.java b/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOrder.java index b75833448..d09e5c9eb 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOrder.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/domain/OdsProcureOrder.java @@ -185,6 +185,16 @@ public class OdsProcureOrder extends BaseEntity { @Excel(name = "计划数量") private BigDecimal planNumber; + private BigDecimal buNumber; + + public BigDecimal getBuNumber() { + return buNumber; + } + + public void setBuNumber(BigDecimal buNumber) { + this.buNumber = buNumber; + } + /** * 单位 */ 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 d923e2807..1762aa82c 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 @@ -113,4 +113,6 @@ public interface IOdsProcureOrderService { void OutboundPostingSAPfc(List orderList); String getIdCardList(OdsProcureOrder odsProcureOrder); + + String getIdCardListDA(OdsProcureOrder odsProcureOrder); } 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 77942afa2..bea40c455 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 @@ -40,6 +40,7 @@ import com.op.common.core.utils.uuid.IdUtils; import com.op.wms.domain.*; import com.op.wms.mapper.*; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import com.op.wms.service.IOdsProcureOrderService; import org.springframework.util.CollectionUtils; @@ -81,7 +82,8 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { private RemoteOpenService remoteOpenService; @Autowired private BaseProductAttachedMapper baseProductAttachedMapper; - + @Value("${dayin.url1}") + private String dayinUrl1; /** * 查询包材采购单 * @@ -778,11 +780,15 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { R result2 = remoteSapService.temporarilyCollected(mapList); int code = result2.getCode(); if (code == 200){//成功 + Map map = new HashMap(); + map = (Map) result2.getData(); + String MATERIALDOCUMENT = (String) map.get("MATERIALDOCUMENT"); + String MATDOCUMENTYEAR = (String) map.get("MATDOCUMENTYEAR"); order.setSapTempInfor(result2.getMsg()); WmsRawOrderIn wmsRawOrderIn=new WmsRawOrderIn(); wmsRawOrderIn.setRawOrderInId(IdUtils.fastSimpleUUID()); wmsRawOrderIn.setFactoryCode(odsProcureOrder.getFactoryCode()); - wmsRawOrderIn.setDnNo(order.getReceiptNoCode()); + wmsRawOrderIn.setDnNo(odsProcureOrder.getReceiptNoCode()); wmsRawOrderIn.setPoNo(order.getProcureCode()); wmsRawOrderIn.setPoLine(order.getUserDefined3()); wmsRawOrderIn.setMaterialCode(order.getMaterialCode()); @@ -793,7 +799,11 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { wmsRawOrderIn.setOrderStatus("0");//暂收 wmsRawOrderIn.setActiveFlag("1"); wmsRawOrderIn.setSupplyCode(order.getSupplierCode()); - wmsRawOrderIn.setUserDefined1(result2.getMsg()); + //wmsRawOrderIn.setUserDefined1(); + wmsRawOrderIn.setAccountingStatus("2"); + wmsRawOrderIn.setUserDefined1(MATERIALDOCUMENT);//物料凭证编号 + wmsRawOrderIn.setUserDefined2(MATDOCUMENTYEAR); + wmsRawOrderIn.setAccountingMessage(result2.getMsg()); wmsRawOrderIn.setSapFactoryCode(odsProcureOrder.getFactoryCode()); wmsRawOrderIn.setCreateBy(odsProcureOrder.getCreateBy()); wmsRawOrderInMapper.insertWmsRawOrderIn(wmsRawOrderIn); @@ -1162,9 +1172,29 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { return msg; } + @Override + public String getIdCardListDA(OdsProcureOrder odsProcureOrder) { + //会有个id和补打的数量 + OdsProcureOrder order=odsProcureOrderMapper.selectOdsProcureOrderByID(odsProcureOrder.getID()); + List dtos0= odsProcureOrderMapper.getIdCardList(order); + int tme= dtos0.size(); + OdsProcureOrder order1=dtos0.get(tme-1); + order1.setPlanNumber(odsProcureOrder.getBuNumber()); + // 获取当前的卡号数量,假设它是一个字符串类型 + String cardNumStr = order1.getCardNum(); + // 将字符串转换为整数 + int cardNum = Integer.parseInt(cardNumStr); + // 进行加法运算 + cardNum += 1; // 在这里进行值相加 + order1.setCardNum(String.valueOf(cardNum)); + List dtos = new ArrayList<>(); + + return null; + } + public String dayin( List orderList) { // 定义请求的URL地址 - String url = "http://172.18.80.215:8022/printService/printServiceTest"; + String url = dayinUrl1; // 创建OkHttpClient实例,用于发送HTTP请求 OkHttpClient client = new OkHttpClient(); 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 5a84bf583..2a14c2ac0 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 @@ -288,6 +288,7 @@ FROM ods_procure_order_card where Procure_Code=#{procureCode} and User_Defined3= #{userDefined3} and User_Defined8= #{userDefined8} and User_Defined11= #{userDefined11} + ORDER BY card_num From 2a3fc3621999d0f9efba7e40502d92d1199eee20 Mon Sep 17 00:00:00 2001 From: mengjiao <3338049200@qq,com> Date: Mon, 26 Aug 2024 15:45:51 +0800 Subject: [PATCH 22/28] =?UTF-8?q?=E7=89=A9=E6=96=99=E6=A0=87=E8=AF=86?= =?UTF-8?q?=E5=8D=A1=E5=AF=B9=E6=8E=A5=E6=89=93=E5=8D=B0=E6=9C=BA=E6=8E=A5?= =?UTF-8?q?=E5=8F=A32?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../op/wms/service/impl/OdsProcureOrderServiceImpl.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) 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 bea40c455..14fa81929 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 @@ -800,10 +800,11 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { wmsRawOrderIn.setActiveFlag("1"); wmsRawOrderIn.setSupplyCode(order.getSupplierCode()); //wmsRawOrderIn.setUserDefined1(); - wmsRawOrderIn.setAccountingStatus("2"); + wmsRawOrderIn.setAccountingStatus("0");//0是暂收 wmsRawOrderIn.setUserDefined1(MATERIALDOCUMENT);//物料凭证编号 - wmsRawOrderIn.setUserDefined2(MATDOCUMENTYEAR); - wmsRawOrderIn.setAccountingMessage(result2.getMsg()); + wmsRawOrderIn.setUserDefined2(MATDOCUMENTYEAR);//年凭证号 + wmsRawOrderIn.setUserDefined3(result2.getMsg());//暂收信息 + //wmsRawOrderIn.setAccountingMessage(result2.getMsg()); wmsRawOrderIn.setSapFactoryCode(odsProcureOrder.getFactoryCode()); wmsRawOrderIn.setCreateBy(odsProcureOrder.getCreateBy()); wmsRawOrderInMapper.insertWmsRawOrderIn(wmsRawOrderIn); From b64cbf5242f207734229d7f63a96a72c35cb1676 Mon Sep 17 00:00:00 2001 From: mengjiao <3338049200@qq,com> Date: Mon, 26 Aug 2024 17:13:34 +0800 Subject: [PATCH 23/28] =?UTF-8?q?=E7=89=A9=E6=96=99=E6=A0=87=E8=AF=86?= =?UTF-8?q?=E5=8D=A1=E5=AF=B9=E6=8E=A5=E6=89=93=E5=8D=B0=E6=9C=BA=E6=8E=A5?= =?UTF-8?q?=E5=8F=A33?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/op/wms/service/impl/OdsProcureOrderServiceImpl.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) 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 14fa81929..18e96374a 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 @@ -1239,9 +1239,9 @@ public class OdsProcureOrderServiceImpl implements IOdsProcureOrderService { String responseData = response.body().string(); JSONObject result = JSONObject.parseObject(responseData); // 获取返回结果结果JSON对象,请求编码、状态码和消息 - result.get("msg"); - - String message = (String) result.get("code"); + Map map = new HashMap(); + map = result; + String message = (String) map.get("msg"); response.close(); return message; } catch (IOException e) { From 6860dc957bc7669decce4bc487c8209be87b0a7b Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Mon, 26 Aug 2024 17:50:51 +0800 Subject: [PATCH 24/28] =?UTF-8?q?=E7=94=9F=E4=BA=A7=E6=97=A5=E6=8A=A5?= =?UTF-8?q?=E8=A1=A8=E7=9B=B8=E5=85=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/mes/MesLineMapper.xml | 9 +++++---- .../op-mes/src/main/resources/mapper/mes/MesMapper.xml | 2 +- .../resources/mapper/quality/QcStaticTableMapper.xml | 6 +++--- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/MesLineMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/MesLineMapper.xml index 1159895cf..759a43181 100644 --- a/op-modules/op-mes/src/main/resources/mapper/mes/MesLineMapper.xml +++ b/op-modules/op-mes/src/main/resources/mapper/mes/MesLineMapper.xml @@ -10,6 +10,7 @@ + @@ -28,12 +29,12 @@ select id, line_code, product_code,product_name,use_man, efficiency, attr1, attr2, attr3, attr4, create_by, - create_time, update_by, update_time, factory_code, del_flag from mes_line_product + create_time, update_by, update_time, factory_code, del_flag,hour_efficiency from mes_line_product select mlp.use_man standarMan, - ROUND(mlp.efficiency/bp.umrez,2) AS standarXl + ROUND(mlp.hour_efficiency/bp.umrez,2) AS standarXl from mes_line_product mlp left join base_product bp on bp.product_code=mlp.product_code where mlp.line_code = #{equCode} and mlp.product_code = #{productCode} diff --git a/op-modules/op-quality/src/main/resources/mapper/quality/QcStaticTableMapper.xml b/op-modules/op-quality/src/main/resources/mapper/quality/QcStaticTableMapper.xml index 99524e471..2dedd3c58 100644 --- a/op-modules/op-quality/src/main/resources/mapper/quality/QcStaticTableMapper.xml +++ b/op-modules/op-quality/src/main/resources/mapper/quality/QcStaticTableMapper.xml @@ -698,7 +698,7 @@ FROM( select CONVERT(varchar(7),qct.create_time, 120) AS ymdms, qct.sample_quality from qc_check_task qct - where check_type = #{checkType} + where check_type = #{checkType} and check_status = 2 and CONVERT(varchar(4),qct.create_time, 120) = #{incomeTimeStr} and del_flag = '0' ) t @@ -711,7 +711,7 @@ FROM( select CONVERT(varchar(10),qct.create_time, 120) AS ymdms, check_result from qc_check_task qct - where check_type = #{checkType} + where check_type = #{checkType} and check_status = 2 and CONVERT(varchar(7),qct.create_time, 120) = #{incomeTimeStr} and del_flag = '0' ) t @@ -724,7 +724,7 @@ FROM( select DATEPART(HOUR, qct.create_time) AS ymdms,check_result from qc_check_task qct - where check_type = #{checkType} + where check_type = #{checkType} and check_status = 2 and CONVERT(varchar(10),qct.create_time, 120) = #{incomeTimeStr} and del_flag = '0' ) t From 9da93c4afbed1485961b56f3ae8d06a59194c81c Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Mon, 26 Aug 2024 23:44:17 +0800 Subject: [PATCH 25/28] =?UTF-8?q?mes=E6=8A=A5=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/op/system/api/domain/SysUser.java | 9 +++++++++ .../src/main/resources/mapper/system/SysUserMapper.xml | 7 ++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/op-api/op-api-system/src/main/java/com/op/system/api/domain/SysUser.java b/op-api/op-api-system/src/main/java/com/op/system/api/domain/SysUser.java index 7b7fd7286..95b7f8e1d 100644 --- a/op-api/op-api-system/src/main/java/com/op/system/api/domain/SysUser.java +++ b/op-api/op-api-system/src/main/java/com/op/system/api/domain/SysUser.java @@ -106,6 +106,15 @@ public class SysUser extends BaseEntity { //新增 微信账号 private String wxId; + private String userMType; + + public String getUserMType() { + return userMType; + } + + public void setUserMType(String userMType) { + this.userMType = userMType; + } public String getWxId() { return wxId; diff --git a/op-modules/op-system/src/main/resources/mapper/system/SysUserMapper.xml b/op-modules/op-system/src/main/resources/mapper/system/SysUserMapper.xml index c73526430..6b316b1a5 100644 --- a/op-modules/op-system/src/main/resources/mapper/system/SysUserMapper.xml +++ b/op-modules/op-system/src/main/resources/mapper/system/SysUserMapper.xml @@ -24,6 +24,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + @@ -51,7 +53,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.avatar, u.phonenumber, u.password, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, u.wx_id, - d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.status as dept_status, + d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.status as dept_status,u.user_m_type, r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.status as role_status from sys_user u left join sys_dept d on u.dept_id = d.dept_id @@ -168,6 +170,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" create_by, remark, wx_id, + user_m_type, create_time )values( #{userId}, @@ -183,6 +186,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{createBy}, #{remark}, #{wxId}, + #{userMType}, GETDATE() ) @@ -217,6 +221,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" update_by = #{updateBy}, remark = #{remark}, wx_id = #{wxId}, + user_m_type = #{userMType}, update_time = GETDATE() where user_id = #{userId} From 01d4b9862c34d8ec041c62dc708fe7e914a02994 Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Tue, 27 Aug 2024 00:17:04 +0800 Subject: [PATCH 26/28] =?UTF-8?q?mes=E6=8A=A5=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../op-mes/src/main/resources/mapper/mes/MesLineMapper.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/op-modules/op-mes/src/main/resources/mapper/mes/MesLineMapper.xml b/op-modules/op-mes/src/main/resources/mapper/mes/MesLineMapper.xml index 759a43181..633026fb0 100644 --- a/op-modules/op-mes/src/main/resources/mapper/mes/MesLineMapper.xml +++ b/op-modules/op-mes/src/main/resources/mapper/mes/MesLineMapper.xml @@ -41,7 +41,7 @@ left join base_equipment be on be.equipment_code = mlp.line_code - and mlp.line_code like concat('%', #{lineName}, '%') + and mlp.line_code like concat('%', #{lineCode}, '%') and be.equipment_name like concat('%', #{lineName}, '%') From 9912b4d813794ab0fea59bf249b09249876da90e Mon Sep 17 00:00:00 2001 From: zhaoxiaolin Date: Tue, 27 Aug 2024 13:25:23 +0800 Subject: [PATCH 27/28] =?UTF-8?q?=E6=A0=87=E8=AF=86=E5=8D=A1=E8=B0=83?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/ProOrderWorkorderServiceImpl.java | 10 ++++++++-- .../resources/mapper/plan/ProOrderWorkorderMapper.xml | 9 ++++++--- .../op/quality/controller/QcStaticTableController.java | 1 - 3 files changed, 14 insertions(+), 6 deletions(-) diff --git a/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java b/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java index 0eed90e75..3790df4f4 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java @@ -1292,8 +1292,11 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { }else{ pw.setBatchQuantity(pn); } + pw.setUnit(pow.getUnit()); + pw.setUmrez(pw.getBatchQuantity().multiply(pow.getUmrez()));//子单数量 pw.setPalletNo(i++); - pw.setPalletCode(pow.getWorkorderCode() + "-" + pow.getBatchCode() + "-" + pw.getPalletNo());//workorderCode 实际上是订单号 + pw.setPalletCode(pow.getProductCode().replace("0000000","") + "-" +pow.getWorkorderCode() + "-" + + pow.getBatchCode() + "-" + pw.getPalletNo());//workorderCode 实际上是订单号 pw.setCreateTime(nowDate); pw.setCreateBy(SecurityUtils.getUsername()); pw.setAddFlag("0");//增打标志 @@ -1312,7 +1315,8 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { List dtos1 = proOrderWorkorderMapper.getPreIdCardList(proOrderWorkorder); ProOrderWorkorder pow = dtos1.get(0); proOrderWorkorder.setPalletNo(palletNo); - String uniqueBarCode = pow.getWorkorderCode() + "-" + proOrderWorkorder.getBatchCode() + "-" + palletNo;//订单号+批次+板次 唯一二维码标识 + String uniqueBarCode = pow.getProductCode().replace("0000000","") + + pow.getWorkorderCode() + "-" + proOrderWorkorder.getBatchCode() + "-" + palletNo;//订单号+批次+板次 唯一二维码标识 ProOrderWorkorder pw = new ProOrderWorkorder(); pw.setProductName(pow.getProductName());//产品名 pw.setWorkorderCode(pow.getWorkorderCode());//工单号 实际是订单号 @@ -1320,6 +1324,8 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { pw.setProductDateStr(pow.getProductDateStr());//生产日期 pw.setRecordId(IdUtils.fastSimpleUUID());//记录 pw.setBatchQuantity(proOrderWorkorder.getBatchQuantity());//批次数量 + pw.setUnit(pow.getUnit()); + pw.setUmrez(pw.getBatchQuantity().multiply(pow.getUmrez()));//子单数量 pw.setPalletNo(palletNo);//板次 pw.setPalletCode(uniqueBarCode);//唯一二维码 pw.setUpdateTime(DateUtils.getNowDate()); diff --git a/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderWorkorderMapper.xml b/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderWorkorderMapper.xml index ef9f462d5..55ddc3c32 100644 --- a/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderWorkorderMapper.xml +++ b/op-modules/op-plan/src/main/resources/mapper/plan/ProOrderWorkorderMapper.xml @@ -682,17 +682,20 @@