Эх сурвалжийг харах

Merge remote-tracking branch 'origin/master'

ezhizao_zx 1 сар өмнө
parent
commit
7ba5ebbf5d

+ 29 - 0
src/main/java/cn/ezhizao/project/business/controller/BizOutsourcedOrderController.java

@@ -55,6 +55,8 @@ private IBizDayworkService bizDayworkService;
     @Resource
     private IBizDayworkItemService bizDayworkItemService;
     @Resource
+    private IBizTechnologicalProcessDetailDrawingService bizTechnologicalProcessDetailDrawingService;
+    @Resource
     HttpServletRequest request;
     /**
      * 查询外协单主
@@ -162,6 +164,22 @@ private IBizDayworkService bizDayworkService;
 
         return success(outsourcedOrder);
     }
+    @Log(title = "外协查询图纸", businessType = BusinessType.SELECT)
+    @PostMapping(value = "/getDrawingDetail")
+    public AjaxResult getDrawingDetail(@RequestBody BizOutsourcedOrderDetail BizOutsourcedOrderDetail) {
+        List<BizOutsourcedOrderDetailProcess> detailProcessList = bizOutsourcedOrderDetailProcessService.query().eq("detail_id", BizOutsourcedOrderDetail.getId()).list();
+        if(detailProcessList.isEmpty()){
+            return error("未查询到该明细的工序");
+        }
+        List<String> processCodeList = detailProcessList.stream().map(BizOutsourcedOrderDetailProcess::getProcessCode).collect(Collectors.toList());
+        String technologyVersion = detailProcessList.get(0).getTechnologyVersion();
+        Long productId =detailProcessList.get(0).getProductId();
+        BizTechnologicalProcessDetailDrawing bizTechnologicalProcessDetailDrawing = new BizTechnologicalProcessDetailDrawing();
+        bizTechnologicalProcessDetailDrawing.setProcessCodes(processCodeList);
+        bizTechnologicalProcessDetailDrawing.setProductId(productId);
+        bizTechnologicalProcessDetailDrawing.setProductVersion(technologyVersion);
+        return success(bizTechnologicalProcessDetailDrawingService.getList(bizTechnologicalProcessDetailDrawing));
+    }
     @Log(title = "外协查询箱号", businessType = BusinessType.SELECT)
     @GetMapping(value = "/carrierForOutsource")
     public TableDataInfo carrierForOutsource(BizCarrier carrier) {
@@ -178,6 +196,17 @@ private IBizDayworkService bizDayworkService;
         BizOutsourcedOrderDetail detail = bizOutsourcedOrderDetailService.getById(bizOutsourcedOrderDetail.getDetailId());
         detail.setNewCarrierCount(bizOutsourcedOrderDetail.getCarrierIds().size());
         List<BizCarrier> carriers = bizCarrierService.query().in("id", bizOutsourcedOrderDetail.getCarrierIds()).list();
+
+        // 获取carriers中所有categoryId的集合,判断是载具类型是否一致
+        Set<Long> categoryIds = carriers.stream()
+                .map(BizCarrier::getCategoryId) // 提取categoryId
+                .collect(Collectors.toSet());   // 收集到Set中
+
+        // 判断categoryId的数量是否大于1
+        if (categoryIds.size() > 1) {
+            return AjaxResult.error("请选择相同类型的载具。");
+        }
+
         // 获取箱类型盘点是否有一箱多批的箱子
         List<BizCarrierCategory> bizCarrierCategories = bizCarrierCategoryService.query().in( "id", carriers.isEmpty() ? Collections.singletonList(0L): carriers.stream().map(BizCarrier::getCategoryId).collect(Collectors.toList())).list();
         if (bizCarrierCategories.stream().anyMatch(v -> v.getIsAllowMore().equals(1)) && bizCarrierCategories.stream().anyMatch(v -> v.getIsAllowMore().equals(0))) {

+ 93 - 0
src/main/java/cn/ezhizao/project/business/domain/BizTechnologicalProcessDetailDrawing.java

@@ -0,0 +1,93 @@
+package cn.ezhizao.project.business.domain;
+
+import cn.ezhizao.framework.aspectj.lang.annotation.Excel;
+import cn.ezhizao.framework.web.domain.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+
+/**
+ * 电子图纸对象 biz_technological_process_detail_drawing
+ *
+ * @author ezhizao
+ * @date 2024-05-30
+ */
+@Data
+@TableName(value = "biz_technological_process_detail_drawing")
+public class BizTechnologicalProcessDetailDrawing extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 租户id,厂别或类型1:Ⅰ类2:Ⅱ类 */
+    @ApiModelProperty(value = "${comment}")
+    private Long tenantId;
+
+    /** 工艺工序id */
+    @ApiModelProperty(value = "${comment}")
+    private Long technologicalProcessDetailId;
+
+    /** 批准人id */
+    @ApiModelProperty(value = "${comment}")
+    private Long issuerId;
+
+    /** 替换前图纸Id */
+    @ApiModelProperty(value = "${comment}")
+    private Long parentId;
+    /** 审核人id */
+    @ApiModelProperty(value = "${comment}")
+    private Long reviewerId;
+    /** 制作人id */
+    @ApiModelProperty(value = "${comment}")
+    private Long producerId;
+    @ApiModelProperty(value = "审核人")
+    private String reviewer;
+    @ApiModelProperty(value = "制作人")
+    private String producer;
+    @ApiModelProperty(value = "批准人")
+    private String issuer;
+    /** 审核人id */
+    @ApiModelProperty(value = "${comment}")
+    private Long voidedId;
+    @ApiModelProperty(value = "作废人")
+    private String voided;
+
+    @ApiModelProperty(value = "图纸状态:0:待审核,1待批准,2:待发行,3:作废")
+    private Integer status;
+    @ApiModelProperty(value = "标识")
+    private Boolean  identification;
+    /** 工艺版本id */
+    @TableField(exist = false)
+    @ApiModelProperty(value = "${comment}")
+    private Long technologicalProcessId;
+    /** 图纸地址 */
+    @Excel(name = "图纸地址")
+    @ApiModelProperty(value = "图纸地址")
+    private String url;
+
+    /** 图纸名称 */
+    @Excel(name = "图纸名称")
+    @ApiModelProperty(value = "图纸名称")
+    private String drawingName;
+
+    /** 会签类型 */
+    @Excel(name = "会签类型")
+    @ApiModelProperty(value = "会签类型")
+    private String pattern;
+    //用于查询虚拟字段
+    @ApiModelProperty(value = "${comment}")
+    private Long productId;
+
+    @ApiModelProperty(value = "工序编码")
+    private String processCode;
+    @Excel(name = "工艺版本")
+    @ApiModelProperty(value = "工艺版本编码")
+    private String productVersion;
+    @TableField(exist = false)
+    private List<String> processCodes;
+    @TableField(exist = false)
+    private String processAlias;
+}

