Merge branch 'main' of ssh://192.168.1.205:9922/cf_devdept2/cf_imes_server

This commit is contained in:
lym
2024-07-23 11:09:21 +08:00
19 changed files with 549 additions and 45 deletions
+14
View File
@@ -0,0 +1,14 @@
sonarqube-check:
image: maven:3.6.3-jdk-11
variables:
SONAR_USER_HOME: "${CI_PROJECT_DIR}/.sonar" # Defines the location of the analysis task cache
GIT_DEPTH: "0" # Tells git to fetch all the branches of the project, required by the analysis task
cache:
key: "${CI_JOB_NAME}"
paths:
- .sonar/cache
script:
- mvn verify sonar:sonar -Dsonar.projectKey=cf_devdept2_cf_imes_server_AZDYSrQIp5bxkoEt_F_Z
allow_failure: true
only:
- master # or the name of your main branch
@@ -80,4 +80,13 @@ public interface ProcessStepMapper extends BaseMapperX<ProcessStepDO> {
.eqIfPresent(ProcessStepDO::getStatus,false));
}
default List<ProcessStepDO> selectProcessIds(List<Long> orderIds, Long organId,Integer number) {
return selectList(new LambdaQueryWrapperX<ProcessStepDO>()
.eqIfPresent(ProcessStepDO::getOrganId, organId)
.inIfPresent(ProcessStepDO::getOrderId, orderIds)
.eqIfPresent(ProcessStepDO::getType,number));
}
}
@@ -4,14 +4,12 @@ package com.cf.imes.module.manage.controller.admin.pack;
import com.cf.imes.framework.common.pojo.CommonResult;
import com.cf.imes.framework.common.pojo.PageParam;
import com.cf.imes.framework.common.pojo.PageResult;
import com.cf.imes.framework.common.util.object.BeanUtils;
import com.cf.imes.framework.excel.core.util.ExcelUtils;
import com.cf.imes.framework.operatelog.core.annotations.OperateLog;
import com.cf.imes.module.manage.controller.admin.pack.prePack.PrePackReqVO;
import com.cf.imes.module.manage.controller.admin.pack.vo.*;
import com.cf.imes.module.manage.controller.admin.query.vo.pack.OrderPackageVO;
import com.cf.imes.module.manage.controller.admin.query.vo.pack.PackageDetailsRespVO;
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleReqVO;
import com.cf.imes.module.manage.dal.dataobject.query.OrderPackageDO;
import com.cf.imes.module.manage.service.pack.PackService;
import com.cf.imes.module.manage.service.query.ProductionStatusService;
import io.swagger.v3.oas.annotations.Operation;
@@ -263,19 +261,30 @@ public class PackController {
/*
@GetMapping("/query")
@Operation(summary = "板材列表下的查询")
@GetMapping("/getPrePackInfo")
@Operation(summary = "查询预打包优化信息")
@Parameter(name = "orderId", description = "生产单Id", required = true)
@PreAuthorize("@ss.hasPermission('manage:pack:query')")
public CommonResult<List<OrderPlateGroupRespVO>> GetOrderPlateGroup(@Valid Long orderId) {
public CommonResult<String> getPrePackInfo (@Valid @RequestParam("orderId") Long orderId) {
return success(packService.GetOrderPlateGroup(orderId));
return success(packService.getPrePackInfo(orderId));
}
*/
@PostMapping("/saveOptimizeInfo")
@Operation(summary = "预打包保存优化信息")
@PreAuthorize("@ss.hasPermission('manage:pack:insert')")
public CommonResult<Boolean> saveOptimizeInfo(@Valid @RequestBody PrePackReqVO reqVO) {
packService.saveOptimizeInfo(reqVO);
return success(true);
}
}
@@ -0,0 +1,30 @@
package com.cf.imes.module.manage.controller.admin.pack.prePack;
import lombok.Builder;
import lombok.Data;
import lombok.ToString;
import java.util.List;
@Data
@ToString(callSuper = true)
@Builder
public class PackPlateList {
// 包裹ID
private Long packId;
// 包裹编号
private String packNo;
// 板材ID
private Long plateId;
// 包裹编号
private String plateNo;
}
@@ -0,0 +1,30 @@
package com.cf.imes.module.manage.controller.admin.pack.prePack;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.ToString;
@Schema(description = "预打包的优化结构")
@Data
@ToString(callSuper = true)
public class PrePackData {
@Schema(description = "点的位置信息")
private Double pointX;
private Double pointY;
@Schema(description = "板材编号")
private String plateNo;
@Schema(description = "板材宽度")
private Long plateWidth;
@Schema(description = "板材高度")
private Long plateHeight;
}
@@ -0,0 +1,25 @@
package com.cf.imes.module.manage.controller.admin.pack.prePack;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.ToString;
import java.util.List;
@Schema(description = "预打包的优化结构")
@Data
@ToString(callSuper = true)
public class PrePackOptimizeInfo {
@Schema(description = "包裹编号")
private String packNo;
@Schema(description = "优化的数据")
private List<PrePackData> optimizeData;
}
@@ -0,0 +1,34 @@
package com.cf.imes.module.manage.controller.admin.pack.prePack;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.ToString;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@Schema(description = "管理后台 - 预打包保存优化信息")
@Data
@ToString(callSuper = true)
public class PrePackReqVO {
@Schema(description = "生产单ID")
private Long orderId;
@Schema(description = "优化信息")
@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)
private Map<String, List<PrePackOptimizeInfo>> optimizeInfo;
@Schema(description = "是否自动打包")
private Boolean isAutoPack;
}
@@ -41,7 +41,7 @@ public class PackRespVO {
private LocalDateTime deliveryDate;
@Schema(description = "订单状态", requiredMode = Schema.RequiredMode.REQUIRED,example = "0")
@Schema(description = "打包状态", requiredMode = Schema.RequiredMode.REQUIRED,example = "0")
private Integer status;
@@ -0,0 +1,31 @@
package com.cf.imes.module.manage.dal.dataobject.pack;
import com.baomidou.mybatisplus.annotation.*;
import lombok.*;
@TableName("order_prepackaged")
@Data
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class OrderPrepackagedDO {
@TableId
// 生产单号-主键
private Long orderId;
// 预打包优化信息
private String result;
// 组织 ID
@TableField(fill = FieldFill.INSERT_UPDATE)
private Long organId;
}
@@ -1,6 +1,7 @@
package com.cf.imes.module.manage.dal.mysql.pack;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.cf.imes.framework.common.enums.OrderPackageStatusEnum;
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
@@ -77,4 +78,13 @@ public interface OrderPackageMapper extends BaseMapperX<OrderPackageDO> {
List<PackRespVO> selectPackPieceCount(@Param("orderIds") List<Long> orderIds, @Param("organId") Long organId);
List<PlateAndPartIdList> selectOrderPack(@Param("orderId") Long orderId,@Param("organId") Long organId);
// 单个修改删除状态
default void updateDelete(Long orderId) {
LambdaUpdateWrapper<OrderPackageDO> wrapper = new LambdaUpdateWrapper<OrderPackageDO>()
.set(OrderPackageDO::getDeleted, true)
.eq(OrderPackageDO::getOrderId, orderId);
update(wrapper);
}
}
@@ -0,0 +1,30 @@
package com.cf.imes.module.manage.dal.mysql.pack;
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
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>()
.eq(OrderPrepackagedDO::getOrganId, organId)
.eqIfPresent(OrderPrepackagedDO::getOrderId, orderId));
}
}
@@ -27,19 +27,15 @@ public interface OrderPlateMapper extends BaseMapperX<OrderPlateDO> {
default List<OrderPlateDO> selectPlateList(PatchingDetailReqVO reqVO) {
return selectList( new LambdaQueryWrapperX<OrderPlateDO>()
.and(wrapper -> {
for (Long plateId : reqVO.getPlateIdList()) {
wrapper.or().eq(OrderPlateDO::getId, plateId);
}
})
.orderByDesc(OrderPlateDO::getId));
}
List<PatchingDetailRespVO> selectOtherPlateList(@Param("plateIdList") List<Long> plateIdList);
List<PlateDetails> selectListByOrderId( @Param("orderId") Long orderId, @Param("organId") Long organId);
default List<OrderPlateDO> selectPlateList(List<String> plateNo, Long organId) {
return selectList( new LambdaQueryWrapperX<OrderPlateDO>()
.eq(OrderPlateDO::getOrganId, organId)
.in(OrderPlateDO::getPlateNo, plateNo));
}
}
@@ -65,4 +65,15 @@ public interface ProcessStepMapper extends BaseMapperX<OrderProcessStepNDO> {
.eqIfPresent(OrderProcessStepNDO::getType,type));
}
default List<OrderProcessStepNDO> selectByOrderIds(List<Long> orderIds, Long organId, Integer number) {
return selectList(new LambdaQueryWrapperX<OrderProcessStepNDO>()
.eqIfPresent(OrderProcessStepNDO::getOrganId, organId)
.inIfPresent(OrderProcessStepNDO::getOrderId, orderIds)
.eqIfPresent(OrderProcessStepNDO::getType,number));
}
}
@@ -91,4 +91,11 @@ public interface OrderItemMapper extends BaseMapperX<OrderItemDO> {
void updateParts(@Param("partsId") Long partsId,@Param("packageId") Long packageId);
default List<OrderItemDO> selectPackPlateList(Long orderId, Long organId) {
return selectList(new LambdaQueryWrapperX<OrderItemDO>()
.eq(OrderItemDO::getOrganId, organId)
.eqIfPresent(OrderItemDO::getOrderId, orderId));
}
}
@@ -2,10 +2,9 @@ package com.cf.imes.module.manage.service.pack;
import com.cf.imes.framework.common.pojo.PageResult;
import com.cf.imes.module.manage.controller.admin.pack.prePack.PrePackReqVO;
import com.cf.imes.module.manage.controller.admin.pack.vo.*;
import com.cf.imes.module.manage.controller.admin.query.vo.pack.OrderPackageVO;
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleReqVO;
import com.cf.imes.module.manage.dal.dataobject.query.OrderPackageDO;
import java.util.List;
@@ -81,4 +80,12 @@ public interface PackService {
OrderPackRespVO addNewPartsPack(OrderPackReqVO reqVO);
// 查询预打包优化信息
String getPrePackInfo(Long orderId);
// 保存优化后的预打包信息
void saveOptimizeInfo(PrePackReqVO reqVO);
}
@@ -8,35 +8,35 @@ import com.cf.imes.framework.common.enums.OrderPackageStatusEnum;
import com.cf.imes.framework.common.enums.OrderPackageTypeEnum;
import com.cf.imes.framework.common.enums.OrderStatusEnum;
import com.cf.imes.framework.common.enums.ProcessProcessingTypeEnum;
import com.cf.imes.framework.common.exception.util.ServiceExceptionUtil;
import com.cf.imes.framework.common.pojo.PageResult;
import com.cf.imes.framework.common.util.json.JsonUtils;
import com.cf.imes.framework.common.util.object.BeanUtils;
import com.cf.imes.module.manage.controller.admin.pack.prePack.PackPlateList;
import com.cf.imes.module.manage.controller.admin.pack.prePack.PrePackData;
import com.cf.imes.module.manage.controller.admin.pack.prePack.PrePackOptimizeInfo;
import com.cf.imes.module.manage.controller.admin.pack.prePack.PrePackReqVO;
import com.cf.imes.module.manage.controller.admin.pack.vo.*;
import com.cf.imes.module.manage.controller.admin.process.vo.OrderProcessStepItemVO;
import com.cf.imes.module.manage.controller.admin.process.vo.ProcessRespVO;
import com.cf.imes.module.manage.controller.admin.process.vo.ProcessStepStatus;
import com.cf.imes.module.manage.controller.admin.query.vo.pack.OrderPackageVO;
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleReqVO;
import com.cf.imes.module.manage.dal.dataobject.pack.OrderBodyDO;
import com.cf.imes.module.manage.dal.dataobject.pack.OrderPrepackagedDO;
import com.cf.imes.module.manage.dal.dataobject.plate.OrderPlateDO;
import com.cf.imes.module.manage.dal.dataobject.process.OrderDO;
import com.cf.imes.module.manage.dal.dataobject.process.OrderProcessStepNDO;
import com.cf.imes.module.manage.dal.dataobject.query.OrderItemDO;
import com.cf.imes.module.manage.dal.dataobject.query.OrderPackageDO;
import com.cf.imes.module.manage.dal.dataobject.query.OrderPartsNDO;
import com.cf.imes.module.manage.dal.mysql.pack.OrderBodyMapper;
import com.cf.imes.module.manage.dal.mysql.pack.OrderPrepackagedMapper;
import com.cf.imes.module.manage.dal.mysql.pack.OrderPackageMapper;
import com.cf.imes.module.manage.dal.mysql.plate.OrderPlateMapper;
import com.cf.imes.module.manage.dal.mysql.process.ProcessStepItemMapper;
import com.cf.imes.module.manage.dal.mysql.process.ProcessStepMapper;
import com.cf.imes.module.manage.dal.mysql.process.ProductionProcessMapper;
import com.cf.imes.module.manage.dal.mysql.query.OrderItemMapper;
import com.cf.imes.module.manage.dal.mysql.query.OrderPartsMapper;
import com.cf.imes.module.manage.dal.mysql.query.ProductionStatusMapper;
import com.cf.imes.module.manage.enums.OrderPackStatusEnums;
import com.cf.imes.module.manage.service.process.ProductionProcessServiceImpl;
import com.cf.imes.module.manage.util.packageNo.PackageNoUtil;
import com.cf.imes.module.manage.util.page.PageHelperUtil;
import com.cf.imes.module.system.enums.ErrorCodeConstants;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.cf.imes.module.manage.util.SnowflakeIdWorker3rd;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
@@ -44,8 +44,7 @@ import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Objects;
import java.util.*;
import java.util.stream.Collectors;
import static com.cf.imes.framework.common.exception.util.ServiceExceptionUtil.exception;
@@ -74,6 +73,9 @@ public class PackServiceImpl implements PackService {
@Resource
private OrderBodyMapper orderBodyMapper;
@Resource
private OrderPlateMapper orderPlateMapper;
@Resource
private ProcessStepMapper processStepMapper;
@@ -86,6 +88,12 @@ public class PackServiceImpl implements PackService {
@Resource
private ProductionProcessMapper productionProcessMapper;
@Resource
private SnowflakeIdWorker3rd idWorker;
@Resource
private OrderPrepackagedMapper orderPrepackagedMapper;
// 打包分页查询
@@ -247,7 +255,7 @@ public class PackServiceImpl implements PackService {
OrderPackageDO orderPackageDO = new OrderPackageDO();
orderPackageDO.setOrderId(reqVO.getOrderId());
orderPackageDO.setType(OrderPackageTypeEnum.PARTS.getType());
orderPackageDO.setPackageNo(PackageNoUtil.randomPageNo());
orderPackageDO.setPackageNo(generatePackageNo());
orderPackageDO.setStatus((OrderPackageStatusEnum.PACKAGED.getStatus()));
orderPackageMapper.insert(orderPackageDO);
// 生产单明细表新增包裹 ID
@@ -348,7 +356,7 @@ public class PackServiceImpl implements PackService {
OrderPackageDO orderPackageDO = new OrderPackageDO();
orderPackageDO.setOrderId(packageVO.getOrderId());
orderPackageDO.setType(OrderPackageTypeEnum.PLATE.getType());
orderPackageDO.setPackageNo(PackageNoUtil.randomPageNo());
orderPackageDO.setPackageNo(generatePackageNo());
orderPackageDO.setStatus((OrderPackageStatusEnum.PACKAGED.getStatus()));
orderPackageDO.setRemark(packageVO.getRemark());
orderPackageMapper.insert(orderPackageDO);
@@ -538,10 +546,10 @@ public class PackServiceImpl implements PackService {
public OrderPackRespVO addNewOtherPack(OtherPackReqVO reqVO) {
// 判断配件名称是否重复
OrderPartsNDO orderPartsNDO = orderPartsMapper.selectOneParts(reqVO.getName(),getUserOrganId());
if (orderPartsNDO != null) {
throw exception(THE_ACCESSORY_NAME_CANNOT_BE_DUPLICATED);
}
// OrderPartsNDO orderPartsNDO = orderPartsMapper.selectOneParts(reqVO.getName(),getUserOrganId());
// if (orderPartsNDO != null) {
// throw exception(THE_ACCESSORY_NAME_CANNOT_BE_DUPLICATED);
// }
// 配件表新增数据
OrderPartsNDO orderParts = BeanUtils.toBean(reqVO, OrderPartsNDO.class);
@@ -552,7 +560,7 @@ public class PackServiceImpl implements PackService {
// 在包裹表中添加包裹编号和生产单号,修改包裹类型未其他配件类型
OrderPackageDO orderPackageDO = new OrderPackageDO();
orderPackageDO.setPackageNo(PackageNoUtil.randomPageNo());
orderPackageDO.setPackageNo(generatePackageNo());
orderPackageDO.setOrderId(reqVO.getOrderId());
orderPackageDO.setType(OrderPackageTypeEnum.OTHER_ACCESSORIES.getType());
@@ -645,7 +653,7 @@ public class PackServiceImpl implements PackService {
orderPackageDO.setOrderId(reqVO.getOrderId());
orderPackageDO.setType(reqVO.getPackageType());
orderPackageDO.setStatus(OrderPackageStatusEnum.PACKAGED.getStatus());
orderPackageDO.setPackageNo(PackageNoUtil.randomPageNo());
orderPackageDO.setPackageNo(generatePackageNo());
orderPackageMapper.insert(orderPackageDO);
orderItemMapper.insertPartsId(orderPackageDO.getId(), reqVO.getAddPartsIdList());
@@ -656,6 +664,208 @@ public class PackServiceImpl implements PackService {
// 查询预打包优化信息
@Override
public String getPrePackInfo(Long orderId) {
OrderPrepackagedDO orderPrepackagedDO = orderPrepackagedMapper.selectOrder(orderId, getUserOrganId());
if(orderPrepackagedDO == null){
throw exception(NO_OPTIMIZATION_INFORMATION_AVAILABLE);
}
return JsonUtils.unzipString(orderPrepackagedDO.getResult());
}
// 保存优化后的预打包信息
@Override
@Transactional(rollbackFor = Exception.class)
public void saveOptimizeInfo(PrePackReqVO reqVO) {
// 自动打包,包裹表新增
if(reqVO.getIsAutoPack()){
ArrayList<OrderPackageDO> orderPackageDOS = new ArrayList<>();
List<PackPlateList> packPlateNoLists = new ArrayList<>();
reqVO.getOptimizeInfo().values().parallelStream().forEach(value -> {
value.forEach(prePackOptimizeInfo -> {
String packageNo = generatePackageNo();
List<String> list = prePackOptimizeInfo.getOptimizeData().stream().map(PrePackData::getPlateNo).toList();
list.forEach(a -> packPlateNoLists.add(PackPlateList.builder()
.packNo(packageNo)
.plateNo(a)
.build()));
orderPackageDOS.add(OrderPackageDO.builder()
.packageNo(packageNo)
.type(OrderPackageTypeEnum.PLATE.getType())
.orderId(reqVO.getOrderId())
.status(OrderPackageStatusEnum.PACKAGED.getStatus())
.build());
prePackOptimizeInfo.setPackNo(packageNo);
});
});
List<OrderPackageDO> packageDOS = orderPackageMapper.selectPackStatus(reqVO.getOrderId(), getUserOrganId());
if(!packageDOS.isEmpty()){
orderPackageMapper.updateDelete(reqVO.getOrderId());
}
orderPackageMapper.insertBatch(orderPackageDOS);
orderPackageDOS.forEach(a->
packPlateNoLists.stream().filter(f -> Objects.equals(f.getPackNo(), a.getPackageNo()))
.forEach(f -> f.setPackId(a.getId())));
List<OrderItemDO> orderItemDOS = orderItemMapper.selectPackPlateList(reqVO.getOrderId(), getUserOrganId());
List<String> plateNo = packPlateNoLists.stream().map(PackPlateList::getPlateNo).toList();
List<OrderPlateDO> orderPlateDOS = orderPlateMapper.selectPlateList(plateNo, getUserOrganId());
orderPlateDOS.forEach(a->
packPlateNoLists.stream().filter(f->Objects.equals(f.getPlateNo(), a.getPlateNo()))
.forEach(f -> f.setPlateId(a.getId())));
packPlateNoLists.forEach(a->
orderItemDOS.stream().filter(f->Objects.equals(f.getPlateId(), a.getPlateId()))
.forEach(f->f.setPackageId(a.getPackId())));
orderItemMapper.updateBatch(orderItemDOS);
}
String optimizeInfo = JsonUtils.toJsonString(reqVO.getOptimizeInfo());
OrderPrepackagedDO orderPackOptimizeDO = orderPrepackagedMapper.selectOrder(reqVO.getOrderId(), getUserOrganId());
if(orderPackOptimizeDO ==null){
OrderPrepackagedDO prepackagedDO = new OrderPrepackagedDO();
prepackagedDO.setOrderId(reqVO.getOrderId());
prepackagedDO.setResult(JsonUtils.zipString(optimizeInfo));
orderPrepackagedMapper.insert(prepackagedDO);
return;
}
orderPackOptimizeDO.setResult(JsonUtils.zipString(optimizeInfo));
orderPrepackagedMapper.updateById(orderPackOptimizeDO);
}
//
// @Override
// @Transactional(rollbackFor = Exception.class)
// public void saveOptimizeInfo(PrePackReqVO reqVO) {
// if (reqVO.getIsAutoPack()) {
// List<OrderPackageDO> orderPackageDOS = new ArrayList<>();
// List<PackPlateList> packPlateNoLists = new ArrayList<>();
//
// reqVO.getOptimizeInfo().values().parallelStream().forEach(value -> {
// value.forEach(prePackOptimizeInfo -> {
// String packageNo = generatePackageNo();
// List<String> list = prePackOptimizeInfo.getOptimizeData().stream().map(m -> m.getPlateNo()).collect(Collectors.toList());
//
// list.forEach(a -> packPlateNoLists.add(PackPlateList.builder()
// .packNo(packageNo)
// .plateNo(a)
// .build()));
//
// orderPackageDOS.add(OrderPackageDO.builder()
// .packageNo(packageNo)
// .type(OrderPackageTypeEnum.PLATE.getType())
// .orderId(reqVO.getOrderId())
// .status(OrderPackageStatusEnum.PACKAGED.getStatus())
// .build());
//
// prePackOptimizeInfo.setPackNo(packageNo);
// });
// });
//
// List<OrderPackageDO> packageDOS = orderPackageMapper.selectPackStatus(reqVO.getOrderId(), getUserOrganId());
//
// if (!packageDOS.isEmpty()) {
// orderPackageMapper.updateDelete(reqVO.getOrderId());
// }
//
// orderPackageMapper.insertBatch(orderPackageDOS);
//
// Map<String, Long> packageNoToIdMap = orderPackageDOS.stream().collect(Collectors.toMap(OrderPackageDO::getPackageNo, OrderPackageDO::getId));
//
// packPlateNoLists.forEach(f -> f.setPackId(packageNoToIdMap.get(f.getPackNo())));
//
// List<OrderItemDO> orderItemDOS = orderItemMapper.selectPackPlateList(reqVO.getOrderId(), getUserOrganId());
//
// List<String> plateNo = packPlateNoLists.stream().map(PackPlateList::getPlateNo).collect(Collectors.toList());
//
// List<OrderPlateDO> orderPlateDOS = orderPlateMapper.selectPlateList(plateNo, getUserOrganId());
//
// Map<String, Long> plateNoToIdMap = orderPlateDOS.stream().collect(Collectors.toMap(OrderPlateDO::getPlateNo, OrderPlateDO::getId));
//
// packPlateNoLists.forEach(f -> f.setPlateId(plateNoToIdMap.get(f.getPlateNo())));
//
// Map<Long, Long> plateIdToPackIdMap = packPlateNoLists.stream().collect(Collectors.toMap(PackPlateList::getPlateId, PackPlateList::getPackId));
//
// orderItemDOS.forEach(f -> f.setPackageId(plateIdToPackIdMap.get(f.getPlateId())));
//
// orderItemMapper.updateBatch(orderItemDOS);
// }
//
// String optimizeInfo = JsonUtils.toJsonString(reqVO.getOptimizeInfo());
//
// OrderPrepackagedDO orderPackOptimizeDO = orderPrepackagedMapper.selectOrder(reqVO.getOrderId(), getUserOrganId());
//
// if (orderPackOptimizeDO == null) {
// OrderPrepackagedDO newOrderPackOptimizeDO = new OrderPrepackagedDO();
// newOrderPackOptimizeDO.setOrderId(reqVO.getOrderId());
// newOrderPackOptimizeDO.setResult(JsonUtils.zipString(optimizeInfo));
// orderPrepackagedMapper.insert(newOrderPackOptimizeDO);
// return;
// }
//
// orderPackOptimizeDO.setResult(JsonUtils.zipString(optimizeInfo));
// orderPrepackagedMapper.updateById(orderPackOptimizeDO);
// }
// 生成包裹编号
private String generatePackageNo(){
long packNo = idWorker.nextId();
long obtainingTime = SnowflakeIdWorker3rd.obtainingTime();
return (obtainingTime) + Long.toString(packNo).substring(2);
}
// 类型转换
private OrderPackRespVO typeConversion(OrderPackageDO orderPackageDO){
return OrderPackRespVO.builder()
+47
View File
@@ -0,0 +1,47 @@
variables:
# sonner scanner 安装目录
SCANNER_HOME : "/usr/local/sonar-scanner-4.6.2.2472-linux"
# 扫描代码路径
SCAN_DIR : "src"
# 制品目录
ARTIFACT_PATH : 'target/*.jar'
# maven 仓库地址
MAVEN_REPO: /root/.m2/repository
stages:
- compile
编译:
stage: compile
tags:
- test
# interruptible 当新管道在同一分支上启动时,可以取消正在运行的作业。
interruptible: true
# 是否允许失败,允许的话如果当前阶段运行失败还会继续执行下一个阶段
allow_failure: false
# 运行脚本
script:
- java -version
- mvn -version
# maven 编译
- mvn -Dmaven.repo.local=$MAVEN_REPO clean -U package -Dfile.encoding=UTF-8 -DskipTests=true
# 代码扫描
- "$SCANNER_HOME/bin/sonar-scanner -Dsonar.projectKey=${CI_PROJECT_NAME} \
-Dsonar.projectName=${CI_PROJECT_NAME} \
-Dsonar.projectVersion=${CI_COMMIT_REF_NAME} \
-Dsonar.ws.timeout=30 \
-Dsonar.projectDescription=${CI_PROJECT_TITLE} \
-Dsonar.links.homepage=${CI_PROJECT_URL} \
-Dsonar.sources=${SCAN_DIR} \
-Dsonar.sourceEncoding=UTF-8 \
-Dsonar.java.binaries=target/classes \
-Dsonar.java.test.binaries=target/test-classes \
-Dsonar.java.surefire.report=target/surefire-reports \
-Dsonar.branch.name=${CI_COMMIT_REF_NAME}"
- ls -lh target/
# Maven编译,所以会有Jar包产物,这里定义产物的过期时间
artifacts:
name: $PROJECT
expire_in: 1 days
paths:
- target/*.jar
+2
View File
@@ -40,6 +40,7 @@
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.dependency.plugin.version>3.2.0</maven.dependency.plugin.version>
<maven.assembly.plugin.version>3.2.0</maven.assembly.plugin.version>
<sonar.qualitygate.wait>true</sonar.qualitygate.wait>
</properties>
<dependencyManagement>
@@ -172,3 +173,4 @@
</profile>
</profiles>
</project>
+2
View File
@@ -0,0 +1,2 @@
sonar.projectKey=cf_devdept2_cf_imes_server_AZDYSrQIp5bxkoEt_F_Z
sonar.qualitygate.wait=true