From 1a3101f282aa56d5dc565ffa779d5fac02a00940 Mon Sep 17 00:00:00 2001 From: yxw Date: Tue, 5 Dec 2023 14:42:07 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9D=BE=E4=B8=8B=E5=B7=A5=E4=BD=8D=E8=8A=82?= =?UTF-8?q?=E6=8B=8D=E9=87=87=E9=9B=86=E8=AE=B0=E5=BD=95=E6=8A=A5=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jx/ISxWorkCellTaktCollectRecordService.java | 28 +++++++++ ...xWorkCelITaktCollectRecordReportController.java | 67 ++++++++++++++++++++++ .../jx/SxWorkCellTaktCollectRecordService.java | 62 ++++++++++++++++++++ .../i3plus/ext/mes/pojo/sqlpack/MesExtHqlPack.java | 10 ++++ 4 files changed, 167 insertions(+) create mode 100644 modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/jx/ISxWorkCellTaktCollectRecordService.java create mode 100644 modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/busi/jx/SxWorkCelITaktCollectRecordReportController.java create mode 100644 modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/jx/SxWorkCellTaktCollectRecordService.java diff --git a/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/jx/ISxWorkCellTaktCollectRecordService.java b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/jx/ISxWorkCellTaktCollectRecordService.java new file mode 100644 index 0000000..09f88bd --- /dev/null +++ b/modules/i3plus-ext-mes-api/src/main/java/cn/estsh/i3plus/ext/mes/api/busi/jx/ISxWorkCellTaktCollectRecordService.java @@ -0,0 +1,28 @@ +package cn.estsh.i3plus.ext.mes.api.busi.jx; + +import cn.estsh.i3plus.ext.mes.pojo.bean.SxWorkCellTaktCollectRecord; +import cn.estsh.i3plus.pojo.base.bean.ListPager; +import cn.estsh.i3plus.pojo.base.common.Pager; +import io.swagger.annotations.ApiOperation; + +public interface ISxWorkCellTaktCollectRecordService { + + /** + * 条件分页查询松下工位节拍采集记录 + * @param workCellTaktCollectRecord 松下工位节拍采集记录 + * @return 包装条码明细信息 + */ + @ApiOperation(value = "根据产品条码查询包装条码明细信息", notes = "根据产品条码查询包装条码明细信息") + ListPager queryWorkCellTaktCollectRecrodLByPager(SxWorkCellTaktCollectRecord workCellTaktCollectRecord, Pager pager); + + /** + * 条件分页查询松下工位节拍采集记录 + * @param ids id集合 + * @param status 状态 + * @param userName 用户名 + * @return 包装条码明细信息 + */ + @ApiOperation(value = "根据产品条码查询包装条码明细信息", notes = "根据产品条码查询包装条码明细信息") + int updateWorkCellTaktCollectRecordValid(String[] ids, int status, String userName); + +} diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/busi/jx/SxWorkCelITaktCollectRecordReportController.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/busi/jx/SxWorkCelITaktCollectRecordReportController.java new file mode 100644 index 0000000..e5e1306 --- /dev/null +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/controller/busi/jx/SxWorkCelITaktCollectRecordReportController.java @@ -0,0 +1,67 @@ +package cn.estsh.i3plus.ext.mes.apiservice.controller.busi.jx; + +import cn.estsh.i3plus.ext.mes.api.busi.jx.ISxWorkCellTaktCollectRecordService; +import cn.estsh.i3plus.ext.mes.pojo.bean.SxWorkCellTaktCollectRecord; +import cn.estsh.i3plus.ext.mes.pojo.util.MesExtConstWords; +import cn.estsh.i3plus.platform.common.convert.ConvertBean; +import cn.estsh.i3plus.pojo.base.bean.ListPager; +import cn.estsh.i3plus.pojo.base.common.Pager; +import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; +import cn.estsh.impp.framework.base.controller.MesBaseController; +import cn.estsh.impp.framework.boot.auth.AuthUtil; +import cn.estsh.impp.framework.boot.exception.ImppBusiException; +import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; +import cn.estsh.impp.framework.boot.util.ResultBean; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @PROJECT_NAME: i3plus-mes-panasonic-jx + * @DESCRIPTION: + * @USER: xinwang.yi + * @DATE: 2023-11-13 17:18 + */ +@RestController +@RequestMapping(MesExtConstWords.BASE_URL_MES_JX + "/report") +@Api(tags = "松下工位节拍采集报表") +public class SxWorkCelITaktCollectRecordReportController extends MesBaseController { + + @Autowired + private ISxWorkCellTaktCollectRecordService workCellTaktCollectRecordService; + + @GetMapping(value = "/work-cell-takt-collect-record/query") + @ApiOperation(value = "按条件分页查询MES工位节拍采集记录数据") + public ResultBean queryMesProdBindRecord(SxWorkCellTaktCollectRecord workCelITaktCollectRecord, Pager pager) { + try { + workCelITaktCollectRecord.setOrganizeCode(AuthUtil.getOrganize().getOrganizeCode()); + ListPager listPager = workCellTaktCollectRecordService.queryWorkCellTaktCollectRecrodLByPager(workCelITaktCollectRecord, pager); + return ResultBean.success("操作成功").setListPager(listPager) + .setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + } catch (ImppBusiException busExcep) { + return ResultBean.fail(busExcep); + } catch (Exception e) { + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + + @PutMapping(value = "/work-cell-takt-collect-record/update-status-batch") + @ApiOperation(value = "批量禁用/启用状态", notes = "批量禁用/启用状态") + public ResultBean updateSxWorkCellTaktCollectPlcCfgStatus(String[] ids, int status) { + try { + ConvertBean.modelSafeArrayNumber(ids, true); + workCellTaktCollectRecordService.updateWorkCellTaktCollectRecordValid(ids, status, AuthUtil.getSessionUser().getUserName()); + return ResultBean.success("修改成功") + .setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); + } catch (ImppBusiException busExcep) { + return ResultBean.fail(busExcep); + } catch (Exception e) { + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } + +} diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/jx/SxWorkCellTaktCollectRecordService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/jx/SxWorkCellTaktCollectRecordService.java new file mode 100644 index 0000000..0948f58 --- /dev/null +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/busi/jx/SxWorkCellTaktCollectRecordService.java @@ -0,0 +1,62 @@ +package cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.busi.jx; + +import cn.estsh.i3plus.ext.mes.api.busi.jx.ISxWorkCellTaktCollectRecordService; +import cn.estsh.i3plus.ext.mes.pojo.bean.MesProcessTorqueManage; +import cn.estsh.i3plus.ext.mes.pojo.bean.SxWorkCellTaktCollectRecord; +import cn.estsh.i3plus.ext.mes.pojo.repository.SxWorkCellTaktCollectPlcCfgRepository; +import cn.estsh.i3plus.ext.mes.pojo.repository.SxWorkCellTaktCollectRecordRepository; +import cn.estsh.i3plus.ext.mes.pojo.sqlpack.MesExtHqlPack; +import cn.estsh.i3plus.ext.mes.pojo.util.MesExtConstWords; +import cn.estsh.i3plus.ext.mes.pojo.util.MesExtEnumUtil; +import cn.estsh.i3plus.platform.common.tool.TimeTool; +import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; +import cn.estsh.i3plus.pojo.base.bean.ListPager; +import cn.estsh.i3plus.pojo.base.common.Pager; +import cn.estsh.i3plus.pojo.base.common.PagerHelper; +import cn.estsh.i3plus.pojo.base.tool.HqlPack; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * @PROJECT_NAME: i3plus-mes-panasonic-jx + * @DESCRIPTION: 松下工位节拍采集记录 + * @USER: xinwang.yi + * @DATE: 2023-12-05 14:21 + */ +@Service +public class SxWorkCellTaktCollectRecordService implements ISxWorkCellTaktCollectRecordService { + + @Autowired + private SxWorkCellTaktCollectRecordRepository workCellTaktCollectRecordRepository; + + @Override + public ListPager queryWorkCellTaktCollectRecrodLByPager(SxWorkCellTaktCollectRecord workCellTaktCollectRecord, Pager pager) { + if (workCellTaktCollectRecord == null) { + pager = PagerHelper.getPager(pager, workCellTaktCollectRecordRepository.listCount()); + return new ListPager(workCellTaktCollectRecordRepository.listPager(pager), pager); + } else { + DdlPackBean hqlPack = MesExtHqlPack.getSxWorkCellTaktCollectRecord(workCellTaktCollectRecord); + hqlPack.setOrderByStr(workCellTaktCollectRecord.orderBy()); + pager = PagerHelper.getPager(pager, workCellTaktCollectRecordRepository.findByHqlWhereCount(hqlPack)); + List byHqlWherePage = workCellTaktCollectRecordRepository.findByHqlWherePage(hqlPack, pager); + return new ListPager(byHqlWherePage, pager); + } + } + + @Override + public int updateWorkCellTaktCollectRecordValid(String[] ids, int status, String userName) { + + StringBuffer wheres = new StringBuffer(); + HqlPack.getInPack(String.join(",", ids), MesExtConstWords.ID, wheres); + + int num = workCellTaktCollectRecordRepository.updateByHqlWhere( + wheres.toString(), + new String[]{MesExtConstWords.SYSTEM_SYNC_STATUS, MesExtConstWords.IS_VALID, MesExtConstWords.MODIFY_USER, MesExtConstWords.MODIFY_DATE_TIME}, + new Object[]{MesExtEnumUtil.IF_SYNC_STATUS.NO_SYNC.getValue(), status, userName, TimeTool.getNowTime(true)} + ); + return num; + + } +} diff --git a/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/sqlpack/MesExtHqlPack.java b/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/sqlpack/MesExtHqlPack.java index c4a1ab7..1fdd18a 100644 --- a/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/sqlpack/MesExtHqlPack.java +++ b/modules/i3plus-ext-mes-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pojo/sqlpack/MesExtHqlPack.java @@ -948,5 +948,15 @@ public class MesExtHqlPack { return packBean; } + public static DdlPackBean getSxWorkCellTaktCollectRecord(SxWorkCellTaktCollectRecord workCellTaktCollectRecord) { + DdlPackBean packBean = getAllBaseDataByNormalPro(workCellTaktCollectRecord.getOrganizeCode(), workCellTaktCollectRecord.getIsValid()); + DdlPreparedPack.getStringLikerPack(workCellTaktCollectRecord.getWorkCenterCode(), MesExtConstWords.WORK_CENTER_CODE, packBean); + DdlPreparedPack.getStringLikerPack(workCellTaktCollectRecord.getWorkCellCode(), MesExtConstWords.WORK_CELL_CODE, packBean); + if (!StringUtils.isEmpty(workCellTaktCollectRecord.getModifyDateTimeStart()) || !StringUtils.isEmpty(workCellTaktCollectRecord.getModifyDateTimeEnd())) { + DdlPreparedPack.timeBuilder(workCellTaktCollectRecord.getModifyDateTimeStart(), workCellTaktCollectRecord.getModifyDateTimeEnd(), MesExtConstWords.MODIFY_DATE_TIME, packBean, true); + } + return packBean; + } + }