Merge remote-tracking branch 'origin/main'

This commit is contained in:
gaoqr
2024-09-13 14:20:19 +08:00
20 changed files with 544 additions and 410 deletions
@@ -0,0 +1,49 @@
package com.cf.imes.framework.common.util.Assert;
import com.cf.imes.framework.common.exception.ErrorCode;
import org.springframework.util.ObjectUtils;
import java.util.List;
import static com.cf.imes.framework.common.exception.util.ServiceExceptionUtil.exception;
/**
* 断言工具类:用于代码抛出异常,提升代码的简洁度
*
* @author 晨丰科技
*/
public class AssertUtils {
/*
* 判断是否为空,可以不用if语句,简化代码
* */
public static void notEmpty(List<?> array, ErrorCode errorCode) {
if (ObjectUtils.isEmpty(array)) {
throw exception(errorCode);
}
}
public static void empty(List<?> array, ErrorCode errorCode) {
if (!ObjectUtils.isEmpty(array)) {
throw exception(errorCode);
}
}
public static void notEmpty(Object object, ErrorCode errorCode) {
if (object == null) {
throw exception(errorCode);
}
}
public static void notEmpty(List<?> array ,Object object, ErrorCode errorCode) {
if (object == null || ObjectUtils.isEmpty(array)) {
throw exception(errorCode);
}
}
}
@@ -16,6 +16,7 @@ import org.apache.ibatis.annotations.Param;
import java.util.Collection; import java.util.Collection;
import java.util.List; import java.util.List;
import java.util.Set;
import static com.cf.imes.framework.security.core.util.SecurityFrameworkUtils.getUserOrganId; import static com.cf.imes.framework.security.core.util.SecurityFrameworkUtils.getUserOrganId;
@@ -195,4 +196,7 @@ public interface GoodsMapper extends BaseMapperX<GoodsDO> {
List<OrderRoomBodyList> selectNoPlanRoomBody(@Param("orderIds") List<Long> orderIds, @Param("organId") Long organId); List<OrderRoomBodyList> selectNoPlanRoomBody(@Param("orderIds") List<Long> orderIds, @Param("organId") Long organId);
IPage<OrderRespVOCopy> selectOrderPlate(@Param("page") IPage page,@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);
} }
@@ -7,10 +7,15 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator; import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO; import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO;
import com.cf.imes.framework.common.enums.OrderPackageStatusEnum;
import com.cf.imes.framework.common.pojo.PageParam; import com.cf.imes.framework.common.pojo.PageParam;
import com.cf.imes.framework.common.pojo.PageResult;
import com.cf.imes.framework.common.util.Assert.AssertUtils;
import com.cf.imes.framework.common.util.object.BeanUtils;
import com.cf.imes.framework.mybatis.core.generator.SnowFlakeGenerator; import com.cf.imes.framework.mybatis.core.generator.SnowFlakeGenerator;
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX; import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.cf.imes.framework.organ.core.context.OrganContextHolder; import com.cf.imes.framework.organ.core.context.OrganContextHolder;
import com.cf.imes.framework.security.core.util.SecurityFrameworkUtils;
import com.cf.imes.module.executor.controller.admin.order.vo.order.*; import com.cf.imes.module.executor.controller.admin.order.vo.order.*;
import com.cf.imes.module.executor.controller.admin.order.vo.product.OrderBodyRespVO; import com.cf.imes.module.executor.controller.admin.order.vo.product.OrderBodyRespVO;
import com.cf.imes.module.executor.controller.admin.order.vo.product.OrderRoomBodyRespVO; import com.cf.imes.module.executor.controller.admin.order.vo.product.OrderRoomBodyRespVO;
@@ -19,6 +24,7 @@ import com.cf.imes.module.executor.controller.admin.orderParts.vo.OrderPartsResp
import com.cf.imes.module.executor.controller.admin.plan.vo.OrderRespVOCopy; import com.cf.imes.module.executor.controller.admin.plan.vo.OrderRespVOCopy;
import com.cf.imes.module.executor.controller.admin.plate.vo.PlateRespVO; import com.cf.imes.module.executor.controller.admin.plate.vo.PlateRespVO;
import com.cf.imes.module.executor.dal.dataobject.goods.GoodsDO; import com.cf.imes.module.executor.dal.dataobject.goods.GoodsDO;
import com.cf.imes.module.executor.dal.dataobject.order.OrderDO;
import com.cf.imes.module.executor.dal.dataobject.orderBody.OrderBodyDO; import com.cf.imes.module.executor.dal.dataobject.orderBody.OrderBodyDO;
import com.cf.imes.module.executor.dal.dataobject.orderGroup.OrderGroupDO; import com.cf.imes.module.executor.dal.dataobject.orderGroup.OrderGroupDO;
import com.cf.imes.module.executor.dal.dataobject.orderItem.OrderItemDO; import com.cf.imes.module.executor.dal.dataobject.orderItem.OrderItemDO;
@@ -29,6 +35,7 @@ import com.cf.imes.module.executor.dal.dataobject.plate.PlateDO;
import com.cf.imes.module.executor.dal.dataobject.plate.PlateGoodDO; import com.cf.imes.module.executor.dal.dataobject.plate.PlateGoodDO;
import com.cf.imes.module.executor.dal.dataobject.rawgoods.RawGoodsDO; import com.cf.imes.module.executor.dal.dataobject.rawgoods.RawGoodsDO;
import com.cf.imes.module.executor.dal.mysql.goods.GoodsMapper; import com.cf.imes.module.executor.dal.mysql.goods.GoodsMapper;
import com.cf.imes.module.executor.dal.mysql.order.OrderMapper;
import com.cf.imes.module.executor.dal.mysql.orderBody.OrderBodyMapper; import com.cf.imes.module.executor.dal.mysql.orderBody.OrderBodyMapper;
import com.cf.imes.module.executor.dal.mysql.orderGroup.OrderGroupMapper; import com.cf.imes.module.executor.dal.mysql.orderGroup.OrderGroupMapper;
import com.cf.imes.module.executor.dal.mysql.orderItem.OrderItemMapper; import com.cf.imes.module.executor.dal.mysql.orderItem.OrderItemMapper;
@@ -39,7 +46,7 @@ import com.cf.imes.module.executor.dal.mysql.plate.PlateMapper;
import com.cf.imes.module.executor.dal.mysql.rawgoods.RawGoodsMapper; import com.cf.imes.module.executor.dal.mysql.rawgoods.RawGoodsMapper;
import com.cf.imes.module.executor.enums.OrderDeletedEnum; import com.cf.imes.module.executor.enums.OrderDeletedEnum;
import com.cf.imes.module.executor.enums.OrderStatusEnum; import com.cf.imes.module.executor.enums.OrderStatusEnum;
import com.cf.imes.framework.common.enums.OrderPackageStatusEnum; import com.cf.imes.module.executor.service.plan.PlanService;
import com.cf.imes.module.executor.util.deviseData.structure.PlateDetail; import com.cf.imes.module.executor.util.deviseData.structure.PlateDetail;
import com.cf.imes.module.executor.util.fileConversion.admin.api.webcad.ApiDataAchieve; import com.cf.imes.module.executor.util.fileConversion.admin.api.webcad.ApiDataAchieve;
import com.cf.imes.module.executor.util.fileConversion.admin.api.webcad.ApiTypeRealize; import com.cf.imes.module.executor.util.fileConversion.admin.api.webcad.ApiTypeRealize;
@@ -47,22 +54,14 @@ import com.cf.imes.module.executor.util.fileConversion.admin.files.excel.ExcelTy
import com.cf.imes.module.executor.util.fileConversion.admin.files.xml.VO.OrderXmlVO; import com.cf.imes.module.executor.util.fileConversion.admin.files.xml.VO.OrderXmlVO;
import com.cf.imes.module.executor.util.fileConversion.admin.files.xml.XmlTypeRealize; import com.cf.imes.module.executor.util.fileConversion.admin.files.xml.XmlTypeRealize;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import com.cf.imes.module.executor.dal.dataobject.order.OrderDO; import javax.annotation.Resource;
import com.cf.imes.framework.common.pojo.PageResult; import javax.servlet.http.HttpServletResponse;
import com.cf.imes.framework.common.util.object.BeanUtils;
import com.cf.imes.module.executor.dal.mysql.order.OrderMapper;
import java.io.*; import java.io.*;
import java.net.URLEncoder; import java.net.URLEncoder;
import java.time.*; import java.time.LocalDate;
import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatter;
import java.time.temporal.ChronoUnit; import java.time.temporal.ChronoUnit;
import java.util.*; import java.util.*;
@@ -74,8 +73,6 @@ import static com.cf.imes.framework.common.exception.util.ServiceExceptionUtil.e
import static com.cf.imes.framework.security.core.util.SecurityFrameworkUtils.getUserOrganId; import static com.cf.imes.framework.security.core.util.SecurityFrameworkUtils.getUserOrganId;
import static com.cf.imes.module.executor.enums.ErrorCodeConstants.*; import static com.cf.imes.module.executor.enums.ErrorCodeConstants.*;
import com.cf.imes.framework.security.core.util.SecurityFrameworkUtils;
/** /**
* 生产单表 order_{N} Service 实现类 * 生产单表 order_{N} Service 实现类
* *
@@ -139,9 +136,14 @@ public class OrderServiceImpl implements OrderService {
public static final String ORDER_PARTS_REMARK_MODEL = "imes_order_parts_remark_model"; public static final String ORDER_PARTS_REMARK_MODEL = "imes_order_parts_remark_model";
String ORDER_REMAIN_PLATE_MODEL = "imes_order_optimize_plate_model";
@Resource @Resource
private XmlTypeRealize xmlTypeRealize; private XmlTypeRealize xmlTypeRealize;
@Resource
private PlanService planService;
@Override @Override
public void updateOrder(OrderSaveReqVO updateReqVO) { public void updateOrder(OrderSaveReqVO updateReqVO) {
// 校验存在, 生产单未删除 // 校验存在, 生产单未删除
@@ -240,7 +242,8 @@ public class OrderServiceImpl implements OrderService {
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void updateBodyDeletedByOrderId(Long orderId, Set<Long> roomIds, Long bodyId, Integer status) { // 要删除传1,还原传0 public void updateBodyDeletedByOrderId(Long orderId, Set<Long> roomIds, Long bodyId, Integer status) { // 要删除传1,还原传0
validateOrderStatus(orderId, getUserOrganId(), OrderDeletedEnum.NOT_DELETED.getStatus()); // 判断生产单的状态和生产单柜体对应的板擦是否已开料
List<Long> planIds = validateOrderStatus(orderId, roomIds, bodyId, getUserOrganId(), OrderDeletedEnum.NOT_DELETED.getStatus());
List<Long> bodyIds = new ArrayList<>(); List<Long> bodyIds = new ArrayList<>();
Integer index = status == 1 ? 0 : 1; Integer index = status == 1 ? 0 : 1;
@@ -292,7 +295,23 @@ public class OrderServiceImpl implements OrderService {
}); });
if (goodsIdDeleted.size() > 0) { if (goodsIdDeleted.size() > 0) {
goodsMapper.updateDeletedById(goodsIdDeleted, status, getUserOrganId()); goodsMapper.updateDeletedById(goodsIdDeleted, status, getUserOrganId());
}
if(planIds != null) {
// 判断删除的柜体对应的板材是否和排单板材一样
List<GoodsDO> goodsDOS = goodsMapper.selectPlanGoodsListByPlanIdList(planIds, getUserOrganId());
// 一样,同时删除排单的信息
if(goodsDOS.isEmpty()){
planService.deletePlan(planIds);
}else {
// 只要有排单,不管删除的柜体的板材数和排单数一样,都要删除排单对应的优化数据(不用这种写法进行删除时,有时会报错,原因目前还没找到)
planService.deleteByPlanId(planIds, ORDER_REMAIN_PLATE_MODEL);
}
} }
List<Long> partsList = orderPartsMapper.selectPartsIdListByBodyId(bodyIds, getUserOrganId(), orderId); // 配件 List<Long> partsList = orderPartsMapper.selectPartsIdListByBodyId(bodyIds, getUserOrganId(), orderId); // 配件
@@ -804,17 +823,28 @@ public class OrderServiceImpl implements OrderService {
return true; return true;
} }
// 判断生产单状态是否符合(开料之前状态判断) // 判断生产单状态是否符合(如果已开料,不允许删除)
private void validateOrderStatus(Long orderId, Long organId, Integer status) { private List<Long> validateOrderStatus(Long orderId,Set<Long> roomIds, Long bodyId, Long organId, Integer status) {
// 校验存在 // 校验存在
OrderDO orderDO = orderMapper.selectOrderOne(orderId, organId); OrderDO orderDO = orderMapper.selectOrderOne(orderId, organId);
if (orderDO == null) if (orderDO == null)
throw exception(ORDER_NOT_EXISTS); throw exception(ORDER_NOT_EXISTS);
// 状态排除
if (!Objects.equals(orderDO.getStatus(), OrderStatusEnum.NEW_ORDER.getStatus()) && // 判断小板是否已开料,已开料不允许删除
!Objects.equals(orderDO.getStatus(), OrderStatusEnum.SORTED.getStatus()) && List<Long> planIds = goodsMapper.selectPlanOrderList(orderId, roomIds, bodyId, organId);
!Objects.equals(orderDO.getStatus(), OrderStatusEnum.EMPTY.getStatus())) if(!planIds.isEmpty()) {
throw exception(ORDER_NOT_CANCEL);
List<PlanDO> planDOS = planMapper.selectPlanStatus(planIds, organId);
AssertUtils.empty(planDOS, ORDER_PLAN_ERROR);
// planService.deleteByPlanId(planIds, ORDER_REMAIN_PLATE_MODEL);
return planIds;
}
return null;
} }
} }
@@ -82,4 +82,6 @@ public interface PlanService {
List<NotPlanOrderPlateRespVO> getOrderPlateList(OrderPageReqVOCopy pageReqVO); List<NotPlanOrderPlateRespVO> getOrderPlateList(OrderPageReqVOCopy pageReqVO);
List<NotPlanGoodsRespVO> getNotOptimizeGoodsList(NotPlanGoodsReqVO reqVO); List<NotPlanGoodsRespVO> getNotOptimizeGoodsList(NotPlanGoodsReqVO reqVO);
void deleteByPlanId(List<Long> planIds, String index);
} }
@@ -1055,6 +1055,7 @@ public class PlanServiceImpl implements PlanService {
} }
@Override
public void deleteByPlanId(List<Long> planIds, String index) { public void deleteByPlanId(List<Long> planIds, String index) {
List<FieldValue> fieldValues = planIds.stream().map(FieldValue::of).toList(); List<FieldValue> fieldValues = planIds.stream().map(FieldValue::of).toList();
@@ -41,7 +41,7 @@
<update id="updateDeletedById"> <update id="updateDeletedById">
UPDATE order_goods UPDATE order_goods
SET deleted = #{deleted} SET deleted = #{deleted},plan_id = 0
WHERE id IN WHERE id IN
<foreach item="id" collection="ids" open="(" separator="," close=")"> <foreach item="id" collection="ids" open="(" separator="," close=")">
#{id} #{id}
@@ -383,4 +383,33 @@
</select> </select>
<select id="selectPlanOrderList" resultType="java.lang.Long">
select distinct og.plan_id
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
left join order_item oi on op.organ_id = oi.organ_id and op.order_id = oi.order_id and op.id = oi.plate_id
<where> og.organ_id = #{organId}
and og.deleted = false
and og.order_id = #{orderId}
<if test="bodyId !=null">
and oi.body_id = #{bodyId}
</if>
<if test="roomIds !=null">
and oi.room_id in
<foreach item="roomIds" collection="roomIds" open="(" separator="," close=")">
#{roomIds}
</foreach>
</if>
</where>
</select>
</mapper> </mapper>
@@ -186,10 +186,9 @@ public class PackController {
// todo 是否使用和使用在什么地方带确认 // @GetMapping("/print")
@GetMapping("/print") // @Operation(summary = "包裹订单打印")
@Operation(summary = "包裹订单打印") // @PreAuthorize("@ss.hasPermission('manage:pack:query')")
@PreAuthorize("@ss.hasPermission('manage:pack:query')")
public CommonResult<PrintOrderPackRespVO> printOrderPack (@Valid PrintOrderPackReqVO reqVO) { public CommonResult<PrintOrderPackRespVO> printOrderPack (@Valid PrintOrderPackReqVO reqVO) {
return success(packService.printOrderPack(reqVO)); return success(packService.printOrderPack(reqVO));
@@ -1,12 +1,15 @@
package com.cf.imes.module.manage.dal.mysql.plate; package com.cf.imes.module.manage.dal.mysql.plate;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX; import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX; 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.PackRespVO;
import com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO;
import com.cf.imes.module.manage.controller.admin.patching.vo.PatchingDetailRespVO; import com.cf.imes.module.manage.controller.admin.patching.vo.PatchingDetailRespVO;
import com.cf.imes.module.manage.controller.admin.patching.vo.PatchingPlatePageReqVO; import com.cf.imes.module.manage.controller.admin.patching.vo.PatchingPlatePageReqVO;
import com.cf.imes.module.manage.controller.admin.process.vo.PlateDetails; import com.cf.imes.module.manage.controller.admin.process.vo.PlateDetails;
import com.cf.imes.module.manage.controller.admin.query.vo.pack.PackageDetailsRespVO;
import com.cf.imes.module.manage.dal.dataobject.plate.OrderPlateDO; import com.cf.imes.module.manage.dal.dataobject.plate.OrderPlateDO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
@@ -48,4 +51,10 @@ public interface OrderPlateMapper extends BaseMapperX<OrderPlateDO> {
} }
List<PackRespVO> selectPlateNum(@Param("orderIds") List<Long> orderIds,@Param("organId") Long organId); List<PackRespVO> selectPlateNum(@Param("orderIds") List<Long> orderIds,@Param("organId") Long organId);
List<PlateDetailsRespVO> selectOrderNoPackPlateList(@Param("orderId") Long orderId,@Param("organId") Long organId);
List<PlateDetailsRespVO> selectOrderPlateList(@Param("orderIds") List<Long> orderIds, @Param("organId") Long organId);
IPage<PackageDetailsRespVO> selectPackPlateList(@Param("page") IPage page, @Param("packageId") Long packageId, @Param("organId") Long organId);
} }
@@ -6,7 +6,6 @@ import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO; import com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO;
import com.cf.imes.module.manage.controller.admin.process.vo.PlateDetails; import com.cf.imes.module.manage.controller.admin.process.vo.PlateDetails;
import com.cf.imes.module.manage.controller.admin.process.vo.ProcessPlateReqVO; import com.cf.imes.module.manage.controller.admin.process.vo.ProcessPlateReqVO;
import com.cf.imes.module.manage.controller.admin.query.vo.pack.PackageDetailsRespVO;
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleVO; import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleVO;
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderPlateRespVO; import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderPlateRespVO;
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.PlatePageVO; import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.PlatePageVO;
@@ -20,8 +19,6 @@ import java.util.List;
public interface OrderItemMapper extends BaseMapperX<OrderItemDO> { public interface OrderItemMapper extends BaseMapperX<OrderItemDO> {
List<PackageDetailsRespVO> selectByPackageId( @Param("packageId") Long packageId, @Param("organId") Long organId);
List<OrderModuleVO> selectCombinationName(Long orderNo); List<OrderModuleVO> selectCombinationName(Long orderNo);
@@ -29,9 +26,6 @@ public interface OrderItemMapper extends BaseMapperX<OrderItemDO> {
List<OrderPlateRespVO> selectPlateList(PlatePageVO pageReqVO); List<OrderPlateRespVO> selectPlateList(PlatePageVO pageReqVO);
List<PlateDetailsRespVO> selectOrderPlateList(@Param("orderNo") Long orderNo,@Param("organId") Long organId);
List<PlateDetailsRespVO> selectPrintPlateList(@Param("orderNo")Long orderNo,@Param("packageNo") Long packageNo, @Param("organId") Long organId); List<PlateDetailsRespVO> selectPrintPlateList(@Param("orderNo")Long orderNo,@Param("packageNo") Long packageNo, @Param("organId") Long organId);
@@ -64,7 +58,6 @@ public interface OrderItemMapper extends BaseMapperX<OrderItemDO> {
List<PlateDetails> selectPlateListByBodyIds( @Param("collect") List<Long> collect,@Param("orderId") Long orderId,@Param("userOrganId") Long userOrganId); List<PlateDetails> selectPlateListByBodyIds( @Param("collect") List<Long> collect,@Param("orderId") Long orderId,@Param("userOrganId") Long userOrganId);
List<PlateDetailsRespVO> selectOrdersPlateList(@Param("orderIds") List<Long> orderIds, @Param("userOrganId") Long userOrganId);
default List<OrderItemDO> selectPackList(Long packId,Long orderId ,Long organId) { default List<OrderItemDO> selectPackList(Long packId,Long orderId ,Long organId) {
@@ -8,6 +8,7 @@ import com.cf.imes.framework.common.enums.OrderPackageStatusEnum;
import com.cf.imes.framework.common.enums.OrderPackageTypeEnum; import com.cf.imes.framework.common.enums.OrderPackageTypeEnum;
import com.cf.imes.framework.common.enums.UserSettingTypeEnum; import com.cf.imes.framework.common.enums.UserSettingTypeEnum;
import com.cf.imes.framework.common.pojo.PageResult; import com.cf.imes.framework.common.pojo.PageResult;
import com.cf.imes.framework.common.util.Assert.AssertUtils;
import com.cf.imes.framework.common.util.json.JsonUtils; import com.cf.imes.framework.common.util.json.JsonUtils;
import com.cf.imes.framework.common.util.object.BeanUtils; import com.cf.imes.framework.common.util.object.BeanUtils;
import com.cf.imes.framework.mybatis.core.query.QueryWrapperX; import com.cf.imes.framework.mybatis.core.query.QueryWrapperX;
@@ -32,6 +33,7 @@ import com.cf.imes.module.manage.dal.mysql.query.OrderPartsMapper;
import com.cf.imes.module.manage.util.SnowflakeIdWorker3rd; import com.cf.imes.module.manage.util.SnowflakeIdWorker3rd;
import com.cf.imes.module.system.api.setting.SettingApi; import com.cf.imes.module.system.api.setting.SettingApi;
import com.cf.imes.module.system.api.setting.dto.PackageConfigDTO; import com.cf.imes.module.system.api.setting.dto.PackageConfigDTO;
import com.cf.imes.module.system.enums.ErrorCodeConstants;
import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
@@ -106,7 +108,7 @@ public class PackServiceImpl implements PackService {
OrderDO order = ordersMapper.selectById(pageReqVO.getOrderId()); OrderDO order = ordersMapper.selectById(pageReqVO.getOrderId());
// 判断是否为空 // 判断是否为空
// AssertUtils.notEmpty(order,ORDER_DATE_ERROR); AssertUtils.notEmpty(order,ORDER_DATE_ERROR);
List<PackRespVO> packRespVOList = pageReqVO.getIsUp() ? List<PackRespVO> packRespVOList = pageReqVO.getIsUp() ?
ordersMapper.selectOrderIds(order.getCreateTime().toString(), getUserOrganId(), order.getId()) : ordersMapper.selectOrderIds(order.getCreateTime().toString(), getUserOrganId(), order.getId()) :
@@ -145,7 +147,7 @@ public class PackServiceImpl implements PackService {
// 查询板材的总量 // 查询板材的总量
List<PackRespVO> packRespVOList = orderPlateMapper.selectPlateNum(orderIds, getUserOrganId()); List<PackRespVO> packRespVOList = orderPlateMapper.selectPlateNum(orderIds, getUserOrganId());
// AssertUtils.notEmpty(packRespVOList, ErrorCodeConstants.THE_CURRENT_BOARD_IS_NOT_SELECTED); AssertUtils.notEmpty(packRespVOList, ErrorCodeConstants.ORDER_PLATE_ERROR);
for (PackRespVO packRespVO : packRespVOList) { for (PackRespVO packRespVO : packRespVOList) {
packRespVO.setTotalPieceCount((long) packRespVO.getPlateId().size()); packRespVO.setTotalPieceCount((long) packRespVO.getPlateId().size());
@@ -194,7 +196,7 @@ public class PackServiceImpl implements PackService {
public List<PlateDetailsRespVO> getOrderPlateList(Long orderId) { public List<PlateDetailsRespVO> getOrderPlateList(Long orderId) {
// 查询订单对应的板件信息 // 查询订单对应的板件信息
List<PlateDetailsRespVO> plateDetailsRespVOS = orderItemMapper.selectOrderPlateList(orderId, getUserOrganId()); List<PlateDetailsRespVO> plateDetailsRespVOS = orderPlateMapper.selectOrderNoPackPlateList(orderId, getUserOrganId());
if(plateDetailsRespVOS.isEmpty()){ if(plateDetailsRespVOS.isEmpty()){
return null; return null;
@@ -224,7 +226,7 @@ public class PackServiceImpl implements PackService {
public List<PlateDetailsRespVO> getOrdersPlateList(List<Long> orderIds) { public List<PlateDetailsRespVO> getOrdersPlateList(List<Long> orderIds) {
List<PlateDetailsRespVO> plateDetailsRespVOS = orderItemMapper.selectOrdersPlateList(orderIds, getUserOrganId()); List<PlateDetailsRespVO> plateDetailsRespVOS = orderPlateMapper.selectOrderPlateList(orderIds,getUserOrganId());
if (plateDetailsRespVOS.isEmpty()) { if (plateDetailsRespVOS.isEmpty()) {
@@ -237,7 +239,6 @@ public class PackServiceImpl implements PackService {
orderPackageDOS = orderPackageMapper.selectBatchIds(packageIds); orderPackageDOS = orderPackageMapper.selectBatchIds(packageIds);
} }
// AssertUtils.notEmpty(orderPackageDOS,ORDER_PLATE_ERROR);
for (PlateDetailsRespVO plateDetailsRespVO : plateDetailsRespVOS) { for (PlateDetailsRespVO plateDetailsRespVO : plateDetailsRespVOS) {
String name = ""; String name = "";
@@ -273,13 +274,6 @@ public class PackServiceImpl implements PackService {
// AssertUtils.notEmpty(orderPackageVOS,orderDO,ORDER_PLATE_ERROR); // AssertUtils.notEmpty(orderPackageVOS,orderDO,ORDER_PLATE_ERROR);
// for (OrderPackageVO orderPackageVO : orderPackageVOS) {
// orderPackageVO.setCustomOrderNo(orderDO.getCustomOrderNo());
// orderPackageVO.setCustomer(orderDO.getCustomer());
// orderPackageVO.setAddress(orderDO.getAddress());
// orderPackageVO.setDealer(orderDO.getDealer());
// orderPackageVO.setOrderRemark(orderDO.getRemark());
// }
return orderPackageVOS.stream().peek(m -> { return orderPackageVOS.stream().peek(m -> {
@@ -3,7 +3,6 @@ package com.cf.imes.module.manage.service.query;
import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO; import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO;
import com.cf.imes.framework.common.enums.OrderPackageTypeEnum; import com.cf.imes.framework.common.enums.OrderPackageTypeEnum;
import com.cf.imes.framework.common.pojo.PageResult; import com.cf.imes.framework.common.pojo.PageResult;
@@ -18,6 +17,7 @@ import com.cf.imes.module.manage.controller.admin.query.vo.salary.PriceRateReqVO
import com.cf.imes.module.manage.dal.dataobject.process.OrderDO; 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.process.OrderProcessStepNDO;
import com.cf.imes.module.manage.dal.mysql.pack.OrderPackageMapper; 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.OrdersMapper; import com.cf.imes.module.manage.dal.mysql.process.OrdersMapper;
import com.cf.imes.module.manage.dal.mysql.process.ProcessStepItemMapper; 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.ProcessStepMapper;
@@ -61,6 +61,8 @@ public class ProductionStatusServiceImpl implements ProductionStatusService {
@Resource @Resource
private OrderPartsMapper orderPartsMapper; private OrderPartsMapper orderPartsMapper;
@Resource
private OrderPlateMapper orderPlateMapper;
// 生产状态分页查询 // 生产状态分页查询
@@ -197,10 +199,13 @@ public class ProductionStatusServiceImpl implements ProductionStatusService {
// 查看板材包裹 // 查看板材包裹
List<PackageDetailsRespVO> packageDetailsRespVOS = orderItemMapper.selectByPackageId(reqVO.getPackageId(),getUserOrganId()); IPage<PackageDetailsRespVO> packageDetailsRespVOS = orderPlateMapper.selectPackPlateList(page,reqVO.getPackageId(),getUserOrganId());
if (CollectionUtil.isEmpty(packageDetailsRespVOS.getRecords())) {
return new PageResult<>();
}
for (PackageDetailsRespVO plateDetailsRespVO : packageDetailsRespVOS) { for (PackageDetailsRespVO plateDetailsRespVO : packageDetailsRespVOS.getRecords()) {
String name = ""; String name = "";
if(!plateDetailsRespVO.getProcessGroupNameList().isEmpty()) { if(!plateDetailsRespVO.getProcessGroupNameList().isEmpty()) {
@@ -214,15 +219,10 @@ public class ProductionStatusServiceImpl implements ProductionStatusService {
plateDetailsRespVO.setProcessGroup(name); plateDetailsRespVO.setProcessGroup(name);
} }
Page<PackageDetailsRespVO> packageDetailsRespVOPage = page.setRecords(packageDetailsRespVOS); // Page<PackageDetailsRespVO> packageDetailsRespVOPage = page.setRecords(packageDetailsRespVOS);
if (CollectionUtil.isEmpty(packageDetailsRespVOPage.getRecords())) { return new PageResult<>(packageDetailsRespVOS.getRecords(), packageDetailsRespVOS.getTotal());
return new PageResult<>();
}
return new PageResult<>(packageDetailsRespVOPage.getRecords(), packageDetailsRespVOPage.getTotal());
} }
@@ -165,7 +165,7 @@
o.remark as orderRemark o.remark as orderRemark
from orders o from orders o
left join order_package op on o.id = op.order_id and o.organ_id = op.organ_id left join order_package op on o.organ_id = op.organ_id and o.id = op.order_id
${ew.customSqlSegment} ${ew.customSqlSegment}
@@ -206,7 +206,7 @@
from order_package from order_package
where organ_id = #{organId} and order_id = #{orderId} and deleted = false where organ_id = #{organId} and deleted = false and order_id = #{orderId}
</select> </select>
@@ -205,5 +205,174 @@
</select> </select>
<resultMap id="PlateDetailsMap" type="com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO">
<result property="packageId" column="packageId"/>
<result property="roomName" column="roomName"/>
<result property="cabinetName" column="bodyName"/>
<result property="plateId" column="plateId"/>
<result property="plateNo" column="plateNo"/>
<result property="orderId" column="orderId"/>
<result property="plateName" column="plateName"/>
<result property="material" column="plateMaterial"/>
<result property="color" column="plateColor"/>
<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"/>
<collection property="processGroupNameList" javaType="java.util.List" ofType="com.cf.imes.module.manage.controller.admin.pack.vo.GroupNameList">
<result property="name" column="name"/>
</collection>
</resultMap>
<select id="selectOrderNoPackPlateList"
parameterType="java.lang.Long"
resultMap="PlateDetailsMap" >
select distinct
og.name as name,
ob.room_name as roomName,
ob.name as bodyName,
op.id as plateId,
op.plate_no as plateNo,
op.name as plateName,
ogs.material as plateMaterial,
ogs.color as plateColor,
op.order_id as orderId,
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
left join order_goods ogs on op.organ_id = ogs.organ_id and op.order_id = ogs.order_id and op.goods_id = ogs.id
left join order_item oi on op.organ_id = oi.organ_id and op.order_id = oi.order_id and op.id = oi.plate_id
left join order_group og on oi.organ_id = og.organ_id and oi.order_id = og.order_id and oi.group_id = og.id
left join order_body ob on oi.organ_id = ob.organ_id and oi.order_id = ob.order_id and oi.body_id = ob.id
where
op.organ_id = #{organId} and op.deleted = false and op.order_id = #{orderId} and oi.package_id = 0 ;
</select>
<select id="selectOrderPlateList"
parameterType="java.lang.Long"
resultMap="PlateDetailsMap">
select distinct
oi.package_id as packageId,
og.name as name,
ob.room_name as roomName,
ob.name as bodyName,
op.id as plateId,
op.plate_no as plateNo,
op.name as plateName,
ogs.material as plateMaterial,
ogs.color as plateColor,
op.order_id as orderId,
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
left join order_goods ogs on op.organ_id = ogs.organ_id and op.order_id = ogs.order_id and op.goods_id = ogs.id
left join order_item oi on op.organ_id = oi.organ_id and op.order_id = oi.order_id and op.id = oi.plate_id
left join order_group og on oi.organ_id = og.organ_id and oi.order_id = og.order_id and oi.group_id = og.id
left join order_body ob on oi.organ_id = ob.organ_id and oi.order_id = ob.order_id and oi.body_id = ob.id
where
op.organ_id = #{organId}
and op.deleted = false
and op.order_id in
<foreach item="orderIds" collection="orderIds" open="(" separator="," close=")">
#{orderIds}
</foreach>
</select>
<resultMap id="orderItemMap" type="com.cf.imes.module.manage.controller.admin.query.vo.pack.PackageDetailsRespVO">
<result property="orderId" column="orderId"/>
<result property="roomName" column="roomName"/>
<result property="cabinetName" column="bodyName"/>
<result property="plateId" column="plateId"/>
<result property="plateNo" column="plateNo"/>
<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"/>
<collection property="processGroupNameList" javaType="java.util.List" ofType="com.cf.imes.module.manage.controller.admin.pack.vo.GroupNameList">
<result property="name" column="name"/>
</collection>
</resultMap>
<select id="selectPackPlateList"
parameterType="java.lang.Long"
resultMap="orderItemMap">
select distinct
op.order_id as orderId,
og.name as name,
ob.room_name as roomName,
ob.name as bodyName,
op.plate_no as plateNo,
op.id as plateId,
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
left join order_goods ogs on op.organ_id = ogs.organ_id and op.order_id = ogs.order_id and op.goods_id = ogs.id
left join order_item oi on op.organ_id = oi.organ_id and op.order_id = oi.order_id and op.id = oi.plate_id
left join order_group og on oi.organ_id = og.organ_id and oi.order_id = og.order_id and oi.group_id = og.id
left join order_body ob on oi.organ_id = ob.organ_id and oi.order_id = ob.order_id and oi.body_id = ob.id
where
oi.organ_id = #{organId} and oi.package_id =#{packageId} and op.deleted = false
</select>
</mapper> </mapper>
@@ -3,67 +3,6 @@
<mapper namespace="com.cf.imes.module.manage.dal.mysql.query.OrderItemMapper"> <mapper namespace="com.cf.imes.module.manage.dal.mysql.query.OrderItemMapper">
<resultMap id="orderItemMap" type="com.cf.imes.module.manage.controller.admin.query.vo.pack.PackageDetailsRespVO">
<result property="orderId" column="orderId"/>
<result property="roomName" column="roomName"/>
<result property="cabinetName" column="bodyName"/>
<result property="plateId" column="plateId"/>
<result property="plateNo" column="plateNo"/>
<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"/>
<collection property="processGroupNameList" javaType="java.util.List" ofType="com.cf.imes.module.manage.controller.admin.pack.vo.GroupNameList">
<result property="name" column="name"/>
</collection>
</resultMap>
<select id="selectByPackageId"
parameterType="java.lang.Long"
resultMap="orderItemMap">
select distinct
op.order_id as orderId,
og.name as name,
ob.room_name as roomName,
ob.name as bodyName,
op.plate_no as plateNo,
op.id as plateId,
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_item oi
left join order_plate op on oi.plate_id = op.id and oi.organ_id = op.organ_id
join order_goods ogs on op.goods_id = ogs.id and op.organ_id = ogs.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 ob.organ_id = og.organ_id
where
oi.organ_id = #{organId} and oi.package_id =#{packageId} and op.deleted = false
</select>
<!-- 查看板材信息的组合名称--> <!-- 查看板材信息的组合名称-->
@@ -142,41 +81,6 @@
</collection> </collection>
</resultMap> </resultMap>
<select id="selectOrderPlateList"
parameterType="java.lang.Long"
resultMap="PlateDetailsMap" >
select distinct
og.name as name,
ob.room_name as roomName,
ob.name as bodyName,
op.id as plateId,
op.plate_no as plateNo,
op.name as plateName,
ogs.material as plateMaterial,
ogs.color as plateColor,
op.order_id as orderId,
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_item oi
join order_plate op on oi.plate_id = op.id and oi.organ_id = op.organ_id
join order_goods ogs on op.goods_id = ogs.id and op.organ_id = ogs.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 ob.organ_id = og.organ_id
where
oi.order_id = #{orderNo} and oi.organ_id = #{organId} and oi.package_id = 0 and op.deleted = false;
</select>
@@ -412,49 +316,5 @@
</select> </select>
<select id="selectOrdersPlateList"
parameterType="java.lang.Long"
resultMap="PlateDetailsMap">
select distinct
oi.package_id as packageId,
og.name as name,
ob.room_name as roomName,
ob.name as bodyName,
op.id as plateId,
op.plate_no as plateNo,
op.name as plateName,
ogs.material as plateMaterial,
ogs.color as plateColor,
op.order_id as orderId,
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_item oi
join order_plate op on oi.plate_id = op.id and oi.organ_id = op.organ_id
join order_goods ogs on op.goods_id = ogs.id and op.organ_id = ogs.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 ob.organ_id = og.organ_id
where
oi.organ_id = #{userOrganId} and
oi.order_id in
<foreach item="orderIds" collection="orderIds" open="(" separator="," close=")">
#{orderIds}
</foreach>
and op.deleted = false;
</select>
</mapper> </mapper>
@@ -34,6 +34,13 @@ public class CuttingTemplateSaveReqVO {
private Long brandId; private Long brandId;
@Schema(description = "机台模板是否公用")
private Boolean isDefault;
@Schema(description = "机台模板是否可用")
private Boolean isEnabled;
// @Schema(description = "机台的品牌", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") // @Schema(description = "机台的品牌", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
// @NotNull(message = "品牌名称不能为空") // @NotNull(message = "品牌名称不能为空")
// private String brand; // private String brand;
@@ -29,6 +29,8 @@ public class MachineTemplateConvert {
.name(reqVO.getName()) .name(reqVO.getName())
// .brand(reqVO.getBrand()) // .brand(reqVO.getBrand())
.brandId(reqVO.getNowBrandId()) .brandId(reqVO.getNowBrandId())
.isDefault(reqVO.getIsDefault())
.isEnabled(reqVO.getIsEnabled())
.setting(reqVO.getSetting().toJSONString()) .setting(reqVO.getSetting().toJSONString())
.build(); .build();
} }
@@ -29,10 +29,10 @@ public class MachineTemplateDO extends BaseDO {
*/ */
private Integer machineType; private Integer machineType;
// /** /**
// * 是否默认模板 * 是否公用
// */ */
// private Boolean isDefault; private Boolean isDefault;
/** /**
* 机台模板配置 * 机台模板配置
@@ -44,6 +44,10 @@ public class MachineTemplateDO extends BaseDO {
*/ */
private Long brandId; private Long brandId;
/**
* 是否可用
*/
private Boolean isEnabled;
/** /**
@@ -100,8 +100,8 @@ public class MachineServiceImpl implements MachineService {
assert loginUser != null; assert loginUser != null;
// 校验机台名称是否重复 // 校验机台名称是否重复
MachineDO machine = machineMapper.selectMachineName(createReqVO.getName(),createReqVO.getMachineType(), getUserOrganId()); MachineDO machine = machineMapper.selectMachineName(createReqVO.getName(), createReqVO.getMachineType(), getUserOrganId());
if(machine != null){ if (machine != null) {
throw exception(MACHINE_NAME_ERROR); throw exception(MACHINE_NAME_ERROR);
} }
@@ -117,7 +117,7 @@ public class MachineServiceImpl implements MachineService {
// 插入 // 插入
machineDO = MachineConvert.convert(createReqVO); machineDO = MachineConvert.convert(createReqVO);
String updatedJsonString = handleMachineSpecificConfiguration(machineDO, machineDO.getMachineType(),copyMachineDO.getSetting(),true); String updatedJsonString = handleMachineSpecificConfiguration(machineDO, machineDO.getMachineType(), copyMachineDO.getSetting(), true);
machineDO.setSetting(updatedJsonString == null ? copyMachineDO.getSetting() : zipString(updatedJsonString)); machineDO.setSetting(updatedJsonString == null ? copyMachineDO.getSetting() : zipString(updatedJsonString));
@@ -140,7 +140,7 @@ public class MachineServiceImpl implements MachineService {
machineDO = MachineConvert.convert(createReqVO); machineDO = MachineConvert.convert(createReqVO);
// 处理不同机台类型的配置 // 处理不同机台类型的配置
String updatedJsonString = handleMachineSpecificConfiguration(machineDO, machineTemplateDO.getMachineType(), machineTemplateDO.getSetting(),false); String updatedJsonString = handleMachineSpecificConfiguration(machineDO, machineTemplateDO.getMachineType(), machineTemplateDO.getSetting(), false);
machineDO.setSetting(updatedJsonString == null ? machineTemplateDO.getSetting() : zipString(updatedJsonString)); machineDO.setSetting(updatedJsonString == null ? machineTemplateDO.getSetting() : zipString(updatedJsonString));
machineMapper.insert(machineDO); machineMapper.insert(machineDO);
@@ -151,16 +151,15 @@ public class MachineServiceImpl implements MachineService {
} }
// 判断机台的模板是否是钻孔机或封边机 // 判断机台的模板是否是钻孔机或封边机
private String handleMachineSpecificConfiguration(MachineDO machineDO, Integer machineType,String machineSetting,Boolean isMachine) throws JsonProcessingException { private String handleMachineSpecificConfiguration(MachineDO machineDO, Integer machineType, String machineSetting, Boolean isMachine) throws JsonProcessingException {
String updatedJsonString = null; String updatedJsonString = null;
if (MachineTypeEnum.CUTTING.getType().equals(machineType)) { if (MachineTypeEnum.CUTTING.getType().equals(machineType)) {
updatedJsonString = handleCuttingMachineConfiguration(machineDO, machineSetting,isMachine); updatedJsonString = handleCuttingMachineConfiguration(machineDO, machineSetting, isMachine);
} else if (MachineTypeEnum.BANDING.getType().equals(machineType)) { } else if (MachineTypeEnum.BANDING.getType().equals(machineType)) {
updatedJsonString = handleBandingMachineConfiguration(machineDO, machineSetting,isMachine); updatedJsonString = handleBandingMachineConfiguration(machineDO, machineSetting, isMachine);
} }
return updatedJsonString; return updatedJsonString;
@@ -168,7 +167,7 @@ public class MachineServiceImpl implements MachineService {
// 创建贴标机 // 创建贴标机
private String handleCuttingMachineConfiguration(MachineDO machineDO, String machineSetting,Boolean isMachine) throws JsonProcessingException { private String handleCuttingMachineConfiguration(MachineDO machineDO, String machineSetting, Boolean isMachine) throws JsonProcessingException {
String unzipMachineSetting = unzipString(machineSetting); String unzipMachineSetting = unzipString(machineSetting);
@@ -176,8 +175,8 @@ public class MachineServiceImpl implements MachineService {
JsonNode advancedConfigsRef = cuttingSetting.get("advancedConfigsRef"); JsonNode advancedConfigsRef = cuttingSetting.get("advancedConfigsRef");
if(advancedConfigsRef.get("isAutoLabelEnabled") != null) {
boolean isAutoLabelEnabled = advancedConfigsRef.get("isAutoLabelEnabled").asBoolean(); boolean isAutoLabelEnabled = advancedConfigsRef.get("isAutoLabelEnabled") != null && advancedConfigsRef.get("isAutoLabelEnabled").asBoolean();
if (isAutoLabelEnabled && advancedConfigsRef.has("autoLabelModel")) { if (isAutoLabelEnabled && advancedConfigsRef.has("autoLabelModel")) {
@@ -243,13 +242,13 @@ public class MachineServiceImpl implements MachineService {
} }
} }
}
return null; return null;
} }
// 创建钻孔机 // 创建钻孔机
private String handleBandingMachineConfiguration(MachineDO machineDO, String machineSetting,Boolean isMachine) throws JsonProcessingException { private String handleBandingMachineConfiguration(MachineDO machineDO, String machineSetting, Boolean isMachine) throws JsonProcessingException {
String unzipMachineSetting = unzipString(machineSetting); String unzipMachineSetting = unzipString(machineSetting);
@@ -257,9 +256,8 @@ public class MachineServiceImpl implements MachineService {
JsonNode cuttingModuleRef = drillSetting.get("cuttingModuleRef"); JsonNode cuttingModuleRef = drillSetting.get("cuttingModuleRef");
if(cuttingModuleRef.get("isDrillEnabled") != null) {
boolean isDrillEnabled = cuttingModuleRef.get("isDrillEnabled").asBoolean(); boolean isDrillEnabled = cuttingModuleRef.get("isDrillEnabled") != null && cuttingModuleRef.get("isDrillEnabled").asBoolean();
if (isDrillEnabled && cuttingModuleRef.has("drillModel")) { if (isDrillEnabled && cuttingModuleRef.has("drillModel")) {
Integer drillModelId = cuttingModuleRef.get("drillModel").asInt(); Integer drillModelId = cuttingModuleRef.get("drillModel").asInt();
@@ -324,27 +322,23 @@ public class MachineServiceImpl implements MachineService {
return mapper.writerWithDefaultPrettyPrinter().writeValueAsString(map); return mapper.writerWithDefaultPrettyPrinter().writeValueAsString(map);
} }
} }
}
return null; return null;
} }
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void updateCutting(CuttingSaveReqVO updateReqVO) { public void updateCutting(CuttingSaveReqVO updateReqVO) {
// 校验存在和判断机台名称是否重复 // 校验存在和判断机台名称是否重复
validateExists(updateReqVO.getId(),updateReqVO.getName(),updateReqVO.getMachineType(),updateReqVO.getId()); validateExists(updateReqVO.getId(), updateReqVO.getName(), updateReqVO.getMachineType(), updateReqVO.getId());
// 更新 // 更新
MachineDO updateObj = MachineConvert.convert(updateReqVO); MachineDO updateObj = MachineConvert.convert(updateReqVO);
//MachineDO updateObj = BeanUtils.toBean(updateReqVO, MachineDO.class); //MachineDO updateObj = BeanUtils.toBean(updateReqVO, MachineDO.class);
// 判断传入的机台配置是否存在,如果存在,压缩数据后更新 // 判断传入的机台配置是否存在,如果存在,压缩数据后更新
if(!updateReqVO.getMachineSettingDO().isEmpty()){ if (!updateReqVO.getMachineSettingDO().isEmpty()) {
updateObj.setSetting(JsonUtils.zipString(updateObj.getSetting())); updateObj.setSetting(JsonUtils.zipString(updateObj.getSetting()));
} }
@@ -359,7 +353,7 @@ public class MachineServiceImpl implements MachineService {
throw exception(MACHINE_NOT_EXISTS); throw exception(MACHINE_NOT_EXISTS);
} }
// 校验当前机台是否使用 // 校验当前机台是否使用
if(orderPlanApi.getOrderPlan(id).getData()){ if (orderPlanApi.getOrderPlan(id).getData()) {
throw exception(THE_CURRENT_MACHINE_IS_ALREADY_IN_USE); throw exception(THE_CURRENT_MACHINE_IS_ALREADY_IN_USE);
} }
machineMapper.deleteById(id); machineMapper.deleteById(id);
@@ -395,7 +389,6 @@ public class MachineServiceImpl implements MachineService {
} }
@Override @Override
public DrillRespVO getDrill(Long id) { public DrillRespVO getDrill(Long id) {
MachineDO machineDO = machineMapper.selectById(id); MachineDO machineDO = machineMapper.selectById(id);
@@ -423,7 +416,7 @@ public class MachineServiceImpl implements MachineService {
List<Long> brandIds = machineDOS.stream().map(MachineDO::getBrandId).toList(); List<Long> brandIds = machineDOS.stream().map(MachineDO::getBrandId).toList();
List<MachineBrandDO> machineBrandDOS = new ArrayList<>(); List<MachineBrandDO> machineBrandDOS = new ArrayList<>();
if(!brandIds.isEmpty()) { if (!brandIds.isEmpty()) {
machineBrandDOS = machineBrandMapper.selectBatchIds(brandIds); machineBrandDOS = machineBrandMapper.selectBatchIds(brandIds);
} }
@@ -483,7 +476,6 @@ public class MachineServiceImpl implements MachineService {
.build(); .build();
machineLimitMapper.updateById(machineLimitDO); machineLimitMapper.updateById(machineLimitDO);
return Boolean.TRUE; return Boolean.TRUE;
@@ -524,14 +516,14 @@ public class MachineServiceImpl implements MachineService {
List<MachineDO> machineDOS = machineMapper.selectMachineList(type, getUserOrganId()); List<MachineDO> machineDOS = machineMapper.selectMachineList(type, getUserOrganId());
return BeanUtils.toBean(machineDOS,MachineSimpleRespVO.class); return BeanUtils.toBean(machineDOS, MachineSimpleRespVO.class);
} }
@Override @Override
@OrganIgnore @OrganIgnore
public List<MachineSimpleRespVO> simpleList(Long organId,Long type) { public List<MachineSimpleRespVO> simpleList(Long organId, Long type) {
List<MachineDO> machineDOS = machineMapper.selectList(new LambdaQueryWrapperX<MachineDO>() List<MachineDO> machineDOS = machineMapper.selectList(new LambdaQueryWrapperX<MachineDO>()
.eqIfPresent(MachineDO::getOrganId, organId) .eqIfPresent(MachineDO::getOrganId, organId)
.eqIfPresent(MachineDO::getMachineType, type) .eqIfPresent(MachineDO::getMachineType, type)
@@ -551,7 +543,6 @@ public class MachineServiceImpl implements MachineService {
} }
@Override @Override
public Map<Integer, List<MachineBrandModelRespVO>> getTemplateAuth(MachinePageReqVO pageParam) { public Map<Integer, List<MachineBrandModelRespVO>> getTemplateAuth(MachinePageReqVO pageParam) {
@@ -561,53 +552,51 @@ public class MachineServiceImpl implements MachineService {
return machineBrandModelRespVOS.stream().collect(Collectors.groupingBy(MachineBrandModelRespVO::getMachineType)); return machineBrandModelRespVOS.stream().collect(Collectors.groupingBy(MachineBrandModelRespVO::getMachineType));
} }
// 校验机台是否存在和机台名称是否重复 // 校验机台是否存在和机台名称是否重复
private void validateExists(Long id,String name,Integer machineType,Long machineId) { private void validateExists(Long id, String name, Integer machineType, Long machineId) {
MachineDO machineDO = machineMapper.selectById(id); MachineDO machineDO = machineMapper.selectById(id);
if (machineDO == null) { if (machineDO == null) {
throw exception(MACHINE_NOT_EXISTS); throw exception(MACHINE_NOT_EXISTS);
} }
MachineDO machine = machineMapper.selectMachine(name, machineType,machineId, getUserOrganId()); MachineDO machine = machineMapper.selectMachine(name, machineType, machineId, getUserOrganId());
if(machine != null){ if (machine != null) {
throw exception(MACHINE_NAME_ERROR); throw exception(MACHINE_NAME_ERROR);
} }
} }
// 校验当前组织当前类型的机台是否达到最大创建数量 // 校验当前组织当前类型的机台是否达到最大创建数量
private void validateMachineNum(Integer machineType, Long organId){ private void validateMachineNum(Integer machineType, Long organId) {
Integer machineNum = machineMapper.selectByOrganId(machineType,organId).size()+1; Integer machineNum = machineMapper.selectByOrganId(machineType, organId).size() + 1;
MachineLimitDO machineLimitDO = machineLimitMapper.selectById(organId); MachineLimitDO machineLimitDO = machineLimitMapper.selectById(organId);
Integer authMachineNum = 0; Integer authMachineNum = 0;
switch (machineType){ switch (machineType) {
case 1 : case 1:
authMachineNum = machineLimitDO.getCutLimit(); authMachineNum = machineLimitDO.getCutLimit();
break; break;
case 2 : case 2:
authMachineNum = machineLimitDO.getDrillLimit(); authMachineNum = machineLimitDO.getDrillLimit();
break; break;
case 3 : case 3:
authMachineNum = machineLimitDO.getSawLimit(); authMachineNum = machineLimitDO.getSawLimit();
break; break;
case 4 : case 4:
authMachineNum = machineLimitDO.getLabelLimit(); authMachineNum = machineLimitDO.getLabelLimit();
break; break;
case 5 : case 5:
authMachineNum = machineLimitDO.getSealedgeLimit(); authMachineNum = machineLimitDO.getSealedgeLimit();
break; break;
} }
if(machineNum >= authMachineNum){ if (machineNum >= authMachineNum) {
throw exception(MACHINE_NUM_ERROR); throw exception(MACHINE_NUM_ERROR);
} }
@@ -73,27 +73,26 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
private OrganMapper organMapper; private OrganMapper organMapper;
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Long createCuttingTemplate(CuttingTemplateSaveReqVO reqVO) { public Long createCuttingTemplate(CuttingTemplateSaveReqVO reqVO) {
// todo 测试时的判断,测试完毕后删除 // todo 测试时的判断,测试完毕后删除
if(reqVO.getNowBrandId() == null){ if (reqVO.getNowBrandId() == null) {
throw exception(THE_CURRENT_BRAND); throw exception(THE_CURRENT_BRAND);
} }
validateMachineTemplate(reqVO.getName(),reqVO.getMachineType()); validateMachineTemplate(reqVO.getName(), reqVO.getMachineType());
MachineTemplateDO templateDO = MachineTemplateConvert.convert(reqVO); MachineTemplateDO templateDO = MachineTemplateConvert.convert(reqVO);
if(reqVO.getMachineId()!=null) { if (reqVO.getMachineId() != null) {
MachineTemplateDO machineTemplateDO = machineTemplateMapper.selectMachine(reqVO.getBrandId(), reqVO.getMachineId()); MachineTemplateDO machineTemplateDO = machineTemplateMapper.selectMachine(reqVO.getBrandId(), reqVO.getMachineId());
String updatedJsonString = handleMachineType(templateDO.getName(),machineTemplateDO.getMachineType(),machineTemplateDO.getSetting()); String updatedJsonString = handleMachineType(templateDO.getName(), machineTemplateDO.getMachineType(), machineTemplateDO.getSetting());
templateDO.setSetting(updatedJsonString == null ? machineTemplateDO.getSetting() : JsonUtils.zipString(updatedJsonString)); templateDO.setSetting(updatedJsonString == null ? machineTemplateDO.getSetting() : JsonUtils.zipString(updatedJsonString));
@@ -119,17 +118,17 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
// todo 测试时的判断,测试完毕后删除 // todo 测试时的判断,测试完毕后删除
MachineBrandDO machineBrandDO = machineBrandMapper.selectById(reqVO.getNowBrandId()); MachineBrandDO machineBrandDO = machineBrandMapper.selectById(reqVO.getNowBrandId());
if(machineBrandDO == null){ if (machineBrandDO == null) {
throw exception(THE_CURRENT_BRAND); throw exception(THE_CURRENT_BRAND);
} }
// 校验机台模板是否存在和名称是否重复 // 校验机台模板是否存在和名称是否重复
validateMachineTemplateExists(reqVO.getName(),reqVO.getMachineType(),reqVO.getId()); validateMachineTemplateExists(reqVO.getName(), reqVO.getMachineType(), reqVO.getId());
MachineTemplateDO templateDO = MachineTemplateConvert.convert(reqVO); MachineTemplateDO templateDO = MachineTemplateConvert.convert(reqVO);
if(!reqVO.getSetting().isEmpty()){ if (!reqVO.getSetting().isEmpty()) {
templateDO.setSetting(JsonUtils.zipString(templateDO.getSetting())); templateDO.setSetting(JsonUtils.zipString(templateDO.getSetting()));
} }
machineTemplateMapper.updateById(templateDO); machineTemplateMapper.updateById(templateDO);
@@ -187,7 +186,7 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
// 将机台的配置进行解压 // 将机台的配置进行解压
.stream() .stream()
// todo 目前需要写上,等数据清一波后,应该不需要了 // todo 目前需要写上,等数据清一波后,应该不需要了
.filter(m -> !Objects.equals(m.getBrandId(),null)) .filter(m -> !Objects.equals(m.getBrandId(), null))
.map(m -> m.setSetting(unzipString(m.getSetting()))).toList(); .map(m -> m.setSetting(unzipString(m.getSetting()))).toList();
for (MachineTemplateRespVO machineTemplateRespVO : machineTemplateRespVOS) { for (MachineTemplateRespVO machineTemplateRespVO : machineTemplateRespVOS) {
@@ -229,11 +228,11 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
List<Long> organIds = organTemplateRespPageRecords.stream().map(OrganTemplateResp::getOrganId).toList(); List<Long> organIds = organTemplateRespPageRecords.stream().map(OrganTemplateResp::getOrganId).toList();
if(organIds.isEmpty()){ if (organIds.isEmpty()) {
return null; return null;
} }
List<MachineTemplateBrandReqVO> machineTemplateBrandReqVOS = machineTemplateLimitMapper.selectMachineList(organIds,page.getTemplateName()); List<MachineTemplateBrandReqVO> machineTemplateBrandReqVOS = machineTemplateLimitMapper.selectMachineList(organIds, page.getTemplateName());
// 查询品牌名称 // 查询品牌名称
@@ -243,14 +242,14 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
for (MachineTemplateBrandReqVO machineTemplateBrandReqVO : machineTemplateBrandReqVOS) { for (MachineTemplateBrandReqVO machineTemplateBrandReqVO : machineTemplateBrandReqVOS) {
machineTemplateBrandReqVO.setBrand(machineBrandDOS.stream() machineTemplateBrandReqVO.setBrand(machineBrandDOS.stream()
.filter(f->f.getId().equals(machineTemplateBrandReqVO.getId())) .filter(f -> f.getId().equals(machineTemplateBrandReqVO.getId()))
.map(MachineBrandDO::getBrand) .map(MachineBrandDO::getBrand)
.findAny().orElse(null)); .findAny().orElse(null));
} }
for (OrganTemplateResp organTemplateRespPageRecord : organTemplateRespPageRecords) { for (OrganTemplateResp organTemplateRespPageRecord : organTemplateRespPageRecords) {
organTemplateRespPageRecord.setMachineTemplateBrandReqVOS(machineTemplateBrandReqVOS.stream() organTemplateRespPageRecord.setMachineTemplateBrandReqVOS(machineTemplateBrandReqVOS.stream()
.filter(f->f.getOrganId().equals(organTemplateRespPageRecord.getOrganId())) .filter(f -> f.getOrganId().equals(organTemplateRespPageRecord.getOrganId()))
.toList()); .toList());
} }
@@ -269,7 +268,7 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
MachineBrandDO machineBrandDO = machineBrandMapper.selectBrand(reqVO.getBrand(), reqVO.getMachineType()); MachineBrandDO machineBrandDO = machineBrandMapper.selectBrand(reqVO.getBrand(), reqVO.getMachineType());
if(machineBrandDO != null){ if (machineBrandDO != null) {
throw exception(THE_CURRENT_BRAND_OF_THE_MACHINE_EXISTS); throw exception(THE_CURRENT_BRAND_OF_THE_MACHINE_EXISTS);
} }
@@ -307,7 +306,7 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
List<Long> machineIds; List<Long> machineIds;
if(organId != null){ if (organId != null) {
List<MachineTemplateLimitDO> machineTemplateLimitDOS = machineTemplateLimitMapper.selectListByOrganId(organId); List<MachineTemplateLimitDO> machineTemplateLimitDOS = machineTemplateLimitMapper.selectListByOrganId(organId);
@@ -333,7 +332,7 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
List<MachineTemplateDO> machineTemplateDoS = machineTemplateMapper List<MachineTemplateDO> machineTemplateDoS = machineTemplateMapper
.selectList( new MPJLambdaWrapperX<MachineTemplateDO>() .selectList(new MPJLambdaWrapperX<MachineTemplateDO>()
.in(MachineTemplateDO::getBrandId, brandIds) .in(MachineTemplateDO::getBrandId, brandIds)
.select(MachineTemplateDO::getId, MachineTemplateDO::getBrandId, MachineTemplateDO::getName)); .select(MachineTemplateDO::getId, MachineTemplateDO::getBrandId, MachineTemplateDO::getName));
@@ -341,7 +340,7 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
List<TemplateAutoResp.MachineTemplate> machineTemplates = BeanUtils.toBean(machineTemplateDoS, TemplateAutoResp.MachineTemplate.class); List<TemplateAutoResp.MachineTemplate> machineTemplates = BeanUtils.toBean(machineTemplateDoS, TemplateAutoResp.MachineTemplate.class);
if(!machineIds.isEmpty()) { if (!machineIds.isEmpty()) {
for (TemplateAutoResp.MachineBrand machineBrand : templateAutoResp.getMachineBrand()) { for (TemplateAutoResp.MachineBrand machineBrand : templateAutoResp.getMachineBrand()) {
@@ -377,7 +376,6 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
} }
@Override @Override
public Boolean updateTemplateAuth(MachineOrgAuthReq vo) { public Boolean updateTemplateAuth(MachineOrgAuthReq vo) {
@@ -476,19 +474,14 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
} }
// 判断机台模板的类型 // 判断机台模板的类型
private String handleMachineType(String machineName,Integer machineType,String machineSetting) { private String handleMachineType(String machineName, Integer machineType, String machineSetting) {
String updatedJsonString = null; String updatedJsonString = null;
if(machineType.equals(MachineTypeEnum.CUTTING.getType())) { if (machineType.equals(MachineTypeEnum.CUTTING.getType())) {
updatedJsonString = handleCuttingMachine(machineName, machineSetting); updatedJsonString = handleCuttingMachine(machineName, machineSetting);
} else if(machineType.equals(MachineTypeEnum.BANDING.getType())) { } else if (machineType.equals(MachineTypeEnum.BANDING.getType())) {
updatedJsonString = handleBandingMachine(machineName, machineSetting); updatedJsonString = handleBandingMachine(machineName, machineSetting);
} }
return updatedJsonString; return updatedJsonString;
@@ -503,8 +496,8 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
JsonNode advancedConfigsRef = cuttingSetting.get("advancedConfigsRef"); JsonNode advancedConfigsRef = cuttingSetting.get("advancedConfigsRef");
if(advancedConfigsRef.get("isAutoLabelEnabled") != null) {
boolean isAutoLabelEnabled = advancedConfigsRef.get("isAutoLabelEnabled").asBoolean(); boolean isAutoLabelEnabled = advancedConfigsRef.get("isAutoLabelEnabled") != null && advancedConfigsRef.get("isAutoLabelEnabled").asBoolean();
if (isAutoLabelEnabled && advancedConfigsRef.get("autoLabelBrand") != null && advancedConfigsRef.get("autoLabelModel") != null) { if (isAutoLabelEnabled && advancedConfigsRef.get("autoLabelBrand") != null && advancedConfigsRef.get("autoLabelModel") != null) {
@@ -542,11 +535,11 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
} }
} }
}
return null; return null;
} }
private String handleBandingMachine(String machineName, String machineSetting){ private String handleBandingMachine(String machineName, String machineSetting) {
String unzipString = unzipString(machineSetting); String unzipString = unzipString(machineSetting);
@@ -554,8 +547,8 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
JsonNode cuttingModuleRef = drillSetting.get("cuttingModuleRef"); JsonNode cuttingModuleRef = drillSetting.get("cuttingModuleRef");
if(cuttingModuleRef.get("isDrillEnabled") != null) {
boolean isDrillEnabled = cuttingModuleRef.get("isDrillEnabled").asBoolean(); boolean isDrillEnabled = cuttingModuleRef.get("isDrillEnabled") != null && cuttingModuleRef.get("isDrillEnabled").asBoolean();
if (isDrillEnabled && cuttingModuleRef.get("drillBrand") != null && cuttingModuleRef.get("drillModel") != null) { if (isDrillEnabled && cuttingModuleRef.get("drillBrand") != null && cuttingModuleRef.get("drillModel") != null) {
@@ -593,35 +586,34 @@ public class MachineTemplateServiceImpl implements MachineTemplateService {
} }
} }
}
return null; return null;
} }
private void validateMachineTemplateExists(String name,Integer machineType,Long machineId) { private void validateMachineTemplateExists(String name, Integer machineType, Long machineId) {
MachineTemplateDO machineTemplateDO = machineTemplateMapper.selectById(machineId); MachineTemplateDO machineTemplateDO = machineTemplateMapper.selectById(machineId);
if(machineTemplateDO == null){ if (machineTemplateDO == null) {
throw exception(MACHINE_TEMPLATE_NOT_EXISTS); throw exception(MACHINE_TEMPLATE_NOT_EXISTS);
} }
MachineTemplateDO machineTemplate = machineTemplateMapper.selectMachineTemplate(name, machineType,machineId); MachineTemplateDO machineTemplate = machineTemplateMapper.selectMachineTemplate(name, machineType, machineId);
if(machineTemplate != null){ if (machineTemplate != null) {
throw exception(MACHINETEMPLATE_NAME_ERROR); throw exception(MACHINETEMPLATE_NAME_ERROR);
} }
} }
private void validateMachineTemplate(String name, Integer machineType) {
private void validateMachineTemplate(String name,Integer machineType) {
MachineTemplateDO machineTemplateDO = machineTemplateMapper.selectMachineTemplateName(name, machineType); MachineTemplateDO machineTemplateDO = machineTemplateMapper.selectMachineTemplateName(name, machineType);
if(machineTemplateDO != null){ if (machineTemplateDO != null) {
throw exception(MACHINETEMPLATE_NAME_ERROR); throw exception(MACHINETEMPLATE_NAME_ERROR);
} }
@@ -33,7 +33,8 @@
from system_machine_brand smb from system_machine_brand smb
left join system_machine_template smt on smb.id = smt.brand_id left join system_machine_template smt on smb.id = smt.brand_id
where smt.deleted = false and smb.machine_type = #{type} where smt.deleted = false and smt.is_enabled = true and smt.is_default = true and smb.machine_type = #{type}
</select> </select>