Browse Source

新增根据服务单元id和用户id查询所有sop

wangliang 1 year ago
parent
commit
afe2302428

+ 62 - 0
sop-business/src/main/java/com/qmth/sop/business/bean/result/SopInfoResult.java

@@ -0,0 +1,62 @@
+package com.qmth.sop.business.bean.result;
+
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+
+/**
+ * @Description: 流程节点result
+ * @Param:
+ * @return:
+ * @Author: wangliang
+ * @Date: 2021/8/6
+ */
+public class SopInfoResult implements Serializable {
+
+    @ApiModelProperty(value = "sopid")
+    @JsonSerialize(using = ToStringSerializer.class)
+    private Long id;
+
+    @ApiModelProperty(value = "sop单号")
+    private String sopNo;
+
+    @ApiModelProperty(value = "crm单号")
+    private String crmNo;
+
+    @ApiModelProperty(value = "crm名称")
+    private String crmName;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getSopNo() {
+        return sopNo;
+    }
+
+    public void setSopNo(String sopNo) {
+        this.sopNo = sopNo;
+    }
+
+    public String getCrmNo() {
+        return crmNo;
+    }
+
+    public void setCrmNo(String crmNo) {
+        this.crmNo = crmNo;
+    }
+
+    public String getCrmName() {
+        return crmName;
+    }
+
+    public void setCrmName(String crmName) {
+        this.crmName = crmName;
+    }
+}

+ 10 - 0
sop-business/src/main/java/com/qmth/sop/business/mapper/TBSopInfoMapper.java

@@ -2,6 +2,7 @@ package com.qmth.sop.business.mapper;
 
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.qmth.sop.business.bean.result.SopInfoResult;
 import com.qmth.sop.business.entity.TBSopInfo;
 import com.qmth.sop.business.entity.TBSopInfo;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Param;
 
 
@@ -89,4 +90,13 @@ public interface TBSopInfoMapper extends BaseMapper<TBSopInfo> {
      * @return
      * @return
      */
      */
     List<String> findFlowPassageByCrmNo(@Param("crmNo") String crmNo, @Param("userId") Long userId);
     List<String> findFlowPassageByCrmNo(@Param("crmNo") String crmNo, @Param("userId") Long userId);
+
+    /**
+     * 根据serviceId和userId查询所有sop信息
+     *
+     * @param serviceId
+     * @param userId
+     * @return
+     */
+    List<SopInfoResult> findFlowByServiceId(@Param("serviceId") Long serviceId, @Param("userId") Long userId);
 }
 }

+ 9 - 0
sop-business/src/main/java/com/qmth/sop/business/service/TBSopInfoService.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
 import com.qmth.sop.business.bean.params.*;
 import com.qmth.sop.business.bean.params.*;
 import com.qmth.sop.business.bean.result.FlowResult;
 import com.qmth.sop.business.bean.result.FlowResult;
 import com.qmth.sop.business.bean.result.FlowTaskResult;
 import com.qmth.sop.business.bean.result.FlowTaskResult;
+import com.qmth.sop.business.bean.result.SopInfoResult;
 import com.qmth.sop.business.entity.*;
 import com.qmth.sop.business.entity.*;
 import com.qmth.sop.common.enums.FlowApprovePassEnum;
 import com.qmth.sop.common.enums.FlowApprovePassEnum;
 
 
