生产工序查询SQL增加组织ID,事务添加,包裹表名修改

This commit is contained in:
liuzhaotian
2024-06-13 10:44:34 +08:00
parent 40b78e6fcd
commit 90aeeb35a4
30 changed files with 407 additions and 264 deletions
@@ -148,7 +148,7 @@ public class PackController {
@PutMapping("/updateParts")
@Operation(summary = "更新配件")
@PreAuthorize("@ss.hasPermission('manage:pack:updateParts')")
public CommonResult<Boolean> updateParts(@Valid OrderPartsReqVO reqVO) {
public CommonResult<Boolean> updateParts(@Valid @RequestBody OrderPartsReqVO reqVO) {
packService.updateParts(reqVO);
@@ -15,6 +15,6 @@ public class PackDetailsReqVO extends PageParam {
private Long packageId;
@Schema(description = "包裹类型", requiredMode = Schema.RequiredMode.REQUIRED)
private Long type;
private Integer type;
}
@@ -78,7 +78,7 @@ public class ProductionProcessController {
@GetMapping("/selectPlate")
@Operation(summary = "查看当前生产单的工序对应的板件信息")
public CommonResult<List<OrderPlateReqVO> > selectPlate(@Valid ProcessPlateReqVO reqVO){
public CommonResult<OrderPlateReqVO> selectPlate(@Valid ProcessPlateReqVO reqVO){
return success(productionProcessService.selectPlate(reqVO));
}
@@ -12,7 +12,7 @@ public class PlateDetails {
@Schema(description = "板编号")
private Long plateId;
@Schema(description = "板号")
@Schema(description = "自定义板编号-板号")
private Long plateNo;
@Schema(description = "")
@@ -132,10 +132,10 @@ public class ProductionStatusController {
@GetMapping("/queryPackageList")
@Operation(summary = "生产单打包完成包裹查看")
@Parameter(name = "orderNo", description = "生产单Id", required = true)
@PreAuthorize("@ss.hasPermission('manage:query:queryPackageList')")
// @GetMapping("/queryPackageList")
// @Operation(summary = "生产单打包完成包裹查看")
// @Parameter(name = "orderNo", description = "生产单Id", required = true)
// @PreAuthorize("@ss.hasPermission('manage:query:queryPackageList')")
public CommonResult<List<OrderPackageVO>> queryPackageList(@Valid @RequestParam("orderNo") Long orderNo){
List<OrderPackageVO> orderProcessById = productionStatusService.getPackageList(orderNo);
@@ -27,8 +27,8 @@ public class ProductionGroupVO {
@Schema(description = "工序负责人", requiredMode = Schema.RequiredMode.REQUIRED, example = "cfy_cf")
private String manager;
@Schema(description = "排单号", requiredMode = Schema.RequiredMode.REQUIRED, example = "cfy_cf")
private String planNo;
// @Schema(description = "排单号", requiredMode = Schema.RequiredMode.REQUIRED, example = "cfy_cf")
// private String planNo;
@Schema(description = "加工时间", requiredMode = Schema.RequiredMode.REQUIRED)
private String processDate;
@@ -6,7 +6,7 @@ import com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
import com.cf.imes.framework.organ.core.db.OrganBaseDO;
import lombok.*;
@TableName("order_patch_detail_n")
@TableName("order_patch_detail")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@@ -9,7 +9,7 @@ import com.cf.imes.framework.mybatis.core.dataobject.BaseDO;
import com.cf.imes.framework.organ.core.db.OrganBaseDO;
import lombok.*;
@TableName("order_package_n")
@TableName("order_package")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@@ -28,7 +28,7 @@ public class OrderPackageDO extends BaseDO {
private Long organId;
// 生产单号
private Long orderNo;
private Long orderId;
// 包裹编号
private String packageNo;
@@ -22,9 +22,12 @@ public interface OrderBodyMapper extends BaseMapperX<OrderBodyDO> {
default List<OrderBodyDO> selectListBody(Long orderId) {
default List<OrderBodyDO> selectListByOrderId(Long orderId,Long organId,Long bodyId) {
return selectList(new LambdaQueryWrapperX<OrderBodyDO>()
.eq(OrderBodyDO::getOrganId,organId)
.eqIfPresent(OrderBodyDO::getId,bodyId)
.eqIfPresent(OrderBodyDO::getOrderId, orderId));
}
}
@@ -28,8 +28,9 @@ public interface OrderPackageMapper extends BaseMapperX<OrderPackageDO> {
List<OrderPackageDO> selectByOrderNo(@Param("reqVO") PackageDetailsReqVO reqVO,@Param("organId") Long organId);
default OrderPackageDO selectByPackNo(String packNo) {
default OrderPackageDO selectByPackNo(String packNo,Long organId) {
return selectOne(new LambdaQueryWrapperX<OrderPackageDO>()
.eq(OrderPackageDO::getOrganId, organId)
.eqIfPresent(OrderPackageDO::getPackageNo, packNo));
}
@@ -38,13 +39,14 @@ public interface OrderPackageMapper extends BaseMapperX<OrderPackageDO> {
List<PackRespVO> selectPackPage(/*@Param("page") IPage page,*/@Param("collect") List<Long> collect);
List<PlateDetailsRespVO> selectMissingBoard(Long orderNo);
IPage<PlateDetailsRespVO> selectMissingBoard( @Param("page") IPage page, @Param("orderNo") Long orderNo, @Param("organId") Long organId);
default OrderPackageDO selectByPackId(Long packId) {
default OrderPackageDO selectByPackId(Long packId,Long organId) {
return selectOne(new LambdaQueryWrapperX<OrderPackageDO>()
.eq(OrderPackageDO::getOrganId, organId)
.eqIfPresent(OrderPackageDO::getId, packId));
}
@@ -54,8 +56,9 @@ public interface OrderPackageMapper extends BaseMapperX<OrderPackageDO> {
default List<OrderPackageDO> selectPackStatus(Long orderId) {
default List<OrderPackageDO> selectPackStatus(Long orderId,Long organId) {
return selectList(new LambdaQueryWrapperX<OrderPackageDO>()
.eqIfPresent(OrderPackageDO::getId, orderId));
.eq(OrderPackageDO::getOrganId,organId)
.eqIfPresent(OrderPackageDO::getOrderId, orderId));
}
}
@@ -6,6 +6,8 @@ import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.cf.imes.module.manage.controller.admin.patching.vo.PatchingDetailReqVO;
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.OrderPlateReqVO;
import com.cf.imes.module.manage.controller.admin.process.vo.PlateDetails;
import com.cf.imes.module.manage.dal.dataobject.plate.OrderPlateDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@@ -37,4 +39,7 @@ public interface OrderPlateMapper extends BaseMapperX<OrderPlateDO> {
List<PatchingDetailRespVO> selectOtherPlateList(@Param("plateIdList") List<Long> plateIdList);
List<PlateDetails> selectListByOrderId( @Param("orderId") Long orderId, @Param("organId") Long organId);
}
@@ -24,18 +24,19 @@ public interface ProcessStepItemMapper extends BaseMapperX<OrderProcessStepItemN
List<OrderModuleVO> selectPlateName(Long processStepId);
void updateStatus(@Param("id") Long id);
void updateStatus(@Param("id") Long id, @Param("nickname") String nickname);
ProcessStepStatus selectStatusById(@Param("id") Long id,@Param("name") String name);
ProcessStepStatus selectStatusById(@Param("id") Long id,@Param("name") String name, @Param("organId") Long organId);
@Update("update order_process_step_item set status = true where process_step_id = #{stepItemId} and name = #{name}")
void updateStemStatus(@Param("stepItemId") Long stepItemId,@Param("name") String name);
void updateStemStatus(@Param("processStepId") Long processStepId,@Param("name") String name, @Param("nickname") String nickname);
default List<OrderProcessStepItemNDO> selectStemById(Long stepId,Boolean status) {
default List<OrderProcessStepItemNDO> selectStemById(Long stepId,Boolean status,Long organId) {
return selectList(new LambdaQueryWrapperX<OrderProcessStepItemNDO>()
.eq(OrderProcessStepItemNDO::getOrganId,organId)
.eqIfPresent(OrderProcessStepItemNDO::getStatus,status)
.eqIfPresent(OrderProcessStepItemNDO::getProcessStepId,stepId));
@@ -43,6 +44,6 @@ public interface ProcessStepItemMapper extends BaseMapperX<OrderProcessStepItemN
List<OrderPlateReqVO> selectBodyIds(@Param("processStepId") Long processStepId,@Param("name") String name);
List<OrderBodyRespVo> selectBodyIds(@Param("processStepId") Long processStepId,@Param("name") String name, @Param("organId") Long organId);
}
@@ -1,6 +1,7 @@
package com.cf.imes.module.manage.dal.mysql.process;
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.process.vo.ProcessPageReqVO;
@@ -24,7 +25,7 @@ public interface ProcessStepMapper extends BaseMapperX<OrderProcessStepNDO> {
List<ProcessRespVO> selectOrder(ProcessPageReqVO pageReqVO);
IPage<ProcessRespVO> selectOrder( @Param("page") IPage page, @Param("pageReqVO") ProcessPageReqVO pageReqVO,@Param("organId") Long organId );
@@ -37,11 +38,11 @@ public interface ProcessStepMapper extends BaseMapperX<OrderProcessStepNDO> {
// }
List<ProductionGroupVO> selectProducitonList(@Param("orderNo") Long orderNo);
List<ProductionGroupVO> selectProducitonList(@Param("orderNo") Long orderNo,@Param("organId") Long organId);
List<PriceRateReqVO> selectSalaryList(PriceRatePageReqVO pageReqVO);
IPage<PriceRateReqVO> selectSalaryList( @Param("page") IPage page, @Param("pageReqVO") PriceRatePageReqVO pageReqVO,@Param("organId") Long organId);
@@ -2,9 +2,11 @@ package com.cf.imes.module.manage.dal.mysql.query;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
import com.cf.imes.module.manage.controller.admin.pack.vo.*;
import com.cf.imes.module.manage.controller.admin.process.vo.OrderPlateReqVO;
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;
@@ -20,7 +22,7 @@ import java.util.List;
public interface OrderItemMapper extends BaseMapperX<OrderItemDO> {
List<PackageDetailsRespVO> selectByPackageId(Long packageId);
IPage<PackageDetailsRespVO> selectByPackageId( @Param("page") IPage page, @Param("packageId") Long packageId, @Param("organId") Long organId);
List<OrderModuleVO> selectCombinationName(Long orderNo);
@@ -33,7 +35,7 @@ public interface OrderItemMapper extends BaseMapperX<OrderItemDO> {
List<PlateDetailsRespVO> selectPrintPlateList(@Param("orderNo")Long orderNo,@Param("packageNo") Long packageNo);
List<PlateDetailsRespVO> selectPrintPlateList(@Param("orderNo")Long orderNo,@Param("packageNo") Long packageNo, @Param("organId") Long organId);
@@ -60,7 +62,7 @@ public interface OrderItemMapper extends BaseMapperX<OrderItemDO> {
List<OrderPlateReqVO> selectByOrderId(ProcessPlateReqVO reqVO);
List<PlateDetails> selectByOrderId(@Param("reqVO") ProcessPlateReqVO reqVO, @Param("organId") Long organId );
OrderPlateDetailsRespVO selectOrderPlateDetails(@Param("orderId") Long orderId);
@@ -70,4 +72,6 @@ public interface OrderItemMapper extends BaseMapperX<OrderItemDO> {
void deletePartsList(@Param("deletePartsList")List<Long> deletePartsList,@Param("packId") Long packId,@Param("orderNo") Long orderNo);
List<PlateDetails> selectPlateListByBodyIds( @Param("collect") List<Long> collect,@Param("orderId") Long orderId,@Param("userOrganId") Long userOrganId);
}
@@ -1,6 +1,7 @@
package com.cf.imes.module.manage.dal.mysql.query;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.cf.imes.framework.common.pojo.PageResult;
import com.cf.imes.framework.mybatis.core.mapper.BaseMapperX;
import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX;
@@ -18,10 +19,10 @@ import java.util.List;
public interface OrderPartsMapper extends BaseMapperX<OrderPartsNDO> {
List<PackageDetailsRespVO> selectParts(Long packageId);
IPage<PackageDetailsRespVO> selectParts(@Param("page") IPage page, @Param("packageId") Long packageId, @Param("organId") Long organId);
List<OrderPartsRespVO> selectPartsList(Long orderId);
IPage<OrderPartsRespVO> selectPartsList(@Param("page") IPage page, @Param("orderId") Long orderId , @Param("organId") Long organId);
@@ -31,8 +32,9 @@ public interface OrderPartsMapper extends BaseMapperX<OrderPartsNDO> {
void deleteOrderParts(@Param("packageId") Long packageId);
default OrderPartsNDO selectOneParts(String otherPartsName) {
default OrderPartsNDO selectOneParts(String otherPartsName,Long organId) {
return selectOne(new LambdaQueryWrapperX<OrderPartsNDO>()
.eq(OrderPartsNDO::getOrganId,organId)
.eqIfPresent(OrderPartsNDO::getName,otherPartsName));
}
@@ -41,7 +41,7 @@ public interface ProductionStatusMapper extends BaseMapperX<OrderDO> {
PrintOrderRespVO selectPrintOrder(Long orderNo);
PrintOrderRespVO selectPrintOrder(@Param("orderNo") Long orderNo,@Param("organId")Long organId);
default List<OrderDO> selectPackPage(PackPageReqVO pageReqVO,Long organId) {
@@ -61,7 +61,7 @@ public interface ProductionStatusMapper extends BaseMapperX<OrderDO> {
PrintOrderPackRespVO selectOrderPack(@Param("orderNo")Long orderNo,@Param("packageNo") Long packageNo);
PrintOrderPackRespVO selectOrderPack(@Param("orderNo")Long orderNo,@Param("packageNo") Long packageNo, @Param("organId") Long organId);
@@ -1,7 +1,6 @@
package com.cf.imes.module.manage.service.pack;
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO;
@@ -138,10 +137,17 @@ public class PackServiceImpl implements PackService {
@Override
public PageResult<OrderPartsRespVO> getPartsList(OrderPartsReqVO reqVO) {
PageHelper.startPage(reqVO.getPageNo(), reqVO.getPageSize());
List<OrderPartsRespVO> orderPartsRespVOS = orderPartsMapper.selectPartsList(reqVO.getOrderNo());
PageInfo<OrderPartsRespVO> pageInfo = new PageInfo<>(orderPartsRespVOS);
return PageHelperUtil.convertToPageResult(pageInfo);
PageDTO<OrderPartsRespVO> page = new PageDTO<>(reqVO.getPageNo(), reqVO.getPageSize());
IPage<OrderPartsRespVO> orderPartsRespVOS = orderPartsMapper.selectPartsList(page,reqVO.getOrderNo(),getUserOrganId());
if (CollectionUtil.isEmpty(orderPartsRespVOS.getRecords())) {
return new PageResult<>();
}
return new PageResult<>(orderPartsRespVOS.getRecords(), orderPartsRespVOS.getTotal());
}
@@ -202,7 +208,7 @@ public class PackServiceImpl implements PackService {
@Transactional(rollbackFor = Exception.class)
public OrderPackageDO insertPack(OrderPackReqVO packageVO) {
List<OrderPackageDO> orderPackageDOS = orderPackageMapper.selectPackStatus(packageVO.getOrderId());
List<OrderPackageDO> orderPackageDOS = orderPackageMapper.selectPackStatus(packageVO.getOrderId(),getUserOrganId());
for (OrderPackageDO orderPackageDO : orderPackageDOS) {
Integer status = orderPackageDO.getStatus();
if (status.equals(OrderPackageStatusEnum.UNPACKED.getStatus())){
@@ -213,7 +219,7 @@ public class PackServiceImpl implements PackService {
OrderPackageDO orderPackageDO = new OrderPackageDO();
orderPackageDO.setOrderNo(packageVO.getOrderId());
orderPackageDO.setOrderId(packageVO.getOrderId());
orderPackageDO.setType(packageVO.getPackageType());
// orderPackageDO.setPackageNo(PackageNoUtil.randomPageNo());
orderPackageDO.setPackageNo(packageVO.getPackNo());
@@ -251,7 +257,7 @@ public class PackServiceImpl implements PackService {
// 移除生产明细表中板件对应的包裹ID
orderItemMapper.deletePackId(packageVO.getDeletePlateIdList(), packageVO.getPackId());
return orderPackageMapper.selectByPackId(packageVO.getPackId()).setStatus(OrderPackageStatusEnum.PACKAGED.getStatus());
return orderPackageMapper.selectByPackId(packageVO.getPackId(),getUserOrganId()).setStatus(OrderPackageStatusEnum.PACKAGED.getStatus());
}
@@ -262,7 +268,7 @@ public class PackServiceImpl implements PackService {
@Override
public List<OrderPackRespVO> selectPack(Long orderId) {
List<OrderPackageDO> orderPackageDOS = orderPackageMapper.selectPackStatus(orderId);
List<OrderPackageDO> orderPackageDOS = orderPackageMapper.selectPackStatus(orderId,getUserOrganId());
// List<OrderPackageDO> collect = orderPackageDOS.stream().map(o -> o.setRemark(JsonUtils.unzipString(o.getRemark()))).collect(Collectors.toList());
return BeanUtils.toBean(orderPackageDOS, OrderPackRespVO.class);
@@ -276,8 +282,8 @@ public class PackServiceImpl implements PackService {
@Override
public PrintOrderPackRespVO printOrderPack(PrintOrderPackReqVO reqVO) {
PrintOrderPackRespVO printOrderPackRespVO = productionStatusMapper.selectOrderPack(reqVO.getOrderNo(), reqVO.getPackageNo());
printOrderPackRespVO.setPlateList(orderItemMapper.selectPrintPlateList(reqVO.getOrderNo(), reqVO.getPackageNo()));
PrintOrderPackRespVO printOrderPackRespVO = productionStatusMapper.selectOrderPack(reqVO.getOrderNo(), reqVO.getPackageNo(),getUserOrganId());
printOrderPackRespVO.setPlateList(orderItemMapper.selectPrintPlateList(reqVO.getOrderNo(), reqVO.getPackageNo(),getUserOrganId()));
return printOrderPackRespVO;
@@ -310,7 +316,7 @@ public class PackServiceImpl implements PackService {
public OrderPackageDO addNewOtherPack(OtherPackReqVO reqVO) {
// 判断配件名称是否重复
OrderPartsNDO orderPartsNDO = orderPartsMapper.selectOneParts(reqVO.getName());
OrderPartsNDO orderPartsNDO = orderPartsMapper.selectOneParts(reqVO.getName(),getUserOrganId());
if (orderPartsNDO != null) {
throw exception(THE_ACCESSORY_NAME_CANNOT_BE_DUPLICATED);
}
@@ -324,7 +330,7 @@ public class PackServiceImpl implements PackService {
OrderPackageDO orderPackageDO = new OrderPackageDO();
// orderPackageDO.setPackageNo(PackageNoUtil.randomPageNo());
orderPackageDO.setPackageNo(reqVO.getPackNo());
orderPackageDO.setOrderNo(reqVO.getOrderId());
orderPackageDO.setOrderId(reqVO.getOrderId());
orderPackageDO.setType(OrderPackageTypeEnum.OTHER_ACCESSORIES.getType().longValue());
// 新增包裹
@@ -357,7 +363,7 @@ public class PackServiceImpl implements PackService {
@Transactional(rollbackFor = Exception.class)
public OrderPartsRespVO addNewOtherParts(OtherPackReqVO reqVO) {
OrderPackageDO orderPackageDO = orderPackageMapper.selectByPackNo(reqVO.getPackNo());
OrderPackageDO orderPackageDO = orderPackageMapper.selectByPackNo(reqVO.getPackNo(),getUserOrganId());
if(orderPackageDO.getType()!= OrderPackageTypeEnum.OTHER_ACCESSORIES.getType().longValue()){
throw exception(THE_CURRENT_PACKAGE_TYPE_IS_INCORRECT);
}
@@ -406,7 +412,7 @@ public class PackServiceImpl implements PackService {
public OrderPackageDO addNewPartsPack(OrderPackReqVO reqVO) {
OrderPackageDO orderPackageDO = new OrderPackageDO();
orderPackageDO.setOrderNo(reqVO.getOrderId());
orderPackageDO.setOrderId(reqVO.getOrderId());
orderPackageDO.setType(reqVO.getPackageType());
orderPackageDO.setStatus(OrderPackageStatusEnum.PACKAGED.getStatus());
orderPackageDO.setPackageNo(PackageNoUtil.randomPageNo());
@@ -63,6 +63,7 @@ public class PlateServiceImpl implements PlateService {
}
@Override
@Transactional(rollbackFor = Exception.class)
public void updatePlate(PlateSaveReqVO updateReqVO) {
// 更新 判断是否有组织id
if (updateReqVO.getOrganId() == null || updateReqVO.getOrganId() == 0){
@@ -77,6 +78,7 @@ public class PlateServiceImpl implements PlateService {
}
@Override
@Transactional(rollbackFor = Exception.class)
public void deletePlate(Long id,Long organId) {
if (organId == null || organId == 0){
organId = OrganContextHolder.getOrganId();
@@ -33,6 +33,6 @@ public interface ProductionProcessService {
List<OrderBodyRespVo> selectBodyName(OrderBodyReqVO reqVO);
List<OrderPlateReqVO> selectPlate(ProcessPlateReqVO reqVO);
OrderPlateReqVO selectPlate(ProcessPlateReqVO reqVO);
}
@@ -2,6 +2,9 @@ package com.cf.imes.module.manage.service.process;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO;
import com.cf.imes.framework.common.enums.ProcessProcessingTypeEnum;
import com.cf.imes.framework.common.enums.ProcessingStatusEnum;
import com.cf.imes.framework.common.exception.ServiceException;
@@ -10,6 +13,7 @@ import com.cf.imes.framework.common.pojo.PageResult;
import com.cf.imes.framework.common.util.object.BeanUtils;
import com.cf.imes.framework.organ.core.context.OrganContextHolder;
import com.cf.imes.module.manage.config.VocieParameters;
import com.cf.imes.module.manage.controller.admin.pack.vo.PackRespVO;
import com.cf.imes.module.manage.controller.admin.process.vo.*;
import com.cf.imes.module.manage.controller.admin.query.vo.productionStatus.OrderModuleVO;
import com.cf.imes.module.manage.dal.dataobject.pack.OrderBodyDO;
@@ -18,6 +22,7 @@ import com.cf.imes.module.manage.dal.dataobject.process.OrderProcessStepNDO;
import com.cf.imes.module.manage.dal.dataobject.process.ProcessDO;
import com.cf.imes.module.manage.dal.dataobject.query.OrderItemDO;
import com.cf.imes.module.manage.dal.mysql.pack.OrderBodyMapper;
import com.cf.imes.module.manage.dal.mysql.plate.OrderPlateMapper;
import com.cf.imes.module.manage.dal.mysql.process.*;
import com.cf.imes.module.manage.dal.mysql.query.OrderItemMapper;
import com.cf.imes.module.manage.util.page.PageHelperUtil;
@@ -38,6 +43,8 @@ import java.util.stream.Collectors;
import static com.baomidou.mybatisplus.core.toolkit.Wrappers.update;
import static com.cf.imes.framework.common.exception.enums.GlobalErrorCodeConstants.INTERNAL_SERVER_ERROR;
import static com.cf.imes.framework.security.core.util.SecurityFrameworkUtils.getLoginUser;
import static com.cf.imes.framework.security.core.util.SecurityFrameworkUtils.getUserOrganId;
/**
@@ -69,6 +76,9 @@ public class ProductionProcessServiceImpl implements ProductionProcessService {
@Resource
private OrderItemMapper orderItemMapper;
@Resource
private OrderPlateMapper orderPlateMapper;
// 查看组织的工序信息
@@ -87,20 +97,23 @@ public class ProductionProcessServiceImpl implements ProductionProcessService {
@Override
public PageResult<ProcessRespVO> getProcessPage(ProcessPageReqVO pageReqVO) {
PageHelper.startPage(pageReqVO.getPageNo(), pageReqVO.getPageSize());
List<ProcessRespVO> processRespVOS = processStepMapper.selectOrder(pageReqVO);
PageDTO<ProcessRespVO> page = new PageDTO<>(pageReqVO.getPageNo(), pageReqVO.getPageSize());
IPage<ProcessRespVO> processRespVOS = processStepMapper.selectOrder(page,pageReqVO,getUserOrganId());
// 判断生产步骤表在传入的状态查询后是否为空
if(processRespVOS.isEmpty()){
if(processRespVOS == null){
return null;
}
PageInfo<ProcessRespVO> pageInfo = new PageInfo<>(processRespVOS);
if (CollectionUtil.isEmpty(processRespVOS.getRecords())) {
return new PageResult<>();
}
// 转换成 PageResult 分页类型
return PageHelperUtil.convertToPageResult(pageInfo);
return new PageResult<>(processRespVOS.getRecords(), processRespVOS.getTotal());
}
@@ -112,8 +125,11 @@ public class ProductionProcessServiceImpl implements ProductionProcessService {
@Transactional(rollbackFor = Exception.class)
public void updateProcessStatus(OrderProcessStepItemVO reqVo) {
// 工序加工添加负责人
String nickname = getLoginUser().getNickname();
// 根据工序明细 id 查询当前生产单步骤和明细的生产状态
ProcessStepStatus processStepStatuses = processStepItemMapper.selectStatusById(reqVo.getProcessStepId(),reqVo.getName());
ProcessStepStatus processStepStatuses = processStepItemMapper.selectStatusById(reqVo.getProcessStepId(),reqVo.getName(),getUserOrganId());
// 判断生产明细表的状态查询后是否为空
@@ -130,9 +146,9 @@ public class ProductionProcessServiceImpl implements ProductionProcessService {
// 判断生产单工序的状态是否为组件加工
if(processStepStatuses.getType().equals(ProcessProcessingTypeEnum.COMPONENTPROCESSING.getNumber())){
processStepItemMapper.updateStemStatus(reqVo.getProcessStepId(),reqVo.getName());
processStepItemMapper.updateStemStatus(reqVo.getProcessStepId(),reqVo.getName(),nickname);
List<OrderProcessStepItemNDO> orderProcessStepItemNDOS = processStepItemMapper.selectStemById(reqVo.getProcessStepId(),ProcessingStatusEnum.RAW.getStatus());
List<OrderProcessStepItemNDO> orderProcessStepItemNDOS = processStepItemMapper.selectStemById(reqVo.getProcessStepId(),ProcessingStatusEnum.RAW.getStatus(),getUserOrganId());
if(orderProcessStepItemNDOS.isEmpty()){
// 修改生产单工序步骤表的状态
processStepMapper.updateStatusById(reqVo.getProcessStepId());
@@ -146,7 +162,7 @@ public class ProductionProcessServiceImpl implements ProductionProcessService {
try {
// 修改生产明细表和步骤表的工序状态
processStepItemMapper.updateStatus(reqVo.getProcessStepId());
processStepItemMapper.updateStatus(reqVo.getProcessStepId(),nickname);
}catch (Exception e){
throw ServiceExceptionUtil.exception(ErrorCodeConstants.UNPROCESSED_BEFORE_PROCESSING);
}
@@ -190,7 +206,7 @@ public class ProductionProcessServiceImpl implements ProductionProcessService {
return null;
}
List<OrderBodyDO> orderBodyDOS = orderBodyMapper.selectListBody(reqVO.getOrderId());
List<OrderBodyDO> orderBodyDOS = orderBodyMapper.selectListByOrderId(reqVO.getOrderId(),getUserOrganId(),null);
return BeanUtils.toBean(orderBodyDOS, OrderBodyRespVo.class);
@@ -201,19 +217,54 @@ public class ProductionProcessServiceImpl implements ProductionProcessService {
@Override
public List<OrderPlateReqVO> selectPlate(ProcessPlateReqVO reqVO) {
public OrderPlateReqVO selectPlate(ProcessPlateReqVO reqVO) {
OrderPlateReqVO orderPlateReqVO = new OrderPlateReqVO();
if(reqVO.getProcessType().equals(ProcessProcessingTypeEnum.COMPONENTPROCESSING.getNumber())){
// 等于 7(组件加工) ,根据明细ID查询对应的柜体ID,再传入方法查询对应的板材信息
List<OrderPlateReqVO> plateDetails = processStepItemMapper.selectBodyIds(reqVO.getProcessStepId(),reqVO.getName());
return plateDetails;
// 等于 7(组件加工) ,根据生产单工序步骤ID查询对应的柜体ID,再根据柜体ID查询对应的板件ID
List<OrderBodyRespVo> OrderBodyRespVos = processStepItemMapper.selectBodyIds(reqVO.getProcessStepId(),reqVO.getName(),getUserOrganId());
List<Long> collect = OrderBodyRespVos.stream().map(m -> m.getId()).collect(Collectors.toList());
List<PlateDetails> plateDetails = orderItemMapper.selectPlateListByBodyIds(collect, reqVO.getOrderId(), getUserOrganId());
orderPlateReqVO.setOrderBodyRespVoList(OrderBodyRespVos);
orderPlateReqVO.setPlateDetails(plateDetails);
return orderPlateReqVO;
}
// 不等于 7(组件加工) ,直接根据订单号查询所有的柜体id,再传入方法查询对应的板材信息
return orderItemMapper.selectByOrderId(reqVO);
// 不等于 7(组件加工) ,现根据订单号查询所有的柜体信息
// 进行判断,如果传入的柜体ID为空,进行详细查询,不为空,直接根据订单ID查询全部的板材信息
if(reqVO.getBodyId() == null){
List<OrderBodyDO> orderBodyDOS = orderBodyMapper.selectListByOrderId(reqVO.getOrderId(), getUserOrganId(),reqVO.getBodyId());
List<OrderBodyRespVo> orderBodyRespVos = BeanUtils.toBean(orderBodyDOS, OrderBodyRespVo.class);
// 查询全部的板材信息
List<PlateDetails> orderPlateReqVOS = orderPlateMapper.selectListByOrderId(reqVO.getOrderId(),getUserOrganId());
orderPlateReqVO.setOrderBodyRespVoList(orderBodyRespVos);
orderPlateReqVO.setPlateDetails(orderPlateReqVOS);
return orderPlateReqVO;
}
// 有柜体ID,进行详细查询
List<OrderBodyDO> orderBodyDOS = orderBodyMapper.selectListByOrderId(reqVO.getOrderId(), getUserOrganId(),reqVO.getBodyId());
List<OrderBodyRespVo> orderBodyRespVos = BeanUtils.toBean(orderBodyDOS, OrderBodyRespVo.class);
List<PlateDetails> plateDetails = orderItemMapper.selectByOrderId(reqVO, getUserOrganId());
orderPlateReqVO.setOrderBodyRespVoList(orderBodyRespVos);
orderPlateReqVO.setPlateDetails(plateDetails);
return orderPlateReqVO;
}
@@ -1,12 +1,16 @@
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.PageDTO;
import com.cf.imes.framework.common.enums.OrderPackageTypeEnum;
import com.cf.imes.framework.common.pojo.PageResult;
import com.cf.imes.framework.common.util.object.BeanUtils;
import com.cf.imes.module.manage.controller.admin.pack.vo.OrderPartsReqVO;
import com.cf.imes.module.manage.controller.admin.pack.vo.PackDetailsReqVO;
import com.cf.imes.module.manage.controller.admin.pack.vo.PlateDetailsRespVO;
import com.cf.imes.module.manage.controller.admin.process.vo.ProcessRespVO;
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.pack.PrintOrderRespVO;
@@ -28,6 +32,8 @@ import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
import java.util.List;
import static com.cf.imes.framework.security.core.util.SecurityFrameworkUtils.getUserOrganId;
@Service
@Validated
@@ -69,7 +75,7 @@ public class ProductionStatusServiceImpl implements ProductionStatusService {
@Override
public List<ProductionGroupVO> selectProduction(Long orderNo) {
List<ProductionGroupVO> productionGroupVOS = processStepMapper.selectProducitonList(orderNo);
List<ProductionGroupVO> productionGroupVOS = processStepMapper.selectProducitonList(orderNo,getUserOrganId());
for (int i = 1; i < productionGroupVOS.size(); i++) {
productionGroupVOS.get(i).setGroupName(null);
@@ -81,6 +87,7 @@ public class ProductionStatusServiceImpl implements ProductionStatusService {
// 查询板材信息的组合名称
@Override
public List<OrderModuleVO> selectPlateName(OrderModuleReqVO reqVO) {
@@ -113,20 +120,18 @@ public class ProductionStatusServiceImpl implements ProductionStatusService {
@Override
public PageResult<PriceRateReqVO> getSalaryPage(PriceRatePageReqVO pageReqVO) {
PageHelper.startPage(pageReqVO.getPageNo(), pageReqVO.getPageSize());
List<PriceRateReqVO> priceRateReqVOS = processStepMapper.selectSalaryList(pageReqVO);
PageDTO<PriceRateReqVO> page = new PageDTO<>(pageReqVO.getPageNo(), pageReqVO.getPageSize());
// 判断是否显示计件工资为0的工序
if(pageReqVO.getNoShowZero().equals(true)){
for (PriceRateReqVO priceRateReqVO : priceRateReqVOS) {
if(priceRateReqVO.getPriceRate() == 0){
priceRateReqVOS.remove(priceRateReqVO);
}
}
IPage<PriceRateReqVO> priceRateReqVOS = processStepMapper.selectSalaryList(page,pageReqVO,getUserOrganId());
if (CollectionUtil.isEmpty(priceRateReqVOS.getRecords())) {
return new PageResult<>();
}
PageInfo<PriceRateReqVO> pageInfo = new PageInfo<>(priceRateReqVOS);
return PageHelperUtil.convertToPageResult(pageInfo);
return new PageResult<>(priceRateReqVOS.getRecords(), priceRateReqVOS.getTotal());
}
@@ -165,29 +170,31 @@ public class ProductionStatusServiceImpl implements ProductionStatusService {
PageDTO<PackageDetailsRespVO> page = new PageDTO<>(reqVO.getPageNo(), reqVO.getPageSize());
// 查看配件包裹
if(reqVO.getType() == 1 || reqVO.getType() == 2){
if(reqVO.getType().equals(OrderPackageTypeEnum.PARTS.getType()) || reqVO.getType().equals(OrderPackageTypeEnum.OTHER_ACCESSORIES.getType())){
PageHelper.startPage(reqVO.getPageNo(), reqVO.getPageSize());
// 查看配件包裹
List<PackageDetailsRespVO> packageDetailsRespVOS = orderPartsMapper.selectParts(reqVO.getPackageId());
PageInfo<PackageDetailsRespVO> pageInfo = new PageInfo<>(packageDetailsRespVOS);
PageResult<PackageDetailsRespVO> priceRateReqVOPageResult = PageHelperUtil.convertToPageResult(pageInfo);
IPage<PackageDetailsRespVO> packageDetailsRespVOS = orderPartsMapper.selectParts(page,reqVO.getPackageId(),getUserOrganId());
if (CollectionUtil.isEmpty(packageDetailsRespVOS.getRecords())) {
return new PageResult<>();
}
return priceRateReqVOPageResult;
return new PageResult<>(packageDetailsRespVOS.getRecords(), packageDetailsRespVOS.getTotal());
}
PageHelper.startPage(reqVO.getPageNo(), reqVO.getPageSize());
// 查看板材包裹
List<PackageDetailsRespVO> packageDetailsRespVOS = orderItemMapper.selectByPackageId(reqVO.getPackageId());
PageInfo<PackageDetailsRespVO> pageInfo = new PageInfo<>(packageDetailsRespVOS);
PageResult<PackageDetailsRespVO> priceRateReqVOPageResult = PageHelperUtil.convertToPageResult(pageInfo);
IPage<PackageDetailsRespVO> packageDetailsRespVOS = orderItemMapper.selectByPackageId(page,reqVO.getPackageId(),getUserOrganId());
if (CollectionUtil.isEmpty(packageDetailsRespVOS.getRecords())) {
return new PageResult<>();
}
return priceRateReqVOPageResult;
return new PageResult<>(packageDetailsRespVOS.getRecords(), packageDetailsRespVOS.getTotal());
}
@@ -198,7 +205,7 @@ public class ProductionStatusServiceImpl implements ProductionStatusService {
@Override
public PrintOrderRespVO printOrder(Long orderNo) {
return productionStatusMapper.selectPrintOrder(orderNo);
return productionStatusMapper.selectPrintOrder(orderNo,getUserOrganId());
}
@@ -210,12 +217,17 @@ public class ProductionStatusServiceImpl implements ProductionStatusService {
public PageResult<PlateDetailsRespVO> getMissingBoard(OrderPartsReqVO pageReqVO) {
PageHelper.startPage(pageReqVO.getPageNo(),pageReqVO.getPageSize());
List<PlateDetailsRespVO> plateDetailsRespVOS = orderPackageMapper.selectMissingBoard(pageReqVO.getOrderNo());
PageInfo<PlateDetailsRespVO> pageInfo = new PageInfo<>(plateDetailsRespVOS);
PageResult<PlateDetailsRespVO> priceRateReqVOPageResult = PageHelperUtil.convertToPageResult(pageInfo);
PageDTO<PlateDetailsRespVO> page = new PageDTO<>(pageReqVO.getPageNo(), pageReqVO.getPageSize());
IPage<PlateDetailsRespVO> plateDetailsRespVOS = orderPackageMapper.selectMissingBoard(page,pageReqVO.getOrderNo(),getUserOrganId());
if (CollectionUtil.isEmpty(plateDetailsRespVOS.getRecords())) {
return new PageResult<>();
}
return new PageResult<>(plateDetailsRespVOS.getRecords(), plateDetailsRespVOS.getTotal());
return priceRateReqVOPageResult;
}
@@ -8,6 +8,7 @@ import com.cf.imes.module.manage.dal.mysql.remainplaten.RemainPlateMapper;
import com.cf.imes.module.manage.enums.RemainPlateStatusEnum;
import com.cf.imes.module.manage.enums.RemainPlateUseTypeEnum;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
import com.cf.imes.framework.common.pojo.PageResult;
@@ -50,6 +51,7 @@ public class RemainPlateServiceImpl implements RemainPlateService {
}
@Override
@Transactional(rollbackFor = Exception.class)
public void updateRemainPlateStatus(Set<Long> ids, Integer status, Integer useType,Long planId) {
//判断是否符合核销标准
validateRemainPlateStatus(ids,RemainPlateStatusEnum.IN_USE.getStatus());
@@ -58,12 +60,13 @@ public class RemainPlateServiceImpl implements RemainPlateService {
}
@Override
@Transactional(rollbackFor = Exception.class)
public void revertRemainPlateStatus(Set<Long> ids, Integer status) {
// 判断余料的状态是否存在使用中
validateRemainPlateStatus(ids,RemainPlateStatusEnum.UNUSED.getStatus());
// 判断使用类型是否为核销
for (Long id : ids) {
if (validateRemainPlateUseType(id) != RemainPlateUseTypeEnum.TYPE_ONE.getStatus()) {
if (validateRemainPlateUseType(id).equals( RemainPlateUseTypeEnum.TYPE_ONE.getStatus())) {
throw exception(REMAIN_PLATE_USR_TYPE);
}
}
@@ -90,6 +93,7 @@ public class RemainPlateServiceImpl implements RemainPlateService {
}
@Override
@Transactional(rollbackFor = Exception.class)
public void deleteRemainPlate(Set<Long> ids) {
// 判断余料的状态是否存在使用中
validateRemainPlateStatus(ids,RemainPlateStatusEnum.IN_USE.getStatus());
@@ -18,9 +18,9 @@
count(DISTINCT oi.package_id ) as numberOfPackages,
count(DISTINCT oi.plate_id) as packagedBoard
from order_package_n opn
from order_package opn
join order_item oi on opn.id = oi.package_id
WHERE opn.order_no IN
WHERE opn.order_id IN
<foreach item="id" collection="collect" open="(" separator="," close=")">
#{id}
</foreach>
@@ -60,25 +60,28 @@
ob.name as bodyName,
op.id as palteId,
op.name as plateName,
p.material as plateMaterial,
p.color as palteColor,
p.height as plateHeight,
p.width as plateWidth,
p.thickness as plateThickness,
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,
CASE WHEN op.unregular_point_count = 0 THEN '否' ELSE '是' END AS specialShaped,
CASE WHEN front_model_count = 0 or op.back_hole_count or op.side_hole_count THEN '否' ELSE '是' END AS profiling,
CASE WHEN front_hole_count = 0 or op.back_model_count THEN '否' ELSE '是' END AS rowHole
op.is_special_shaped as specialShaped,
op.is_sculpt as profiling,
CASE WHEN op.front_hole_count = 0 or op.back_model_count = 0 or op.side_hole_count = 0 THEN false ELSE true END AS rowHole
from order_plate op
join plate p on op.goods_id = p.goods_id
join order_item oi on op.id = oi.plate_id
join order_body ob on oi.body_id = ob.id
join order_goods ogs on op.goods_id = ogs.id and op.organ_id = ogs.organ_id
join order_item oi on op.id = oi.plate_id and op.organ_id = oi.organ_id
join order_body ob on oi.body_id = ob.id and oi.organ_id = ob.organ_id
where
oi.order_id = #{orderNo}
and
oi.organ_id = #{organId}
and
op.id not in (
select oi2.plate_id
@@ -91,7 +94,7 @@
<update id="updateParts"
parameterType="java.lang.Long">
UPDATE order_package_n
UPDATE order_package
SET deleted = true
WHERE id = #{packageId} AND package_no = #{packageNo};
@@ -105,14 +108,14 @@
select distinct
opn.*
from order_package_n opn
from order_package opn
join order_item oi on opn.id = oi.package_id and opn.organ_id = oi.organ_id
left join order_plate op on oi.plate_id = op.id and oi.organ_id = op.organ_id
<where>
<if test="reqVO.orderId !=null">
and opn.order_no = #{reqVO.orderId}
and opn.order_id = #{reqVO.orderId}
</if>
<if test="reqVO.plateNo !=null ">
@@ -161,6 +161,15 @@
</select>
<select id="selectListByOrderId"
resultType="com.cf.imes.module.manage.controller.admin.process.vo.PlateDetails">
select id as plateId ,plate_no,height as length, width,thickness
from order_plate where order_id = #{orderId} and organ_id = #{organId};
</select>
</mapper>
@@ -20,15 +20,27 @@
<update id="updateStatus"
parameterType="java.lang.Long">
parameterType="java.lang.Object">
update order_process_step_item opsi
JOIN order_process_step ops ON opsi.process_step_id = ops.id
SET opsi.status = TRUE,
ops.status = TRUE
ops.status = TRUE,
ops.finish_time = now(),
ops.manager = #{nickname}
WHERE ops.id = #{id};
</update>
<update id="updateStemStatus" parameterType="java.lang.Object">
update order_process_step_item opsi
join order_process_step ops on opsi.process_step_id = ops.id
set opsi.status = true,
ops.manager = #{nickname}
where opsi.process_step_id = #{processStepId} and opsi.name = #{name}
</update>
@@ -41,50 +53,32 @@
ops.status as processStepStatus,
ops.type as type
from order_process_step_item opsi
join order_process_step ops on opsi.process_step_id = ops.id
where opsi.process_step_id = #{id} and opsi.name = #{name};
join order_process_step ops on opsi.process_step_id = ops.id and opsi.organ_id = ops.organ_id
where opsi.process_step_id = #{id} and opsi.name = #{name} and opsi.organ_id = #{organId};
</select>
<resultMap id="PlateMap" type="com.cf.imes.module.manage.controller.admin.process.vo.OrderPlateReqVO">
<resultMap id="PlateMap" type="com.cf.imes.module.manage.controller.admin.process.vo.OrderBodyRespVo">
<collection property="orderBodyRespVoList" ofType="com.cf.imes.module.manage.controller.admin.process.vo.OrderBodyRespVo">
<result property="id" column="bodyId"/>
<result property="name" column="bodyName"/>
</collection>
<collection property="plateDetails" ofType="com.cf.imes.module.manage.controller.admin.process.vo.PlateDetails">
<result property="plateId" column="plateId"/>
<result property="plateNo" column="plateNo"/>
<result property="width" column="width"/>
<result property="length" column="length"/>
<result property="thickness" column="thickness"/>
</collection>
</resultMap>
<select id="selectBodyIds"
resultMap="PlateMap"
parameterType="java.lang.Object">
select
select distinct
oi.body_id as bodyId,
ob.name as bodyName,
op.id as plateId,
op.plate_no as plateNo,
op.width as width,
op.height as length,
op.thickness as thickness
from order_process_step_item opsi
join order_item oi on opsi.body_id = oi.body_id
join order_body ob on oi.body_id = ob.id
join order_plate op on oi.plate_id = op.id
where opsi.process_step_id = #{processStepId} and opsi.name = #{name}
join order_item oi on opsi.body_id = oi.body_id and opsi.organ_id = oi.organ_id
join order_body ob on oi.body_id = ob.id and oi.organ_id = ob.organ_id
where opsi.process_step_id = #{processStepId} and opsi.name = #{name} and opsi.organ_id = #{organId} ;
</select>
@@ -6,7 +6,7 @@
<update id="updateStatusById">
UPDATE order_process_step SET status = true WHERE id = #{id}
UPDATE order_process_step SET status = true,finish_time = now() WHERE id = #{id}
</update>
@@ -30,7 +30,7 @@
</resultMap>
<select id="selectOrder" resultMap="OrderMap" parameterType="com.cf.imes.module.manage.controller.admin.process.vo.ProcessPageReqVO">
<select id="selectOrder" resultMap="OrderMap" parameterType="map">
select distinct
@@ -40,34 +40,36 @@
o.address as address,
ops.status as processStatus,
opsi.name as name,
-- opsi.id as stepItemId,
ops.Name as processName,
ops.manager as manager,
ops.id as processStepId,
ops.processinfo_id as processID,
ops.type as processType
from order_process_step ops
join `order` o on ops.order_id = o.id
join order_process_step_item opsi on ops.id = opsi.process_step_id
join `order` o on ops.order_id = o.id and ops.organ_id = o.organ_id
join order_process_step_item opsi on ops.id = opsi.process_step_id and ops.organ_id = opsi.organ_id
<where>
<if test="processID != null">
and ops.processinfo_id = #{processID}
ops.organ_id = #{organId}
<if test="pageReqVO.processID != null">
and ops.processinfo_id = #{pageReqVO.processID}
</if>
<if test="processStatus != null">
and opsi.status = #{processStatus}
<if test="pageReqVO.processStatus != null">
and opsi.status = #{pageReqVO.processStatus}
</if>
<if test="orderId != null">
and o.id = #{orderId}
<if test="pageReqVO.orderId != null">
and o.id = #{pageReqVO.orderId}
</if>
<if test="customOrderNo != null">
and o.custom_order_no = #{customOrderNo}
<if test="pageReqVO.customOrderNo != null">
and o.custom_order_no = #{pageReqVO.customOrderNo}
</if>
<if test="customer != null">
and o.customer like concat('%',#{customer},'%')
<if test="pageReqVO.customer != null">
and o.customer like concat('%',#{pageReqVO.customer},'%')
</if>
<if test="address != null">
and o.address like concat('%',#{address},'%')
<if test="pageReqVO.address != null">
and o.address like concat('%',#{pageReqVO.address},'%')
</if>
</where>
@@ -88,7 +90,7 @@
<select id="selectSalaryList"
resultMap="priceResultMap"
parameterType="com.cf.imes.module.manage.controller.admin.query.vo.salary.PriceRatePageReqVO">
parameterType="map">
select ops.name as name ,
ops.piece_rate as piece_rate ,
@@ -105,20 +107,26 @@
END) AS total_piece_num
from order_process_step ops
join order_process op on ops.order_process_id = op.id
join order_process op on ops.order_process_id = op.id and ops.organ_id = op.organ_id
<where>
<if test="creator != null">
and ops.creator = #{creator}
<if test="pageReqVO.creator != null">
and ops.manager = #{pageReqVO.creator}
</if>
<if test="name != null">
and ops.name = #{name}
<if test="pageReqVO.name != null">
and ops.name = #{pageReqVO.name}
</if>
<if test="startTime != null and endTime != null">
and ops.update_time between #{startTime} and #{endTime}
<if test="pageReqVO.startTime != null and pageReqVO.endTime != null">
and ops.update_time between #{pageReqVO.startTime} and #{pageReqVO.endTime}
</if>
<if test="pageReqVO.noShowZero == true">
and ops.piece_rate &lt;&gt; 0
</if>
and ops.status = true
and ops.organ_id =#{organId}
and ops.manager != ''
</where>
and ops.status = true
group by name,piece_rate,piece_type,creator;
@@ -131,8 +139,7 @@
<result property="name" column="name"/>
<result property="status" column="status"/>
<result property="manager" column="manager"/>
<result property="planNo" column="planNo"/>
<result property="processDate" column="updateTime"/>
<result property="processDate" column="processDate"/>
</resultMap>
@@ -140,30 +147,45 @@
resultMap="ProductionGroupMap"
parameterType="java.lang.Long">
select ops.name as name,
ops.status as status,
ops.manager as manager,
(CASE
WHEN ops.status =true THEN ops.update_time
ELSE ops.update_time = null END) as updateTime,
op.plan_no as planNo,
opsi.group_name as groupName
select distinct
ops.name as name,
ops.status as status,
ops.manager as manager,
ops.finish_time as processDate,
opsi.group_name as groupName,
ops.sort
from order_process_step ops
join order_process_step_item opsi on ops.id = opsi.process_step_id
join order_plan op on ops.order_id = op.order_nos
where ops.order_id = #{orderNo}
ORDER BY
CASE
WHEN updateTime IS NOT NULL THEN 0 -- 符合条件的情况,将其排在前面
ELSE 1 -- 不符合条件的情况,将其排在后面
END,
-- 如果 updateTime 不为空,按照 updateTime 进行排序
CASE
WHEN updateTime IS NOT NULL THEN updateTime
ELSE ops.update_time
END;
join order_process_step_item opsi on ops.id = opsi.process_step_id and ops.organ_id = opsi.organ_id
where ops.order_id = #{orderNo} and ops.organ_id = #{organId}
order by ops.sort ;
</select>
<!-- select ops.name as name,-->
<!-- ops.status as status,-->
<!-- ops.manager as manager,-->
<!-- (CASE-->
<!-- WHEN ops.status =true THEN ops.update_time-->
<!-- ELSE ops.update_time = null END) as updateTime,-->
<!-- op.plan_no as planNo,-->
<!-- opsi.group_name as groupName-->
<!-- from order_process_step ops-->
<!-- join order_process_step_item opsi on ops.id = opsi.process_step_id-->
<!-- join order_plan op on ops.order_id = op.order_nos-->
<!-- where ops.order_id = #{orderNo}-->
<!-- ORDER BY-->
<!-- CASE-->
<!-- WHEN updateTime IS NOT NULL THEN 0 &#45;&#45; 符合条件的情况,将其排在前面-->
<!-- ELSE 1 &#45;&#45; 不符合条件的情况,将其排在后面-->
<!-- END,-->
<!-- &#45;&#45; 如果 updateTime 不为空,按照 updateTime 进行排序-->
<!-- CASE-->
<!-- WHEN updateTime IS NOT NULL THEN updateTime-->
<!-- ELSE ops.update_time-->
<!-- END;-->
</mapper>
@@ -27,34 +27,35 @@
<select id="selectByPackageId"
parameterType="java.lang.Long"
resultMap="orderItemMap">
select
og.name as name,
ob.room_name as roomName,
ob.name as bodyName,
op.id as palteId,
op.name as plateName,
p.material as plateMaterial,
p.color as palteColor,
p.height as plateHeight,
p.width as plateWidth,
p.thickness as plateThickness,
op.area as plateArea,
op.texture as texture ,
op.remark as remark,
CASE WHEN op.unregular_point_count = 0 THEN '否' ELSE '是' END AS specialShaped,
CASE WHEN front_model_count = 0 or op.back_hole_count or op.side_hole_count THEN '否' ELSE '是' END AS profiling,
CASE WHEN front_hole_count = 0 or op.back_model_count THEN '否' ELSE '是' END AS rowHole
select distinct
og.name as name,
ob.room_name as roomName,
ob.name as bodyName,
op.id as palteId,
op.name as plateName,
ogs.material as plateMaterial,
ogs.color as palteColor,
op.height as plateHeight,
op.width as plateWidth,
op.thickness as plateThickness,
op.area as plateArea,
op.texture as texture ,
op.remark as remark,
op.is_special_shaped as specialShaped,
op.is_sculpt as profiling,
CASE WHEN op.front_hole_count = 0 or op.back_model_count = 0 or op.side_hole_count = 0 THEN false ELSE true END AS rowHole
from order_item oi
join order_plate op on oi.plate_id = op.id
join plate p on op.goods_id = p.goods_id
join order_body ob on oi.body_id = ob.id
join order_group og on ob.id = og.body_id
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
join order_group og on ob.id = og.body_id and ob.organ_id = og.organ_id
where
oi.package_id =#{packageId}
oi.package_id =#{packageId} and oi.organ_id = #{organId}
</select>
@@ -182,11 +183,11 @@
ob.room_name as roomName
from order_item oi
join order_body ob on oi.body_id = ob.id
join order_plate op on oi.plate_id = op.id
join order_goods og on op.goods_id = og.id
join order_body ob on oi.body_id = ob.id and oi.organ_id = ob.organ_id
join order_plate op on oi.plate_id = op.id and oi.organ_id = op.organ_id
join order_goods og on op.goods_id = og.id and op.organ_id = og.organ_id
where oi.order_id = #{orderNo} and oi.package_id = #{packageNo};
where oi.order_id = #{orderNo} and oi.package_id = #{packageNo} and oi.organ_id = #{organId} ;
</select>
@@ -194,7 +195,7 @@
<update id="deleteOrderPack">
UPDATE order_item oi
JOIN order_package_n opn ON oi.package_id = opn.id
JOIN order_package opn ON oi.package_id = opn.id
SET oi.package_id = 0, opn.deleted = true
WHERE opn.id = #{reqVO.packageId} AND opn.package_no = #{reqVO.packageNo};
@@ -225,7 +226,7 @@
delete from order_item
where package_id = #{reqVO.packageId}
and order_id in
(select order_no from order_package_n where id = #{reqVO.packageId} and package_no = #{reqVO.packageNo} );
(select order_id from order_package where id = #{reqVO.packageId} and package_no = #{reqVO.packageNo} );
</delete>
@@ -347,52 +348,60 @@
<resultMap id="PlateDetialsMap" type="com.cf.imes.module.manage.controller.admin.process.vo.OrderPlateReqVO">
<collection property="orderBodyRespVoList" ofType="com.cf.imes.module.manage.controller.admin.process.vo.OrderBodyRespVo">
<result property="id" column="bodyId"/>
<result property="name" column="bodyName"/>
</collection>
<collection property="plateDetails" ofType="com.cf.imes.module.manage.controller.admin.process.vo.PlateDetails">
<resultMap id="PlateDetialsMap" type="com.cf.imes.module.manage.controller.admin.process.vo.PlateDetails">
<result property="plateId" column="plateId"/>
<result property="plateNo" column="plateNo"/>
<result property="width" column="width"/>
<result property="length" column="length"/>
<result property="thickness" column="thickness"/>
</collection>
</resultMap>
<select id="selectByOrderId"
resultMap="PlateDetialsMap"
parameterType="com.cf.imes.module.manage.controller.admin.process.vo.ProcessPlateReqVO">
parameterType="map">
select
oi.body_id as bodyId,
ob.name as bodyName,
select distinct
op.id as plateId,
op.plate_no as plateNo,
op.width as width,
op.height as length,
op.thickness as thickness
from order_item oi
join order_plate op on oi.plate_id = op.id and oi.organ_id = op.organ_id
where oi.organ_id = #{organId} and oi.order_id = #{reqVO.orderId} and oi.body_id = #{reqVO.bodyId}
</select>
<select id="selectPlateListByBodyIds"
resultMap="PlateDetialsMap"
parameterType="java.lang.Long">
select distinct
op.id as plateId,
op.plate_no as plateNo,
op.width as width,
op.height as length,
op.thickness as thickness
from order_item oi
join order_plate op on oi.plate_id = op.id
join order_body ob on oi.body_id = ob.id
<where>
<if test="orderId != null">
and oi.order_id = #{orderId}
</if>
join order_plate op on oi.plate_id = op.id and oi.organ_id = op.organ_id
<if test="bodyId != null">
and oi.body_id = #{bodyId}
</if>
</where>
where oi.organ_id = #{organId} and oi.order_id = #{reqVO.orderId} and
oi.body_id in
<foreach item="id" collection="collect" open="(" separator="," close=")">
#{id}
</foreach>
</select>
@@ -19,18 +19,20 @@
resultMap="partsMap">
select op.name as name,
op.model as model,
op.spec as spec,
op.unit as unit,
op.brand as brand,
op.material as material,
op.factory as factory,
oi.num as num
from order_package_n opn
join order_item oi on opn.id = oi.package_id
join order_parts op on oi.parts_id = op.id
where opn.id = #{packageId}
select distinct
op.name as name,
op.model as model,
op.spec as spec,
op.unit as unit,
op.brand as brand,
op.material as material,
op.factory as factory,
oi.num as num
from order_parts op
join order_item oi on op.id = oi.parts_id and op.organ_id = oi.organ_id
where oi.package_id =#{packageId} and oi.organ_id = #{organId}
</select>
@@ -60,7 +62,7 @@
select
id as partsId,name,model,spec,count(name) as num,unit,brand,factory,remark
from order_parts where order_id = #{orderId}
from order_parts where order_id = #{orderId} and organ_id = #{organId}
group by partsId,name,model,spec,unit,brand,factory,remark;
@@ -24,9 +24,12 @@
o.address as address,
o.customer as customer,
o.phone_number as customerPhone,
count(opn.order_no) as packageQuantity
from `order` o join order_package_n opn on o.id=opn.order_no
where o.id = #{orderNo} and opn.status &lt;&gt; 0;
count(opn.order_id) as packageQuantity
from `order` o
join order_package opn on o.id = opn.order_id and o.organ_id = opn.organ_id
where o.id = #{orderNo} and opn.status &lt;&gt; 0 and o.organ_id = #{organId} ;
</select>
@@ -121,12 +124,12 @@
opn.id as packNo ,
o.id as orderNo,
o.address as address,
((SELECT COUNT(t2.id) FROM order_package_n t2 WHERE t2.create_time &lt;= opn.create_time and t2.order_no =#{orderNo})) as packNum
((SELECT COUNT(t2.id) FROM order_package t2 WHERE t2.create_time &lt;= opn.create_time and t2.order_id =#{orderNo})) as packNum
from `order` o
join order_package_n opn on o.id = opn.order_no
join order_package opn on o.id = opn.order_id and o.organ_id = opn.organ_id
where opn.order_no =#{orderNo} and opn.id = #{packageNo} and opn.status &lt;&gt; 0
where opn.order_id =#{orderNo} and opn.id = #{packageNo} and opn.status &lt;&gt; 0 and opn.organ_id = #{organId}
order by opn.create_time ;
</select>
@@ -105,7 +105,14 @@ public class LabelServiceImpl implements LabelService {
@Override
public List<LabelDO> list(String type) {
return labelMapper.selectList(new LambdaQueryWrapperX<LabelDO>().eqIfPresent(LabelDO::getType, type));
return labelMapper.selectList(new LambdaQueryWrapperX<LabelDO>()
.eq(LabelDO::getOrganId,getUserOrganId())
.eqIfPresent(LabelDO::getType, type));
// return labelMapper.selectList(new LambdaQueryWrapperX<LabelDO>()
// .eqIfPresent(LabelDO::getType, type)
// .eq(LabelDO::getOrganId,getUserOrganId()))
// .stream().map( m -> m.setTemplate(JsonUtils.unzipString(m.getTemplate()))).collect(Collectors.toList());
}