+ 25 - 0
src/main/java/cn/ezhizao/project/business/mapper/BizTechnologicalProcessDetailDrawingMapper.java

@@ -0,0 +1,25 @@
+package cn.ezhizao.project.business.mapper;
+
+
+import cn.ezhizao.project.business.domain.BizTechnologicalProcessDetailDrawing;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+import java.util.List;
+
+/**
+ * 电子图纸Mapper接口
+ *
+ * @author ezhizao
+ * @date 2024-05-30
+ */
+public interface BizTechnologicalProcessDetailDrawingMapper extends BaseMapper<BizTechnologicalProcessDetailDrawing>
+{
+    /**
+     * 查询电子图纸列表
+     *
+     * @param bizTechnologicalProcessDetailDrawing 电子图纸
+     * @return 电子图纸集合
+     */
+    public List<BizTechnologicalProcessDetailDrawing> getList(BizTechnologicalProcessDetailDrawing bizTechnologicalProcessDetailDrawing);
+
+}

+ 25 - 0
src/main/java/cn/ezhizao/project/business/service/IBizTechnologicalProcessDetailDrawingService.java

@@ -0,0 +1,25 @@
+package cn.ezhizao.project.business.service;
+
+
+import cn.ezhizao.project.business.domain.BizTechnologicalProcessDetailDrawing;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.List;
+
+/**
+ * 电子图纸Service接口
+ *
+ * @author ezhizao
+ * @date 2024-05-30
+ */
+public interface IBizTechnologicalProcessDetailDrawingService extends IService<BizTechnologicalProcessDetailDrawing>
+{
+    /**
+     * 查询电子图纸列表
+     *
+     * @param bizTechnologicalProcessDetailDrawing 电子图纸
+     * @return 电子图纸集合
+     */
+    public List<BizTechnologicalProcessDetailDrawing> getList(BizTechnologicalProcessDetailDrawing bizTechnologicalProcessDetailDrawing);
+
+}

