mirror of
http://192.168.1.205:9980/cf_devdept2/cf_imes_server.git
synced 2026-08-12 21:02:08 +08:00
Merge remote-tracking branch 'origin/main'
This commit is contained in:
+27
@@ -0,0 +1,27 @@
|
||||
package com.cf.imes.framework.common.enums;
|
||||
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
@AllArgsConstructor
|
||||
@Getter
|
||||
public enum OrderItemTypeEnum {
|
||||
|
||||
PLATE(1, "板材"),
|
||||
PARTS(2, "五金/配件"),
|
||||
OTHER(3, "其他"),
|
||||
QUOTATIONACCESSORIES(4, "报价配件");
|
||||
|
||||
private final Integer type;
|
||||
private String description;
|
||||
|
||||
public boolean equals(Integer status) {
|
||||
return this.type .equals(status) ;
|
||||
}
|
||||
|
||||
public boolean equals(OrderItemTypeEnum enableStatusEnum) {
|
||||
return enableStatusEnum != null && enableStatusEnum.type .equals(this.getType()) ;
|
||||
}
|
||||
|
||||
}
|
||||
+5
-2
@@ -33,8 +33,11 @@ public interface GlobalErrorCodeConstants {
|
||||
ErrorCode INTERNAL_SERVER_ERROR = new ErrorCode(500, "系统异常,请联系客服处理");
|
||||
ErrorCode NOT_IMPLEMENTED = new ErrorCode(501, "功能未实现/未开启");
|
||||
ErrorCode ERROR_CONFIGURATION = new ErrorCode(502, "错误的配置项");
|
||||
ErrorCode ES_ERROR_UPDATE = new ErrorCode(503, "ES文档更新失败");
|
||||
ErrorCode ES_ERROR_DELETE = new ErrorCode(504, "ES文档删除失败");
|
||||
|
||||
// ES文档更新失败
|
||||
ErrorCode ES_ERROR_UPDATE = new ErrorCode(503, "数据异常,请勿点击过快,请稍等再试");
|
||||
// ES文档删除失败
|
||||
ErrorCode ES_ERROR_DELETE = new ErrorCode(504, "数据异常,请勿点击过快,请稍等再试");
|
||||
ErrorCode DATA_EXCEPTION_ERROR = new ErrorCode(505, "数据异常,请联系客服处理");
|
||||
|
||||
// ========== 自定义错误段 ==========
|
||||
|
||||
+7
-3
@@ -236,9 +236,13 @@ public class GlobalExceptionHandler {
|
||||
return tableNotExistsResult;
|
||||
}
|
||||
|
||||
// if(ex instanceof NullPointerException){
|
||||
// return CommonResult.error(DATA_EXCEPTION_ERROR.getCode(), DATA_EXCEPTION_ERROR.getMsg());
|
||||
// }
|
||||
if(ex instanceof NullPointerException){
|
||||
// 处理异常
|
||||
log.error("[defaultExceptionHandler]", ex);
|
||||
// 插入异常日志
|
||||
this.createExceptionLog(req, ex);
|
||||
return CommonResult.error(DATA_EXCEPTION_ERROR.getCode(), DATA_EXCEPTION_ERROR.getMsg());
|
||||
}
|
||||
|
||||
// 情况二:部分特殊的库的处理
|
||||
if (Objects.equals("io.github.resilience4j.ratelimiter.RequestNotPermitted", ex.getClass().getName())) {
|
||||
|
||||
+3
-7
@@ -1,14 +1,10 @@
|
||||
package com.cf.imes.module.executor.dal.dataobject.plan;
|
||||
|
||||
import com.cf.imes.framework.organ.core.db.OrganBaseDO;
|
||||
import lombok.*;
|
||||
import java.util.*;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.LocalDateTime;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
|
||||
import lombok.*;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 生产单开料排单 DO
|
||||
|
||||
+1
-5
@@ -1,12 +1,8 @@
|
||||
package com.cf.imes.module.executor.dal.dataobject.rawgoods;
|
||||
|
||||
import com.cf.imes.framework.organ.core.db.OrganBaseDO;
|
||||
import lombok.*;
|
||||
import java.util.*;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.LocalDateTime;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
|
||||
import lombok.*;
|
||||
|
||||
/**
|
||||
* 生产单设计商品表 order_raw_goods_{N} DO
|
||||
|
||||
+5
-19
@@ -75,7 +75,7 @@ public interface GoodsMapper extends BaseMapperX<GoodsDO> {
|
||||
}
|
||||
|
||||
// 删板材,批量
|
||||
void updateDeletedById(@Param("ids") List<Long> ids, @Param("deleted") Integer deleted, @Param("organId") Long organId);
|
||||
void updateDeletedById(@Param("orderId") Long orderId,@Param("ids") List<Long> ids, @Param("deleted") Integer deleted, @Param("organId") Long organId);
|
||||
|
||||
void deletedById(@Param("ids") List<Long> ids, @Param("organId") Long organId);
|
||||
|
||||
@@ -108,15 +108,6 @@ public interface GoodsMapper extends BaseMapperX<GoodsDO> {
|
||||
|
||||
|
||||
|
||||
default List<GoodsDO> selectListByGoodsIdList(List<String> goodsIds,List<Long> orderIds, Long organId) {
|
||||
return selectList(new LambdaQueryWrapperX<GoodsDO>()
|
||||
.eq(GoodsDO::getOrganId, organId)
|
||||
.eq(GoodsDO::getDeleted, false)
|
||||
.in(GoodsDO::getGoodsId, goodsIds)
|
||||
.in(GoodsDO::getOrderId, orderIds));
|
||||
|
||||
}
|
||||
|
||||
|
||||
List<GoodsDO> selectPlanGoodsDataSource(@Param("filed") String filed,@Param("planId") Long planId ,@Param("organId") Long organId);
|
||||
|
||||
@@ -133,9 +124,6 @@ public interface GoodsMapper extends BaseMapperX<GoodsDO> {
|
||||
|
||||
|
||||
|
||||
IPage<OrderGoodsResp> selectOrderGoodsList(@Param("page") IPage page, @Param(Constants.WRAPPER) Wrapper<GoodsDO> wrapper);
|
||||
|
||||
|
||||
List<PlateInfoVO> selectOrderGoodsPlateList(@Param("planIds") List<Long> planIds, @Param("organId") Long organId);
|
||||
|
||||
|
||||
@@ -160,7 +148,6 @@ public interface GoodsMapper extends BaseMapperX<GoodsDO> {
|
||||
}
|
||||
|
||||
|
||||
List<OrderGoodsResp> selectGoodsListByGoodsId(@Param(Constants.WRAPPER) Wrapper<GoodsDO> wrapper);
|
||||
|
||||
|
||||
IPage<PlateResList> selectPlanGoodsListByPlanId(@Param("page") IPage<PlateResList> page, @Param(Constants.WRAPPER) Wrapper<GoodsDO> wrapper);
|
||||
@@ -168,23 +155,23 @@ public interface GoodsMapper extends BaseMapperX<GoodsDO> {
|
||||
List<GoodsReqVO> selectGoodsAndRemainPlate(@Param("ids") List<Long> ids,@Param("organId") Long organId);
|
||||
|
||||
|
||||
IPage<OrderRespVOCopy> selectNoPlanOrderList(@Param("page") IPage page, @Param(Constants.WRAPPER) Wrapper<GoodsDO> wrapper);
|
||||
|
||||
|
||||
|
||||
default int deletePlanGoods(List<Long> ids, Long organId) {
|
||||
default int deletePlanGoods(List<Long> orderIds,List<Long> ids, Long organId) {
|
||||
return update(new LambdaUpdateWrapper<GoodsDO>()
|
||||
.set(GoodsDO::getPlanId, 0)
|
||||
.eq(GoodsDO::getOrganId, organId)
|
||||
.in(GoodsDO::getOrderId, orderIds)
|
||||
.in(GoodsDO::getPlanId, ids));
|
||||
}
|
||||
|
||||
|
||||
|
||||
default List<GoodsDO> selectPlanGoodsListByPlanIdList(List<Long> planIds, Long organId) {
|
||||
default List<GoodsDO> selectPlanGoodsListByPlanIdList(List<Long> orderIds,List<Long> planIds, Long organId) {
|
||||
return selectList(new LambdaQueryWrapperX<GoodsDO>()
|
||||
.eq(GoodsDO::getOrganId, organId)
|
||||
.eq(GoodsDO::getDeleted, false)
|
||||
.inIfPresent(GoodsDO::getOrderId,orderIds)
|
||||
.in(GoodsDO::getPlanId,planIds)
|
||||
.select(GoodsDO::getGoodsId,GoodsDO::getId,GoodsDO::getOrderId));
|
||||
|
||||
@@ -196,7 +183,6 @@ public interface GoodsMapper extends BaseMapperX<GoodsDO> {
|
||||
|
||||
List<OrderRoomBodyList> selectNoPlanRoomBody(@Param("orderIds") List<Long> orderIds, @Param("organId") Long organId);
|
||||
|
||||
IPage<OrderRespVOCopy> selectOrderPlate(@Param("page") IPage page,@Param("organId") Long organId);
|
||||
|
||||
List<Long> selectPlanOrderList(@Param("orderId") Long orderId,@Param("roomIds") Set<Long> roomIds, @Param("bodyId") Long bodyId,@Param("organId") Long organId);
|
||||
|
||||
|
||||
+2
-15
@@ -5,7 +5,6 @@ import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import com.cf.imes.module.executor.controller.admin.order.vo.order.OrderPlatesDetailRespVO;
|
||||
import com.cf.imes.module.executor.controller.admin.orderParts.vo.OrderPartsRespVO;
|
||||
import com.cf.imes.module.executor.controller.admin.plan.vo.OrderRespVOCopy;
|
||||
import com.cf.imes.module.executor.controller.admin.plate.vo.PlateDetailReqVO;
|
||||
import com.cf.imes.module.executor.controller.admin.plate.vo.PlateDetailRespVO;
|
||||
import com.cf.imes.module.executor.controller.admin.plate.vo.PlateRespVO;
|
||||
@@ -79,17 +78,6 @@ public interface OrderItemMapper extends BaseMapperX<OrderItemDO> {
|
||||
|
||||
|
||||
|
||||
default List<OrderItemDO> selectPlateIdList(List<Long> plateIds, Long organId) {
|
||||
return selectList(new LambdaQueryWrapperX<OrderItemDO>()
|
||||
.eq(OrderItemDO::getOrganId,organId)
|
||||
.inIfPresent(OrderItemDO::getPlateId, plateIds)
|
||||
.select(OrderItemDO::getBodyId,OrderItemDO::getRoomId,OrderItemDO::getGroupId));
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
default List<OrderItemDO> selectPartsList(List<Long> partIds,List<Long> orderIds, Long organId) {
|
||||
return selectList(new LambdaQueryWrapperX<OrderItemDO>()
|
||||
@@ -100,12 +88,11 @@ public interface OrderItemMapper extends BaseMapperX<OrderItemDO> {
|
||||
|
||||
}
|
||||
|
||||
IPage<OrderRespVOCopy> selectTestNum(@Param("page") IPage page,@Param("organId") Long organId);
|
||||
|
||||
|
||||
default List<OrderItemDO> selectPackId(List<Long> bodyIds, Long organId) {
|
||||
default List<OrderItemDO> selectPackId(Long orderId,List<Long> bodyIds, Long organId) {
|
||||
return selectList(new LambdaQueryWrapperX<OrderItemDO>()
|
||||
.eq(OrderItemDO::getOrganId,organId)
|
||||
.eq(OrderItemDO::getOrderId,orderId)
|
||||
.inIfPresent(OrderItemDO::getBodyId,bodyIds)
|
||||
.select(OrderItemDO::getPackageId));
|
||||
|
||||
|
||||
+2
-3
@@ -74,9 +74,6 @@ public interface PlanMapper extends BaseMapperX<PlanDO> {
|
||||
|
||||
List<PlateOptimize> selectPlateListByPlanId(@Param("planId") Long planId, @Param("organId") Long organId);
|
||||
|
||||
OptimizeParamRespVO getOptimizePlanParam(Long planId);
|
||||
|
||||
PlanDO selectPlanByOrderIds(@Param("ids") List<Long> ids);
|
||||
|
||||
|
||||
|
||||
@@ -116,6 +113,8 @@ public interface PlanMapper extends BaseMapperX<PlanDO> {
|
||||
|
||||
List<PlanDO> selectPlanStatus(@Param("planIds") List<Long> planIds,@Param("organId") Long organId);
|
||||
|
||||
void updatePlanStatus(@Param("planId") Long planId,@Param("status") Integer status,@Param("organId") Long organId);
|
||||
|
||||
|
||||
|
||||
// List<PlanDO> seleTestSQL(@Param("sql") String sql);
|
||||
|
||||
-37
@@ -8,8 +8,6 @@ import com.cf.imes.framework.common.enums.OrderPlateTypeEnum;
|
||||
import com.cf.imes.framework.common.pojo.PageResult;
|
||||
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import com.cf.imes.module.executor.controller.admin.plan.bo.GoodsNum;
|
||||
import com.cf.imes.module.executor.controller.admin.plan.bo.OrderIds;
|
||||
import com.cf.imes.module.executor.controller.admin.plan.saveOptimize.PrintOrderPackReqVO;
|
||||
import com.cf.imes.module.executor.controller.admin.plan.vo.*;
|
||||
import com.cf.imes.module.executor.controller.admin.plate.vo.PlateGoodsIdVO;
|
||||
@@ -75,11 +73,7 @@ public interface PlateMapper extends BaseMapperX<PlateDO> {
|
||||
}
|
||||
|
||||
// IPage<PlatePage> selectPlatePage(@Param("page") IPage<PlatePage> page, @Param("orderId")Long organId, @Param("goodsId") String goodsId);
|
||||
List<PlatePage> selectPlatePage( @Param("orderId") Long orderId,@Param("organId") Long organId/*, @Param("goodsId") String goodsId*/);
|
||||
|
||||
IPage<PlateResList> selectPlateByPlanId(@Param("page") IPage<PlateResList> page, @Param(Constants.WRAPPER) Wrapper<PlateDO> wrapper);
|
||||
|
||||
List<PlateParam> selectPlateList(Long planId);
|
||||
|
||||
|
||||
IPage<PlateRespVO> selectProductList(@Param("page") IPage<PlateRespVO> page , @Param("orderId")Long orderId, @Param("roomId")Long roomId , @Param("bodyId")Long bodyId,@Param("organId") Long organId);
|
||||
@@ -92,9 +86,6 @@ public interface PlateMapper extends BaseMapperX<PlateDO> {
|
||||
List<PlateDetialRespVO> selectPlateDetialList(@Param("orderId") Long orderId,@Param("organId") Long organId);
|
||||
|
||||
|
||||
List<PlateDetialRespVO> selectPlateDetialListByIds(@Param("orderIds") List<Long> orderIds,@Param("organId") Long organId);
|
||||
|
||||
|
||||
List<PlateGoodsRespVO> selectPlateGoodsList(@Param("orderId") Long orderId, @Param("organId") Long organId, @Param("deleted") Integer deleted); // 明细
|
||||
|
||||
List<PlateGoodsRespVO> selectPlateGoodsListSummary(@Param("orderId") Long orderId, @Param("organId") Long organId, @Param("deleted") Integer deleted); // 汇总
|
||||
@@ -131,15 +122,9 @@ public interface PlateMapper extends BaseMapperX<PlateDO> {
|
||||
List<NotPlanOrderPlateRespVO> selectGoodsPage( @Param(Constants.WRAPPER) Wrapper<PlateDO> wrapper);
|
||||
|
||||
|
||||
IPage<OrderGoodsResp> selectGoodsList(@Param("page") IPage<OrderGoodsResp> page,@Param("goodsIds") List<Long> goodsIds,@Param("organId") Long organId);
|
||||
|
||||
|
||||
List<OrderIds> selectOrderIds(@Param("orderIds") List<Long> orderIds,@Param("organId") Long organId);
|
||||
|
||||
|
||||
void deletedById(@Param("plateIds") List<Long> plateIds, @Param("organId") Long organId);
|
||||
|
||||
List<GoodsNum> selectGoodsNum(@Param("orderIds") List<Long> orderIds,@Param("organId") Long organId);
|
||||
|
||||
default List<PlateDO> selectPlateNum(Long orderId, Long organId) {
|
||||
return selectList(new LambdaQueryWrapperX<PlateDO>()
|
||||
@@ -173,18 +158,6 @@ public interface PlateMapper extends BaseMapperX<PlateDO> {
|
||||
|
||||
|
||||
|
||||
default List<PlateDO> selectGoodsPlateList(List<Long> goodIds, Long organId) {
|
||||
return selectList(new LambdaQueryWrapperX<PlateDO>()
|
||||
.eq(PlateDO::getOrganId,organId)
|
||||
.inIfPresent(PlateDO::getGoodsId, goodIds));
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
List<PlateDetialRespVO> selectPlateListByGoodIds(@Param("goodIds") List<Long> goodIds,@Param("organId") Long organId);
|
||||
|
||||
|
||||
// List<PlateInfoVO> selectPlateArea(@Param("orderIdsList") List<OrderIds> orderIdsList,@Param("organId") Long organId);
|
||||
|
||||
|
||||
@@ -227,16 +200,6 @@ public interface PlateMapper extends BaseMapperX<PlateDO> {
|
||||
|
||||
|
||||
|
||||
default List<PlateDO> selectPlateIds(OrderPageReqVOCopy pageReqVO, Long organId) {
|
||||
return selectList(new LambdaQueryWrapperX<PlateDO>()
|
||||
.eq(PlateDO::getOrganId,organId)
|
||||
.eq(PlateDO::getDeleted,false)
|
||||
.eqIfPresent(PlateDO::getIsSpecialShaped,pageReqVO.getSpecialShaped())
|
||||
.eqIfPresent(PlateDO::getIsDoor,pageReqVO.getIsDoor())
|
||||
.select(PlateDO::getGoodsId));
|
||||
|
||||
}
|
||||
|
||||
List<PlatePage> selectNoPlanPlateList(@Param(Constants.WRAPPER) Wrapper<PlateDO> queryWrapperX2);
|
||||
|
||||
|
||||
|
||||
+61
-64
@@ -8,14 +8,12 @@ import co.elastic.clients.elasticsearch.ElasticsearchClient;
|
||||
import co.elastic.clients.elasticsearch._types.FieldValue;
|
||||
import co.elastic.clients.elasticsearch.core.*;
|
||||
import co.elastic.clients.elasticsearch.core.search.Hit;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.cf.imes.framework.common.enums.OrderStatusEnum;
|
||||
import com.cf.imes.framework.common.enums.PlanStatusEnum;
|
||||
import com.cf.imes.framework.common.exception.ServiceException;
|
||||
import com.cf.imes.framework.common.util.Assert.AssertUtils;
|
||||
import com.cf.imes.framework.common.util.object.BeanUtils;
|
||||
import com.cf.imes.framework.es.core.service.ESDocumentService;
|
||||
import com.cf.imes.framework.security.core.LoginUser;
|
||||
import com.cf.imes.module.executor.controller.admin.orderParts.vo.OrderPartsRemark;
|
||||
import com.cf.imes.module.executor.controller.admin.plan.bo.OrderSource;
|
||||
import com.cf.imes.module.executor.controller.admin.plan.bo.ProcessGroupList;
|
||||
@@ -30,7 +28,6 @@ import com.cf.imes.module.executor.dal.dataobject.order.OrderDO;
|
||||
import com.cf.imes.module.executor.dal.dataobject.ordermodel.OrderModelDO;
|
||||
import com.cf.imes.module.executor.dal.dataobject.plan.PlanDO;
|
||||
import com.cf.imes.module.executor.dal.dataobject.plate.PlateDO;
|
||||
import com.cf.imes.module.executor.dal.dataobject.processStep.ProcessStepDO;
|
||||
import com.cf.imes.module.executor.dal.dataobject.remainplaten.RemainPlateDO;
|
||||
import com.cf.imes.module.executor.dal.mysql.goods.GoodsMapper;
|
||||
import com.cf.imes.module.executor.dal.mysql.order.OrderMapper;
|
||||
@@ -48,7 +45,6 @@ import com.cf.imes.module.infra.api.file.FileApi;
|
||||
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.process.ProcessApi;
|
||||
import com.cf.imes.module.system.api.process.dto.ProcessDTO;
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import com.fasterxml.jackson.databind.JsonNode;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
@@ -61,10 +57,10 @@ import java.io.IOException;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
import static com.cf.imes.framework.common.exception.enums.GlobalErrorCodeConstants.*;
|
||||
import static com.cf.imes.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||
import static com.cf.imes.framework.security.core.util.SecurityFrameworkUtils.getLoginUser;
|
||||
import static com.cf.imes.framework.security.core.util.SecurityFrameworkUtils.getUserOrganId;
|
||||
import static com.cf.imes.module.executor.enums.ErrorCodeConstants.ORDER_NOT_EXISTS;
|
||||
import static com.cf.imes.module.executor.enums.ErrorCodeConstants.PLAN_NOT_EXISTS;
|
||||
@@ -221,16 +217,18 @@ public class OptimizePlanServiceImpl implements OptimizePlanService {
|
||||
long cutedBoardNumber = cutedBoardInfo.getCutedBoardNumber() == null ? 0 : cutedBoardInfo.getCutedBoardNumber();
|
||||
|
||||
|
||||
cutedBoardNumber += goodsNo.size();
|
||||
|
||||
|
||||
// 获取原排单的已开料的大板编号
|
||||
List<Long> cutedBoardList = cutedBoardInfo.getCutedBoardList() == null ? new ArrayList<>() : cutedBoardInfo.getCutedBoardList();
|
||||
|
||||
goodsNo.addAll(cutedBoardList);
|
||||
|
||||
// 将新开料的大板编号添加到已开料的大板编号中
|
||||
cutedBoardList.addAll(goodsNo);
|
||||
cutedBoardList.addAll(Stream.concat(
|
||||
cutedBoardList.stream().filter(str -> !goodsNo.contains(str)),
|
||||
goodsNo.stream().filter(str -> !cutedBoardList.contains(str)))
|
||||
.toList());
|
||||
|
||||
cutedBoardNumber = cutedBoardList.size();
|
||||
|
||||
// 将需要更新更新的数据更新到原数据中
|
||||
cutedBoardInfo.setCutedBoardNumber(cutedBoardNumber);
|
||||
@@ -325,16 +323,16 @@ public class OptimizePlanServiceImpl implements OptimizePlanService {
|
||||
|
||||
if(cutedBoardInfo.getCutedBoardNumber() == 0){
|
||||
|
||||
planDO.setStatus(PlanStatusEnum.NOCUTTING.getStatus());
|
||||
planDO.setProduceTime(null);
|
||||
planMapper.updateById(planDO);
|
||||
// planDO.setStatus(PlanStatusEnum.NOCUTTING.getStatus());
|
||||
// planDO.setProduceTime(null);
|
||||
planMapper.updatePlanStatus(planId,PlanStatusEnum.NOCUTTING.getStatus(),getUserOrganId());
|
||||
|
||||
}
|
||||
|
||||
if(planDO.getStatus().equals(PlanStatusEnum.OPENED.getStatus()) && cutedBoardInfo.getCutedBoardNumber() > 0 && cutedBoardInfo.getCutedBoardNumber() < optimizeBoardModelDO.getBoardCount() ){
|
||||
planDO.setStatus(PlanStatusEnum.OPENING.getStatus());
|
||||
planDO.setProduceTime(null);
|
||||
planMapper.updateById(planDO);
|
||||
// planDO.setStatus(PlanStatusEnum.OPENING.getStatus());
|
||||
// planDO.setProduceTime(null);
|
||||
planMapper.updatePlanStatus(planId,PlanStatusEnum.OPENING.getStatus(),getUserOrganId());
|
||||
}
|
||||
|
||||
}
|
||||
@@ -350,46 +348,48 @@ public class OptimizePlanServiceImpl implements OptimizePlanService {
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean endCutting(Long planId) {
|
||||
PlanDO planDO = planMapper.selectById(planId);
|
||||
if (Objects.isNull(planDO)) {
|
||||
throw exception(PLAN_NOT_EXISTS);
|
||||
}
|
||||
planMapper.updateById(PlanDO.builder()
|
||||
.id(planId)
|
||||
.status(PlanStatusEnum.OPENED.getStatus())
|
||||
.produceTime(LocalDateTime.now())
|
||||
.build());
|
||||
|
||||
LoginUser loginUser = getLoginUser();
|
||||
List<ProcessDTO> userProcess = processApi.getUserProcess(loginUser.getId());
|
||||
|
||||
if(!userProcess.isEmpty()) {
|
||||
|
||||
List<Long> processStepIds = new ArrayList<>();
|
||||
|
||||
List<Long> orderIds = JSON.parseArray(planDO.getOrderNos()).toJavaList(Long.class);
|
||||
|
||||
List<ProcessStepDO> processStepDOS = processStepMapper.selectOrderList(orderIds, getUserOrganId());
|
||||
|
||||
|
||||
for (ProcessDTO process : userProcess) {
|
||||
processStepIds.addAll(processStepDOS.stream().filter(f -> Objects.equals(f.getProcessinfoId(), process.getId()))
|
||||
.map(ProcessStepDO::getId).toList());
|
||||
}
|
||||
|
||||
|
||||
if(!processStepIds.isEmpty()) {
|
||||
|
||||
List<ProcessStepSalaryIds> processStepSalaryIds = calculateSalary(processStepIds);
|
||||
|
||||
// 修改生产明细表和步骤表的工序状态
|
||||
processStepMapper.updateStatus(processStepSalaryIds, loginUser.getNickname());
|
||||
|
||||
processStepItemMapper.updateStatus(processStepIds);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
// 目前结束开料已去掉,所以这些代码先注释,后面如果加再修改逻辑
|
||||
//
|
||||
// PlanDO planDO = planMapper.selectById(planId);
|
||||
// if (Objects.isNull(planDO)) {
|
||||
// throw exception(PLAN_NOT_EXISTS);
|
||||
// }
|
||||
// planMapper.updateById(PlanDO.builder()
|
||||
// .id(planId)
|
||||
// .status(PlanStatusEnum.OPENED.getStatus())
|
||||
// .produceTime(LocalDateTime.now())
|
||||
// .build());
|
||||
//
|
||||
// LoginUser loginUser = getLoginUser();
|
||||
// List<ProcessDTO> userProcess = processApi.getUserProcess(loginUser.getId());
|
||||
//
|
||||
// if(!userProcess.isEmpty()) {
|
||||
//
|
||||
// List<Long> processStepIds = new ArrayList<>();
|
||||
//
|
||||
// List<Long> orderIds = JSON.parseArray(planDO.getOrderNos()).toJavaList(Long.class);
|
||||
//
|
||||
// List<ProcessStepDO> processStepDOS = processStepMapper.selectOrderList(orderIds, getUserOrganId());
|
||||
//
|
||||
//
|
||||
// for (ProcessDTO process : userProcess) {
|
||||
// processStepIds.addAll(processStepDOS.stream().filter(f -> Objects.equals(f.getProcessinfoId(), process.getId()))
|
||||
// .map(ProcessStepDO::getId).toList());
|
||||
// }
|
||||
//
|
||||
//
|
||||
// if(!processStepIds.isEmpty()) {
|
||||
//
|
||||
// List<ProcessStepSalaryIds> processStepSalaryIds = calculateSalary(processStepIds);
|
||||
//
|
||||
// // 修改生产明细表和步骤表的工序状态
|
||||
// processStepMapper.updateStatus(processStepSalaryIds, loginUser.getNickname());
|
||||
//
|
||||
// processStepItemMapper.updateStatus(processStepIds);
|
||||
//
|
||||
// }
|
||||
//
|
||||
// }
|
||||
|
||||
|
||||
return Boolean.TRUE;
|
||||
@@ -504,6 +504,10 @@ public class OptimizePlanServiceImpl implements OptimizePlanService {
|
||||
List<PrintOrderPartsRespVO> printOrderPartsRespVOS = orderPartsMapper.selectPartList(Collections.singletonList(orderId), getUserOrganId());
|
||||
|
||||
|
||||
// 查询生产单对应的配件的ES信息
|
||||
List<OrderPartsRemark> orderPartsRemarks = buildOrderPartsByOrderId(Collections.singletonList(orderId), ORDER_PARTS_REMARK_MODEL, printOrderPartsRespVOS.size());
|
||||
|
||||
|
||||
// 查询生产单对应的包裹信息
|
||||
List<PrintOrderPackReqVO> printOrderPackReqVOS = plateMapper.selectOrderPackList(orderId,getUserOrganId());
|
||||
|
||||
@@ -515,14 +519,6 @@ public class OptimizePlanServiceImpl implements OptimizePlanService {
|
||||
.forEach(f->f.setPackNum(printOrderPackReqVOS.stream().filter(e -> e.getOrderId().equals(orderId)).map(PrintOrderPackReqVO::getPackId).toList().size()));
|
||||
|
||||
|
||||
// orderSource.setOrderList(Collections.singletonList(orderDO));
|
||||
// orderSource.setPlateList(plateDOS);
|
||||
// orderSource.setGoodsList(goodsDOS);
|
||||
// orderSource.setPlateModels(orderModelDOS);
|
||||
// orderSource.setOptimizeBoardModelDOS(optimizeBoardModelDOS);
|
||||
// orderSource.setOrderPartsRespVOS(printOrderPartsRespVOS);
|
||||
// orderSource.setOrderPackReqVOS(printOrderPackReqVOS);
|
||||
|
||||
return OrderSource.builder()
|
||||
.orderList(Collections.singletonList(orderDO))
|
||||
.goodsList(goodsDOS)
|
||||
@@ -530,6 +526,7 @@ public class OptimizePlanServiceImpl implements OptimizePlanService {
|
||||
.plateModels(orderModelDOS)
|
||||
.optimizeBoardModelDOS(optimizeBoardModelDOS)
|
||||
.orderPartsRespVOS(printOrderPartsRespVOS)
|
||||
.orderPartsRemarks(orderPartsRemarks)
|
||||
.orderPackReqVOS(printOrderPackReqVOS)
|
||||
.build();
|
||||
|
||||
@@ -712,7 +709,7 @@ public class OptimizePlanServiceImpl implements OptimizePlanService {
|
||||
// 保存优化后的大板数据
|
||||
batchSaveBoardModel(req.getOptimizeBoardModelDOS());
|
||||
|
||||
List<GoodsDO> goodsDOS = goodsMapper.selectPlanGoodsListByPlanIdList(planIds, getUserOrganId());
|
||||
List<GoodsDO> goodsDOS = goodsMapper.selectPlanGoodsListByPlanIdList(null,planIds, getUserOrganId());
|
||||
|
||||
List<Long> ids = goodsDOS.stream().map(GoodsDO::getId).distinct().toList();
|
||||
|
||||
|
||||
+3
-3
@@ -288,7 +288,7 @@ public class OrderServiceImpl implements OrderService {
|
||||
plateMapper.updateDeletedById(plateIds, status, getUserOrganId(), orderId);// 删小板
|
||||
|
||||
// 删除包裹,只需删除,无需还原
|
||||
List<Long> packIds = orderItemMapper.selectPackId(bodyIds, getUserOrganId()).stream().map(OrderItemDO::getPackageId).distinct().toList();
|
||||
List<Long> packIds = orderItemMapper.selectPackId(orderId,bodyIds, getUserOrganId()).stream().map(OrderItemDO::getPackageId).distinct().toList();
|
||||
|
||||
orderPackageMapper.updatePackList(orderId, packIds, getUserOrganId());
|
||||
|
||||
@@ -321,14 +321,14 @@ public class OrderServiceImpl implements OrderService {
|
||||
|
||||
if (goodsIdDeleted.size() > 0) {
|
||||
|
||||
goodsMapper.updateDeletedById(goodsIdDeleted, status, getUserOrganId());
|
||||
goodsMapper.updateDeletedById(orderId,goodsIdDeleted, status, getUserOrganId());
|
||||
|
||||
}
|
||||
|
||||
|
||||
if (!planIds.isEmpty()) {
|
||||
// 判断删除的柜体对应的板材是否和排单板材一样
|
||||
List<GoodsDO> goodsDOS = goodsMapper.selectPlanGoodsListByPlanIdList(planIds, getUserOrganId());
|
||||
List<GoodsDO> goodsDOS = goodsMapper.selectPlanGoodsListByPlanIdList(null,planIds, getUserOrganId());
|
||||
|
||||
// 一样,同时删除排单的信息
|
||||
if (goodsDOS.isEmpty()) {
|
||||
|
||||
-1
@@ -61,7 +61,6 @@ public interface PlanService {
|
||||
|
||||
PageResult<OrderGoodsResp> getOrderGoodsPage(OrderPageReqVOCopy pageReqVO);
|
||||
|
||||
List<PlatePage> getNotPlanPlateListPage(PlateReqPageVO pageVO);
|
||||
|
||||
Boolean addPlate(AddPlateReq req);
|
||||
|
||||
|
||||
+20
-22
@@ -151,7 +151,7 @@ public class PlanServiceImpl implements PlanService {
|
||||
|
||||
orderIdList.addAll(orderIds);
|
||||
|
||||
// 创建计划
|
||||
// 创建排单
|
||||
PlanDO plan = BeanUtils.toBean(createReqVO, PlanDO.class);
|
||||
plan.setId(identifierGenerator.nextId(plan).longValue());
|
||||
plan.setSort(0L);
|
||||
@@ -191,7 +191,7 @@ public class PlanServiceImpl implements PlanService {
|
||||
public void updatePlan(PlanSaveReqVO updateReqVO) {
|
||||
|
||||
// 校验排单是否存在,是否开料
|
||||
validatePlanExists(updateReqVO.getId());
|
||||
Long machineId = validatePlanExists(updateReqVO.getId());
|
||||
|
||||
// 更新
|
||||
PlanDO plan = BeanUtils.toBean(updateReqVO, PlanDO.class);
|
||||
@@ -243,6 +243,12 @@ public class PlanServiceImpl implements PlanService {
|
||||
|
||||
}
|
||||
|
||||
if(!machineId.equals(plan.getMachineId())){
|
||||
|
||||
deleteByPlanId(Collections.singletonList(plan.getId()),ORDER_REMAIN_PLATE_MODEL);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
planMapper.updateById(plan);
|
||||
@@ -322,7 +328,7 @@ public class PlanServiceImpl implements PlanService {
|
||||
List<Long> orderIds = new ArrayList<>();
|
||||
for (PlanDO planDO : planDOS) {
|
||||
|
||||
orderIds.addAll(JSON.parseArray(planDO.getOrderNos()).toJavaList(Long.class));
|
||||
orderIds.addAll(JSON.parseArray(planDO.getOrderNos()).toJavaList(Long.class).stream().distinct().toList());
|
||||
|
||||
}
|
||||
|
||||
@@ -337,7 +343,7 @@ public class PlanServiceImpl implements PlanService {
|
||||
if(!boardModelDOS.isEmpty()) {
|
||||
|
||||
|
||||
List<Long> goodsIdList = goodsMapper.selectPlanGoodsListByPlanIdList(ids, getUserOrganId()).stream().map(GoodsDO::getId).toList();
|
||||
List<Long> goodsIdList = goodsMapper.selectPlanGoodsListByPlanIdList(orderIds,ids, getUserOrganId()).stream().map(GoodsDO::getId).toList();
|
||||
|
||||
if(!goodsIdList.isEmpty()) {
|
||||
// 修改删除的大板对应的小板为未优化
|
||||
@@ -350,7 +356,11 @@ public class PlanServiceImpl implements PlanService {
|
||||
|
||||
plateMapper.deleteBatchIds(plateIds);
|
||||
|
||||
orderItemMapper.delete(new LambdaQueryWrapperX<OrderItemDO>().in(OrderItemDO::getPlateId, plateIds));
|
||||
orderItemMapper.delete(new LambdaQueryWrapperX<OrderItemDO>()
|
||||
.eq(OrderItemDO::getOrganId,getUserOrganId())
|
||||
.in(OrderItemDO::getOrderId,orderIds)
|
||||
.in(OrderItemDO::getPlateId, plateIds));
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -361,7 +371,7 @@ public class PlanServiceImpl implements PlanService {
|
||||
}
|
||||
|
||||
// 删除商品表里的 planId
|
||||
goodsMapper.deletePlanGoods(ids,getUserOrganId());
|
||||
goodsMapper.deletePlanGoods(orderIds,ids,getUserOrganId());
|
||||
|
||||
List<Long> orderIdList = new ArrayList<>();
|
||||
|
||||
@@ -594,9 +604,7 @@ public class PlanServiceImpl implements PlanService {
|
||||
.eqIfPresent("op.is_door", pageReqVO.getIsDoor())
|
||||
.betweenIfPresent("op.height", new BigDecimal[]{pageReqVO.getLongMinRang(), pageReqVO.getLongMaxRang()})
|
||||
.betweenIfPresent("op.width", new BigDecimal[]{pageReqVO.getWidthMinRang(), pageReqVO.getWidthMaxRang()})
|
||||
// .groupBy("o.id", " o.order_date", "o.delivery_date", "o.customer", "o.address", "o.custom_order_no","o.status")
|
||||
// .having("count(op.id) != 0")
|
||||
.orderByDesc("o.order_date");
|
||||
.orderByDesc("o.id");
|
||||
|
||||
String filterTypes = "";
|
||||
if (Objects.nonNull(pageReqVO.getHoleThrough()) && pageReqVO.getHoleThrough()) {
|
||||
@@ -872,15 +880,6 @@ public class PlanServiceImpl implements PlanService {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public List<PlatePage> getNotPlanPlateListPage(PlateReqPageVO pageVO) {
|
||||
|
||||
List<PlatePage> pageRes = plateMapper.selectPlatePage(/*page, */pageVO.getOrderId(),getUserOrganId()/*, pageVO.getGoodsId()*/);
|
||||
return pageRes;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Boolean addPlate(AddPlateReq req) {
|
||||
@@ -1123,17 +1122,16 @@ public class PlanServiceImpl implements PlanService {
|
||||
|
||||
|
||||
|
||||
private void validatePlanExists(Long id) {
|
||||
private Long validatePlanExists(Long id) {
|
||||
PlanDO planDO = planMapper.selectById(id);
|
||||
// if ( planDO== null) {
|
||||
// throw exception(PLAN_NOT_EXISTS);
|
||||
// }
|
||||
|
||||
AssertUtils.notEmpty(planDO,PLAN_NOT_EXISTS);
|
||||
|
||||
if(planDO.getStatus().equals(PlanStatusEnum.OPENING.getStatus()) || planDO.getStatus().equals(PlanStatusEnum.OPENED.getStatus())){
|
||||
throw exception(LIST_CHANGES_ARE_PROHIBITED);
|
||||
}
|
||||
|
||||
return planDO.getMachineId();
|
||||
}
|
||||
|
||||
|
||||
|
||||
+3
-69
@@ -42,11 +42,12 @@
|
||||
<update id="updateDeletedById">
|
||||
UPDATE order_goods
|
||||
SET deleted = #{deleted},plan_id = 0
|
||||
WHERE id IN
|
||||
WHERE organ_id = #{organId}
|
||||
and order_id = #{orderId}
|
||||
and id IN
|
||||
<foreach item="id" collection="ids" open="(" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
AND organ_id = #{organId}
|
||||
</update>
|
||||
<delete id="deletedById">
|
||||
DELETE FROM order_goods
|
||||
@@ -87,29 +88,6 @@
|
||||
|
||||
|
||||
|
||||
<select id="selectOrderGoodsList" resultMap="OrderGoodsMap">
|
||||
|
||||
select distinct
|
||||
og.goods_name as goodsName,
|
||||
og.material as material,
|
||||
og.color as color,
|
||||
og.width as width,
|
||||
og.height as height,
|
||||
og.thickness as thickness,
|
||||
og.texture as texture,
|
||||
og.goods_id as goodsId
|
||||
-- og.order_id as orderId,
|
||||
-- og.id as id
|
||||
from orders o
|
||||
left join order_goods og on o.organ_id = og.organ_id and o.id = og.order_id
|
||||
left join order_plate op on og.organ_id = op.organ_id and og.id = op.goods_id and og.deleted = op.deleted
|
||||
|
||||
${ew.customSqlSegment}
|
||||
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
|
||||
<resultMap id="GoodsListMap" type="com.cf.imes.module.executor.controller.admin.plan.vo.PlateInfoVO">
|
||||
@@ -187,23 +165,6 @@
|
||||
|
||||
|
||||
|
||||
|
||||
<select id="selectGoodsListByGoodsId" resultMap="OrderGoodsMap">
|
||||
|
||||
|
||||
select distinct
|
||||
og.goods_id as goodsId,
|
||||
og.order_id as orderId,
|
||||
og.id as id
|
||||
from orders o
|
||||
left join order_goods og on o.organ_id = og.organ_id and o.id = og.order_id
|
||||
left join order_plate op on og.organ_id = op.organ_id and og.id = op.goods_id and og.deleted = op.deleted
|
||||
|
||||
${ew.customSqlSegment}
|
||||
|
||||
|
||||
</select>
|
||||
|
||||
<select id="selectPlanGoodsListByPlanId"
|
||||
resultType="com.cf.imes.module.executor.controller.admin.plan.vo.PlateResList">
|
||||
|
||||
@@ -256,18 +217,6 @@
|
||||
</select>
|
||||
|
||||
|
||||
<select id="selectNoPlanOrderList"
|
||||
resultType="com.cf.imes.module.executor.controller.admin.plan.vo.OrderRespVOCopy">
|
||||
|
||||
|
||||
select distinct og.order_id as orderId,og.create_time as updateTime
|
||||
|
||||
from order_goods og
|
||||
left join order_plate op on og.organ_id = op.organ_id and og.order_id = op.order_id and og.id = op.goods_id and og.deleted = op.deleted
|
||||
|
||||
${ew.customSqlSegment}
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
<select id="selectPlateListByPlanId"
|
||||
@@ -361,21 +310,6 @@
|
||||
|
||||
|
||||
|
||||
</select>
|
||||
<select id="selectOrderPlate"
|
||||
resultType="com.cf.imes.module.executor.controller.admin.plan.vo.OrderRespVOCopy">
|
||||
|
||||
|
||||
|
||||
select distinct order_id,
|
||||
create_time as updateTime
|
||||
from order_goods
|
||||
where organ_id = #{organId}
|
||||
and deleted = false
|
||||
and plan_id = 0
|
||||
order by create_time;
|
||||
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
+2
-2
@@ -44,8 +44,8 @@
|
||||
o.status as status
|
||||
|
||||
from orders o
|
||||
join order_goods og on o.organ_id = og.organ_id and o.id = og.order_id and og.plan_id = 0 and o.deleted = og.deleted
|
||||
join order_plate op on o.organ_id = op.organ_id and o.deleted = op.deleted and o.id = op.order_id and op.is_optimized = false and og.id = op.goods_id
|
||||
STRAIGHT_JOIN order_goods og on o.organ_id = og.organ_id and o.id = og.order_id and og.plan_id = 0 and o.deleted = og.deleted
|
||||
STRAIGHT_JOIN order_plate op on o.organ_id = op.organ_id and o.deleted = op.deleted and o.id = op.order_id and op.is_optimized = false and og.id = op.goods_id
|
||||
|
||||
${ew.customSqlSegment}
|
||||
|
||||
|
||||
-12
@@ -186,18 +186,6 @@
|
||||
</update>
|
||||
|
||||
|
||||
<select id="selectTestNum"
|
||||
resultType="com.cf.imes.module.executor.controller.admin.plan.vo.OrderRespVOCopy">
|
||||
|
||||
select distinct
|
||||
|
||||
oi.order_id as orderId
|
||||
|
||||
from order_item oi
|
||||
left join order_plan_item opi on oi.id = opi.item_id and oi.organ_id = opi.organ_id
|
||||
|
||||
where oi.organ_id = #{organId} and opi.item_id is null and oi.plate_id !=0;
|
||||
</select>
|
||||
|
||||
|
||||
</mapper>
|
||||
+15
-99
@@ -9,103 +9,6 @@
|
||||
文档可见:https://www.cf.com/MyBatis/x-plugins/
|
||||
-->
|
||||
|
||||
<resultMap id="map" type="com.cf.imes.module.executor.controller.admin.plan.vo.PlateOptimize">
|
||||
<result column="goods_name" property="goodsName"/>
|
||||
<result column="material" property="material"/>
|
||||
<result column="color" property="color"/>
|
||||
<result column="width" property="width"/>
|
||||
<result column="height" property="height"/>
|
||||
<result column="plateNum" property="plateNum"/>
|
||||
<collection property="plateDOList" javaType="java.util.List" ofType="com.cf.imes.module.executor.dal.dataobject.remainplaten.RemainPlateDO"/>
|
||||
</resultMap>
|
||||
|
||||
<resultMap id="optimizeMap" type="com.cf.imes.module.executor.controller.admin.plan.vo.OptimizeParamRespVO">
|
||||
<result column="plan_id" property="planId"/>
|
||||
<result column="plan_no" property="planNo"/>
|
||||
<result column="sort" property="sort"/>
|
||||
<result column="op_type" property="type"/>
|
||||
<result column="op_status" property="status"/>
|
||||
<result column="machine_id" property="machineId"/>
|
||||
<result column="plan_time" property="planTime"/>
|
||||
<result column="op_remark" property="remark"/>
|
||||
<result column="produce_time" property="produceTime" />
|
||||
<result column="operator" property="operator"/>
|
||||
<collection property="plateList" javaType="java.util.List" ofType="com.cf.imes.module.executor.controller.admin.plate.vo.PlateRespVO" >
|
||||
<result column="plateId" property="id"/>
|
||||
<result column="plan_no" property="plateNo"/>
|
||||
<result column="opl_order_id" property="orderId"/>
|
||||
<result column="opl_type" property="type"/>
|
||||
<result column="opl_name" property="name"/>
|
||||
<result column="opl_goods_id" property="goodsId"/>
|
||||
<result column="opl_width" property="width"/>
|
||||
<result column="opl_height" property="height"/>
|
||||
<result column="opl_thickness" property="thickness"/>
|
||||
<result column="split_width" property="splitWidth"/>
|
||||
<result column="split_height" property="splitHeight"/>
|
||||
<result column="split_thickness" property="splitThickness"/>
|
||||
<result property="sealLeft" column="seal_left"/>
|
||||
<result property="sealRight" column="seal_right"/>
|
||||
<result property="sealUp" column="seal_up"/>
|
||||
<result property="sealDown" column="seal_down"/>
|
||||
<result property="area" column="area"/>
|
||||
<result property="texture" column="texture"/>
|
||||
<result property="holeFace" column="hole_face"/>
|
||||
<result property="holeArrange" column="hole_arrange"/>
|
||||
<result property="unregularPointCount" column="unregular_point_count"/>
|
||||
<result property="frontHoleCount" column="front_hole_count"/>
|
||||
<result property="backHoleCount" column="back_hole_count"/>
|
||||
<result property="sideHoleCount" column="side_hole_count"/>
|
||||
<result property="frontModelCount" column="front_model_count"/>
|
||||
<result property="backModelCount" column="back_model_count"/>
|
||||
<result property="isDoor" column="is_door"/>
|
||||
<result property="openDoorType" column="open_door_type"/>
|
||||
<result property="offsetX" column="offset_x"/>
|
||||
<result property="offsetY" column="offset_y"/>
|
||||
<result property="isArcAcross" column="is_arc_across"/>
|
||||
<result property="moduleTypeId" column="module_type_id"/>
|
||||
<result property="filterType" column="filter_type"/>
|
||||
<result property="isCancel" column="is_cancel"/>
|
||||
<result property="remark" column="opl_remark"/>
|
||||
<result property="createTime" column="opl_create_time"/>
|
||||
</collection>
|
||||
<collection property="orderList" javaType="java.util.List" ofType="com.cf.imes.module.executor.controller.admin.plan.vo.OrderResp">
|
||||
<result property="orderId" column="o_id"/>
|
||||
<result property="type" column="o_type"/>
|
||||
<result property="status" column="o_status"/>
|
||||
<result property="dataType" column="data_type"/>
|
||||
<result property="customOrderNo" column="custom_order_no"/>
|
||||
<result column="customer" property="customer"/>
|
||||
<result column="address" property="address"/>
|
||||
<result column="phone_number" property="phoneNumber"/>
|
||||
<result column="dealer" property="dealer"/>
|
||||
<result column="dealer_phone_number" property="dealerPhoneNumber"/>
|
||||
<result column="salesman" property="salesman"/>
|
||||
<result column="splitter" property="splitter"/>
|
||||
<result column="o_status" property="status"/>
|
||||
<result column="delivery_date" property="deliveryDate"/>
|
||||
<result column="o_remark" property="remark"/>
|
||||
</collection>
|
||||
|
||||
</resultMap>
|
||||
|
||||
|
||||
<select id="getOptimizePlanParam" resultMap="optimizeMap">
|
||||
select distinct op.id as plan_id, op.plan_no, op.type as op_type, op.status as op_status, op.machine_id, op.plan_time, op.produce_time, op.remark as op_remark, op.operator,
|
||||
oi.order_id, opl.id as plateId, opl.order_id opl_order_id, opl.name opl_name, opl.plate_no, opl.type as opl_type, opl.goods_id as opl_goods_id, opl.width opl_width,
|
||||
opl.height opl_height, opl.thickness as opl_thickness, opl.split_width, opl.split_height, opl.split_thickness, opl.seal_left, opl.seal_right,
|
||||
opl.seal_up, opl.seal_down, opl.area, opl.texture, opl.hole_face, opl.hole_arrange, opl.unregular_point_count, opl.front_hole_count,
|
||||
opl.back_hole_count, opl.side_hole_count, opl.front_model_count, opl.back_model_count, opl.is_door, opl.open_door_type, opl.offset_x, opl.offset_y,
|
||||
opl.is_arc_across, opl.module_type_id, opl.filter_type, opl.remark opl_remark, opl.is_cancel, opl.create_time as opl_create_time,
|
||||
o.id as o_id, o.type as o_type, o.data_type, o.status o_status, o.custom_order_no, o.customer,
|
||||
o.address, o.phone_number, o.dealer, o.dealer_phone_number, o.salesman, o.splitter, o.remark as o_remark, o.delivery_date
|
||||
from order_plan op
|
||||
left JOIN order_plan_item opi on op.id = opi.plan_id
|
||||
left join order_item oi on opi.item_id = oi.id
|
||||
left join order_plate opl on oi.plate_id = opl.id
|
||||
left join `orders` o on oi.order_id = o.id
|
||||
where op.id = #{planId}
|
||||
|
||||
</select>
|
||||
|
||||
<select id="selectPlateListByPlanId"
|
||||
resultType="com.cf.imes.module.executor.controller.admin.plan.vo.PlateOptimize"
|
||||
@@ -121,8 +24,6 @@
|
||||
|
||||
</select>
|
||||
|
||||
<select id="selectPlanByOrderIds" resultType="com.cf.imes.module.executor.dal.dataobject.plan.PlanDO"></select>
|
||||
|
||||
<select id="selectPlanCountGroupByCreateTime"
|
||||
resultType="com.cf.imes.module.executor.controller.admin.plan.vo.OrderPlanStatisticsCountRespVO">
|
||||
select
|
||||
@@ -224,4 +125,19 @@
|
||||
</select>
|
||||
|
||||
|
||||
<update id="updatePlanStatus">
|
||||
|
||||
UPDATE order_plan
|
||||
|
||||
SET status = #{status}, produce_time = null
|
||||
|
||||
WHERE organ_id = #{organId}
|
||||
and deleted = false
|
||||
and id = #{planId}
|
||||
|
||||
|
||||
</update>
|
||||
|
||||
|
||||
|
||||
</mapper>
|
||||
+6
-347
@@ -3,57 +3,6 @@
|
||||
<mapper namespace="com.cf.imes.module.executor.dal.mysql.plate.PlateMapper">
|
||||
|
||||
|
||||
<select id="selectPlatePage" resultType="com.cf.imes.module.executor.controller.admin.plan.vo.PlatePage">
|
||||
|
||||
select distinct a.id as plateId, a.name, a.width, a.height, a.thickness, a.area,
|
||||
b.custom_order_no, b.customer, b.address, b.remark, b.id as orderId,
|
||||
c.goods_name, c.material, c.color, a.goods_id,oi.num,a.is_special_shaped as specialShaped,a.is_sculpt as profiling
|
||||
|
||||
from order_plate a
|
||||
LEFT JOIN order_item oi on a.id = oi.plate_id and a.order_id = oi.order_id and a.organ_id = oi.organ_id
|
||||
LEFT JOIN `orders` b on a.order_id = b.id and a.organ_id = b.organ_id
|
||||
LEFT JOIN order_goods c on a.goods_id = c.id and a.organ_id = c.organ_id
|
||||
left join order_plan_item opi on oi.id = opi.item_id and oi.organ_id = opi.organ_id
|
||||
<where>
|
||||
a.organ_id = #{organId}
|
||||
and a.is_cancel = 0
|
||||
and opi.item_id is null
|
||||
<if test="orderId !=null">
|
||||
and a.order_id = #{orderId}
|
||||
</if>
|
||||
|
||||
</where>
|
||||
|
||||
|
||||
</select>
|
||||
|
||||
<select id="selectPlateByPlanId"
|
||||
resultType="com.cf.imes.module.executor.controller.admin.plan.vo.PlateResList">
|
||||
select distinct a.id as plateId,a.order_id, a.plate_no , a.name as plateName,a.is_special_shaped,a.is_sculpt,a.area,a.seal_left,a.seal_right,a.seal_up,a.seal_down, e.material, e.color, a.width, a.height, a.thickness, b.room_id, b.body_id
|
||||
from order_plate a
|
||||
LEFT JOIN order_item b ON a.id = b.plate_id AND a.order_id = b.order_id and a.organ_id = b.organ_id
|
||||
LEFT JOIN order_goods e ON e.id = a.goods_id AND e.order_id = a.order_id and e.organ_id = a.organ_id
|
||||
LEFT JOIN order_plan_item p ON b.id = p.item_id and b.organ_id = p.organ_id
|
||||
${ew.customSqlSegment}
|
||||
|
||||
|
||||
</select>
|
||||
<select id="selectPlateList"
|
||||
resultType="com.cf.imes.module.executor.controller.admin.plan.vo.PlateParam">
|
||||
select distinct a.id,
|
||||
a.plate_no,
|
||||
a.height length,
|
||||
a.width,
|
||||
a.texture,
|
||||
a.hole_arrange,
|
||||
a.hole_face,
|
||||
if((count(a.unregular_point_count) = 0), 1, 0) as isRect
|
||||
from order_plate a
|
||||
left join order_item b on a.id = b.plate_id
|
||||
where b.plan_id = #{planId}
|
||||
group by a.id
|
||||
|
||||
</select>
|
||||
|
||||
<select id="selectProductList"
|
||||
resultType="com.cf.imes.module.executor.controller.admin.plate.vo.PlateRespVO">
|
||||
@@ -241,74 +190,6 @@
|
||||
</select>
|
||||
|
||||
|
||||
<select id="selectPlateDetialListByIds"
|
||||
resultMap="PlateDetialMap"
|
||||
resultType="java.lang.Long">
|
||||
|
||||
select distinct
|
||||
oi.group_id as groupId,
|
||||
og.name as groupName,
|
||||
op.id as plateId,
|
||||
op.order_id as orderId,
|
||||
op.name as name,
|
||||
op.plate_no as plateNo,
|
||||
op.type as type,
|
||||
op.goods_id as goodsId,
|
||||
ogs.goods_id as plateGoodsId,
|
||||
op.width as width,
|
||||
op.height as height,
|
||||
op.thickness as thickness,
|
||||
op.split_width as splitWidth,
|
||||
op.split_height as splitHeight,
|
||||
op.split_thickness as splitThickness,
|
||||
op.seal_left as sealLeft,
|
||||
op.seal_right as sealRight,
|
||||
op.seal_up as sealUp,
|
||||
op.seal_down as sealDown,
|
||||
op.area as area,
|
||||
op.texture as texture,
|
||||
op.hole_face as holeFace,
|
||||
op.hole_arrange as holeArrange,
|
||||
op.unregular_point_count as unregularPointCount,
|
||||
op.front_hole_count as frontHoleCount,
|
||||
op.back_hole_count as backHoleCount,
|
||||
op.side_hole_count as sideHoleCount,
|
||||
op.front_model_count as frontModelCount,
|
||||
op.back_model_count as backModelCount,
|
||||
op.is_door as isDoor,
|
||||
op.open_door_type as openDoorType,
|
||||
op.offset_x as offsetX,
|
||||
op.offset_y as offsetY,
|
||||
op.is_arc_across as isArcAcross,
|
||||
op.module_type_id as moduleTypeId,
|
||||
op.is_special_shaped as isSpecialShaped,
|
||||
op.is_sculpt as isSculpt,
|
||||
op.is_row_hole as hasHole,
|
||||
op.remark as remark,
|
||||
op.filter_type as filterType,
|
||||
op.is_cancel as isCancel,
|
||||
ogs.goods_name as goodsName,
|
||||
ob.id as bodyId,
|
||||
ob.room_id as roomId,
|
||||
ob.name as bodyName,
|
||||
ob.room_name as roomName,
|
||||
op.is_row_hole as hasHole
|
||||
from order_plate op
|
||||
join order_goods ogs on op.goods_id = ogs.id and op.organ_id = ogs.organ_id
|
||||
join order_item oi on op.id = oi.plate_id and op.organ_id = oi.organ_id
|
||||
join order_body ob on oi.body_id = ob.id and oi.organ_id = ob.organ_id
|
||||
left join order_group og on oi.group_id = og.id and oi.organ_id = og.organ_id
|
||||
|
||||
where op.organ_id = #{organId} and op.deleted = false and op.id in
|
||||
|
||||
<foreach collection="orderIds" item="orderIds" open="(" close=")" separator=",">
|
||||
|
||||
#{orderIds}
|
||||
|
||||
</foreach>
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
<select id="selectPlateGoodsList" resultType="com.cf.imes.module.executor.controller.admin.plate.vo.PlateGoodsRespVO">
|
||||
|
||||
@@ -401,13 +282,12 @@
|
||||
<update id="updateDeletedById">
|
||||
UPDATE order_plate
|
||||
SET deleted = #{deleted},is_optimized = false
|
||||
WHERE id IN
|
||||
<if test="plateIds != null and plateIds.size() > 0">
|
||||
<foreach item="plateId" collection="plateIds" open="(" separator="," close=")">
|
||||
#{plateId}
|
||||
</foreach>
|
||||
</if>
|
||||
AND organ_id = #{organId} and order_id = #{orderId}
|
||||
WHERE organ_id = #{organId}
|
||||
and order_id = #{orderId}
|
||||
and id IN
|
||||
<foreach item="plateId" collection="plateIds" open="(" separator="," close=")">
|
||||
#{plateId}
|
||||
</foreach>
|
||||
</update>
|
||||
|
||||
|
||||
@@ -540,130 +420,6 @@
|
||||
|
||||
|
||||
|
||||
<resultMap id="GoodsList" type="com.cf.imes.module.executor.controller.admin.plan.vo.OrderGoodsResp">
|
||||
|
||||
<result property="goodsId" column="goodsId"/>
|
||||
<result property="goodsName" column="goodsName"/>
|
||||
<result property="width" column="width"/>
|
||||
<result property="height" column="height"/>
|
||||
<result property="thickness" column="thickness"/>
|
||||
<result property="material" column="material"/>
|
||||
<result property="color" column="color"/>
|
||||
<result property="num" column="num"/>
|
||||
|
||||
|
||||
</resultMap>
|
||||
|
||||
<select id="selectGoodsList"
|
||||
resultMap="GoodsList"
|
||||
parameterType="map">
|
||||
|
||||
|
||||
|
||||
select distinct
|
||||
c.goods_id as goodsId,
|
||||
c.width as width,
|
||||
c.height as height,
|
||||
c.thickness as thickness,
|
||||
c.goods_name as goodsName,
|
||||
c.material as material,
|
||||
c.color as color,
|
||||
count(distinct a.id)
|
||||
|
||||
from order_plate a
|
||||
LEFT JOIN order_item oi on a.id = oi.plate_id and a.order_id = oi.order_id and a.organ_id = oi.organ_id
|
||||
-- LEFT JOIN `orders` b on a.order_id = b.id and a.organ_id = b.organ_id
|
||||
LEFT JOIN order_goods c on a.goods_id = c.id and a.organ_id = c.organ_id
|
||||
left join order_plan_item opi on oi.id = opi.item_id and oi.organ_id = opi.organ_id
|
||||
where
|
||||
c.organ_id = #{organId}
|
||||
and a.is_cancel = 0
|
||||
and b.status = 2
|
||||
and a.deleted = false
|
||||
and opi.item_id is null
|
||||
and c.goods_id in
|
||||
<foreach item="goodsIds" collection="goodsIds" open="(" separator="," close=")">
|
||||
#{goodsIds}
|
||||
</foreach>
|
||||
|
||||
group by c.goods_id,c.id,b.id ,c.goods_name,c.width,c.height,c.thickness, c.material, c.color;
|
||||
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
<select id="selectOrderIds" resultType="com.cf.imes.module.executor.controller.admin.plan.bo.OrderIds" parameterType="map">
|
||||
select distinct
|
||||
a.order_id as orderId,
|
||||
c.id as id,
|
||||
c.goods_id as goodsId
|
||||
from order_plate a
|
||||
LEFT JOIN order_item oi on a.id = oi.plate_id and a.order_id = oi.order_id and a.organ_id = oi.organ_id
|
||||
LEFT JOIN order_goods c on a.goods_id = c.id and a.organ_id = c.organ_id
|
||||
left join order_plan_item opi on oi.id = opi.item_id and oi.organ_id = opi.organ_id
|
||||
where
|
||||
c.organ_id = #{organId}
|
||||
and a.deleted = false
|
||||
and opi.item_id is null
|
||||
and c.order_id in
|
||||
<foreach collection="orderIds" item="orderIds" open="(" close=")" separator=",">
|
||||
#{orderIds}
|
||||
</foreach>
|
||||
order by a.order_id
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
<!-- select distinct
|
||||
a.order_id as orderId,
|
||||
c.id as id,
|
||||
c.goods_id as goodsId
|
||||
from order_plate a
|
||||
LEFT JOIN order_item oi on a.id = oi.plate_id and a.order_id = oi.order_id and a.organ_id = oi.organ_id
|
||||
LEFT JOIN `orders` b on a.order_id = b.id and a.organ_id = b.organ_id
|
||||
LEFT JOIN order_goods c on a.goods_id = c.id and a.organ_id = c.organ_id
|
||||
left join order_plan_item opi on oi.id = opi.item_id and oi.organ_id = opi.organ_id
|
||||
where
|
||||
c.organ_id = #{organId}
|
||||
and a.is_cancel = 0
|
||||
and b.status = 2
|
||||
and a.deleted = false
|
||||
and opi.item_id is null
|
||||
and c.order_id in
|
||||
<foreach collection="orderIds" item="orderIds" open="(" close=")" separator=",">
|
||||
#{orderIds}
|
||||
</foreach>
|
||||
order by a.order_id-->
|
||||
|
||||
<select id="selectGoodsNum" resultType="com.cf.imes.module.executor.controller.admin.plan.bo.GoodsNum">
|
||||
|
||||
|
||||
select distinct
|
||||
a.order_id as orderId,
|
||||
count(distinct c.id) as goodsNum
|
||||
from order_plate a
|
||||
LEFT JOIN order_item oi on a.id = oi.plate_id and a.order_id = oi.order_id and a.organ_id = oi.organ_id
|
||||
LEFT JOIN `orders` b on a.order_id = b.id and a.organ_id = b.organ_id
|
||||
LEFT JOIN order_goods c on a.goods_id = c.id and a.organ_id = c.organ_id
|
||||
left join order_plan_item opi on oi.id = opi.item_id and oi.organ_id = opi.organ_id
|
||||
where
|
||||
c.organ_id = #{organId}
|
||||
and a.is_cancel = 0
|
||||
and b.status = 2
|
||||
and a.deleted = false
|
||||
and opi.item_id is null
|
||||
and c.order_id in
|
||||
<foreach collection="orderIds" item="orderIds" open="(" close=")" separator=",">
|
||||
#{orderIds}
|
||||
</foreach>
|
||||
|
||||
group by orderId
|
||||
|
||||
|
||||
|
||||
|
||||
</select>
|
||||
|
||||
<select id="selectPlateTypeByRoomId"
|
||||
resultType="com.cf.imes.module.executor.dal.dataobject.plate.PlateDO" parameterType="java.lang.Long">
|
||||
@@ -681,103 +437,6 @@
|
||||
</select>
|
||||
|
||||
|
||||
<select id="selectPlateListByGoodIds"
|
||||
resultMap="PlateDetialMap"
|
||||
resultType="java.lang.Long">
|
||||
|
||||
|
||||
select distinct
|
||||
oi.group_id as groupId,
|
||||
og.name as groupName,
|
||||
op.id as plateId,
|
||||
op.order_id as orderId,
|
||||
op.name as name,
|
||||
op.plate_no as plateNo,
|
||||
op.type as type,
|
||||
op.goods_id as goodsId,
|
||||
op.width as width,
|
||||
op.height as height,
|
||||
op.thickness as thickness,
|
||||
op.split_width as splitWidth,
|
||||
op.split_height as splitHeight,
|
||||
op.split_thickness as splitThickness,
|
||||
op.seal_left as sealLeft,
|
||||
op.seal_right as sealRight,
|
||||
op.seal_up as sealUp,
|
||||
op.seal_down as sealDown,
|
||||
op.area as area,
|
||||
op.texture as texture,
|
||||
op.hole_face as holeFace,
|
||||
op.hole_arrange as holeArrange,
|
||||
op.unregular_point_count as unregularPointCount,
|
||||
op.front_hole_count as frontHoleCount,
|
||||
op.back_hole_count as backHoleCount,
|
||||
op.side_hole_count as sideHoleCount,
|
||||
op.front_model_count as frontModelCount,
|
||||
op.back_model_count as backModelCount,
|
||||
op.is_door as isDoor,
|
||||
op.open_door_type as openDoorType,
|
||||
op.offset_x as offsetX,
|
||||
op.offset_y as offsetY,
|
||||
op.is_arc_across as isArcAcross,
|
||||
op.module_type_id as moduleTypeId,
|
||||
op.is_special_shaped as isSpecialShaped,
|
||||
op.is_sculpt as isSculpt,
|
||||
op.is_row_hole as hasHole,
|
||||
op.remark as remark,
|
||||
op.filter_type as filterType,
|
||||
op.is_cancel as isCancel,
|
||||
ob.id as bodyId,
|
||||
ob.room_id as roomId,
|
||||
ob.name as bodyName,
|
||||
ob.room_name as roomName,
|
||||
op.is_row_hole as hasHole
|
||||
|
||||
from order_plate op
|
||||
left join order_item oi on op.id = oi.plate_id and op.organ_id = oi.organ_id
|
||||
left join order_body ob on oi.body_id = ob.id and oi.organ_id = ob.organ_id
|
||||
left join order_group og on oi.group_id = og.id and oi.organ_id = og.organ_id
|
||||
|
||||
where op.organ_id = #{organId} and op.deleted = false and op.goods_id in
|
||||
|
||||
<foreach collection="goodIds" item="goodIds" open="(" close=")" separator=",">
|
||||
|
||||
#{goodIds}
|
||||
|
||||
</foreach>
|
||||
|
||||
|
||||
|
||||
</select>
|
||||
|
||||
<!-- <select id="selectPlateArea"-->
|
||||
<!-- resultType="com.cf.imes.module.executor.controller.admin.plan.vo.PlateInfoVO">-->
|
||||
|
||||
<!-- select-->
|
||||
<!-- og.goods_id as goodsId,-->
|
||||
<!---- count(distinct og.id) as optimizeGoodsCount,-->
|
||||
<!-- sum(op.area) as area-->
|
||||
|
||||
<!-- from order_plate op-->
|
||||
<!-- left join order_goods og on op.goods_id = og.id-->
|
||||
|
||||
<!-- where og.organ_id = #{organId} and og.goods_id in-->
|
||||
|
||||
<!-- <foreach collection="orderIdsList" item="orderIdsList" open="(" close=")" separator=",">-->
|
||||
<!-- (#{orderIdsList.goodsId})-->
|
||||
<!-- </foreach>-->
|
||||
|
||||
<!-- and og.order_id in-->
|
||||
|
||||
<!-- <foreach collection="orderIdsList" item="orderIdsList" open="(" close=")" separator=",">-->
|
||||
<!-- (#{orderIdsList.orderId})-->
|
||||
<!-- </foreach>-->
|
||||
|
||||
<!-- group by goodsId;-->
|
||||
|
||||
|
||||
|
||||
<!-- </select>-->
|
||||
|
||||
<select id="selectPlanPlateListDataSource" resultType="java.util.Map">
|
||||
|
||||
|
||||
+4
@@ -38,6 +38,10 @@ public class OrderDO extends BaseDO {
|
||||
// 客户地址
|
||||
private String address;
|
||||
|
||||
// 生产单日期
|
||||
private LocalDateTime orderDate;
|
||||
|
||||
|
||||
// 客户电话
|
||||
private String phoneNumber;
|
||||
|
||||
|
||||
+3
-2
@@ -7,8 +7,6 @@ import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.*;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@TableName("order_item")
|
||||
@Data
|
||||
@ToString(callSuper = true)
|
||||
@@ -24,6 +22,9 @@ public class OrderItemDO {
|
||||
// 生产单号
|
||||
private Long orderId;
|
||||
|
||||
// 明细类型,1 板材 2 五金/配件 3 其他 4 报价配件
|
||||
private Integer type;
|
||||
|
||||
// 房间 ID
|
||||
private Long roomId;
|
||||
|
||||
|
||||
+1
-2
@@ -1,9 +1,8 @@
|
||||
package com.cf.imes.module.manage.dal.dataobject.remainplaten;
|
||||
|
||||
import com.cf.imes.framework.organ.core.db.OrganBaseDO;
|
||||
import lombok.*;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
|
||||
import lombok.*;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
|
||||
-11
@@ -11,7 +11,6 @@ import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.PackRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.PlateAndPartIdList;
|
||||
import com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO;
|
||||
import com.cf.imes.module.manage.controller.admin.query.vo.pack.OrderPackageVO;
|
||||
import com.cf.imes.module.manage.dal.dataobject.query.OrderPackageDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
@@ -24,12 +23,6 @@ public interface OrderPackageMapper extends BaseMapperX<OrderPackageDO> {
|
||||
|
||||
|
||||
|
||||
// default List<OrderPackageDO> selectByOrderNo(PackageDetailsReqVO reqVO) {
|
||||
// return selectList(new LambdaQueryWrapperX<OrderPackageDO>()
|
||||
// .eqIfPresent(OrderPackageDO::getOrderNo, orderNo)
|
||||
// .orderByDesc(OrderPackageDO::getId));
|
||||
// }
|
||||
|
||||
|
||||
// IPage<OrderPackageVO> selectByOrderNo(@Param("page") IPage page, @Param("reqVO") PackageDetailsReqVO reqVO,@Param("packId") List<Long> packId, @Param("organId") Long organId);
|
||||
|
||||
@@ -46,10 +39,6 @@ public interface OrderPackageMapper extends BaseMapperX<OrderPackageDO> {
|
||||
List<PackRespVO> selectPackPage(@Param("orderIds") List<Long> orderIds,@Param("organId") Long organId);
|
||||
|
||||
|
||||
IPage<PlateDetailsRespVO> selectMissingBoard( @Param("page") IPage page, @Param("orderNo") Long orderNo, @Param("organId") Long organId);
|
||||
|
||||
|
||||
|
||||
|
||||
default OrderPackageDO selectByPackId(Long packId,Long orderId,Long organId) {
|
||||
return selectOne(new LambdaQueryWrapperX<OrderPackageDO>()
|
||||
|
||||
-9
@@ -6,20 +6,11 @@ import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import com.cf.imes.module.manage.dal.dataobject.pack.OrderPrepackagedDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Mapper
|
||||
public interface OrderPrepackagedMapper extends BaseMapperX<OrderPrepackagedDO> {
|
||||
|
||||
|
||||
|
||||
default List<OrderPrepackagedDO> selectOrderList(Long orderId, Long organId) {
|
||||
return selectList(new LambdaQueryWrapperX<OrderPrepackagedDO>()
|
||||
.eq(OrderPrepackagedDO::getOrganId, organId)
|
||||
.eqIfPresent(OrderPrepackagedDO::getOrderId, orderId));
|
||||
}
|
||||
|
||||
|
||||
|
||||
default OrderPrepackagedDO selectOrder(Long orderId, Long organId) {
|
||||
return selectOne(new LambdaQueryWrapperX<OrderPrepackagedDO>()
|
||||
|
||||
+1
-4
@@ -40,13 +40,10 @@ public interface OrdersMapper extends BaseMapperX<OrderDO> {
|
||||
|
||||
|
||||
|
||||
List<PackRespVO> selectOrderIdsFalse( @Param("createTime") String createTime,@Param("organId") Long organId, @Param("orderId") Long orderId);
|
||||
List<PackRespVO> selectOrderIdsFalse(@Param("createTime") String createTime,@Param("organId") Long organId, @Param("orderId") Long orderId);
|
||||
|
||||
|
||||
|
||||
IPage<PackRespVO> selectOrderPlate(@Param("page") IPage page, @Param("orderIds") List<Long> orderIds, @Param("organId") Long organId);
|
||||
|
||||
|
||||
|
||||
PrintOrderPackRespVO selectOrderPack(@Param("orderNo")Long orderNo, @Param("packageNo") Long packageNo, @Param("organId") Long organId);
|
||||
|
||||
|
||||
+2
@@ -4,6 +4,7 @@ package com.cf.imes.module.manage.service.pack;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO;
|
||||
import com.cf.imes.framework.common.enums.OrderItemTypeEnum;
|
||||
import com.cf.imes.framework.common.enums.OrderPackageStatusEnum;
|
||||
import com.cf.imes.framework.common.enums.OrderPackageTypeEnum;
|
||||
import com.cf.imes.framework.common.enums.UserSettingTypeEnum;
|
||||
@@ -693,6 +694,7 @@ public class PackServiceImpl implements PackService {
|
||||
// 在生产单明细表中添加数据(生产单号,配件ID,包裹ID,部件数量)
|
||||
OrderItemDO orderItemDO = new OrderItemDO();
|
||||
orderItemDO.setOrderId(reqVO.getOrderId());
|
||||
orderItemDO.setType(OrderItemTypeEnum.QUOTATIONACCESSORIES.getType());
|
||||
orderItemDO.setPartsId(orderParts.getId());
|
||||
orderItemDO.setPackageId(orderPackageDO.getId());
|
||||
orderItemDO.setNum(reqVO.getNum());
|
||||
|
||||
-63
@@ -5,9 +5,6 @@
|
||||
<resultMap id="PackMap" type="com.cf.imes.module.manage.controller.admin.pack.vo.PackRespVO">
|
||||
|
||||
<result property="id" column="orderId"/>
|
||||
<!-- <result property="packCount" column="packCount"/>-->
|
||||
<!-- <result property="packPieceCount" column="packPieceCount"/>-->
|
||||
|
||||
<collection property="plateIdList" ofType="java.lang.Long" column="plateId"/>
|
||||
|
||||
<collection property="packIdList" ofType="java.lang.Long" column="packId"/>
|
||||
@@ -73,66 +70,6 @@
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<resultMap id="PlateDetailsMap" type="com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO">
|
||||
<result property="roomName" column="roomName"/>
|
||||
<result property="cabinetName" column="bodyName"/>
|
||||
<result property="plateNo" column="palteId"/>
|
||||
<result property="plateName" column="plateName"/>
|
||||
<result property="material" column="plateMaterial"/>
|
||||
<result property="color" column="palteColor"/>
|
||||
<result property="width" column="plateWidth"/>
|
||||
<result property="height" column="plateHeight"/>
|
||||
<result property="thickness" column="plateThickness"/>
|
||||
<result property="area" column="plateArea"/>
|
||||
<result property="texture" column="texture"/>
|
||||
<result property="specialShaped" column="specialShaped"/>
|
||||
<result property="profiling" column="profiling"/>
|
||||
<result property="rowHole" column="rowHole"/>
|
||||
<result property="remark" column="remark"/>
|
||||
<result property="processGroup" column="name"/>
|
||||
</resultMap>
|
||||
<select id="selectMissingBoard"
|
||||
parameterType="java.lang.Long"
|
||||
resultMap="PlateDetailsMap">
|
||||
|
||||
select DISTINCT
|
||||
ob.room_name as roomName,
|
||||
ob.name as bodyName,
|
||||
op.id as palteId,
|
||||
op.name as plateName,
|
||||
ogs.material as plateMaterial,
|
||||
ogs.color as palteColor,
|
||||
op.height as plateHeight,
|
||||
op.width as plateWidth,
|
||||
op.thickness as plateThickness,
|
||||
op.area as plateArea,
|
||||
op.texture as texture,
|
||||
op.remark as remark,
|
||||
op.is_special_shaped as specialShaped,
|
||||
op.is_sculpt as profiling,
|
||||
op.is_row_hole AS rowHole
|
||||
|
||||
from order_plate op
|
||||
join order_goods ogs on op.goods_id = ogs.id and op.organ_id = ogs.organ_id
|
||||
join order_item oi on op.id = oi.plate_id and op.organ_id = oi.organ_id
|
||||
join order_body ob on oi.body_id = ob.id and oi.organ_id = ob.organ_id
|
||||
|
||||
where
|
||||
oi.order_id = #{orderNo}
|
||||
and
|
||||
oi.organ_id = #{organId}
|
||||
and oi.plate_id != 0
|
||||
and
|
||||
op.id not in (
|
||||
select DISTINCT oi2.plate_id
|
||||
from order_item oi2
|
||||
where oi2.order_id = #{orderNo} and oi2.package_id <> '');
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
<update id="updateParts"
|
||||
parameterType="java.lang.Long">
|
||||
|
||||
|
||||
+3
-40
@@ -22,7 +22,7 @@
|
||||
splitter as splitter,
|
||||
packaged as packaged
|
||||
FROM orders
|
||||
WHERE organ_id = #{organId} and deleted = false and status != 0 and create_time >= #{createTime} and id != #{orderId}
|
||||
WHERE organ_id = #{organId} and deleted = false and status in (1,2,3,4) and create_time >= #{createTime} and id != #{orderId}
|
||||
ORDER BY create_time
|
||||
LIMIT 1 ;
|
||||
|
||||
@@ -49,7 +49,7 @@
|
||||
splitter as splitter,
|
||||
packaged as packaged
|
||||
FROM orders
|
||||
WHERE organ_id = #{organId} and deleted = false and status != 0 and create_time <= #{createTime} and id != #{orderId}
|
||||
WHERE organ_id = #{organId} and deleted = false and status != 0 and create_time <= #{createTime} and id != #{orderId}
|
||||
ORDER BY create_time desc
|
||||
LIMIT 1 ;
|
||||
|
||||
@@ -81,43 +81,6 @@
|
||||
|
||||
</resultMap>
|
||||
|
||||
<select id="selectOrderPlate"
|
||||
parameterType="java.lang.Long"
|
||||
resultMap="PackMap">
|
||||
|
||||
|
||||
SELECT distinct
|
||||
o.id as orderNo,
|
||||
o.custom_order_no as customOrderNo,
|
||||
o.dealer as dealer,
|
||||
o.dealer_phone_number as dealerPhoneNumber,
|
||||
o.order_date as orderDate,
|
||||
o.create_time as createTime,
|
||||
o.delivery_date as deliveryDate,
|
||||
o.customer as customer,
|
||||
o.phone_number as phoneNumber,
|
||||
o.address as address,
|
||||
o.salesman as salesman,
|
||||
o.splitter as splitter,
|
||||
o.packaged as packaged,
|
||||
(count(distinct oi.plate_id )-1) as totalPieceCount
|
||||
|
||||
FROM `orders` o
|
||||
join order_item oi on o.id = oi.order_id and o.organ_id = oi.organ_id
|
||||
|
||||
WHERE
|
||||
o.organ_id = #{organId} and
|
||||
o.id in
|
||||
<foreach item="id" collection="orderIds" open="(" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
|
||||
group by orderNo,customOrderNo,dealer,deliveryDate,customer,phoneNumber,address,salesman,splitter,packaged,dealerPhoneNumber,orderDate,o.create_time
|
||||
|
||||
order by o.create_time desc
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
|
||||
<resultMap id="PrintMap" type="com.cf.imes.module.manage.controller.admin.pack.vo.PrintOrderPackRespVO">
|
||||
@@ -200,7 +163,7 @@
|
||||
|
||||
</where>
|
||||
|
||||
order by order_date desc
|
||||
order by create_time desc
|
||||
|
||||
</select>
|
||||
|
||||
|
||||
+1
-2
@@ -3,7 +3,6 @@ package com.cf.imes.module.system.controller.admin.datasource.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
|
||||
import java.util.List;
|
||||
@@ -17,7 +16,7 @@ public class DataSourceFiledReqVO {
|
||||
@Schema(description = "主键ID")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "数据源id")
|
||||
@Schema(description = "数据源id-父级ID")
|
||||
private String sourceId;
|
||||
|
||||
@Schema(description = "字段名称")
|
||||
|
||||
+13
-23
@@ -1,12 +1,15 @@
|
||||
package com.cf.imes.module.system.controller.admin.machine.vo;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.cf.imes.module.system.dal.dataobject.machine.CuttingSettingDO;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import com.alibaba.excel.annotation.*;
|
||||
|
||||
@Schema(description = "管理后台 - 机台 Response VO")
|
||||
@Data
|
||||
@@ -16,55 +19,42 @@ import com.alibaba.excel.annotation.*;
|
||||
@AllArgsConstructor
|
||||
public class CuttingRespVO {
|
||||
|
||||
|
||||
@Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "14092")
|
||||
@ExcelProperty("主键")
|
||||
private Long id;
|
||||
|
||||
|
||||
@Schema(description = "名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五")
|
||||
@ExcelProperty("名称")
|
||||
private String name;
|
||||
|
||||
|
||||
@Schema(description = "1机台设备 2CNC设备", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
|
||||
@ExcelProperty("1机台设备 2CNC设备")
|
||||
private Integer machineType;
|
||||
|
||||
|
||||
@Schema(description = "标签id")
|
||||
private Long labelId;
|
||||
|
||||
|
||||
@Schema(description = "品牌ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五")
|
||||
@ExcelProperty("品牌ID")
|
||||
private Long brandId;
|
||||
|
||||
|
||||
@Schema(description = "品牌", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五")
|
||||
private String brand;
|
||||
|
||||
// @Schema(description = "品牌", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五")
|
||||
// @ExcelProperty("品牌")
|
||||
// private String brand;
|
||||
|
||||
|
||||
// @Schema(description = "型号", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五")
|
||||
// @ExcelProperty("型号")
|
||||
// private String model;
|
||||
|
||||
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("创建时间")
|
||||
private LocalDateTime createTime;
|
||||
|
||||
/* @Schema(description = "机台配置")
|
||||
private CuttingSettingDO machineSettingDO;*/
|
||||
|
||||
@Schema(description = "机台配置")
|
||||
private JSONObject machineSettingDO;
|
||||
|
||||
/**
|
||||
* 机台权限相关配置
|
||||
*/
|
||||
@Schema(description ="加工模式 开料机加工模式 默认true,显示开料机工作模式(是否排钻/造型,sc)配置")
|
||||
private Boolean showPriorFacing;
|
||||
@Schema(description = "双工位")
|
||||
private Boolean showDualWorkstation;
|
||||
@Schema(description = "自动贴标")
|
||||
private Boolean showAutoNotePrinter;
|
||||
|
||||
|
||||
}
|
||||
+7
-6
@@ -385,13 +385,14 @@ public class MachineServiceImpl implements MachineService {
|
||||
// 对机台的配置进行解压
|
||||
machineDO.setSetting(JsonUtils.unzipString(machineDO.getSetting()));
|
||||
|
||||
LoginUser loginUser = SecurityFrameworkUtils.getLoginUser();
|
||||
assert loginUser != null;
|
||||
// MachineLimitDO machineLimitDO = machineLimitMapper.selectOne(new LambdaQueryWrapperX<MachineLimitDO>()
|
||||
// .eq(MachineLimitDO::getMachineId, id)
|
||||
// .eq(MachineLimitDO::getOrganId, loginUser.getOrganId())
|
||||
// );
|
||||
Long brandId = machineDO.getBrandId();
|
||||
|
||||
MachineBrandDO machineBrandDO = machineBrandMapper.selectById(brandId);
|
||||
|
||||
CuttingRespVO respVO = MachineConvert.convert(machineDO);
|
||||
|
||||
respVO.setBrand(machineBrandDO.getBrand());
|
||||
|
||||
return respVO;
|
||||
}
|
||||
|
||||
|
||||
@@ -194,6 +194,7 @@ chenfeng:
|
||||
- system_notify_message_readinfo
|
||||
- system_data_source_field
|
||||
- system_machine_brand
|
||||
- system_machine_limit
|
||||
use-data-code: imes_prod #动态数据源标识,后期添加的数据源需要修改此值
|
||||
|
||||
sms-code: # 短信验证码相关的配置项
|
||||
|
||||
Reference in New Issue
Block a user