jinlin
2023-12-07 547d68b874dc4bb51d6ac39cc0fec2c227028ef0
修改
10个文件已修改
147 ■■■■ 已修改文件
modules/mainPart/src/main/java/com/zt/life/modules/testCheckOrder/dto/CheckOrderDto.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
modules/mainPart/src/main/java/com/zt/life/modules/testCheckOrder/model/TestCheckOrder.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
modules/mainPart/src/main/java/com/zt/life/modules/testCheckOrder/service/TestCheckOrderService.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
modules/mainPart/src/main/resources/mapper/testCheckOrder/TestCheckOrderListDao.xml 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
web/packages/components/zt-dialog/src/zt-dialog.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
web/src/views/modules/configItemWarehouse/ConfigItemWarehouse-AddOrUpdate.vue 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
web/src/views/modules/project/Project-select.vue 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
web/src/views/modules/sys/task/stay-task.vue 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
web/src/views/modules/testCheckOrder/TestCheckOrder-AddOrUpdate.vue 54 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
zt/core/src/main/resources/mapper/workflow/WfRunTaskDao.xml 42 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
modules/mainPart/src/main/java/com/zt/life/modules/testCheckOrder/dto/CheckOrderDto.java
@@ -5,6 +5,7 @@
import com.zt.life.modules.testCheckOrder.model.TestCheckOrder;
import com.zt.life.modules.testCheckOrder.model.TestCheckOrderList;
import com.zt.life.sys.dto.OssDto;
import com.zt.modules.workflow.dto.FlowInfoDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -20,6 +21,7 @@
    private Long configItemId;//配置项ID
    private String pageCode;//配置项类型
    private FlowInfoDto flowInfoDto;
    @ApiModelProperty(value = "测试项目基本信息")
    private Project project;
modules/mainPart/src/main/java/com/zt/life/modules/testCheckOrder/model/TestCheckOrder.java
@@ -33,7 +33,7 @@
    private Long configItemId;
    @ApiModelProperty(value = "配置项类型")
    private Long pageCode;
    private String pageCode;
    @ApiModelProperty(value = "编号")
    private String code;