+ 38 - 0
src/main/java/cn/ezhizao/project/business/service/impl/BizTechnologicalProcessDetailDrawingServiceImpl.java

@@ -0,0 +1,38 @@
+package cn.ezhizao.project.business.service.impl;
+
+
+import cn.ezhizao.project.business.domain.BizTechnologicalProcessDetailDrawing;
+import cn.ezhizao.project.business.mapper.BizTechnologicalProcessDetailDrawingMapper;
+import cn.ezhizao.project.business.service.IBizTechnologicalProcessDetailDrawingService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * 电子图纸Service业务层处理
+ *
+ * @author ezhizao
+ * @date 2024-05-30
+ */
+@Service
+public class BizTechnologicalProcessDetailDrawingServiceImpl extends ServiceImpl<BizTechnologicalProcessDetailDrawingMapper, BizTechnologicalProcessDetailDrawing> implements IBizTechnologicalProcessDetailDrawingService
+{
+    @Resource
+    private BizTechnologicalProcessDetailDrawingMapper bizTechnologicalProcessDetailDrawingMapper;
+
+    /**
+     * 查询电子图纸列表
+     *
+     * @param bizTechnologicalProcessDetailDrawing 电子图纸
+     * @return 电子图纸
+     */
+    @Override
+    public List<BizTechnologicalProcessDetailDrawing> getList(BizTechnologicalProcessDetailDrawing bizTechnologicalProcessDetailDrawing)
+    {
+        return bizTechnologicalProcessDetailDrawingMapper.getList(bizTechnologicalProcessDetailDrawing);
+    }
+
+
+}

+ 1 - 1
src/main/resources/mybatis/business/BizCarrierMapper.xml

@@ -29,7 +29,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         select t1.id,t1.category_id,t1.code,t1.qc_code,t1.remark,t1.tenant_id,t1.is_allow_more,COALESCE((SELECT t2.is_abandoned FROM biz_carrier_reject t2 WHERE t1.id = t2.carrier_id ORDER BY t2.create_time DESC LIMIT 1), 0) AS is_abandoned
         FROM biz_carrier t1 left join biz_carrier_category t2 on t2.id = t1.category_id
         <trim prefix=" WHERE" suffix="" suffixOverrides="AND">
-            t1.deleted = 0 and t1.is_inspection = 0 and t2.is_none = 0
+            t1.deleted = 0 and t2.is_inspection = 0 and t2.is_none = 0
             <if test="categoryId != null  and categoryId != 0"> AND t1.category_id = #{categoryId}</if>
             <if test="code != null  and code != ''"> AND  t1.code=#{code}</if>
             <!--  未关联任何生产单  -->

+ 63 - 0
src/main/resources/mybatis/business/BizTechnologicalProcessDetailDrawingMapper.xml

