机台模板是否发布,是否可用字段更新

This commit is contained in:
liuzhaotian
2024-09-13 09:29:52 +08:00
parent 6e3231888d
commit e772e10d6c
20 changed files with 544 additions and 410 deletions
@@ -186,10 +186,9 @@ public class PackController {
// todo 是否使用和使用在什么地方带确认
@GetMapping("/print")
@Operation(summary = "包裹订单打印")
@PreAuthorize("@ss.hasPermission('manage:pack:query')")
// @GetMapping("/print")
// @Operation(summary = "包裹订单打印")
// @PreAuthorize("@ss.hasPermission('manage:pack:query')")
public CommonResult<PrintOrderPackRespVO> printOrderPack (@Valid PrintOrderPackReqVO reqVO) {
return success(packService.printOrderPack(reqVO));
@@ -1,12 +1,15 @@
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.query.LambdaQueryWrapperX;
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.PatchingPlatePageReqVO;
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 org.apache.ibatis.annotations.Mapper;
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<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.process.vo.PlateDetails;
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.OrderPlateRespVO;
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> {
List<PackageDetailsRespVO> selectByPackageId( @Param("packageId") Long packageId, @Param("organId") Long organId);
List<OrderModuleVO> selectCombinationName(Long orderNo);
@@ -29,9 +26,6 @@ public interface OrderItemMapper extends BaseMapperX<OrderItemDO> {
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);
@@ -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<PlateDetailsRespVO> selectOrdersPlateList(@Param("orderIds") List<Long> orderIds, @Param("userOrganId") Long userOrganId);
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.UserSettingTypeEnum;
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.object.BeanUtils;
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.system.api.setting.SettingApi;
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.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
@@ -106,7 +108,7 @@ public class PackServiceImpl implements PackService {
OrderDO order = ordersMapper.selectById(pageReqVO.getOrderId());
// 判断是否为空
// AssertUtils.notEmpty(order,ORDER_DATE_ERROR);
AssertUtils.notEmpty(order,ORDER_DATE_ERROR);
List<PackRespVO> packRespVOList = pageReqVO.getIsUp() ?
ordersMapper.selectOrderIds(order.getCreateTime().toString(), getUserOrganId(), order.getId()) :
@@ -145,7 +147,7 @@ public class PackServiceImpl implements PackService {
// 查询板材的总量
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) {
packRespVO.setTotalPieceCount((long) packRespVO.getPlateId().size());
@@ -194,7 +196,7 @@ public class PackServiceImpl implements PackService {
public List<PlateDetailsRespVO> getOrderPlateList(Long orderId) {
// 查询订单对应的板件信息
List<PlateDetailsRespVO> plateDetailsRespVOS = orderItemMapper.selectOrderPlateList(orderId, getUserOrganId());
List<PlateDetailsRespVO> plateDetailsRespVOS = orderPlateMapper.selectOrderNoPackPlateList(orderId, getUserOrganId());
if(plateDetailsRespVOS.isEmpty()){
return null;
@@ -224,7 +226,7 @@ public class PackServiceImpl implements PackService {
public List<PlateDetailsRespVO> getOrdersPlateList(List<Long> orderIds) {
List<PlateDetailsRespVO> plateDetailsRespVOS = orderItemMapper.selectOrdersPlateList(orderIds, getUserOrganId());
List<PlateDetailsRespVO> plateDetailsRespVOS = orderPlateMapper.selectOrderPlateList(orderIds,getUserOrganId());
if (plateDetailsRespVOS.isEmpty()) {
@@ -237,7 +239,6 @@ public class PackServiceImpl implements PackService {
orderPackageDOS = orderPackageMapper.selectBatchIds(packageIds);
}
// AssertUtils.notEmpty(orderPackageDOS,ORDER_PLATE_ERROR);
for (PlateDetailsRespVO plateDetailsRespVO : plateDetailsRespVOS) {
String name = "";
@@ -273,13 +274,6 @@ public class PackServiceImpl implements PackService {
// 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 -> {
@@ -3,7 +3,6 @@ package com.cf.imes.module.manage.service.query;
import cn.hutool.core.collection.CollectionUtil;
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.cf.imes.framework.common.enums.OrderPackageTypeEnum;
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.OrderProcessStepNDO;
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.ProcessStepItemMapper;
import com.cf.imes.module.manage.dal.mysql.process.ProcessStepMapper;
@@ -61,6 +61,8 @@ public class ProductionStatusServiceImpl implements ProductionStatusService {
@Resource
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 = "";
if(!plateDetailsRespVO.getProcessGroupNameList().isEmpty()) {
@@ -214,15 +219,10 @@ public class ProductionStatusServiceImpl implements ProductionStatusService {
plateDetailsRespVO.setProcessGroup(name);
}
Page<PackageDetailsRespVO> packageDetailsRespVOPage = page.setRecords(packageDetailsRespVOS);
// Page<PackageDetailsRespVO> packageDetailsRespVOPage = page.setRecords(packageDetailsRespVOS);
if (CollectionUtil.isEmpty(packageDetailsRespVOPage.getRecords())) {
return new PageResult<>();
}
return new PageResult<>(packageDetailsRespVOPage.getRecords(), packageDetailsRespVOPage.getTotal());
return new PageResult<>(packageDetailsRespVOS.getRecords(), packageDetailsRespVOS.getTotal());
}
@@ -165,7 +165,7 @@
o.remark as orderRemark
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}
@@ -206,7 +206,7 @@
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>
@@ -205,5 +205,174 @@
</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>
@@ -3,67 +3,6 @@
<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>
</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 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>