modules/mainPart/src/main/java/com/zt/life/modules/testCheckOrder/service/TestCheckOrderService.java
@@ -17,6 +17,7 @@
import com.zt.life.sys.dto.OssDto;
import com.zt.modules.coderule.service.SysCodeRuleService;
import com.zt.modules.workflow.dto.FlowInfoDto;
import com.zt.modules.workflow.service.WorkflowService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zt.common.db.query.QueryFilter;
@@ -44,6 +45,9 @@
    @Autowired
    private SysCodeRuleService sysCodeRuleService;
    @Autowired
    private WorkflowService workflowService;
    /**
@@ -82,6 +86,7 @@
        } else {
            TestCheckOrder checkOrder = new TestCheckOrder();
            checkOrder.setPageCode(pageCode);
            data.setCheckOrder(checkOrder);
            List<TestCheckOrderList> checkOrderList = checkOrderListService.itemList(pageCode + "_check_item");
            data.setCheckOrderList(checkOrderList);
@@ -117,6 +122,16 @@
                checkOrderListService.insert(checkOrderList);
            }
        }
        Long bizId = checkOrderDto.getCheckOrder().getId();
        FlowInfoDto flowInfoDto = checkOrderDto.getFlowInfoDto();
        if (flowInfoDto != null && flowInfoDto.getSubmitType() != null && "tj,bl".contains(flowInfoDto.getSubmitType())) {
            if ("tj".equals(flowInfoDto.getSubmitType())) {
                workflowService.startFlow(flowInfoDto.getFlowCode(), bizId);
            }
            workflowService.approvePass(flowInfoDto.getFlowCode(), bizId, flowInfoDto.getStepIdMark());
        }
        return checkId;
    }
}
modules/mainPart/src/main/resources/mapper/testCheckOrder/TestCheckOrderListDao.xml
@@ -13,7 +13,8 @@
    <select id="itemList" resultType="com.zt.life.modules.testCheckOrder.model.TestCheckOrderList">
        SET @row_number = 0;
        SELECT  dd.dict_label AS checkContent,
        (@row_number := @row_number + 1) AS no
        (@row_number := @row_number + 1) AS no,
        #{pageCode}
        FROM sys_dict_type dt
        JOIN sys_dict_data dd ON dt.ID = dd.DICT_TYPE_ID
        <where>
web/packages/components/zt-dialog/src/zt-dialog.vue
@@ -106,7 +106,7 @@
                    }
                    if (this.$parent.init) {
                        console.log(id, row, 'id row')
                        console.log(id, row,this.stepMarker, 'id row')
                        this.$parent.init(id, row)
                    }
                    if (id && this.$parent.getInfo) {
web/src/views/modules/configItemWarehouse/ConfigItemWarehouse-AddOrUpdate.vue
@@ -384,13 +384,16 @@
      },
      // 表单提交
      async formSubmit(submitType) {
/*        if (this.stepMarker=='wplz_first' && submitType == 'bl') {
          for(666)
          if (this.pageNameCode[row.itemName] && !row.isCheck) {
            alert(444)
            return
        if (this.showColumn && submitType == 'bl') {
          for (let item of this.dataForm.configItemList) {
            if (item) {
              if (this.pageNameCode[item.itemName] && !item.checkId) {
                this.$alert("有未提交的检查单")
                return
              }
            }
          }
        }*/
        }
        if (submitType == 'tj' || submitType == 'bl') {
          let flowInfo = {
            flowCode: 'pzxrk',
web/src/views/modules/project/Project-select.vue
@@ -70,11 +70,12 @@
    methods: {
      init(tableName,row) {
        this.dataForm.tableName = tableName
        this.pageCode = row.pageCode
        if(row.pageCode!=null){
          this.pageCode = row.pageCode
        }
        this.$nextTick(()=>{
          this.$refs.tableObj.query()
        })
        // console.log(this.dataForm,'this.dataForm')
      },
      async selectedProject(row) {
        console.log(row, 'row')
web/src/views/modules/sys/task/stay-task.vue
@@ -57,6 +57,7 @@
    <!-- 待办任务弹窗弹窗, 新增 / 修改 -->
    <ItemCirculatOrder ref="itemCirculatOrder" @refreshDataList="getQuery()"></ItemCirculatOrder>
    <ConfigItemWarehouse ref="configItemWarehouse" @refreshDataList="getQuery()"></ConfigItemWarehouse>
    <TestCheckOrder ref="testCheckOrder" @refreshDataList="getQuery()"></TestCheckOrder>
    <!--    </zt-table-wraper>-->
  </div>
</template>
@@ -66,6 +67,7 @@
  import InfiniteLoading from 'vue-infinite-loading'
  import ItemCirculatOrder from '@/views/modules/itemCirculatOrder/ItemCirculatOrder-AddOrUpdate'
  import ConfigItemWarehouse from '@/views/modules/configItemWarehouse/ConfigItemWarehouse-AddOrUpdate'
  import TestCheckOrder from '@/views/modules/testCheckOrder/TestCheckOrder-AddOrUpdate'
  export default {
    data() {
@@ -105,7 +107,8 @@
    components: {
      InfiniteLoading,
      ItemCirculatOrder,
      ConfigItemWarehouse
      ConfigItemWarehouse,
      TestCheckOrder
    },
    created() {
      if (this.$route.path.indexOf('taskCenter') > 0 || this.system == 'smj') {
@@ -217,6 +220,8 @@
          this.$refs.itemCirculatOrder.$refs.dialog.init(row.bizId, row)
        } else if (row.flowCode === 'pzxrk') {
          this.$refs.configItemWarehouse.$refs.dialog.init(row.bizId, row)
        }else if (row.flowCode === 'csjcd') {
          this.$refs.testCheckOrder.$refs.dialog.init(row.bizId, row)
        } else {
          if (row.stepRouterId === null) {
            this.$tip.alert("没有配置菜单id")
web/src/views/modules/testCheckOrder/TestCheckOrder-AddOrUpdate.vue
@@ -1,5 +1,5 @@
<template>
  <zt-dialog ref="dialog" column="2" @confirm="formSubmit" :append-to-body="true">
  <zt-dialog ref="dialog" column="2" @confirm="formSubmit" :stepMarker="stepMarker" :append-to-body="true">
    <el-form :model="dataForm" :inline="true" ref="dataForm" style="padding-top: 0" :disabled="dataForm.disabled"
             label-width="120px" class="testCheckFormAuto">
      <div>
@@ -16,10 +16,15 @@
            <el-input v-model="dataForm.project.softwareName" placeholder="项目名称"></el-input>
          </el-form-item>
          <el-form-item class="marginTopAndMarginBottom3" label="检查人" style="width: 49%">
            <el-input v-model="dataForm.testCheckOrder.examiner" placeholder="检查人"></el-input>
            <el-input :disabled="stepMarker!=='csjcd_first'" v-model="dataForm.testCheckOrder.examiner" placeholder="检查人"></el-input>
          </el-form-item>
          <el-form-item class="marginTopAndMarginBottom3" label="检查时间" style="width: 49%">
            <el-input v-model="dataForm.testCheckOrder.examDate" placeholder="检查时间"></el-input>
            <el-date-picker
              :disabled="stepMarker!=='csjcd_first'"
              v-model="dataForm.testCheckOrder.examDate"
              type="date"
              placeholder="请选择检查时间">
            </el-date-picker>
          </el-form-item>
        </div>
        <div style="border-bottom: 1px solid rgba(0,0,0,.2);">
@@ -41,7 +46,7 @@
                </el-table-column>
                <el-table-column prop="checkResult" align="center" width="150" label="检查结果">
                  <template v-slot="{ row }">
                    <zt-dict v-model="row.checkResult" dict="is_or_not" :radio="true"></zt-dict>
                    <zt-dict v-model="row.checkResult" dict="tristate1" :radio="true"></zt-dict>
                  </template>
                </el-table-column>
                <el-table-column prop="remark" label="备注" width="100" align="center">
@@ -92,7 +97,7 @@
          </div>
          <div class="el-border-left-right acceptDate1" style="width: 40%;height: 40px;">
            <el-form-item style="width: 100%;padding-left:20px;margin:0;">
              <el-input v-model="dataForm.testCheckOrder.processor" placeholder="处理人"></el-input>
              <span>{{dataForm.testCheckOrder.processor}}</span>
            </el-form-item>
          </div>
          <div style="width: 84px;text-align: center;font-weight: 600">
@@ -100,7 +105,7 @@
          </div>
          <div class="el-border-left acceptDate1" style="width: 40%;height: 40px;">
            <el-form-item label-width="150px" style="width: 100%;padding-left:20px;margin-bottom:0">
              <el-input v-model="dataForm.testCheckOrder.verifier" placeholder="验证人"></el-input>
              <span>{{dataForm.testCheckOrder.verifier}}</span>
            </el-form-item>
          </div>
        </div>
@@ -116,6 +121,7 @@
  export default {
    data() {
      return {
        stepMarker: '',
        configDetailRow: null,
        subtitle: '',
        pageName: {plan: '软件测试计划', explain: '软件测试说明', record: '软件测试记录', report: '软件测试报告'},
@@ -156,9 +162,18 @@
          this.dataForm.projectId = row.projectId
        }
        console.log(id, row, this.subtitle, '软件测试计划检查单')
        if (this.configDetailRow) {
          if (!row.stepMarker) {
            this.stepMarker = 'csjcd_first'
            this.title = '发起测试检查单'
          } else {
            this.title = row.stepName
            this.stepMarker = row.stepMarker
          }
        }
        //this.dataForm.disabled
        this.getInfo()
        //console.log(this.dataForm.id, this.dataForm.projectId, this.stepMarker, 'this.dataForm.id, this.dataForm.projectId,this.stepMarker')
      },
      indexFormat(index) {
@@ -179,7 +194,30 @@
        }
      },
      // 表单提交
      async formSubmit() {
      async formSubmit(submitType) {
        if (submitType == 'tj') {
          let isFlow = false
          for (let item of this.dataForm.checkOrderList) {
            if (!item.checkResult) {
              this.$alert("有未填写的数据")
              return
            } else if (item.checkResult == "2") {
              isFlow = true
            }
          }
          if (submitType == 'tj' && !isFlow) {
            submitType == ''
          }
        }
        if (submitType == 'tj' || submitType == 'bl' && isFlow) {
          let flowInfo = {
            flowCode: 'csjcd',
            stepIdMark: this.stepMarker,
            submitType: submitType
          }
          this.dataForm.flowInfoDto = flowInfo;
        }
        let res = await this.$http[!this.dataForm.id ? 'post' : 'put']('/testCheckOrder/TestCheckOrder/', this.dataForm)
        if (res.success) {
          await this.$tip.success()
zt/core/src/main/resources/mapper/workflow/WfRunTaskDao.xml
@@ -4,17 +4,17 @@
<mapper namespace="com.zt.modules.workflow.dao.WfRunTaskDao">
    <select id="getTaskUser" resultType="com.zt.core.sys.model.SysUser">
        SELECT
        b.user_id as id
         b. id
        ,b.dept_id
        ,b.user_name as username
        ,b.nick_name as real_name
        ,b.phonenumber as MOBILE
        ,b.username
        ,b.real_name
        ,b.MOBILE
        FROM
        SYS_USER b
        WHERE
        del_flag = 0
        is_delete = 0
        <if test="roleId!=null and roleId!=''">
            AND USER_ID IN(
            AND ID IN(
            SELECT
            USER_ID
            FROM
@@ -34,11 +34,11 @@
        <if test="deptIds!=null and deptIds!=''">
            AND dept_ID IN(
            SELECT
            dept_id
            id
            FROM
            SYS_DEPT
            WHERE
            CONCAT( ',', #{deptIds}, ',' ) LIKE CONCAT( '%,', dept_id, ',%' )
            CONCAT( ',', #{deptIds}, ',' ) LIKE CONCAT( '%,', id, ',%' )
            )
        </if>
@@ -48,14 +48,14 @@
    </select>
    <select id="getAssignUser" resultType="com.zt.core.sys.model.SysUser">
        SELECT b.user_id     as id
        SELECT b.id
             , b.dept_id
             , b.user_name   as username
             , b.nick_name   as real_name
             , b.phonenumber as MOBILE
             , b.username
             , b.real_name
             , b.MOBILE
        FROM SYS_USER b
        WHERE del_flag = 0
          and user_id in (
        WHERE is_delete = 0
          and id in (
            SELECT USER_ID
            FROM SY_PROJECT_EXPERT
            WHERE biz_ID = #{bizId}
@@ -66,14 +66,14 @@
    </select>
    <select id="getUserById" resultType="com.zt.core.sys.model.SysUser">
        SELECT b.user_id     as id
        SELECT b.id
             , b.dept_id
             , b.user_name   as username
             , b.nick_name   as real_name
             , b.phonenumber as MOBILE
             , b.username
             , b.real_name
             , b.MOBILE
        FROM SYS_USER b
        WHERE del_flag = 0
          and user_id = #{userId}
        WHERE is_delete = 0
          and id = #{userId}
        limit 1
    </select>
@@ -206,7 +206,7 @@
          , a.UPDATE_DATE = CURRENT_TIMESTAMP
        WHERE a.IS_DELETE = 0
          AND a.biz_id = #{bizId}
          AND a.receive_id = b.user_id and b.dept_id = #{receiveDeptId}
          AND a.receive_id = b.id and b.dept_id = #{receiveDeptId}
          AND a.status in (0,1)
    </update>