tags/yfai-mes-ext-v1.0
LML丶 11 months ago
parent 22680d10ab
commit b214ed3bad

@ -1,7 +1,9 @@
package cn.estsh.i3plus.ext.mes.api.base;
import cn.estsh.i3plus.pojo.mes.bean.MesArea;
import cn.estsh.i3plus.pojo.mes.bean.MesBom;
import io.swagger.annotations.ApiOperation;
import java.util.List;
/**
* @Description:
@ -10,5 +12,23 @@ import cn.estsh.i3plus.pojo.mes.bean.MesBom;
*/
public interface IMesBomService extends IBaseMesService<MesBom> {
/**
* MES
*
* @param bom
* @return
*/
@ApiOperation(value = "查询BOM树结构")
List queryMesDataTreeByFirstFloor(MesBom bom);
/**
* MES
*
* @param bom
* @return
*/
@ApiOperation(value = "查询BOM树结构")
List queryMesDataTree(MesBom bom);
}

@ -1,8 +1,16 @@
package cn.estsh.i3plus.ext.mes.apiservice.controller.base;
import cn.estsh.i3plus.ext.mes.api.base.IMesBomService;
import cn.estsh.i3plus.ext.mes.pojo.constant.MesCommonConstant;
import cn.estsh.i3plus.pojo.mes.bean.MesArea;
import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil;
import cn.estsh.i3plus.pojo.mes.bean.MesBom;
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.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;
@ -11,5 +19,38 @@ import org.springframework.web.bind.annotation.RestController;
*/
@RestController
@RequestMapping(MesCommonConstant.MES_YANFEN + "/mesBom")
public class MesBomController extends BaseMesController<MesBom>{
public class MesBomController extends BaseMesController<MesBom> {
@Autowired
private IMesBomService bomService;
@GetMapping(value = "/tree/query-first-floor")
@ApiOperation(value = "查询MES组织模型数据返回树结构-只获取一层")
public ResultBean queryMesDataTreeByFirstFloor(MesBom bom) {
try {
bom.setOrganizeCode("CK01");
// bom.setOrganizeCode(AuthUtil.getOrganizeCode());
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode())
.setResultList(bomService.queryMesDataTreeByFirstFloor(bom));
} catch (ImppBusiException busExcep) {
return ResultBean.fail(busExcep);
} catch (Exception e) {
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
@GetMapping(value = "/tree/query")
@ApiOperation(value = "查询MES组织模型数据返回树结构-获取所有")
public ResultBean queryMesDataTree(MesBom bom) {
try {
// bom.setOrganizeCode("CK01");
bom.setOrganizeCode(AuthUtil.getOrganizeCode());
return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode())
.setResultList(bomService.queryMesDataTree(bom));
} catch (ImppBusiException busExcep) {
return ResultBean.fail(busExcep);
} catch (Exception e) {
return ImppExceptionBuilder.newInstance().buildExceptionResult(e);
}
}
}

@ -1,13 +1,20 @@
package cn.estsh.i3plus.ext.mes.apiservice.serviceimpl.base;
import cn.estsh.i3plus.ext.mes.api.base.IMesBomService;
import cn.estsh.i3plus.ext.mes.pojo.model.MesBomTreeModel;
import cn.estsh.i3plus.platform.common.util.MesConstWords;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack;
import cn.estsh.i3plus.pojo.mes.bean.MesBom;
import cn.estsh.i3plus.pojo.mes.bean.MesCustomer;
import cn.estsh.i3plus.pojo.mes.bean.MesPart;
import cn.estsh.impp.framework.boot.auth.AuthUtil;
import cn.estsh.impp.framework.boot.util.ValidatorBean;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.List;
@Service
@Slf4j
@ -17,4 +24,75 @@ public class MesBomService extends BaseMesService<MesBom> implements IMesBomServ
DdlPreparedPack.getStringEqualPack(bean.getBomVersion(), "bomVersion", packBean);
DdlPreparedPack.getStringLikerPack(bean.getPartNo(), "partNo", packBean);
}
@Override
public List queryMesDataTreeByFirstFloor(MesBom bom) {
List resultList = new ArrayList();
ValidatorBean.checkNotNull(bom.getPartNo(), "零件号不能为空");
MesBomTreeModel organize = new MesBomTreeModel();
organize.setParentId(CommonEnumUtil.PARENT.DEFAULT.getValue());
organize.setName("LML");
// organize.setName(AuthUtil.getOrganize().getName());
List<MesBom> bomList = baseRDao.findByProperty(new String[]{MesConstWords.IS_VALID, MesConstWords.IS_DELETED, MesConstWords.ORGANIZE_CODE, "partNo"},
new Object[]{CommonEnumUtil.IS_VAILD.VAILD.getValue(), CommonEnumUtil.IS_DEAL.NO.getValue(), bom.getOrganizeCode(), bom.getPartNo()});
if (!CollectionUtils.isEmpty(bomList)) {
organize.setChildTreeList(bomList);
resultList.add(organize);
}
return resultList;
}
/**
*
*
* @param bom
* @return
*/
@Override
public List queryMesDataTree(MesBom bom) {
List resultList = new ArrayList();
ValidatorBean.checkNotNull(bom.getPartNo(), "零件号不能为空");
MesBomTreeModel organize = new MesBomTreeModel();
organize.setParentId(CommonEnumUtil.PARENT.DEFAULT.getValue());
// organize.setName("LML");
organize.setName(AuthUtil.getOrganize().getName());
List<MesBom> bomList = baseRDao.findByProperty(new String[]{MesConstWords.IS_VALID, MesConstWords.IS_DELETED, MesConstWords.ORGANIZE_CODE, "partNo"},
new Object[]{CommonEnumUtil.IS_VAILD.VAILD.getValue(), CommonEnumUtil.IS_DEAL.NO.getValue(), bom.getOrganizeCode(), bom.getPartNo()});
recursionBomList(bomList);
organize.setChildTreeList(bomList);
resultList.add(organize);
return resultList;
}
/**
* bom
*
* @return
*/
private List<MesBom> recursionBomList(List<MesBom> bomList) {
if (!CollectionUtils.isEmpty(bomList)) {
for (MesBom bom : bomList) {
if (bom.getItemPartNo().equals(bom.getPartNo())) continue;
List<MesBom> resultList = baseRDao.findByProperty(new String[]{MesConstWords.IS_VALID, MesConstWords.IS_DELETED, MesConstWords.ORGANIZE_CODE, "partNo"},
new Object[]{CommonEnumUtil.IS_VAILD.VAILD.getValue(), CommonEnumUtil.IS_DEAL.NO.getValue(), bom.getOrganizeCode(), bom.getItemPartNo()});
recursionBomList(resultList);
bom.setChildTreeList(resultList);
}
}
return bomList;
}
}

@ -0,0 +1,27 @@
package cn.estsh.i3plus.ext.mes.pojo.model;
import io.swagger.annotations.ApiParam;
import lombok.Data;
import javax.persistence.Transient;
import java.util.List;
@Data
public class MesBomTreeModel {
@Transient
@ApiParam(value = "id")
private Long id;
@Transient
@ApiParam(value = "父节点")
private Long parentId;
@Transient
@ApiParam(value = "名称")
private String name;
@Transient
@ApiParam(value = "子集列表")
private List childTreeList;
}
Loading…
Cancel
Save