排单接口 - bug和参数修改

This commit is contained in:
liuzhaotian
2024-05-29 14:09:34 +08:00
parent ee18dd963e
commit 62ec2c105a
9 changed files with 40 additions and 36 deletions
@@ -29,7 +29,9 @@ public class PlateResList {
@Schema(description = "商品厚") @Schema(description = "商品厚")
private String thickness; private String thickness;
@Schema(description = "是否异形") @Schema(description = "是否异形")
private Boolean specialShaped; private Boolean isSpecialShaped;
@Schema(description = "是否造型") @Schema(description = "是否造型")
private Boolean sculpt; private Boolean isSculpt;
@Schema(description = "材质")
private String material;
} }
@@ -59,8 +59,8 @@ public interface PlanMapper extends BaseMapperX<PlanDO> {
.betweenIfPresent(PlanDO::getCreateTime, reqVO.getCreateTime()) .betweenIfPresent(PlanDO::getCreateTime, reqVO.getCreateTime())
.eqIfPresent(PlanDO::getOperator, reqVO.getOperator()) .eqIfPresent(PlanDO::getOperator, reqVO.getOperator())
.betweenIfPresent(PlanDO::getProduceTime, reqVO.getProduceTime()) .betweenIfPresent(PlanDO::getProduceTime, reqVO.getProduceTime())
.orderByAsc(PlanDO::getSort) .orderByDesc(PlanDO::getSort));
.orderByDesc(PlanDO::getId)); // .orderByDesc(PlanDO::getId));
} }
List<PlateOptimize> selectPlateListByPlanId(Long planId); List<PlateOptimize> selectPlateListByPlanId(Long planId);
@@ -68,10 +68,10 @@ public interface PlanMapper extends BaseMapperX<PlanDO> {
OptimizeParamRespVO getOptimizePlanParam(Long planId); OptimizeParamRespVO getOptimizePlanParam(Long planId);
//
default PlanDO selectByOrderId(Long orderId) { // default PlanDO selectByOrderId(Long orderId) {
return selectOne(new MPJLambdaWrapperX<PlanDO>() // return selectOne(new MPJLambdaWrapperX<PlanDO>()
.like(PlanDO::getOrderNos, orderId)); // .like(PlanDO::getOrderNos, orderId));
//
} // }
} }
@@ -41,6 +41,7 @@ import com.cf.imes.module.infra.api.file.FileApi;
import com.cf.imes.module.infra.api.file.dto.FileCreateReqDTO; import com.cf.imes.module.infra.api.file.dto.FileCreateReqDTO;
import com.cf.imes.module.system.api.dataSource.DataSourceApi; import com.cf.imes.module.system.api.dataSource.DataSourceApi;
import com.cf.imes.module.system.api.machine.MachineApi; import com.cf.imes.module.system.api.machine.MachineApi;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.github.yulichang.wrapper.MPJLambdaWrapper;
@@ -106,6 +107,9 @@ public class OptimizePlanServiceImpl implements OptimizePlanService {
@Resource @Resource
private MachineApi machineApi; private MachineApi machineApi;
@Resource
private ESDocumentService esDocumentService;
@Override @Override
public List<PlateOptimize> getPlateListByPlanId(Long planId) { public List<PlateOptimize> getPlateListByPlanId(Long planId) {
return planMapper.selectPlateListByPlanId(planId); return planMapper.selectPlateListByPlanId(planId);
@@ -318,7 +322,7 @@ public class OptimizePlanServiceImpl implements OptimizePlanService {
.eq(GoodsDO::getOrderId, orderId) .eq(GoodsDO::getOrderId, orderId)
); );
PlanDO planDO = planMapper.selectByOrderId(orderId); // PlanDO planDO = planMapper.selectByOrderId(orderId);
List<PlateDetialRespVO> plateDOS = plateMapper.selectPlateDetialList(orderId); List<PlateDetialRespVO> plateDOS = plateMapper.selectPlateDetialList(orderId);
@@ -327,7 +331,7 @@ public class OptimizePlanServiceImpl implements OptimizePlanService {
List<OrderModelDO> orderModelDOS = buildRespByOrderId(orderId, ORDER_PLATE_MODEL,size); List<OrderModelDO> orderModelDOS = buildRespByOrderId(orderId, ORDER_PLATE_MODEL,size);
orderSource.setOptimizePlateDetialRespVO(optimizePlateDetialRespVO); orderSource.setOptimizePlateDetialRespVO(optimizePlateDetialRespVO);
orderSource.setPlan(planDO); // orderSource.setPlan(planDO);
orderSource.setOrderList(Collections.singletonList(orderDO)); orderSource.setOrderList(Collections.singletonList(orderDO));
orderSource.setPlateList(plateDOS); orderSource.setPlateList(plateDOS);
orderSource.setGoodsList(goodsDOS); orderSource.setGoodsList(goodsDOS);
@@ -407,22 +407,13 @@ public class PlanServiceImpl implements PlanService {
PageDTO<PlateResList> page = new PageDTO<>(vo.getPageNo(), vo.getPageSize()); PageDTO<PlateResList> page = new PageDTO<>(vo.getPageNo(), vo.getPageSize());
IPage<PlateResList> pageResult = plateMapper.selectPlateByPlanId(page, queryWrapperX); IPage<PlateResList> pageResult = plateMapper.selectPlateByPlanId(page, queryWrapperX);
Set<Long> bodyIds = pageResult.getRecords().stream().map(PlateResList::getBodyId).collect(Collectors.toSet()); Set<Long> bodyIds = pageResult.getRecords().stream().map(PlateResList::getBodyId).collect(Collectors.toSet());
Set<Long> roomIds = pageResult.getRecords().stream().map(PlateResList::getRoomId).collect(Collectors.toSet());
if (CollectionUtil.isNotEmpty(bodyIds)) { if (CollectionUtil.isNotEmpty(bodyIds)) {
List<OrderBodyDO> orderBodyDOS = orderBodyMapper.selectBatchIds(bodyIds); List<OrderBodyDO> orderBodyDOS = orderBodyMapper.selectBatchIds(bodyIds);
for (PlateResList resList : pageResult.getRecords()) { for (PlateResList resList : pageResult.getRecords()) {
resList.setBodyName(orderBodyDOS.stream().filter(e -> Objects.equals(e.getId(), resList.getBodyId())).map(OrderBodyDO::getName).findAny().orElse(null)); resList.setBodyName(orderBodyDOS.stream().filter(e -> Objects.equals(e.getId(), resList.getBodyId())).map(OrderBodyDO::getName).findAny().orElse(null));
resList.setRoomName(orderBodyDOS.stream().filter(e -> Objects.equals(e.getId(), resList.getRoomId())).map(OrderBodyDO::getRoomName).findAny().orElse(null)); resList.setRoomName(orderBodyDOS.stream().filter(e -> Objects.equals(e.getRoomId(), resList.getRoomId())).map(OrderBodyDO::getRoomName).findAny().orElse(null));
} }
} }
//todo 获取柜体名称,房间名称
/* List<ModuleDO> moduleDOS = moduleMapper.selectList(new LambdaQueryWrapperX<ModuleDO>().in(ModuleDO::getId, bodyIds).eq(ModuleDO::getType, 2)
.or().in(ModuleDO::getId, roomIds).eq(ModuleDO::getType, 1)
);
for (PlateResList resList : list) {
resList.setBodyName(moduleDOS.stream().filter(e -> Objects.equals(e.getId(), resList.getBodyId())).map(ModuleDO::getName).findAny().orElse(null));
resList.setRoomName(moduleDOS.stream().filter(e -> Objects.equals(e.getId(), resList.getRoomId())).map(ModuleDO::getName).findAny().orElse(null));
}*/
return new PageResult<>(pageResult.getRecords(), pageResult.getTotal()); return new PageResult<>(pageResult.getRecords(), pageResult.getTotal());
} }
@@ -29,25 +29,26 @@
from order_plate a from order_plate a
LEFT JOIN order_item oi on a.id = oi.plate_id LEFT JOIN order_item oi on a.id = oi.plate_id
LEFT JOIN `order` b on a.order_id = b.id LEFT JOIN `order` b on a.order_id = b.id
LEFT JOIN order_goods c on a.goods_id = c.goods_id LEFT JOIN order_goods c on a.goods_id = c.id
<where> <where>
a.is_cancel = 0 a.is_cancel = 0
<if test="orderId !=null"> <if test="orderId !=null">
and a.order_id = #{orderId} and a.order_id = #{orderId}
</if> </if>
<if test="goodsId !=null and goodsId != '' "> <if test="goodsId !=null and goodsId != '' ">
and c.goods_id = #{goodsId} and c.id = #{goodsId}
</if> </if>
</where> </where>
</select> </select>
<select id="selectPlateByPlanId" <select id="selectPlateByPlanId"
resultType="com.cf.imes.module.executor.controller.admin.plan.vo.PlateResList"> resultType="com.cf.imes.module.executor.controller.admin.plan.vo.PlateResList">
select a.order_id, a.plate_no , a.name, e.material, e.color, e.width, e.height, e.thickness, b.room_id, b.body_id select a.order_id, a.plate_no , a.name as plateName,a.is_special_shaped,a.is_sculpt, e.material, e.color, e.width, e.height, e.thickness, b.room_id, b.body_id
from order_plate a from order_plate a
LEFT JOIN order_item b ON a.id = b.plate_id LEFT JOIN order_item b ON a.id = b.plate_id
LEFT JOIN order_goods e ON e.goods_id = a.goods_id AND e.order_id = a.order_id LEFT JOIN order_goods e ON e.id = a.goods_id AND e.order_id = a.order_id
LEFT JOIN order_plan_item p ON b.id = p.item_id LEFT JOIN order_plan_item p ON b.id = p.item_id
${ew.customSqlSegment} ${ew.customSqlSegment}
@@ -127,15 +127,15 @@ public class MachineController {
@GetMapping("getMachineTree") @GetMapping("getMachineTree")
@Operation(summary = "获得机台树") @Operation(summary = "获得机台树")
//@PreAuthorize("@ss.hasPermission('machine::query')") //@PreAuthorize("@ss.hasPermission('machine::query')")
public CommonResult<Map<Integer, List<MachineVO>>> getMachineTree(@RequestParam(required = false) Long organId) { public CommonResult<Map<Integer, List<MachineVO>>> getMachineTree(@RequestParam(required = false) Long organId ,@RequestParam(required = false) Long type) {
return success(machineService.getMachineTree(organId)); return success(machineService.getMachineTree(organId,type));
} }
@GetMapping(value = {"/list-all-simple", "/simple-list"}) @GetMapping(value = {"/list-all-simple", "/simple-list"})
@Operation(summary = "获取机台精简信息列表", description = "主要用于前端的下拉选项") @Operation(summary = "获取机台精简信息列表", description = "主要用于前端的下拉选项")
public CommonResult<List<MachineSimpleRespVO>> getSimpleDeptList(@RequestParam(required = false) Long organId) { public CommonResult<List<MachineSimpleRespVO>> getSimpleDeptList(@RequestParam(required = false) Long organId,@RequestParam(required = false) Long type) {
organId = organId == null ? OrganContextHolder.getOrganId() : organId; organId = organId == null ? OrganContextHolder.getOrganId() : organId;
List<MachineSimpleRespVO> list = machineService.simpleList(organId); List<MachineSimpleRespVO> list = machineService.simpleList(organId,type);
return success(list); return success(list);
} }
@@ -13,4 +13,8 @@ public class MachineSimpleRespVO {
@Schema(description = "机台名称") @Schema(description = "机台名称")
private String name; private String name;
@Schema(description = "1机台设备 2CNC设备", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
private Integer machineType;
} }
@@ -71,7 +71,7 @@ public interface MachineService {
List<MachineDO> list(Collection<Long> ids); List<MachineDO> list(Collection<Long> ids);
Map<Integer, List<MachineVO>> getMachineTree(Long organId); Map<Integer, List<MachineVO>> getMachineTree(Long organId,Long type);
Boolean auth(MachineOrgAuthReq vo); Boolean auth(MachineOrgAuthReq vo);
@@ -81,5 +81,5 @@ public interface MachineService {
PageResult<MachineDO> page(MachinePageReqVO pageParam); PageResult<MachineDO> page(MachinePageReqVO pageParam);
List<MachineSimpleRespVO> simpleList(Long organId); List<MachineSimpleRespVO> simpleList(Long organId,Long type);
} }
@@ -236,9 +236,10 @@ public class MachineServiceImpl implements MachineService {
} }
@Override @Override
public Map<Integer, List<MachineVO>> getMachineTree(Long organId) { public Map<Integer, List<MachineVO>> getMachineTree(Long organId,Long type) {
List<MachineDO> machineDOS = machineMapper.selectList(new LambdaQueryWrapperX<MachineDO>() List<MachineDO> machineDOS = machineMapper.selectList(new LambdaQueryWrapperX<MachineDO>()
.eqIfPresent(MachineDO::getOrganId, organId) .eqIfPresent(MachineDO::getOrganId, organId)
.eqIfPresent(MachineDO::getMachineType, type)
.select(MachineDO::getName, MachineDO::getMachineType, MachineDO::getId, MachineDO::getLabelId, MachineDO::getCreateTime) .select(MachineDO::getName, MachineDO::getMachineType, MachineDO::getId, MachineDO::getLabelId, MachineDO::getCreateTime)
); );
List<MachineVO> machineVOS = BeanUtils.toBean(machineDOS, MachineVO.class); List<MachineVO> machineVOS = BeanUtils.toBean(machineDOS, MachineVO.class);
@@ -293,10 +294,11 @@ public class MachineServiceImpl implements MachineService {
@Override @Override
@OrganIgnore @OrganIgnore
public List<MachineSimpleRespVO> simpleList(Long organId) { public List<MachineSimpleRespVO> simpleList(Long organId,Long type) {
List<MachineDO> machineDOS = machineMapper.selectList(new LambdaQueryWrapperX<MachineDO>() List<MachineDO> machineDOS = machineMapper.selectList(new LambdaQueryWrapperX<MachineDO>()
.select(MachineDO::getId, MachineDO::getName) .eqIfPresent(MachineDO::getOrganId, organId)
.eq(MachineDO::getOrganId, organId) .eqIfPresent(MachineDO::getMachineType, type)
.select(MachineDO::getId, MachineDO::getName, MachineDO::getMachineType)
); );
return BeanUtils.toBean(machineDOS, MachineSimpleRespVO.class); return BeanUtils.toBean(machineDOS, MachineSimpleRespVO.class);
} }