@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="cn.ezhizao.project.business.mapper.BizTechnologicalProcessDetailDrawingMapper">
+
+    <resultMap type="cn.ezhizao.project.business.domain.BizTechnologicalProcessDetailDrawing" id="BizTechnologicalProcessDetailDrawingResult">
+        <id column="id" property="id"/>
+        <association property="processAlias" column="process_code" javaType="java.lang.String" select="getProcessAlias"/>
+    </resultMap>
+    <select id="getProcessAlias" resultType="java.lang.String">
+        select process_alias from biz_process where deleted = 0 and process_code = #{processCode}
+    </select>
+    <select id="getList" parameterType="BizTechnologicalProcessDetailDrawing" resultMap="BizTechnologicalProcessDetailDrawingResult">
+        SELECT t1.* FROM biz_technological_process_detail_drawing t1
+        left join biz_technological_process_detail t2 on t1.technological_process_detail_id = t2.id
+        <trim prefix=" WHERE" suffix="" suffixOverrides="AND">
+            t1.deleted = 0 and t1.abandoned = 0 and t1.status = 2
+            <if test="url != null  and url != ''"> AND t1.url = #{url}</if>
+            <if test="productId != null">and t1.product_id = #{productId} </if>
+            <if test="productVersion != null and productVersion !=''">AND t1.product_version = #{productVersion}</if>
+            <if test="processCode != null and processCode != ''">AND t1.process_code = #{processCode}</if>
+            <if test="processCodes != null and processCodes.size > 0">
+                <foreach collection="processCodes" item="item" open="AND t1.process_code IN (" close=")" separator=",">
+                    #{item}
+                </foreach>
+            </if>
+            <if test="drawingName != null  and drawingName != ''"> AND t1.drawing_name = #{drawingName}</if>
+            <if test="technologicalProcessId !=null and technologicalProcessId !=''">AND t1.technological_process_detail_id IN (select id from biz_technological_process_detail where deleted = 0  AND technological_process_id = #{technologicalProcessId})</if>
+        </trim>
+        order by t2.process_step_number, t1.create_time desc
+    </select>
+
+    <select id="getDrawingList" parameterType="BizTechnologicalProcessDetailDrawing" resultMap="BizTechnologicalProcessDetailDrawingResult">
+        SELECT * FROM biz_technological_process_detail_drawing
+        <trim prefix=" WHERE" suffix="" suffixOverrides="AND">
+            deleted = 0
+            <if test="url != null  and url != ''"> AND url = #{url}</if>
+            <if test="status != null ">AND status = #{status}</if>
+            <if test="technologicalProcessDetailId != null  and technologicalProcessDetailId != ''"> AND technological_process_detail_id = #{technologicalProcessDetailId}</if>
+            <if test="drawingName != null  and drawingName != ''"> AND drawing_name = #{drawingName}</if>
+            <if test="drawingNumber != null and drawingNumber != ''">AND technological_process_detail_id IN (select id from biz_technological_process_detail where deleted = 0 and product_id IN (select id from biz_product where deleted = 0 and drawing_number  like concat('%', #{drawingNumber}, '%'))) </if>
+            <if test="companyAlias != null and companyAlias != ''">AND technological_process_detail_id IN (select id from biz_technological_process_detail where deleted = 0 and product_id IN (select id from biz_product where deleted = 0 and company_alias  like concat('%', #{companyAlias}, '%'))) </if>
+            <if test="specification != null and specification != ''">AND technological_process_detail_id IN (select id from biz_technological_process_detail where deleted = 0 and product_id IN (select id from biz_product where deleted = 0 and specification  like concat('%', #{specification}, '%'))) </if>
+            <if test="description != null and description != ''">AND technological_process_detail_id IN (select id from biz_technological_process_detail where deleted = 0 and product_id IN (select id from biz_product where deleted = 0 and description  like concat('%', #{description}, '%'))) </if>
+            <if test="technologyVersion !=null and technologyVersion !=''">AND technological_process_detail_id IN(select id from biz_technological_process_detail where deleted = 0 and  technology_version  like concat('%', #{technologyVersion}, '%')) </if>
+            <if test="processAlias !=null and processAlias !=''">AND technological_process_detail_id IN(select id from biz_technological_process_detail where deleted = 0 and  process_alias  like concat('%', #{processAlias}, '%')) </if>
+            <if test="pattern != null and pattern != ''">AND pattern like concat('%', #{pattern}, '%')</if>
+            <if test="technologicalProcessId !=null and technologicalProcessId !=''">AND technological_process_detail_id IN (select id from biz_technological_process_detail where deleted = 0  AND technological_process_id = #{technologicalProcessId})</if>
+        </trim>
+        order by create_time desc
+    </select>
+
+    <delete id="physicalDelete">
+        DELETE FROM biz_technological_process_detail_drawing
+        <trim prefix=" WHERE" suffix="" suffixOverrides="AND">
+            <if test="id != null">
+                id = #{id} AND
+            </if>
+       <!-- 删除条件为其他外键可以在这里加 -->
+        </trim>
+    </delete>
+</mapper>