瀏覽代碼

三级校审bug

lizhenhao 2 年之前
父節點
當前提交
ca820066d1

+ 3 - 0
src/components/editor/WangEditor.vue

@@ -40,6 +40,9 @@ export default {
     this.seteditor()
   },
   methods: {
+    clear () {
+      this.editor.txt.clear()
+    },
     init (val) {
       // 使用 v-model 时,设置初始值
       this.editor.txt.html(val)

+ 17 - 0
src/views/modules/program/registered/ProjectForm.vue

@@ -990,6 +990,23 @@
           }
         })
       },
+      getContract (row) {
+        this.inputForm.contractId = row.id // 合同id
+        this.inputForm.contractName = row.name // 合同名称
+        this.inputForm.client = row.clientId // 委托方
+        this.inputForm.clientName = row.clientName // 委托方名称
+        this.inputForm.amount = row.contractAmount // 合同金额
+        this.inputForm.contractType = row.contractType // 合同类型
+        this.clearClientList()
+        this.$forceUpdate()
+      },
+      openContractForm () {
+        if (!this.commonJS.isEmpty(this.inputForm.contractId)) {
+          this.$refs.contractForm.init(this.inputForm.contractId)
+        } else {
+          this.$refs.contractForm.init()
+        }
+      },
       openContactForm (deputy) {
         if (deputy === '0') {
           if (this.commonJS.isEmpty(this.inputForm.client) && this.commonJS.isEmpty(this.inputForm.propertyHolder)) {

+ 18 - 18
src/views/modules/program/registered/ProjectList.vue

@@ -348,8 +348,8 @@
             this.$router.push({
               path: '/flowable/task/TaskForm',
               query: {
-                procDefId: this.processDefinitionId,
-                procDefKey: this.procDefKey,
+                procDefId: this.processDefinitionAuditId,
+                procDefKey: this.procDefAuditKey,
                 status: 'startAndHold',
                 title: tabTitle,
                 formType: data.data.formType,
@@ -611,23 +611,23 @@
         this.taskService.getTaskDef({ procDefId: this.processDefinitionId3,
           businessId: row.auditId3,
           businessTable: 'program_audit'}).then((data) => {
-          this.$router.push({
-            path: '/flowable/task/TaskForm',
-            query: {
-              procDefId: this.processDefinitionId3,
-              procDefKey: this.procDefKey3,
-              title: title,
-              formType: data.data.formType,
-              formUrl: data.data.formUrl,
-              formTitle: processTitle,
-              businessTable: 'program_audit',
-              businessId: row.auditId3,
-              isShow: 'false',
-              status: status,
-              routePath: '/program/registered/ProjectList'
-            }
+            this.$router.push({
+              path: '/flowable/task/TaskForm',
+              query: {
+                procDefId: this.processDefinitionId3,
+                procDefKey: this.procDefKey3,
+                title: title,
+                formType: data.data.formType,
+                formUrl: data.data.formUrl,
+                formTitle: processTitle,
+                businessTable: 'program_audit',
+                businessId: row.auditId3,
+                isShow: 'false',
+                status: status,
+                routePath: '/program/registered/ProjectList'
+              }
+            })
           })
-        })
       },
       // 查看三级校审审批流程结果
       thirdAuditDetail (row) {

+ 4 - 3
src/views/modules/program/registered/ProjectThreeAuditForm.vue

@@ -187,9 +187,6 @@
       SelectUserTree
     },
     methods: {
-      disclick () {
-        this.$refs.contents1Editor.disabledclick()
-      },
       getKeyWatch (keyWatch) {
         this.keyWatch = keyWatch
       },
@@ -222,6 +219,10 @@
         this.$nextTick(() => {
           this.$refs.inputForm.resetFields()
           this.loading = true
+          this.$refs.contents1Editor.clear()
+          this.$refs.contents2Editor.clear()
+          this.$refs.contents3Editor.clear()
+          this.$refs.contents4Editor.clear()
           this.programProjectListInfoService.findByIdAudit(this.inputForm.id).then(({data}) => {
             this.$refs.uploadComponent.clearUpload()
             this.inputForm = this.recover(this.inputForm, data)

+ 0 - 429
src/views/modules/program/registered/ProjectThreeAuditFormSecond.vue

@@ -1,429 +0,0 @@
-<template xmlns:v-slot="http://www.w3.org/1999/XSL/Transform">
-  <div>
-    <el-form size="middle" :model="inputForm" ref="inputForm" v-loading="loading" :class="method==='view'?'readonly':''"  :disabled="formReadOnly"
-             label-width="125px" @submit.native.prevent>
-      <el-row  :gutter="15">
-        <el-col :span="12">
-          <el-form-item label="项目名称" prop="programProjectListInfo.name"
-          >
-            <el-input size="medium" :disabled="true" v-model="inputForm.programProjectListInfo.name" placeholder="请输入项目名称" clearable></el-input>
-          </el-form-item>
-        </el-col>
-        <el-col :span="12">
-          <el-form-item label="评估基准日" prop="programProjectListInfo.assessmentDate"
-          >
-            <el-date-picker
-              :disabled="true"
-              v-model="inputForm.programProjectListInfo.assessmentDate"
-              type="date"
-              value-format="yyyy-MM-dd"
-              placeholder="选择评估基准日"
-              style="width:100%"
-              placement="bottom-start"
-              clearable>
-            </el-date-picker>
-          </el-form-item>
-        </el-col>
-
-          <el-col :span="12">
-            <el-form-item label="专业评估人员" prop="auditPeopleList"
-                          :rules="[{required: true, message: '专业评估人员不能为空', trigger: 'blur'},{required: true, message: '专业评估人员不能为空', trigger: 'change'}]"
-            >
-              <UserSelect size="medium" :disabled="formReadOnly" :readonly="true" :limit='10' :value="inputForm.auditPeopleList" @getValue='(value) => {inputForm.auditPeopleList = value}'></UserSelect>
-            </el-form-item>
-          </el-col>
-        <el-col :span="12">
-          <el-form-item label="项目负责人" prop="programProjectListInfo.projectManager"
-          >
-            <SelectUserTree
-              ref="companyTree"
-              size="medium"
-              :props="{
-                  value: 'id',             // ID字段名
-                  label: 'name',         // 显示名称
-                  children: 'children'    // 子级字段名
-                }"
-              :url="`/sys/user/treeUserDataAllOffice?type=2`"
-              :value="inputForm.programProjectListInfo.projectManager"
-              :disabled="true"
-              :clearable="true"
-              :accordion="true"
-              @getValue="(value) => {inputForm.programProjectListInfo.projectManager=value}"/>
-          </el-form-item>
-        </el-col>
-        </el-row>
-        <el-row>
-          <el-col :span="12">
-            <el-form-item label="选择项目审核人" prop="auditPeople"
-                          :rules="[{required: true, message: '审批人不能为空', trigger: 'blur'},{required: true, message: '审批人不能为空', trigger: 'change'}]"
-            >
-              <UserSelect size="medium" :disabled="formReadOnly" :readonly="true" :limit='1' :value="inputForm.auditPeople" @getValue='(value) => {inputForm.auditPeople = value}'></UserSelect>
-            </el-form-item>
-          </el-col>
-        </el-row>
-        <el-divider content-position="left"><i class="el-icon-document"></i> 审核意见及回复</el-divider>
-        <el-row>
-        <el-col :span="24">
-          <el-form-item label="明细表" prop="detailOpinion"
-                        >
-<!--            <el-input type="textarea" style="width:100%" maxlength="1000" v-model="inputForm.detailOpinion" placeholder="请填写明细表"     ></el-input>-->
-            <WangEditor :disabled="true" ref="contents1Editor" v-model="inputForm.detailOpinion"/>
-          </el-form-item>
-        </el-col>
-        <el-col :span="24">
-          <el-form-item label="评估报告" prop="reportOpinion"
-          >
-<!--            <el-input type="textarea" style="width:100%" maxlength="1000" v-model="inputForm.reportOpinion" placeholder="请填写评估报告"     ></el-input>-->
-            <WangEditor :disabled="formReadOnly" ref="contents2Editor" v-model="inputForm.reportOpinion"/>
-          </el-form-item>
-        </el-col>
-        <el-col :span="24">
-          <el-form-item label="技术说明" prop="remarksOpinion"
-          >
-<!--            <el-input type="textarea" style="width:100%" maxlength="1000" v-model="inputForm.remarksOpinion" placeholder="请填写技术说明"     ></el-input>-->
-            <WangEditor :disabled="formReadOnly" ref="contents3Editor" v-model="inputForm.remarksOpinion"/>
-          </el-form-item>
-        </el-col>
-        <el-col :span="24">
-          <el-form-item label="工作底稿" prop="workOpinion"
-          >
-<!--            <el-input type="textarea" style="width:100%" maxlength="1000" v-model="inputForm.workOpinion" placeholder="请填写工作底稿"     ></el-input>-->
-            <WangEditor :disabled="formReadOnly" ref="contents4Editor" v-model="inputForm.workOpinion"/>
-          </el-form-item>
-        </el-col>
-      </el-row>
-
-    </el-form>
-    <!--        附件-->
-    <UpLoadComponent ref="uploadComponent"></UpLoadComponent>
-  </div>
-</template>
-
-<script>
-  import UpLoadComponent from '@/views/common/UpLoadComponent'
-  import UserSelect from '@/components/userSelect'
-  import SelectUserTree from '@/views/modules/utils/treeUserSelect'
-  import RosterSelectForm from '@/views/common/RosterSelectForm'
-  import ProgramProjectListInfoService from '@/api/program/ProgramProjectListInfoService'
-  import WangEditor from '@/components/editor/WangEditor'
-  export default {
-    props: {
-      businessId: {
-        type: String,
-        default: ''
-      },
-      formReadOnly: {
-        type: Boolean,
-        default: false
-      }
-    },
-    data () {
-      return {
-        title: '',
-        method: '',
-        visible: false,
-        loading: false,
-        inputForm: {
-          id: '',
-          remarks: '',
-          programId: '',
-          auditLevel: '',
-          auditPeople: '',
-          auditDate: '',
-          retainOpinion: '',
-          changeOpinion: '',
-          detailOpinion: '',
-          reportOpinion: '',
-          remarksOpinion: '',
-          workOpinion: '',
-          procInsId: '',
-          processDefinitionId: '',
-          status: '',
-          programProjectListInfo: {},
-          programAuditAssessPeopleDtoList: [],
-          workAttachmentDtoList: [],
-          auditPeopleList: ''
-        },
-        programId: '',
-        supervisorList: [],
-        keyWatch: ''
-      }
-    },
-    programProjectListInfoService: null,
-    created () {
-      this.programProjectListInfoService = new ProgramProjectListInfoService()
-    },
-    computed: {
-      bus: {
-        get () {
-          this.$refs.uploadComponent.setDividerName('附件')
-          return this.businessId
-        },
-        set (val) {
-          this.businessId = val
-        }
-      }
-    },
-    watch: {
-      'keyWatch': {
-        handler (newVal) {
-          if (this.bus) {
-            if (this.bus !== 'false') {
-              this.init('', this.bus)
-            }
-          } else {
-            this.$nextTick(() => {
-              this.$refs.inputForm.resetFields()
-            })
-          }
-        }
-      }
-    },
-    components: {
-      UpLoadComponent,
-      RosterSelectForm,
-      UserSelect,
-      WangEditor,
-      SelectUserTree
-    },
-    methods: {
-      disclick () {
-        this.$refs.contents1Editor.disabledclick()
-      },
-      getKeyWatch (keyWatch) {
-        this.keyWatch = keyWatch
-      },
-      init (method, id) {
-        this.method = method
-        this.inputForm = {
-          id: '',
-          remarks: '',
-          programId: '',
-          auditLevel: '',
-          auditPeople: '',
-          auditDate: '',
-          retainOpinion: '',
-          changeOpinion: '',
-          detailOpinion: '',
-          reportOpinion: '',
-          remarksOpinion: '',
-          workOpinion: '',
-          procInsId: '',
-          processDefinitionId: '',
-          status: '',
-          programProjectListInfo: {},
-          programAuditAssessPeopleDtoList: [],
-          workAttachmentDtoList: [],
-          auditPeopleList: ''
-        }
-        this.inputForm.id = id
-        this.visible = true
-        this.loading = false
-        this.$nextTick(() => {
-          this.$refs.inputForm.resetFields()
-          this.loading = true
-          this.programProjectListInfoService.findByIdAudit(this.inputForm.id).then(({data}) => {
-            this.$refs.uploadComponent.clearUpload()
-            this.inputForm = this.recover(this.inputForm, data)
-            this.inputForm = JSON.parse(JSON.stringify(this.inputForm))
-            if (this.commonJS.isNotEmpty(this.inputForm.detailOpinion)) {
-              this.$refs.contents1Editor.init(this.inputForm.detailOpinion)
-            }
-            if (this.commonJS.isNotEmpty(this.inputForm.reportOpinion)) {
-              this.$refs.contents2Editor.init(this.inputForm.reportOpinion)
-            }
-            if (this.commonJS.isNotEmpty(this.inputForm.remarksOpinion)) {
-              this.$refs.contents3Editor.init(this.inputForm.remarksOpinion)
-            }
-            if (this.commonJS.isNotEmpty(this.inputForm.workOpinion)) {
-              this.$refs.contents4Editor.init(this.inputForm.workOpinion)
-            }
-            // if (this.formReadOnly === true) {
-            //   method = 'view'
-            // }
-            if (this.commonJS.isEmpty(this.inputForm.workAttachmentDtoList)) {
-              this.inputForm.workAttachmentDtoList = []
-            }
-            if (this.commonJS.isNotEmpty(this.inputForm.programAuditAssessPeopleDtoList)) {
-              let p = ''
-              this.inputForm.programAuditAssessPeopleDtoList.forEach((item, index) => {
-                if (this.inputForm.programAuditAssessPeopleDtoList.length === parseInt(parseInt(index) + parseInt(1))) {
-                  p = p + item.assessPeople
-                } else {
-                  p = p + item.assessPeople + ','
-                }
-              })
-              this.inputForm.auditPeopleList = p
-            } else {
-              this.inputForm.auditPeopleList = ''
-            }
-            this.$refs.uploadComponent.newUpload(method, this.inputForm.workAttachmentDtoList, 'program_audit_second')
-            this.loading = false
-          })
-        })
-      },
-      saveForm (callback) {
-        this.doSubmit('save', callback)
-      },
-      startForm (callback) {
-        this.doSubmit('start', callback)
-      },
-      async agreeForm (callback) {
-        await this.programProjectListInfoService.findByIdAudit(this.inputForm.id).then(({data}) => {
-          if (data.status !== '2') { // status的值不等于“审核中”,就弹出提示
-            this.$message.error('任务数据已发生改变或不存在,请在待办任务中确认此任务是否存在')
-            this.err = true
-          }
-        })
-        if (this.err === true) {
-          this.err = ''
-          throw new Error()
-        } else {
-          await this.doSubmit('agree', callback)
-        }
-      },
-      // 表单提交
-      async doSubmit (status, callback) {
-        if (await this.$refs.uploadComponent.checkProgress()) {
-          this.loading = false
-          throw new Error()
-        }
-        if (status === 'save') {
-          // 暂存
-          this.loading = true
-          this.inputForm.status = '1'
-          this.inputForm.workAttachmentDtoList = this.$refs.uploadComponent.getDataList()
-          if (this.commonJS.isNotEmpty(this.inputForm.auditPeopleList)) {
-            this.inputForm.programAuditAssessPeopleDtoList = []
-            this.inputForm.auditPeopleList.split(',').forEach(item => {
-              let i = {assessPeople: item, auditId: this.inputForm.id}
-              this.inputForm.programAuditAssessPeopleDtoList.push(i)
-            })
-          } else {
-            this.inputForm.programAuditAssessPeopleDtoList = []
-          }
-          this.programProjectListInfoService.saveFormThree(this.inputForm).then(({data}) => {
-            this.inputForm.assignee = this.inputForm.auditPeople
-            callback(data.businessTable, data.businessId, this.inputForm)
-            this.loading = false
-          }).catch(() => {
-            this.loading = false
-          })
-          return
-        } else if (status === 'start') {
-          // 送审  待审核
-          this.inputForm.status = '2'
-        } else if (status === 'agree') {
-          // 审核同意
-          this.inputForm.status = '5'
-          this.inputForm.auditDate = this.moment(new Date()).format('YYYY-MM-DD HH:mm:ss')
-        }
-        this.$refs['inputForm'].validate((valid) => {
-          if (valid) {
-            this.loading = true
-            if (this.commonJS.isNotEmpty(this.inputForm.auditPeopleList)) {
-              this.inputForm.programAuditAssessPeopleDtoList = []
-              this.inputForm.auditPeopleList.split(',').forEach(item => {
-                let i = {assessPeople: item, auditId: this.inputForm.id}
-                this.inputForm.programAuditAssessPeopleDtoList.push(i)
-              })
-            } else {
-              this.inputForm.programAuditAssessPeopleDtoList = []
-            }
-            this.inputForm.workAttachmentDtoList = this.$refs.uploadComponent.getDataList()
-            this.programProjectListInfoService.saveFormThree(this.inputForm).then(({data}) => {
-              this.inputForm.assignee = this.inputForm.auditPeople
-              callback(data.businessTable, data.businessId, this.inputForm)
-              this.loading = false
-            }).catch(() => {
-              this.loading = false
-            })
-          }
-        })
-      },
-      async updateStatusById (type) {
-        if (await this.$refs.uploadComponent.checkProgress()) {
-          this.loading = false
-          throw new Error()
-        }
-        await this.programProjectListInfoService.findByIdAudit(this.inputForm.id).then(({data}) => {
-          if (data.status !== '2') { // status的值不等于“审核中”,就弹出提示
-            this.$message.error('任务数据已发生改变或不存在,请在待办任务中确认此任务是否存在')
-            this.err = true
-          }
-        })
-        if (this.err === true) {
-          this.err = ''
-          throw new Error()
-        } else {
-          // if (type === 'agree') {
-          //   // 同意
-          //   this.inputForm.status = '5'
-          // }
-          if (type === 'reject') {
-            // 驳回
-            this.inputForm.status = '4'
-            this.loading = true
-            this.inputForm.workAttachmentDtoList = this.$refs.uploadComponent.getDataList()
-            if (this.commonJS.isNotEmpty(this.inputForm.auditPeopleList)) {
-              this.inputForm.programAuditAssessPeopleDtoList = []
-              this.inputForm.auditPeopleList.split(',').forEach(item => {
-                let i = {assessPeople: item, auditId: this.inputForm.id}
-                this.inputForm.programAuditAssessPeopleDtoList.push(i)
-              })
-            } else {
-              this.inputForm.programAuditAssessPeopleDtoList = []
-            }
-            this.programProjectListInfoService.saveFormThree(this.inputForm).then(({data}) => {
-              this.loading = false
-            }).catch(() => {
-              this.loading = false
-            })
-            return
-          }
-          if (type === 'reback') {
-            // 撤回
-            this.inputForm.status = '3'
-          }
-          if (type === 'reback') {
-            let param = {status: this.inputForm.status, id: this.inputForm.id}
-            this.programProjectListInfoService.updateStatusByAuditId(param)
-          }
-        }
-      },
-      close () {
-        this.$refs.uploadComponent.clearUpload()
-        this.inputForm = {
-          id: '',
-          remarks: '',
-          programId: '',
-          auditLevel: '',
-          auditPeople: '',
-          auditDate: '',
-          retainOpinion: '',
-          changeOpinion: '',
-          detailOpinion: '',
-          reportOpinion: '',
-          remarksOpinion: '',
-          workOpinion: '',
-          procInsId: '',
-          processDefinitionId: '',
-          status: '',
-          programProjectListInfo: {},
-          programAuditAssessPeopleDtoList: [],
-          workAttachmentDtoList: []
-        }
-        this.$refs.inputForm.resetFields()
-        this.visible = false
-      }
-    }
-  }
-</script>
-<style scoped>
-  /deep/ .w-e-text-container {
-    z-index: 1 !important;
-  }
-  /deep/ .wtext {
-    height: 200px
-  }
-</style>