产线产品加工规则报表

tags/yfai-mes-ext-v1.0
logic.fang 11 months ago
parent 29720c309a
commit b664e74e37

@ -2,10 +2,11 @@ package cn.estsh.i3plus.ext.mes.api.busi.report;
import cn.estsh.i3plus.ext.mes.pojo.model.report.MesDeviceDataQueryReportConditionModel;
import cn.estsh.i3plus.ext.mes.pojo.model.report.MesDeviceDataQueryReportResultModel;
import cn.estsh.i3plus.ext.mes.pojo.model.report.MesProdRuleReportConditionModel;
import cn.estsh.i3plus.pojo.base.bean.ListPager;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn;
import cn.estsh.i3plus.pojo.mes.bean.MesWorkCellExtendCfg;
import cn.estsh.impp.framework.boot.util.ResultBean;
/**
* @Description : -
@ -24,5 +25,13 @@ public interface IMesYfReportService {
*/
ListPager<MesDeviceDataQueryReportResultModel> queryMesDeviceDataByPager(MesDeviceDataQueryReportConditionModel queryReportModel, Pager pager);
/**
* 线-
* @param queryReportModel
* @param pager
* @return
*/
ResultBean queryMesProdRuleByPager(MesProdRuleReportConditionModel queryReportModel, Pager pager);
ListPager<MesProduceSn> queryMesSuspiciousSnMsgByPager(MesProduceSn mesProduceSn, Pager pager);
}