@@ -104,6 +105,14 @@ public interface TBSopInfoService extends IService<TBSopInfo> {
      */
      */
     List<String> findFlowPassageByCrmNo(String crmNo);
     List<String> findFlowPassageByCrmNo(String crmNo);
 
 
+    /**
+     * 根据serviceId和userId查询所有sop信息
+     *
+     * @param serviceId
+     * @return
+     */
+    List<SopInfoResult> findFlowByServiceId(Long serviceId, Long userId);
+
     /**
     /**
      * sop自动审批
      * sop自动审批
      *
      *

+ 15 - 4
sop-business/src/main/java/com/qmth/sop/business/service/impl/TBSopInfoServiceImpl.java

@@ -7,10 +7,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.qmth.sop.business.activiti.service.ActivitiService;
 import com.qmth.sop.business.activiti.service.ActivitiService;
 import com.qmth.sop.business.bean.params.*;
 import com.qmth.sop.business.bean.params.*;
-import com.qmth.sop.business.bean.result.CrmProjectResult;
-import com.qmth.sop.business.bean.result.FlowFormWidgetResult;
-import com.qmth.sop.business.bean.result.FlowResult;
-import com.qmth.sop.business.bean.result.FlowTaskResult;
+import com.qmth.sop.business.bean.result.*;
 import com.qmth.sop.business.entity.*;
 import com.qmth.sop.business.entity.*;
 import com.qmth.sop.business.mapper.TBSopInfoMapper;
 import com.qmth.sop.business.mapper.TBSopInfoMapper;
 import com.qmth.sop.business.service.*;
 import com.qmth.sop.business.service.*;
@@ -785,4 +782,18 @@ public class TBSopInfoServiceImpl extends ServiceImpl<TBSopInfoMapper, TBSopInfo
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         SysUser sysUser = (SysUser) ServletUtil.getRequestUser();
         return this.baseMapper.findFlowPassageByCrmNo(crmNo, sysUser.getId());
         return this.baseMapper.findFlowPassageByCrmNo(crmNo, sysUser.getId());
     }
     }
+
+    /**
+     * 根据serviceId和userId查询所有sop信息
+     *
+     * @param serviceId
+     * @param userId
+     * @return
+     */
+    @Override
+    public List<SopInfoResult> findFlowByServiceId(Long serviceId, Long userId) {
+        Optional.ofNullable(serviceId).orElseThrow(() -> ExceptionResultEnum.SERVICE_ID_NO_DATA.exception());
+        Optional.ofNullable(serviceId).orElseThrow(() -> ExceptionResultEnum.ERROR.exception("用户id不能为空"));
+        return this.baseMapper.findFlowByServiceId(serviceId, userId);
+    }
 }
 }

+ 20 - 0
sop-business/src/main/resources/mapper/TBSopInfoMapper.xml

@@ -153,4 +153,24 @@
                 and tffa.status not in('FINISH', 'END')
                 and tffa.status not in('FINISH', 'END')
         </where>
         </where>
     </select>
     </select>
+
+    <select id="findFlowByServiceId" resultType="com.qmth.sop.business.bean.result.SopInfoResult">
+        select
+            tbsi.id,
+            tbsi.sop_no as sopNo,
+            tbsi.crm_no as crmNo,
+            tbc.name as crmName
+        from
+            t_b_sop_info tbsi
+                join t_b_sop_info_detail tbsid on tbsid.sop_info_id = tbsi.id
+                join t_b_crm tbc on tbc.crm_no = tbsi.crm_no
+        <where> 1 = 1
+            <if test="userId != null and userId != ''">
+                and (tbsid.engineer_user_id is not null and tbsid.engineer_user_id = #{userId})
+            </if>
+            <if test="serviceId != null and serviceId != ''">
+                and tbsi.service_id = #{serviceId}
+            </if>
+        </where>
+    </select>
 </mapper>
 </mapper>

+ 2 - 0
sop-common/src/main/java/com/qmth/sop/common/enums/ExceptionResultEnum.java

@@ -93,6 +93,8 @@ public enum ExceptionResultEnum {
 
 
     SOP_DETAIL_INFO_NO_DATA(HttpStatus.INTERNAL_SERVER_ERROR, 5000033, "没有sop明细数据"),
     SOP_DETAIL_INFO_NO_DATA(HttpStatus.INTERNAL_SERVER_ERROR, 5000033, "没有sop明细数据"),
 
 
+    SERVICE_ID_NO_DATA(HttpStatus.INTERNAL_SERVER_ERROR, 5000034, "服务单元id不能为空"),
+
     /**
     /**
      * 401
      * 401
      */
      */