@ -0,0 +1,50 @@
package cn.estsh.i3plus.ext.mes.apiservice.controller.report;
import cn.estsh.i3plus.ext.mes.api.busi.report.IMesYfReportService;
import cn.estsh.i3plus.ext.mes.pojo.constant.MesCommonConstant;
import cn.estsh.i3plus.ext.mes.pojo.model.report.MesProdRuleReportConditionModel;
import cn.estsh.i3plus.pojo.base.common.Pager;
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 cn.estsh.impp.framework.boot.util.ValidatorBean;
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.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @Description : 线
* @Reference :
* @Author : logic
* @CreateDate : 2024/6/17 15:37
* @Modify:
**/
@Api("产线产品加工规则报表")
@RestController
@RequestMapping(MesCommonConstant.MES_YANFEN + "/prod-rule-report")
public class MesProdRuleReportController extends MesBaseController {
@Autowired
private IMesYfReportService mesYfReportService;
@ApiOperation(value = "查询产线产品加工规则报表", notes = "查询产线产品加工规则报表")
@GetMapping("/query")
public ResultBean queryMesProdRuleByPager(MesProdRuleReportConditionModel conditionModel, Pager pager){
try {
ValidatorBean.beginValid(conditionModel).notNull("isSort", conditionModel.getIsSort());
String organizeCode = AuthUtil.getOrganize().getOrganizeCode();
conditionModel.setOrganizeCode(organizeCode);
return mesYfReportService.queryMesProdRuleByPager(conditionModel, pager);
} catch (ImppBusiException e) {
return ResultBean.fail(e);
} catch (Exception e) {
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
}

@ -4,15 +4,22 @@ import cn.estsh.i3plus.ext.mes.api.busi.report.IMesYfReportService;
import cn.estsh.i3plus.ext.mes.apiservice.dao.report.IMesYfReportDao;
import cn.estsh.i3plus.ext.mes.pojo.model.report.MesDeviceDataQueryReportConditionModel;
import cn.estsh.i3plus.ext.mes.pojo.model.report.MesDeviceDataQueryReportResultModel;
import cn.estsh.i3plus.ext.mes.pojo.model.report.MesProdRuleReportConditionModel;
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.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack;
import cn.estsh.i3plus.pojo.base.util.StringUtil;
import cn.estsh.i3plus.pojo.mes.bean.MesProdRuleNosortCfg;
import cn.estsh.i3plus.pojo.mes.bean.MesProdRuleSortCfg;
import cn.estsh.i3plus.pojo.mes.bean.MesProduceSn;
import cn.estsh.i3plus.pojo.mes.repository.MesProdRuleNoSortCfgRepository;
import cn.estsh.i3plus.pojo.mes.repository.MesProdRuleSortCfgRepository;
import cn.estsh.i3plus.pojo.mes.repository.MesProduceSnRepository;
import cn.estsh.impp.framework.boot.util.ResultBean;
import jodd.util.StringUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -30,15 +37,45 @@ public class MesYfReportServiceImpl implements IMesYfReportService {
@Autowired
private IMesYfReportDao mesYfReportDao;
@Autowired
private MesProduceSnRepository mesProduceSnRDao;
@Autowired
private MesProdRuleSortCfgRepository mesProdRuleSortCfgRepository;
@Autowired
private MesProdRuleNoSortCfgRepository mesProdRuleNoSortCfgRepository;
@Override
public ListPager<MesDeviceDataQueryReportResultModel> queryMesDeviceDataByPager(MesDeviceDataQueryReportConditionModel queryReportModel, Pager pager) {
return mesYfReportDao.queryMesDeviceDataByPager(queryReportModel, pager);
}
@Override
public ResultBean queryMesProdRuleByPager(MesProdRuleReportConditionModel queryReportModel, Pager pager) {
DdlPackBean queryPackBean = DdlPackBean.getDdlPackBean(queryReportModel.getOrganizeCode());
DdlPreparedPack.getStringEqualPack(queryReportModel.getEquipmentCode(), "equipmentCode", queryPackBean);
if (CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue() == queryReportModel.getIsSort()) {
//查询“排序产品加工规则配置”
DdlPreparedPack.getStringEqualPack(queryReportModel.getWorkCenterCode(), "workCenterCode", queryPackBean);
DdlPreparedPack.getStringEqualPack(queryReportModel.getWorkCellCode(), "workCellCode", queryPackBean);
pager = PagerHelper.getPager(pager, mesProdRuleSortCfgRepository.findByHqlWhereCount(queryPackBean));
List<MesProdRuleSortCfg> mesProdRuleSortCfgList = mesProdRuleSortCfgRepository.findByHqlWherePage(queryPackBean, pager);
return ResultBean.success("查询设备数据成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setListPager(new ListPager(mesProdRuleSortCfgList, pager));
}else {
//查询“非排序产品加工规则配置”
DdlPreparedPack.getStringEqualPack(queryReportModel.getInPartNo(), "inPartNo", queryPackBean);
DdlPreparedPack.getStringEqualPack(queryReportModel.getInPartNoRule(), "inPartNoRule", queryPackBean);
DdlPreparedPack.getStringEqualPack(queryReportModel.getOutPartNo(), "outPartNo", queryPackBean);
pager = PagerHelper.getPager(pager, mesProdRuleNoSortCfgRepository.findByHqlWhereCount(queryPackBean));
List<MesProdRuleNosortCfg> mesProdRuleNosortCfgList = mesProdRuleNoSortCfgRepository.findByHqlWherePage(queryPackBean, pager);
return ResultBean.success("查询设备数据成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setListPager(new ListPager(mesProdRuleNosortCfgList, pager));
}
}
@Override
public ListPager<MesProduceSn> queryMesSuspiciousSnMsgByPager(MesProduceSn bean, Pager pager) {
DdlPackBean packBean = DdlPackBean.getDdlPackBean(bean.getOrganizeCode());
DdlPreparedPack.getStringEqualPack(bean.getPartNo(), "partNo", packBean);

@ -0,0 +1,42 @@
package cn.estsh.i3plus.ext.mes.pojo.model.report;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiParam;
import lombok.Data;
/**
* @Description : 线-
* @Reference :
* @Author : logic
* @CreateDate : 2024/6/17 15:52
* @Modify:
**/
@Data
@ApiModel("产线产品加工规则报表-查询条件封装")
public class MesProdRuleReportConditionModel {
@ApiParam(value = "组织代码")
private String organizeCode;
@ApiParam(value = "工作中心(产线)")
private String workCenterCode;
@ApiParam(value = "工作单元代码(工位)")
private String workCellCode;
@ApiParam(value = "设备代码(设备编号)")
private String equipmentCode;
@ApiParam(value = "进料零件号")
private String inPartNo;
@ApiParam(value = "进料零件规则")
private String inPartNoRule;
@ApiParam(value = "产成零件号")
private String outPartNo;
@ApiParam(value = "是否排序")
private Integer isSort;
}
Loading…
Cancel
Save