Преглед изворни кода

财务-合同与合同报告修改

wangqiang пре 2 година
родитељ
комит
362c2c1320

Разлика између датотеке није приказан због своје велике величине
+ 525 - 361
src/views/modules/cw/reportManagement/ReportManagementForm.vue


+ 310 - 289
src/views/modules/cw/reportManagement/ReportManagementTaskForm.vue

@@ -1,258 +1,244 @@
 <template xmlns:v-slot="http://www.w3.org/1999/XSL/Transform">
   <div>
     <el-row>
-      <el-col :span="24">
+      <el-form size="middle" :model="inputForm" ref="inputForm" v-loading="loading" :class="method==='view'?'readonly':''"  :disabled="formReadOnly"
+               label-width="135px" @submit.native.prevent>
 
-        <el-form size="middle" :model="inputForm" ref="inputForm" v-loading="loading" :class="method==='view'?'readonly':''"  :disabled="formReadOnly"
-                 label-width="135px" @submit.native.prevent>
-          <el-row  :gutter="15">
-            <el-col :span="12">
-              <el-form-item label="单据编号" prop="documentNo"
-                            :rules="[
-
-                   ]">
-                <el-input :disabled="true" v-model="inputForm.documentNo" placeholder="自动生成" clearable></el-input>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="项目名称" prop="projectName"
-                            :rules="[
+        <el-divider content-position="left"><i class="el-icon-document"></i> 项目信息</el-divider>
+        <el-row  :gutter="0">
+          <el-col :span="12">
+            <el-form-item label="项目名称" prop="projectName"
+                          :rules="[
                               {required: true, message:'项目名称不能为空', trigger:'blur'},
                               {required: true, message:'项目名称不能为空', trigger:'change'}
                    ]">
-<!--                <el-input v-model="inputForm.projectName" placeholder="请填写项目名称" clearable></el-input>-->
-                <el-input size="medium" :readonly="true" @focus="openContractForm()" v-model="inputForm.projectName" placeholder="请选择项目名称">
-                  <el-button slot="append" icon="el-icon-search" @click="openContractForm()"></el-button>
-                </el-input>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="项目编号" prop="projectNumber"
-                            :rules="[
+              <!--                <el-input v-model="inputForm.projectName" placeholder="请填写项目名称" clearable></el-input>-->
+              <el-input size="medium" :readonly="true" @focus="openContractForm()" v-model="inputForm.projectName" placeholder="请选择项目名称">
+                <el-button slot="append" icon="el-icon-search" @click="openContractForm()"></el-button>
+              </el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="项目编号" prop="projectNumber"
+                          :rules="[
                    ]">
-                <el-input :disabled="true" v-model="inputForm.projectNumber" placeholder="请填写项目编号" clearable></el-input>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="报告所属部门" prop="officeId"
-                            :rules="[
+              <el-input :disabled="true" v-model="inputForm.projectNumber" placeholder="请填写项目编号" clearable></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="项目经理" prop="projectMasterName"
+                          :rules="[
+                   ]">
+              <el-input :disabled="true" v-model="inputForm.projectMasterName" placeholder="请填写项目经理" clearable></el-input>
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-divider content-position="left"><i class="el-icon-document"></i> 基础信息</el-divider>
+        <el-row  :gutter="0">
+          <el-col :span="12">
+            <el-form-item label="单据编号" prop="documentNo"
+                          :rules="[
+
                    ]">
-                <SelectTree
-                  ref="officeTree"
-                  :props="{
+              <el-input :disabled="true" v-model="inputForm.documentNo" placeholder="自动生成" clearable></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="报告所属部门" prop="officeId"
+                          :rules="[
+                   ]">
+              <SelectTree
+                ref="officeTree"
+                :props="{
                   value: 'id',             // ID字段名
                   label: 'name',         // 显示名称
                   children: 'children'    // 子级字段名
                 }"
 
-                  :url="`/sys/office/treeData?type=2`"
-                  :value="inputForm.officeId"
-                  size="medium"
-                  :accordion="true"
-                  @getValue="(value) => {inputForm.officeId=value}"/>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="项目经理" prop="projectMasterName"
-                            :rules="[
-                   ]">
-                <el-input :disabled="true" v-model="inputForm.projectMasterName" placeholder="请填写项目经理" clearable></el-input>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="盖章类型" prop="signatureType"
-                            :rules="[
+                :url="`/sys/office/treeData?type=2`"
+                :value="inputForm.officeId"
+                size="medium"
+                :accordion="true"
+                @getValue="(value) => {inputForm.officeId=value}"/>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="盖章类型" prop="signatureType"
+                          :rules="[
                               {required: true, message: '盖章类型不能为空', trigger: 'blur'}
                    ]">
-                <!--                <el-input v-model="inputForm.signatureType" placeholder="请填写盖章类型" clearable></el-input>-->
-                <el-select v-model="inputForm.signatureType" placeholder="请选择盖章类型" clearable style="width: 100%;">
-                  <el-option
-                    v-for="item in $dictUtils.getDictList('cw_signature_type')"
-                    :key="item.value"
-                    :label="item.label"
-                    :value="item.value">
-                  </el-option>
-                </el-select>
-              </el-form-item>
-            </el-col>
+              <!--                <el-input v-model="inputForm.signatureType" placeholder="请填写盖章类型" clearable></el-input>-->
+              <el-select v-model="inputForm.signatureType" placeholder="请选择盖章类型" clearable style="width: 100%;">
+                <el-option
+                  v-for="item in $dictUtils.getDictList('cw_signature_type')"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value">
+                </el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
 
-            <el-col v-if="inputForm.signatureType === '1' || commonJS.isEmpty(inputForm.signatureType)" :span="12">
-              <el-form-item label="签字注师1" prop="signatureAnnotator1"
-                            :rules="[
+          <el-col v-if="inputForm.signatureType === '1' || commonJS.isEmpty(inputForm.signatureType)" :span="12">
+            <el-form-item label="签字注师1" prop="signatureAnnotator1"
+                          :rules="[
                    ]">
-<!--                <el-input v-model="inputForm.signatureAnnotator1" placeholder="请填写签字注师1" clearable></el-input>-->
-                <UserSelect size="medium" ref="userSelect1" :disabled="formReadOnly" :readonly="true" :limit='1' :value="inputForm.signatureAnnotator1" @getValue='(value) => {changeSignatory1(value)}'></UserSelect>
-              </el-form-item>
-            </el-col>
+              <!--                <el-input v-model="inputForm.signatureAnnotator1" placeholder="请填写签字注师1" clearable></el-input>-->
+              <UserSelect size="medium" ref="userSelect1" :disabled="formReadOnly" :readonly="true" :limit='1' :value="inputForm.signatureAnnotator1" @getValue='(value) => {changeSignatory1(value)}'></UserSelect>
+            </el-form-item>
+          </el-col>
 
-            <el-col v-if="inputForm.signatureType === '1' || commonJS.isEmpty(inputForm.signatureType)" :span="12">
-              <el-form-item label="签字注师2" prop="signatureAnnotator2"
-                            :rules="[
+          <el-col v-if="inputForm.signatureType === '1' || commonJS.isEmpty(inputForm.signatureType)" :span="12">
+            <el-form-item label="签字注师2" prop="signatureAnnotator2"
+                          :rules="[
                    ]">
-<!--                <el-input v-model="inputForm.signatureAnnotator2" placeholder="请填写签字注师2" clearable></el-input>-->
-                <UserSelect size="medium" ref="userSelect2" :disabled="formReadOnly" :readonly="true" :limit='1' :value="inputForm.signatureAnnotator2" @getValue='(value) => {changeSignatory2(value)}'></UserSelect>
-              </el-form-item>
-            </el-col>
+              <!--                <el-input v-model="inputForm.signatureAnnotator2" placeholder="请填写签字注师2" clearable></el-input>-->
+              <UserSelect size="medium" ref="userSelect2" :disabled="formReadOnly" :readonly="true" :limit='1' :value="inputForm.signatureAnnotator2" @getValue='(value) => {changeSignatory2(value)}'></UserSelect>
+            </el-form-item>
+          </el-col>
 
-            <el-col v-if="inputForm.signatureType === '2'" :span="12">
-              <el-form-item label="签字注师1" prop="signatureAnnotator1"
-                            :rules="[
+          <el-col v-if="inputForm.signatureType === '2'" :span="12">
+            <el-form-item label="签字注师1" prop="signatureAnnotator1"
+                          :rules="[
                               {required: true, message:'签字注师1不能为空', trigger:'blur'}
                    ]">
-                <!--                <el-input v-model="inputForm.signatureAnnotator1" placeholder="请填写签字注师1" clearable></el-input>-->
-                <UserSelect size="medium" ref="userSelect1" :disabled="formReadOnly" :readonly="true" :limit='1' :value="inputForm.signatureAnnotator1" @getValue='(value) => {changeSignatory1(value)}'></UserSelect>
-              </el-form-item>
-            </el-col>
+              <!--                <el-input v-model="inputForm.signatureAnnotator1" placeholder="请填写签字注师1" clearable></el-input>-->
+              <UserSelect size="medium" ref="userSelect1" :disabled="formReadOnly" :readonly="true" :limit='1' :value="inputForm.signatureAnnotator1" @getValue='(value) => {changeSignatory1(value)}'></UserSelect>
+            </el-form-item>
+          </el-col>
 
-            <el-col v-if="inputForm.signatureType === '2'" :span="12">
-              <el-form-item label="签字注师2" prop="signatureAnnotator2"
-                            :rules="[
+          <el-col v-if="inputForm.signatureType === '2'" :span="12">
+            <el-form-item label="签字注师2" prop="signatureAnnotator2"
+                          :rules="[
                               {required: true, message:'签字注师2不能为空', trigger:'blur'}
                    ]">
-                <!--                <el-input v-model="inputForm.signatureAnnotator2" placeholder="请填写签字注师2" clearable></el-input>-->
-                <UserSelect size="medium" ref="userSelect2" :disabled="formReadOnly" :readonly="true" :limit='1' :value="inputForm.signatureAnnotator2" @getValue='(value) => {changeSignatory2(value)}'></UserSelect>
-              </el-form-item>
-            </el-col>
-            <el-col :span="12">
-              <el-form-item label="报告实际制作人" prop="realCreate"
-                            :rules="[
+              <!--                <el-input v-model="inputForm.signatureAnnotator2" placeholder="请填写签字注师2" clearable></el-input>-->
+              <UserSelect size="medium" ref="userSelect2" :disabled="formReadOnly" :readonly="true" :limit='1' :value="inputForm.signatureAnnotator2" @getValue='(value) => {changeSignatory2(value)}'></UserSelect>
+            </el-form-item>
+          </el-col>
+
+          <el-col :span="12">
+            <el-form-item label="审计收费(元)" prop="auditFees"
+                          :rules="[
                    ]">
-                <UserSelect size="medium" :readonly="true" :disabled="formReadOnly" :limit='1' :value="inputForm.realCreate" @getValue='(value) => {inputForm.realCreate = value}'></UserSelect>
-              </el-form-item>
-            </el-col>
+              <el-input v-model="inputForm.auditFees" placeholder="请填写审计收费(元)" clearable></el-input>
+            </el-form-item>
+          </el-col>
+
+          <el-col :span="12">
+            <el-form-item label="报告实际制作人" prop="realCreate"
+                          :rules="[
+                   ]">
+              <UserSelect size="medium" :readonly="true" :disabled="formReadOnly" :limit='1' :value="inputForm.realCreate" @getValue='(value) => {inputForm.realCreate = value}'></UserSelect>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="创建时间" prop="createDate"
+                          :rules="[
+                   ]">
+              <el-input :disabled="true" v-model="inputForm.createDate" placeholder="请填写创建时间" clearable></el-input>
+            </el-form-item>
+          </el-col>
+
+        </el-row>
+        <el-divider content-position="left"><i class="el-icon-document"></i> 详细信息</el-divider>
+        <el-row  :gutter="0">
+          <el-col :span="12">
+            <el-form-item label="被服务单位" prop="servedUnitName"
+                          :rules="[
+                            {required: true, message:'被服务单位不能为空', trigger:'blur'}
+                   ]">
+              <el-input @focus="openWorkClient()" v-model="inputForm.servedUnitName" placeholder="请填写被服务单位" clearable>
+                <el-button slot="append" icon="el-icon-search" @click="openWorkClient()"></el-button>
+              </el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="报告日期" prop="reportDate"
+                          :rules="[
+                            {required: true, message:'报告日期不能为空', trigger:'blur'}
+                   ]">
+              <el-date-picker
+                placement="bottom-start"
+                value-format="yyyy-MM-dd"
+                v-model="inputForm.reportDate"
+                style="width: 100%"
+                placeholder="选择日期">
+              </el-date-picker>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="报告类型" prop="reportType"
+                          :rules="[
+                            {required: true, message:'报告类型不能为空', trigger:'blur'}
+                   ]">
+              <el-select v-model="inputForm.reportType" placeholder="请选择报告类型" style="width:100%;">
+                <el-option
+                  v-for="item in $dictUtils.getDictList('cw_report_type')"
+                  :key="item.value"
+                  :label="item.label"
+                  :value="item.value">
+                </el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="报告流水号" prop="reportNumber"
+                          :rules="[
+                   ]">
+              <el-input :disabled="true" v-model="inputForm.reportNumber" placeholder="自动生成" clearable></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="报告文号" prop="reportNo"
+                          :rules="[
+                   ]">
+              <el-input :disabled="true" v-model="inputForm.reportNo" placeholder="自动生成" clearable></el-input>
+            </el-form-item>
+          </el-col>
+          <el-form size="middle" :model="inputForm" ref="inputForm" v-loading="loading" :class="method==='view'?'readonly':''"  :disabled="status !== 'audit'"
+                   label-width="135px" @submit.native.prevent>
             <el-col :span="12">
-              <el-form-item label="创建时间" prop="createDate"
+              <el-form-item label="意见类型" prop="opinionType"
                             :rules="[
-                   ]">
-                <el-input :disabled="true" v-model="inputForm.createDate" placeholder="请填写创建时间" clearable></el-input>
+                     ]">
+                <el-select v-model="inputForm.opinionType" placeholder="请选择意见类型" style="width:100%;">
+                  <el-option
+                    v-for="item in $dictUtils.getDictList('cw_opinion_type')"
+                    :key="item.value"
+                    :label="item.label"
+                    :value="item.value">
+                  </el-option>
+                </el-select>
               </el-form-item>
             </el-col>
+          </el-form>
+          <el-col :span="12">
+            <el-form-item label="盖章状态" prop="sealType"
+                          :rules="[
+                   ]">
+              <el-input :disabled="true" v-model="inputForm.sealType" placeholder="请填写盖章状态" clearable></el-input>
+            </el-form-item>
+          </el-col>
+        </el-row>
 
-          </el-row>
-        </el-form>
-        <el-tabs v-model="activeName" type="border-card" @tab-click="tabHandleClick">
-          <el-tab-pane label="报告信息列表" name="newRow">
-            <el-button type="primary" style="margin-bottom: 15px" size="mini" :disabled="formReadOnly" @click="openWorkClient"
-                       v-if="inputForm.projectName !== '' & inputForm.projectName !== undefined"
-            >
-              新增行
-            </el-button>
-<!--            <el-button v-if="hasPermission('cw:reportManagement:del')" type="text" size="small" @click="del()">删除</el-button>-->
-            <el-row  :gutter="15">
-              <el-form :disabled="formReadOnly">
-                <vxe-table
-                  border
-                  show-overflow
-                  show-footer
-                  :column-config="{resizable: true}"
-                  ref="clientTable"
-                  :key="tableKeyClient"
-                  class="vxe-table-element"
-                  :data="inputForm.cwProjectInfoList"
-                  style=""
-                  @cell-click=""
-                  @edit-closed=""
-                  highlight-current-row
-                  :edit-config="{trigger: 'click', mode: 'row', showStatus: false, autoClear: false}"
-                >
-                  <vxe-table-column type="seq" align="center" width="80" title="序号"></vxe-table-column>
-                  <vxe-table-column align="center" field="servedUnitName" title="被服务单位" :edit-render="{}">
-                    <template v-slot:edit="scope">
-                      <el-input :readonly="true" v-model="scope.row.servedUnitName" placeholder="被服务单位" clearable></el-input>
-                    </template>
-                  </vxe-table-column>
-                  <vxe-table-column align="center" field="reportDate" title="报告日期" :edit-render="{}">
-                    <template v-slot:edit="scope">
-                      <el-date-picker
-                        v-model="scope.row.reportDate"
-                        type="date"
-                        value-format="yyyy-MM-dd"
-                        placeholder="选择报告日期"
-                        style="width:100%"
-                        placement="bottom-start"
-                        clearable>
-                      </el-date-picker>
-<!--                      <el-input :readonly="true" v-model="scope.row.reportDate" placeholder="报告日期" clearable></el-input>-->
-                    </template>
-                  </vxe-table-column>
-                  <vxe-table-column align="center" field="reportType" title="报告类型" :edit-render="{name: '$select', options: $dictUtils.getDictList('cw_report_type')}">
-                    <template v-slot:edit="scope">
-                      <vxe-select :disabled="formReadOnly" v-model="scope.row.reportType" placeholder="请选择报告类型" clearable style="width: 100%;" transfer>
-                        <vxe-option
-                          v-for="item in $dictUtils.getDictList('cw_report_type')"
-                          :key="item.value"
-                          :label="item.label"
-                          :value="item.value">
-                        </vxe-option>
-                      </vxe-select>
-                    </template>
-<!--                    <template v-slot:edit="scope">-->
-<!--                      <el-select v-model="scope.row.reportType" placeholder="请选择报告类型" clearable style="width: 100%;">-->
-<!--                        <el-option-->
-<!--                          v-for="item in $dictUtils.getDictList('cw_report_type')"-->
-<!--                          :key="item.value"-->
-<!--                          :label="item.label"-->
-<!--                          :value="item.value">-->
-<!--                        </el-option>-->
-<!--                      </el-select>-->
-<!--&lt;!&ndash;                      <el-input v-model="scope.row.reportType" placeholder="报告类型" clearable></el-input>&ndash;&gt;-->
-<!--                    </template>-->
-                  </vxe-table-column>
-                  <vxe-table-column align="center" field="reportNumber" title="报告流水号" :edit-render="{}">
-                    <template v-slot:edit="scope">
-                      <el-input :readonly="true" v-model="scope.row.reportNumber" placeholder="报告流水号" clearable></el-input>
-                    </template>
-                  </vxe-table-column>
-                  <vxe-table-column align="center" field="reportNo" title="报告文号" :edit-render="{}">
-                    <template v-slot:edit="scope">
-                      <el-input :readonly="true" v-model="scope.row.reportNo" placeholder="报告文号" clearable></el-input>
-                    </template>
-                  </vxe-table-column>
-                  <vxe-table-column align="center" field="issueReport" title="是否出具报告" :edit-render="{}">
-                    <template v-slot:edit="scope">
-                      <el-input :readonly="true" v-model="scope.row.issueReport" placeholder="是否出具报告" clearable></el-input>
-                    </template>
-                  </vxe-table-column>
-                  <vxe-table-column align="center" field="opinionType" title="意见类型" :edit-render="{name: '$select', options: $dictUtils.getDictList('cw_opinion_type')}">
-                    <template v-slot:edit="scope">
-                      <el-select v-model="scope.row.opinionType" placeholder="请选择意见类型" clearable style="width: 100%;">
-                        <el-option
-                          v-for="item in $dictUtils.getDictList('cw_opinion_type')"
-                          :key="item.value"
-                          :label="item.label"
-                          :value="item.value">
-                        </el-option>
-                      </el-select>
-<!--                      <el-input :readonly="true" v-model="scope.row.opinionType" placeholder="意见类型" clearable></el-input>-->
-                    </template>
-                  </vxe-table-column>
-                  <vxe-table-column align="center" field="sealType" title="盖章状态" :edit-render="{}">
-                    <template v-slot:edit="scope">
-                      <el-input :readonly="true" v-model="scope.row.sealType" placeholder="盖章状态" clearable></el-input>
-                    </template>
-                  </vxe-table-column>
-                  <vxe-table-column align="center" field="fileNumber" title="文件数" :edit-render="{}">
-                    <template v-slot:edit="scope">
-                      <el-input :readonly="true" v-model="scope.row.fileNumber" placeholder="文件数" clearable></el-input>
-                    </template>
-                  </vxe-table-column>
-                  <vxe-table-column align="center" title="操作" width="300">
-                    <template v-slot="scope">
-                      <el-button size="mini" type="danger" @click="removeEvent(scope.row,scope.$rowIndex,'client')">删除</el-button>
-                      <el-button size="mini" type="primary" @click="sss(scope.$rowIndex)">上传附件</el-button>
-                      <el-button size="mini" v-if="formReadOnly" :disabled="false" type="primary" @click="seeFileInfo(scope.$rowIndex)">查看文件详情</el-button>
-                    </template>
-                  </vxe-table-column>
-                </vxe-table>
-              </el-form>
-            </el-row>
-          </el-tab-pane>
+      </el-form>
+      <el-tabs v-model="activeName" type="border-card" @tab-click="tabHandleClick">
+<!--        <el-tab-pane label="报告信息列表" name="newRow">-->
+<!--          <el-button type="primary" style="margin-bottom: 15px" size="mini" :disabled="formReadOnly" @click="sss"-->
+<!--          >-->
+<!--            新增行-->
+<!--          </el-button>-->
+<!--        </el-tab-pane>-->
+        <el-tab-pane label="附件" name="archiveFile">
+          <!--        附件-->
+          <UpLoadComponent ref="archiveFile"></UpLoadComponent>
+        </el-tab-pane>
 
 
-        </el-tabs>
-      </el-col>
+      </el-tabs>
     </el-row>
-    <UpLoadComponentDialog ref="upLoadComponentDialog" @getUpload="getUpload"></UpLoadComponentDialog>
+<!--    <UpLoadComponentDialog ref="upLoadComponentDialog" @getUpload="getUpload"></UpLoadComponentDialog>-->
 <!--    <ProjectInfoForm  ref="projectInfoForm" @getContract="getContract"></ProjectInfoForm>-->
     <ProjectRecoredChooseCom  ref="projectRecoredChooseCom" @getProject="getContract"></ProjectRecoredChooseCom>
     <ReportServiceUnitForm ref="reportServiceUnitForm" @getWorkClientChoose="getWorkClientChoose"></ReportServiceUnitForm>
@@ -260,7 +246,8 @@
 </template>
 
 <script>
-  import UpLoadComponent from '@/views/common/UpLoadComponent'
+  // import UpLoadComponent from '@/views/common/UpLoadComponent'
+  import UpLoadComponent from '@/views/common/UpLoadComponentV2'
   import SelectUserTree from '@/views/modules/utils/treeUserSelect'
   import SelectTree from '@/components/treeSelect/treeSelect.vue'
   import UserSelect from '../workClientInfo/clientUserSelect'
@@ -269,7 +256,7 @@
   import EnterpriseSearchService from '@/api/cw/common/EnterpriseSearchService'
   // import WorkClientChooseForm from '../workClientInfo/WorkClientChooseForm'
   import ReportServiceUnitForm from './ReportServiceUnitForm'
-  import UpLoadComponentDialog from '@/views/common/UpLoadComponentDialog'
+  // import UpLoadComponentDialog from '@/views/common/UpLoadComponentDialog'
   // import ProjectInfoForm from './ProjectInfoForm'
   import ProjectRecoredChooseCom from '../projectRecords/ProjectRecordsChooseCom'
   export default {
@@ -293,6 +280,13 @@
         method: '',
         loading: false,
         inputForm: {
+          opinionType: '',
+          reportNo: '',
+          reportNumber: '',
+          reportType: '',
+          reportDate: '',
+          servedUnitName: '', // 被服务单位
+          auditFees: '',
           projectId: '',
           id: '',
           createDate: '',
@@ -316,7 +310,7 @@
           realCreate: ''
         },
         keyWatch: '',
-        activeName: 'newRow',
+        activeName: 'archiveFile',
         tableKey: '',
         tableKeyClient: '1'
       }
@@ -332,6 +326,7 @@
     computed: {
       bus: {
         get () {
+          this.$refs.archiveFile.setDividerName('附件', false)
           // this.$refs.uploadComponent.setDividerName('附件', false)
           return this.businessId
         },
@@ -360,33 +355,33 @@
       UserSelect,
       ReportServiceUnitForm,
       // ProjectInfoForm,
-      ProjectRecoredChooseCom,
-      UpLoadComponentDialog
+      ProjectRecoredChooseCom
+      // UpLoadComponentDialog
     },
     methods: {
-      seeFileInfo (index) {
-        if (this.commonJS.isEmpty(this.inputForm.cwProjectInfoList[index].cwFileInfoList)) {
-          this.inputForm.cwProjectInfoList[index].cwFileInfoList = []
-        }
-        this.$refs.upLoadComponentDialog.newUpload('view', this.inputForm.cwProjectInfoList[index].cwFileInfoList, null, null, null, null, null, false, index)
-      },
-      sss (index) {
-        if (this.commonJS.isEmpty(this.inputForm.cwProjectInfoList[index].cwFileInfoList)) {
-          this.inputForm.cwProjectInfoList[index].cwFileInfoList = []
-        }
-        this.$refs.upLoadComponentDialog.newUpload(null, this.inputForm.cwProjectInfoList[index].cwFileInfoList, null, null, null, null, null, false, index)
-      },
-      getUpload (p, index) {
-        p.then((list) => {
-          // list为返回数据
-          this.inputForm.cwProjectInfoList[index].cwFileInfoList = list
-          this.inputForm.cwProjectInfoList[index].fileNumber = list.length
-          this.tableKeyClient = Math.random()
-          // console.log('this.inputForm.cwFileInfoList', this.inputForm.cwFileInfoList)
-          // console.log('list.length', list.length)
-          // console.log(list)
-        })
-      },
+      // seeFileInfo (index) {
+      //   if (this.commonJS.isEmpty(this.inputForm.cwProjectInfoList[index].cwFileInfoList)) {
+      //     this.inputForm.cwProjectInfoList[index].cwFileInfoList = []
+      //   }
+      //   this.$refs.upLoadComponentDialog.newUpload('view', this.inputForm.cwProjectInfoList[index].cwFileInfoList, null, null, null, null, null, false, index)
+      // },
+      // sss (index) {
+      //   if (this.commonJS.isEmpty(this.inputForm.cwProjectInfoList[index].cwFileInfoList)) {
+      //     this.inputForm.cwProjectInfoList[index].cwFileInfoList = []
+      //   }
+      //   this.$refs.upLoadComponentDialog.newUpload(null, this.inputForm.cwProjectInfoList[index].cwFileInfoList, null, null, null, null, null, false, index)
+      // },
+      // getUpload (p, index) {
+      //   p.then((list) => {
+      //     // list为返回数据
+      //     this.inputForm.cwProjectInfoList[index].cwFileInfoList = list
+      //     this.inputForm.cwProjectInfoList[index].fileNumber = list.length
+      //     this.tableKeyClient = Math.random()
+      //     // console.log('this.inputForm.cwFileInfoList', this.inputForm.cwFileInfoList)
+      //     // console.log('list.length', list.length)
+      //     // console.log(list)
+      //   })
+      // },
       getKeyWatch (keyWatch) {
         this.keyWatch = keyWatch
       },
@@ -431,11 +426,19 @@
         }
       },
       init (method, id) {
-        this.activeName = 'newRow'
+        this.activeName = 'archiveFile'
         this.projectRecordsService = new ProjectRecordsService()
         this.projectReportService = new ProjectReportService()
         this.method = method
         this.inputForm = {
+          servedUnitId: '',  // 被服务单位id
+          opinionType: '',
+          reportNo: '',
+          reportNumber: '',
+          reportType: '',
+          reportDate: '',
+          servedUnitName: '', // 被服务单位
+          auditFees: '',
           projectId: '',
           id: '',
           createDate: '',
@@ -458,10 +461,12 @@
         this.inputForm.id = id
         this.loading = false
         this.$nextTick(() => {
+          this.$refs.archiveFile.clearUpload()
           this.$refs.inputForm.resetFields()
           this.loading = true
           this.projectReportService.queryById(this.inputForm.id).then(({data}) => {
             this.inputForm.status = data.status
+            console.log('this.inputForm.servedUnitName', data)
             // console.log('this.inputForm.status', this.inputForm.status)
             // this.$refs.uploadComponent.clearUpload()
             this.inputForm = this.recover(this.inputForm, data)
@@ -475,6 +480,10 @@
             if (this.commonJS.isEmpty(this.inputForm.realCreate)) {
               this.inputForm.realCreate = JSON.parse(localStorage.getItem('user')).id
             }
+            if (this.formReadOnly) {
+              method = 'view'
+            }
+            this.$refs.archiveFile.newUpload(method, data.cwFileInfoList, 'cwWorkContract', null, null, null, null, false)
             this.loading = false
           })
           // this.projectRecordsService.queryById(this.inputForm.id).then(({data}) => {
@@ -539,6 +548,11 @@
       },
       // 表单提交
       doSubmit (status, callback) {
+        if (this.inputForm.status === '2' && this.commonJS.isEmpty(this.inputForm.opinionType)) {
+          this.$message.error('意见类型不能为空')
+          this.loading = false
+          throw new Error('意见类型不能为空')
+        }
         if (status === 'save') {
           // 暂存
           this.inputForm.status = '1'
@@ -548,6 +562,11 @@
           //   return
           // }
           // this.inputForm.workAttachmentDtoList = this.$refs.uploadComponent.getDataList()
+          // this.inputForm.cwFileInfoList = this.$refs.archiveFile.getDataList()
+          this.$refs.archiveFile.getDataList().then((data) => {
+            this.inputForm.cwFileInfoList = data
+          })
+          // console.log('this.inputForm.cwFileInfoList', this.inputForm.cwFileInfoList)
           this.inputForm.createDate = this.moment(new Date()).format('YYYY-MM-DD HH:mm:ss')
           // 验证报告 日期报告 类型是否出具报告 意见类型 是否为空
           // eslint-disable-next-line no-unused-expressions
@@ -581,25 +600,23 @@
             }
             // console.log('进来了')
             // console.log('this.inputForm.cwProjectInfoList', this.inputForm.cwProjectInfoList)
-            if (this.inputForm.cwProjectInfoList !== undefined) {
-              this.inputForm.cwProjectInfoList.forEach((item, index) => {
-                if (this.commonJS.isEmpty(this.inputForm.cwProjectInfoList[index].reportDate)) {
-                  this.$message.error('报告日期不能为空')
-                  this.loading = false
-                  throw new Error('报告日期不能为空')
-                }
-                if (this.commonJS.isEmpty(this.inputForm.cwProjectInfoList[index].reportType)) {
-                  this.$message.error('报告类型不能为空')
-                  this.loading = false
-                  throw new Error('报告类型不能为空')
-                }
-                if (this.commonJS.isEmpty(this.inputForm.cwProjectInfoList[index].opinionType)) {
-                  this.$message.error('意见类型不能为空')
-                  this.loading = false
-                  throw new Error('意见类型不能为空')
-                }
-              })
-            }
+            // if (this.commonJS.isEmpty(this.inputForm.reportType)) {
+            //   this.$message.error('报告类型不能为空')
+            //   this.loading = false
+            //   throw new Error('报告类型不能为空')
+            // }
+            this.$refs.archiveFile.getDataList().then((data) => {
+              this.inputForm.cwFileInfoList = data
+            })
+            // let _this = this
+            // _this.inputForm.cwFileInfoList.forEach(info => {
+            //   if (this.commonJS.isEmpty(info.fileType)) {
+            //     throw new Error('文件类型不能为空')
+            //   }
+            //   if (this.commonJS.isEmpty(info.sealType)) {
+            //     throw new Error('盖章类型不能为空')
+            //   }
+            // })
             this.projectReportService.saveForm(this.inputForm).then(({data}) => {
               // console.log('businessTable', data.businessTable)
               // console.log('businessId', data.businessId)
@@ -686,28 +703,29 @@
       // 删除
       removeEvent (row, rowIndex, type) {
         if (type === 'client') {
-          this.$refs.clientTable.remove(row)
-          this.inputForm.cwProjectInfoList.splice(rowIndex, 1)
+          // this.$refs.clientTable.remove(row)
+          // this.inputForm.cwProjectInfoList.splice(rowIndex, 1)
         }
       },
       openWorkClient () {
         this.$refs.reportServiceUnitForm.init(this.inputForm.projectId)
       },
       getWorkClientChoose (list) {
-        if (this.commonJS.isEmpty(this.inputForm.cwProjectInfoList)) {
-          this.inputForm.cwProjectInfoList = []
-        }
+        // if (this.commonJS.isEmpty(this.inputForm.cwProjectInfoList)) {
+        //   this.inputForm.cwProjectInfoList = []
+        // }
+        // eslint-disable-next-line no-unused-vars
         let _this = this
         let _list = list
         const waitForEach = function () {
           return new Promise(function (resolve, reject) {
             _list.forEach((item) => {
-              _this.inputForm.cwProjectInfoList.forEach(client => {
-                if (item.id === client.servedUnitId) {
-                  // _this.$message.error('已存在客户 “' + client.servedUnitName + '”,请重新选择')
-                  // throw new Error('已存在客户 “' + client.servedUnitName + '”,请重新选择')
-                }
-              })
+              // _this.inputForm.cwProjectInfoList.forEach(client => {
+              //   if (item.id === client.servedUnitId) {
+              //     // _this.$message.error('已存在客户 “' + client.servedUnitName + '”,请重新选择')
+              //     // throw new Error('已存在客户 “' + client.servedUnitName + '”,请重新选择')
+              //   }
+              // })
             })
             resolve()
           })
@@ -715,20 +733,23 @@
         waitForEach().then(() => {
           list.forEach(item => {
             // eslint-disable-next-line no-unused-vars
-            let d = {
-              servedUnitName: item.name, // 被服务单位名称
-              // reportNumber: this.inputForm.projectNumber + '-0' + (this.inputForm.cwProjectInfoList.length + 1), // 报告流水号
-              issueReport: '是',
-              sealType: '未盖章',
-              id: this.uuid,
-              servedUnitId: item.id
-            }
+            // let d = {
+            //   servedUnitName: item.name, // 被服务单位名称
+            //   // reportNumber: this.inputForm.projectNumber + '-0' + (this.inputForm.cwProjectInfoList.length + 1), // 报告流水号
+            //   issueReport: '是',
+            //   sealType: '未盖章',
+            //   id: this.uuid,
+            //   servedUnitId: item.id
+            // }
             // console.log('新增行数据填入')
             // console.log('item', item)
             // console.log('d', d)
-            this.$refs.clientTable.insertAt(d)
-            this.inputForm.cwProjectInfoList.push(d)
+            // this.$refs.clientTable.insertAt(d)
+            // this.inputForm.cwProjectInfoList.push(d)
             // console.log('this.inputForm.cwProjectInfoList', this.inputForm.cwProjectInfoList)
+            this.inputForm.servedUnitName = item.name
+            this.inputForm.servedUnitId = item.id
+            this.inputForm.sealType = '未盖章'
             this.tableKeyClient = Math.random()
           })
         })

+ 1 - 1
src/views/modules/cw/reportManagement/ReportServiceUnitForm.vue

@@ -32,7 +32,7 @@
           :tree-config="{transform: true, rowField: 'id', parentField: 'oneUpCompany'}"
           :checkbox-config="{trigger: 'row', checkStrictly: true}">
           <vxe-column type="seq" align="center" width="80" title="序号"></vxe-column>
-          <vxe-column type="checkbox" width="40px"></vxe-column>
+          <vxe-column type="radio" width="40px"></vxe-column>
           <vxe-column width="" title="客户名称" align="center" field="name" tree-node></vxe-column>
           <vxe-column width="" title="客户编号" align="center" field="no"></vxe-column>
           <vxe-column width="" title="公司级次" align="center" field="companyLevel"></vxe-column>

+ 61 - 152
src/views/modules/cw/workContract/ContractFileForm.vue

@@ -114,36 +114,6 @@
         </el-col>
 
         <el-col :span="12">
-          <el-form-item label="合同金额类别" prop="contractAmountType"
-                        :rules="[
-                  {required: true, message:'请选择合同金额类别', trigger:'blur'}
-               ]">
-            <el-radio-group :disabled="true" v-model="inputForm.contractAmountType">
-              <el-radio v-for="item in $dictUtils.getDictList('contract_amount_type')" :label="item.value" >{{item.label}}</el-radio>
-            </el-radio-group>
-          </el-form-item>
-        </el-col>
-
-        <el-col :span="12">
-          <el-form-item label="合同金额(元)" prop="contractAmount" v-if="inputForm.contractAmountType === '1'"
-                        :rules="[
-                  {required: true, message:'请输入合同金额(元)', trigger:'blur'}
-               ]">
-            <el-input maxlength="15" :disabled="true" v-model="inputForm.contractAmount" placeholder="请输入合同金额(元)"
-                      @keyup.native="inputForm.contractAmount = twoDecimalPlaces(inputForm.contractAmount)"
-            ></el-input>
-          </el-form-item>
-        </el-col>
-
-        <el-col :span="12">
-          <el-form-item label="合同实际金额" prop="actualContractAmount"
-                        :rules="[{required: true, message: '请填写合同实际金额', trigger: 'blur'}
-                 ]">
-            <el-input maxlength="64" v-model="inputForm.actualContractAmount" ></el-input>
-          </el-form-item>
-        </el-col>
-
-        <el-col :span="12">
           <el-form-item label="合同份数" prop="contractNum"
                         :rules="[{required: true, message: '合同份数', trigger: 'blur'}
                  ]">
@@ -152,28 +122,6 @@
         </el-col>
 
         <el-col :span="12">
-          <el-form-item label="对方合同编号" prop="contractOpposite">
-            <el-input maxlength="64" :disabled="true" v-model="inputForm.contractOpposite" placeholder="请填写对方合同编号"></el-input>
-          </el-form-item>
-        </el-col>
-
-        <el-col :span="24">
-          <el-form-item label="收费标准" prop="contractFees">
-            <el-checkbox-group v-model="inputForm.contractFees">
-              <el-checkbox @change="changeContractFee" :disabled="true" v-for="item in $dictUtils.getDictList('contract_fee')" :label="item.value">
-                {{item.label}}
-              </el-checkbox>
-            </el-checkbox-group>
-          </el-form-item>
-        </el-col>
-
-        <el-col :span="24">
-          <el-form-item prop="contractFee">
-            <el-input style="width: 100%" :disabled="true" placeholder="请选择收费标准" v-model="inputForm.contractFee"></el-input>
-          </el-form-item>
-        </el-col>
-
-        <el-col :span="12">
           <el-form-item label="修改次数" prop="changeNum"
                         :rules="[{required: true, message: '修改次数', trigger: 'blur'}
                  ]">
@@ -228,6 +176,58 @@
           </el-form-item>
         </el-col>
 
+        <el-col>
+          <el-form-item label="合同金额类别" prop="contractAmountType"
+                        :rules="[
+                  {required: true, message:'请选择合同金额类别', trigger:'blur'}
+               ]">
+            <el-radio-group :disabled="true" v-model="inputForm.contractAmountType">
+              <el-radio v-for="item in $dictUtils.getDictList('contract_amount_type')" :label="item.value" >{{item.label}}</el-radio>
+            </el-radio-group>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="12">
+          <el-form-item label="合同金额(元)" prop="contractAmount" v-if="inputForm.contractAmountType === '1'"
+                        :rules="[
+                  {required: true, message:'请输入合同金额(元)', trigger:'blur'}
+               ]">
+            <el-input maxlength="15" :disabled="true" v-model="inputForm.contractAmount" placeholder="请输入合同金额(元)"
+                      @keyup.native="inputForm.contractAmount = twoDecimalPlaces(inputForm.contractAmount)"
+            ></el-input>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="12">
+          <el-form-item label="合同实际金额" prop="actualContractAmount"
+                        :rules="[{required: true, message: '请填写合同实际金额', trigger: 'blur'}
+                 ]">
+            <el-input maxlength="64" v-model="inputForm.actualContractAmount" ></el-input>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="12">
+          <el-form-item label="对方合同编号" prop="contractOpposite">
+            <el-input maxlength="64" :disabled="true" v-model="inputForm.contractOpposite" placeholder="请填写对方合同编号"></el-input>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="24">
+          <el-form-item label="收费标准" prop="contractFees">
+            <el-checkbox-group v-model="inputForm.contractFees">
+              <el-checkbox @change="changeContractFee" :disabled="true" v-for="item in $dictUtils.getDictList('contract_fee')" :label="item.value">
+                {{item.label}}
+              </el-checkbox>
+            </el-checkbox-group>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="24">
+          <el-form-item prop="contractFee">
+            <el-input style="width: 100%" :disabled="true" placeholder="请选择收费标准" v-model="inputForm.contractFee"></el-input>
+          </el-form-item>
+        </el-col>
+
         <el-col :span="12">
           <el-form-item label="付款约定" prop="paymentAgreement">
             <el-input maxlength="64" :disabled="true" type="textarea" v-model="inputForm.paymentAgreement" placeholder="请输入付款约定"></el-input>
@@ -562,7 +562,7 @@
           this.$refs.uploadFile.clearUpload()
           this.$refs.archiveFile.clearUpload()
           // 查询合同登记数据
-          console.log('this.inputForm.id', this.inputForm.id)
+          // console.log('this.inputForm.id', this.inputForm.id)
           this.contractInfoService.findById(this.inputForm.id).then(({data}) => {
             this.inputForm = this.recover(this.inputForm, data)
             const f = []
@@ -577,105 +577,14 @@
             if (this.formReadOnly) {
               method = 'view'
             }
-            console.log('data', data)
-            console.log('this.inputForm.contractProperList', this.inputForm.contractProperList)
-            console.log('this.inputForm.contractInfoList', this.inputForm.contractInfoList)
+            // console.log('data', data)
+            // console.log('this.inputForm.contractProperList', this.inputForm.contractProperList)
+            // console.log('this.inputForm.contractInfoList', this.inputForm.contractInfoList)
             this.$refs.uploadFile.newUpload('view', this.inputForm.contractProperList, 'cwWorkContract', null, null, null, null, false)
             this.$refs.archiveFile.newUpload(method, this.inputForm.contractInfoList, 'cwWorkContract', null, null, null, null, false)
             this.loading = false
           })
         }
-        // this.$nextTick(() => {
-        //   this.$refs.inputForm.resetFields()
-        //   // if (method === 'edit' || method === 'view') { // 修改或者查看
-        //   this.loading = true
-        //   this.contractInfoService.findById(this.inputForm.id).then(data1 => {
-        //     this.$refs.archiveFile.clearUpload()
-        //     this.$refs.uploadFile.clearUpload()
-        //     this.inputForm.contractProperList = data1.data.contractProperList
-        //     // console.log('data1.id', data1.data.id)
-        //     // console.log('data1.data.filedType', data1.data.filedType)
-        //     if ((data1.data.filedType !== '0' & data1.data.filedType !== undefined) || data1.data.id === undefined) {
-        //       // console.log('data1.22222')
-        //       // console.log('data1.data.contractProperList', data1.data.contractProperList)
-        //       this.$refs.uploadFile.clearUpload()
-        //       this.$refs.uploadFile.newUpload('view', data1.data.contractProperList, 'cwWorkContract', null, null, null, null, false)
-        //       this.contractFileService.findById(this.inputForm.id).then(data2 => {
-        //         this.inputForm.contractProperList = data2.data.contractProperList
-        //         this.inputForm.contractInfoList = data2.data.contractInfoList
-        //         console.log('data2', data2)
-        //         this.contractInfoService.findById(data2.data.contractInfoId).then(async (data3) => {
-        //           data3.data.contractProperList = this.inputForm.contractProperList
-        //           data3.data.contractInfoList = this.inputForm.contractInfoList
-        //           this.inputForm.contractNo = data3.data.contractNo
-        //           this.inputForm.filedNo = data3.data.filedNo
-        //           this.inputForm.contractName = data3.data.contractName
-        //           this.inputForm.payerSubject = data3.data.payerSubject
-        //           this.inputForm.paymentMethod = data3.data.paymentMethod
-        //           this.inputForm.signingDate = data3.data.signingDate
-        //           this.inputForm.contractAmountType = data3.data.contractAmountType
-        //           this.inputForm.contractAmount = data3.data.contractAmount
-        //           this.inputForm.actualContractAmount = data3.data.actualContractAmount
-        //           this.inputForm.contractNum = data3.data.contractNum
-        //           this.inputForm.contractOpposite = data3.data.contractOpposite
-        //           this.inputForm.confirmFiledNo = data3.data.confirmFiledNo
-        //           this.inputForm.contractFee = data3.data.contractFee
-        //           this.inputForm.fees = data3.data.fees
-        //           this.inputForm.changeNum = data3.data.changeNum
-        //           this.inputForm.department = data3.data.department
-        //           console.log('data3.data.department', data3.data.department)
-        //           this.inputForm.clientContacts = data3.data.clientContacts
-        //           this.inputForm.clientContactsPhone = data3.data.clientContactsPhone
-        //           this.inputForm.createBy = data3.data.createBy
-        //           this.inputForm.createDate = data3.data.createDate
-        //           this.inputForm.paymentAgreement = data3.data.paymentAgreement
-        //           if (data3.data.filedType === '2' || data3.data.filedType === '5') {
-        //             // this.$refs.uploadFile.clearUpload()
-        //             // this.$refs.uploadFile.newUpload('view', data3.data.contractProperList, 'cwWorkContract', null, null, null, null, false)
-        //             await this.$refs.archiveFile.newUpload('view', data3.data.contractInfoList, 'cwWorkContract', null, null, null, null, false)
-        //             // console.log('this.$refs.getDataList', this.$refs.archiveFile.getDataList())
-        //             console.log('this.$refs.uploadFile', this.commonJS.isNotEmpty(this.$refs.uploadFile.getDataList()))
-        //           } else {
-        //             // this.$refs.uploadFile.clearUpload()
-        //             // this.$refs.uploadFile.newUpload('view', data3.data.contractProperList, 'cwWorkContract', null, null, null, null, false)
-        //             this.$refs.archiveFile.newUpload(method, data3.data.contractInfoList, 'cwWorkContract', null, null, null, null, false)
-        //           }
-        //           if ((data3.data.filedType === '2' || data3.data.filedType === '5') && this.commonJS.isEmpty(this.$refs.uploadFile.getDataList())) {
-        //             await this.$refs.uploadFile.clearUpload()
-        //             this.$refs.uploadFile.newUpload('view', data3.data.contractProperList, 'cwWorkContract', null, null, null, null, false)
-        //           }
-        //           const f = []
-        //           if (data3.data.fees !== null && data3.data.fees !== undefined && data3.data.fees !== '') {
-        //             data3.data.fees.split(',').forEach(item => {
-        //               if (item !== null && item !== undefined && item !== '') {
-        //                 f.push(item)
-        //               }
-        //             })
-        //           }
-        //           this.inputForm.contractFees = f
-        //
-        //           // console.log('data3', data3)
-        //           // console.log('this.inputForm', this.inputForm)
-        //           // console.log('this.$refs.archiveFile', this.$refs.archiveFile.dataList)
-        //           // console.log('this.$refs.uploadFile', this.$refs.uploadFile.dataList.length)
-        //           this.saveData(data3.data, method)
-        //           if (this.formReadOnly) {
-        //             method = 'view'
-        //           }
-        //         })
-        //       })
-        //     } else {
-        //       // console.log('进来了22')
-        //       this.$refs.uploadFile.clearUpload()
-        //       this.$refs.uploadFile.newUpload('view', data1.data.contractProperList, 'cwWorkContract', null, null, null, null, false)
-        //       this.saveData(data1.data, method)
-        //       if (this.formReadOnly) {
-        //         method = 'view'
-        //       }
-        //     }
-        //     this.loading = false
-        //   })
-        // }
         )
       },
       tabHandleClick (event) {
@@ -730,7 +639,7 @@
         if (this.commonJS.isEmpty(this.inputForm.cwWorkClientContactDTOList)) {
           this.inputForm.cwWorkClientContactDTOList = []
         }
-        console.log('list', list)
+        // console.log('list', list)
         let _this = this
         let _list = list
         const waitForEach = function () {
@@ -750,7 +659,7 @@
             no: list.no,
             name: list.name
           }
-          console.log('list', list)
+          // console.log('list', list)
           this.inputForm.customerNo = list.no
           this.inputForm.uscCode = list.uscCode
           this.inputForm.address = list.address
@@ -781,14 +690,14 @@
                 }
                 // await this.contractInfoService.save(this.inputForm)
               }
-              console.log('actualContractAmount', _this.inputForm.actualContractAmount)
+              // console.log('actualContractAmount', _this.inputForm.actualContractAmount)
               // eslint-disable-next-line no-unused-vars
               // 合同登记归档暂存
               if (_this.status === 'startAndHoldFiled') {
                 _this.inputForm.filedType = '1'
                 _this.inputForm.contractInfoId = _this.businessId
                 _this.inputForm.contractInfoList = _this.$refs.archiveFile.getDataList()
-                console.log('actualContractAmount', _this.inputForm.actualContractAmount)
+                // console.log('actualContractAmount', _this.inputForm.actualContractAmount)
                 // this.inputForm.contractInfoList = this.$refs.uploadFile.getDataList()
                 _this.contractFileService.save(_this.inputForm).then(() => {
                   _this.contractInfoService.updateInfo(_this.inputForm).then(() => {
@@ -873,7 +782,7 @@
       changeContractFee () {
         let fee = ''
         let fees = this.inputForm.contractFees
-        console.log('fees', fees)
+        // console.log('fees', fees)
         if (fees.length > 0) {
           fees.forEach(i => {
             if (i === '1') {

+ 60 - 60
src/views/modules/cw/workContract/ContractFilePaperForm.vue

@@ -114,36 +114,6 @@
         </el-col>
 
         <el-col :span="12">
-          <el-form-item label="合同金额类别" prop="contractAmountType"
-                        :rules="[
-                  {required: true, message:'请选择合同金额类别', trigger:'blur'}
-               ]">
-            <el-radio-group :disabled="true" v-model="inputForm.contractAmountType">
-              <el-radio v-for="item in $dictUtils.getDictList('contract_amount_type')" :label="item.value" >{{item.label}}</el-radio>
-            </el-radio-group>
-          </el-form-item>
-        </el-col>
-
-        <el-col :span="12">
-          <el-form-item label="合同金额(元)" prop="contractAmount" v-if="inputForm.contractAmountType === '1'"
-                        :rules="[
-                  {required: true, message:'请输入合同金额(元)', trigger:'blur'}
-               ]">
-            <el-input maxlength="15" :disabled="true" v-model="inputForm.contractAmount" placeholder="请输入合同金额(元)"
-                      @keyup.native="inputForm.contractAmount = twoDecimalPlaces(inputForm.contractAmount)"
-            ></el-input>
-          </el-form-item>
-        </el-col>
-
-        <el-col :span="12">
-          <el-form-item label="合同实际金额" prop="actualContractAmount"
-                        :rules="[{required: true, message: '请填写合同实际金额', trigger: 'blur'}
-                 ]">
-            <el-input maxlength="64" :disabled="true" v-model="inputForm.actualContractAmount" ></el-input>
-          </el-form-item>
-        </el-col>
-
-        <el-col :span="12">
           <el-form-item label="合同份数" prop="contractNum"
                         :rules="[{required: true, message: '合同份数', trigger: 'blur'}
                  ]">
@@ -152,28 +122,6 @@
         </el-col>
 
         <el-col :span="12">
-          <el-form-item label="对方合同编号" prop="contractOpposite">
-            <el-input maxlength="64" :disabled="true" v-model="inputForm.contractOpposite" placeholder="请填写对方合同编号"></el-input>
-          </el-form-item>
-        </el-col>
-
-        <el-col :span="24">
-          <el-form-item label="收费标准" prop="contractFees">
-            <el-checkbox-group v-model="inputForm.contractFees">
-              <el-checkbox @change="changeContractFee" :disabled="true" v-for="item in $dictUtils.getDictList('contract_fee')" :label="item.value">
-                {{item.label}}
-              </el-checkbox>
-            </el-checkbox-group>
-          </el-form-item>
-        </el-col>
-
-        <el-col :span="24">
-          <el-form-item prop="contractFee">
-            <el-input style="width: 100%" :disabled="true" placeholder="请选择收费标准" v-model="inputForm.contractFee"></el-input>
-          </el-form-item>
-        </el-col>
-
-        <el-col :span="12">
           <el-form-item label="修改次数" prop="changeNum"
                         :rules="[{required: true, message: '修改次数', trigger: 'blur'}
                  ]">
@@ -243,6 +191,58 @@
           </el-form-item>
         </el-col>
 
+        <el-col>
+          <el-form-item label="合同金额类别" prop="contractAmountType"
+                        :rules="[
+                  {required: true, message:'请选择合同金额类别', trigger:'blur'}
+               ]">
+            <el-radio-group :disabled="true" v-model="inputForm.contractAmountType">
+              <el-radio v-for="item in $dictUtils.getDictList('contract_amount_type')" :label="item.value" >{{item.label}}</el-radio>
+            </el-radio-group>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="12">
+          <el-form-item label="合同金额(元)" prop="contractAmount" v-if="inputForm.contractAmountType === '1'"
+                        :rules="[
+                  {required: true, message:'请输入合同金额(元)', trigger:'blur'}
+               ]">
+            <el-input maxlength="15" :disabled="true" v-model="inputForm.contractAmount" placeholder="请输入合同金额(元)"
+                      @keyup.native="inputForm.contractAmount = twoDecimalPlaces(inputForm.contractAmount)"
+            ></el-input>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="12">
+          <el-form-item label="合同实际金额" prop="actualContractAmount"
+                        :rules="[{required: true, message: '请填写合同实际金额', trigger: 'blur'}
+                 ]">
+            <el-input maxlength="64" :disabled="true" v-model="inputForm.actualContractAmount" ></el-input>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="12">
+          <el-form-item label="对方合同编号" prop="contractOpposite">
+            <el-input maxlength="64" :disabled="true" v-model="inputForm.contractOpposite" placeholder="请填写对方合同编号"></el-input>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="24">
+          <el-form-item label="收费标准" prop="contractFees">
+            <el-checkbox-group v-model="inputForm.contractFees">
+              <el-checkbox @change="changeContractFee" :disabled="true" v-for="item in $dictUtils.getDictList('contract_fee')" :label="item.value">
+                {{item.label}}
+              </el-checkbox>
+            </el-checkbox-group>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="24">
+          <el-form-item prop="contractFee">
+            <el-input style="width: 100%" :disabled="true" placeholder="请选择收费标准" v-model="inputForm.contractFee"></el-input>
+          </el-form-item>
+        </el-col>
+
         <el-col :span="12">
           <el-form-item label="付款约定" prop="paymentAgreement">
             <el-input maxlength="64" :disabled="true" type="textarea" v-model="inputForm.paymentAgreement" placeholder="请输入付款约定"></el-input>
@@ -580,7 +580,7 @@
           this.$refs.uploadFile.clearUpload()
           this.$refs.archiveFile.clearUpload()
           // 查询合同登记数据
-          console.log('this.inputForm.id', this.inputForm.id)
+          // console.log('this.inputForm.id', this.inputForm.id)
           this.contractInfoService.findById(this.inputForm.id).then(({data}) => {
             this.inputForm = this.recover(this.inputForm, data)
             const f = []
@@ -595,8 +595,8 @@
             if (this.formReadOnly) {
               method = 'view'
             }
-            console.log('data', data)
-            console.log('this.inputForm.department', this.inputForm.department)
+            // console.log('data', data)
+            // console.log('this.inputForm.department', this.inputForm.department)
             this.$refs.uploadFile.newUpload('view', this.inputForm.contractProperList, 'cwWorkContract', null, null, null, null, false)
             this.$refs.archiveFile.newUpload('view', this.inputForm.contractInfoList, 'cwWorkContract', null, null, null, null, false)
             this.loading = false
@@ -656,7 +656,7 @@
         if (this.commonJS.isEmpty(this.inputForm.cwWorkClientContactDTOList)) {
           this.inputForm.cwWorkClientContactDTOList = []
         }
-        console.log('list', list)
+        // console.log('list', list)
         let _this = this
         let _list = list
         const waitForEach = function () {
@@ -676,7 +676,7 @@
             no: list.no,
             name: list.name
           }
-          console.log('list', list)
+          // console.log('list', list)
           this.inputForm.customerNo = list.no
           this.inputForm.uscCode = list.uscCode
           this.inputForm.address = list.address
@@ -706,14 +706,14 @@
                   _this.inputForm.status = '5'
                 }
               }
-              console.log('actualContractAmount', _this.inputForm.actualContractAmount)
+              // console.log('actualContractAmount', _this.inputForm.actualContractAmount)
               // eslint-disable-next-line no-unused-vars
               // 合同登记归档暂存
               if (_this.status === 'startAndHoldFiled') {
                 _this.inputForm.filedPaperType = '1'
                 _this.inputForm.contractInfoId = _this.businessId
                 _this.inputForm.contractInfoList = _this.$refs.archiveFile.getDataList()
-                console.log('actualContractAmount', _this.inputForm.actualContractAmount)
+                // console.log('actualContractAmount', _this.inputForm.actualContractAmount)
                 // this.inputForm.contractInfoList = this.$refs.uploadFile.getDataList()
                 _this.contractFilePaperService.save(_this.inputForm).then(() => {
                   // _this.contractInfoService.updateInfo(_this.inputForm).then(() => {
@@ -806,7 +806,7 @@
       changeContractFee () {
         let fee = ''
         let fees = this.inputForm.contractFees
-        console.log('fees', fees)
+        // console.log('fees', fees)
         if (fees.length > 0) {
           fees.forEach(i => {
             if (i === '1') {

+ 78 - 78
src/views/modules/cw/workContract/ContractNameForm.vue

@@ -117,16 +117,71 @@
                 </el-form-item>
               </el-col>
 
-              <el-col :span="12">
-                <el-form-item label="合同金额类别" prop="contractAmountType"
-                              :rules="[
-                        {required: true, message:'请选择合同金额类别', trigger:'blur'}
-                     ]">
-                  <el-radio-group v-model="inputForm.contractAmountType">
-                    <el-radio v-for="item in $dictUtils.getDictList('contract_amount_type')" :label="item.value" >{{item.label}}</el-radio>
-                  </el-radio-group>
-                </el-form-item>
-              </el-col>
+        <el-col :span="12">
+          <el-form-item label="合同份数" prop="contractNum"
+                        :rules="[{required: true, message: '合同份数', trigger: 'blur'}
+                 ]">
+            <el-input maxlength="64" v-model="inputForm.contractNum" placeholder="请输入合同份数"></el-input>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="12">
+          <el-form-item label="修改次数" prop="changeNum"
+                        :rules="[{required: true, message: '修改次数', trigger: 'blur'}
+                 ]">
+            <el-input maxlength="64" :disabled="true" v-model="inputForm.changeNum" placeholder="请输入修改次数"></el-input>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="12">
+          <el-form-item  prop="department" label="所属部门">
+            <SelectTree
+              ref="officeTree"
+              :props="{
+                  value: 'id',             // ID字段名
+                  label: 'name',         // 显示名称
+                  children: 'children'    // 子级字段名
+                }"
+
+              :url="`/sys/office/treeData?type=1`"
+              :value="inputForm.department"
+              :accordion="true"
+              size="medium"
+              @getValue="(value) => {inputForm.department=value}"/>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="12">
+          <el-form-item label="创建人" prop="createBy"
+                        :rules="[{required: true, message: '创建人', trigger: 'blur'}
+                 ]">
+            <el-input maxlength="64" :disabled="true" v-model="inputForm.createBy" placeholder="请输入创建人"></el-input>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="12">
+          <el-form-item label="创建时间" prop="createDate">
+            <el-date-picker
+              placement="bottom-start"
+              value-format="yyyy-MM-dd"
+              v-model="inputForm.createDate"
+              style="width: 100%"
+              :disabled="true"
+              placeholder="选择日期">
+            </el-date-picker>
+          </el-form-item>
+        </el-col>
+
+        <el-col>
+          <el-form-item label="合同金额类别" prop="contractAmountType"
+                        :rules="[
+                  {required: true, message:'请选择合同金额类别', trigger:'blur'}
+               ]">
+            <el-radio-group v-model="inputForm.contractAmountType">
+              <el-radio v-for="item in $dictUtils.getDictList('contract_amount_type')" :label="item.value" >{{item.label}}</el-radio>
+            </el-radio-group>
+          </el-form-item>
+        </el-col>
 
               <el-col :span="12">
                 <el-form-item label="合同金额(元)" prop="contractAmount" v-if="inputForm.contractAmountType === '1'"
@@ -146,14 +201,6 @@
               </el-col>
 
               <el-col :span="12">
-                <el-form-item label="合同份数" prop="contractNum"
-                              :rules="[{required: true, message: '合同份数', trigger: 'blur'}
-                       ]">
-                  <el-input maxlength="64" v-model="inputForm.contractNum" placeholder="请输入合同份数"></el-input>
-                </el-form-item>
-              </el-col>
-
-              <el-col :span="12">
                 <el-form-item label="对方合同编号" prop="contractOpposite">
                   <el-input maxlength="64" v-model="inputForm.contractOpposite" placeholder="请填写对方合同编号"></el-input>
                 </el-form-item>
@@ -193,58 +240,11 @@
                 </el-form-item>
               </el-col>
 
-              <el-col :span="12">
-                <el-form-item label="修改次数" prop="changeNum"
-                              :rules="[{required: true, message: '修改次数', trigger: 'blur'}
-                       ]">
-                  <el-input maxlength="64" :disabled="true" v-model="inputForm.changeNum" placeholder="请输入修改次数"></el-input>
-                </el-form-item>
-              </el-col>
-
-              <el-col :span="12">
-                <el-form-item  prop="department" label="所属部门">
-                  <SelectTree
-                    ref="officeTree"
-                    :props="{
-                        value: 'id',             // ID字段名
-                        label: 'name',         // 显示名称
-                        children: 'children'    // 子级字段名
-                      }"
-
-                    :url="`/sys/office/treeData?type=1`"
-                    :value="inputForm.department"
-                    :accordion="true"
-                    size="medium"
-                    @getValue="(value) => {inputForm.department=value}"/>
-                </el-form-item>
-              </el-col>
-
-              <el-col :span="12">
-                <el-form-item label="创建人" prop="createBy"
-                              :rules="[{required: true, message: '创建人', trigger: 'blur'}
-                       ]">
-                  <el-input maxlength="64" :disabled="true" v-model="inputForm.createBy" placeholder="请输入创建人"></el-input>
-                </el-form-item>
-              </el-col>
-
-              <el-col :span="12">
-                <el-form-item label="创建时间" prop="createDate">
-                  <el-date-picker
-                    placement="bottom-start"
-                    value-format="yyyy-MM-dd"
-                    v-model="inputForm.createDate"
-                    style="width: 100%"
-                    :disabled="true"
-                    placeholder="选择日期">
-                  </el-date-picker>
-                </el-form-item>
-              </el-col>
-
-              <el-col :span="12">
-                <el-form-item label="付款约定" prop="paymentAgreement">
-                  <el-input maxlength="64" type="textarea" v-model="inputForm.paymentAgreement" placeholder="请输入付款约定"></el-input>
-                </el-form-item>
-              </el-col>
+        <el-col :span="12">
+          <el-form-item label="付款约定" prop="paymentAgreement">
+            <el-input maxlength="64" type="textarea" v-model="inputForm.paymentAgreement" placeholder="请输入付款约定"></el-input>
+          </el-form-item>
+        </el-col>
 
             </el-row>
           </el-form>
@@ -713,10 +713,10 @@
           //   this.$refs.archiveFile.clearUpload()
           // }
           // 查询合同登记数据
-          console.log('this.inputForm.id', this.inputForm.id)
+          // console.log('this.inputForm.id', this.inputForm.id)
           this.contractInfoService.findById(this.inputForm.id).then(({data}) => {
             this.inputForm = this.recover(this.inputForm, data)
-            console.log('this.inputForm.filedPaperType', this.inputForm.filedPaperType)
+            // console.log('this.inputForm.filedPaperType', this.inputForm.filedPaperType)
             const f = []
             if (data.fees !== null && data.fees !== undefined && data.fees !== '') {
               data.fees.split(',').forEach(item => {
@@ -729,9 +729,9 @@
             if (this.formReadOnly) {
               method = 'view'
             }
-            console.log('data', data)
-            console.log('this.inputForm.contractProperList', this.inputForm.contractProperList)
-            console.log('this.inputForm.contractInfoList', this.inputForm.contractInfoList)
+            // console.log('data', data)
+            // console.log('this.inputForm.contractProperList', this.inputForm.contractProperList)
+            // console.log('this.inputForm.contractInfoList', this.inputForm.contractInfoList)
             this.$refs.uploadFile.newUpload(method, this.inputForm.contractProperList, 'cwWorkContract', null, null, null, null, false)
             this.$refs.archiveFile.newUpload(method, this.inputForm.contractInfoList, 'cwWorkContract', null, null, null, null, false)
             this.loading = false
@@ -866,7 +866,7 @@
         if (this.commonJS.isEmpty(this.inputForm.cwWorkClientContactDTOList)) {
           this.inputForm.cwWorkClientContactDTOList = []
         }
-        console.log('list', list)
+        // console.log('list', list)
         let _this = this
         let _list = list
         const waitForEach = function () {
@@ -886,7 +886,7 @@
             no: list.no,
             name: list.name
           }
-          console.log('list', list)
+          // console.log('list', list)
           this.inputForm.customerNo = list.no
           this.inputForm.uscCode = list.uscCode
           this.inputForm.address = list.address
@@ -1008,7 +1008,7 @@
         this.visable = false
       },
       updateStatusById (type) {
-        console.log('type' + type)
+        // console.log('type' + type)
         if (type === 'agree') {
           this.inputForm.filedType = '5'
           this.contractFileService.updateStatusById(this.inputForm)

+ 9 - 9
src/views/modules/cw/workContract/ContractRegistration.vue

@@ -163,11 +163,11 @@
               <!--归档撤回-->
               <el-button v-if="hasPermission('cw:workContract:back') && scope.row.status === '5' && scope.row.filedType === '2'" type="text"  size="small" @click="rebackFiled(scope.row)">撤回</el-button>
               <!--合同借用-->
-              <el-button v-if="hasPermission('sys:workContract:borrow') && scope.row.status === '5' && scope.row.filedType === '5' && (scope.row.borrowType === undefined || scope.row.borrowType === '0' || scope.row.borrowType === '1')" type="text" size="small" @click="borrow(scope.row.id)">借用</el-button>
+              <el-button v-if="hasPermission('cw:workContract:borrow') && scope.row.status === '5' && scope.row.filedType === '5' && (scope.row.borrowType === undefined || scope.row.borrowType === '0' || scope.row.borrowType === '1')" type="text" size="small" @click="borrow(scope.row.id)">借用</el-button>
               <!--借用撤回-->
-              <el-button v-if="hasPermission('sys:workContract:back') && scope.row.status === '5' && scope.row.filedType === '5' && scope.row.borrowType === '2'" type="text" size="small" @click="rebackBorrow(scope.row)">撤回</el-button>
+              <el-button v-if="hasPermission('cw:workContract:back') && scope.row.status === '5' && scope.row.filedType === '5' && scope.row.borrowType === '2'" type="text" size="small" @click="rebackBorrow(scope.row)">撤回</el-button>
               <!--借用归还-->
-              <el-button v-if="hasPermission('sys:workContract:reture') && scope.row.status === '5' && scope.row.filedType === '5' && scope.row.borrowType === '5'" type="text" size="small" @click="retureBorrow(scope.row)">归还合同</el-button>
+              <el-button v-if="hasPermission('cw:workContract:reture') && scope.row.status === '5' && scope.row.filedType === '5' && scope.row.borrowType === '5'" type="text" size="small" @click="retureBorrow(scope.row)">归还合同</el-button>
 
               <el-button v-if="hasPermission('cw:workContract:filed') && scope.row.status === '5' && scope.row.filedType === '5' && scope.row.createId === $store.state.user.id && (scope.row.filedPaperType === '0' || scope.row.filedPaperType === undefined)" type="text" size="small" @click="paperFiled(scope.row.id)">纸质归档</el-button>
               <!--纸质归档暂存修改-->
@@ -578,8 +578,8 @@
           if (!this.commonJS.isEmpty(data.id)) {
             // console.log('data', data)
             // 读取流程表单
-            let tabTitle = `发起流程【财务-合同登记归档】`
-            let processTitle = `${this.userName} 在 ${this.moment(new Date()).format('YYYY-MM-DD HH:mm')} 发起了 [财务-合同登记归档]`
+            let tabTitle = `发起流程【财务-合同电子归档】`
+            let processTitle = `${this.userName} 在 ${this.moment(new Date()).format('YYYY-MM-DD HH:mm')} 发起了 [财务-合同电子归档]`
             this.taskService.getTaskDef({ procDefId: data.id,
               businessId: id,
               businessTable: 'cw_work_contract_file',
@@ -610,8 +610,8 @@
           if (!this.commonJS.isEmpty(data.id)) {
             // console.log('data', data)
             // 读取流程表单
-            let tabTitle = `发起流程【财务-合同登记归档】`
-            let processTitle = `${this.userName} 在 ${this.moment(new Date()).format('YYYY-MM-DD HH:mm')} 发起了 [财务-合同登记归档]`
+            let tabTitle = `发起流程【财务-合同电子归档】`
+            let processTitle = `${this.userName} 在 ${this.moment(new Date()).format('YYYY-MM-DD HH:mm')} 发起了 [财务-合同电子归档]`
             this.taskService.getTaskDef({ procDefId: data.id,
               businessId: id,
               businessTable: 'cw_work_contract_file',
@@ -666,7 +666,7 @@
       borrow (id) {
         this.processService.getByName('财务-合同登记借用').then(({data}) => {
           if (!this.commonJS.isEmpty(data.id)) {
-            console.log('data', data)
+            // console.log('data', data)
             // 读取流程表单
             let tabTitle = `发起流程【财务-合同登记借用】`
             let processTitle = `${this.userName} 在 ${this.moment(new Date()).format('YYYY-MM-DD HH:mm')} 发起了 [财务-合同登记借用]`
@@ -706,7 +706,7 @@
           taskId: row.taskBorrowId,
           type: 'warning'
         }).then(() => {
-          console.log('datas', row.taskBorrowId)
+          // console.log('datas', row.taskBorrowId)
           this.taskService.backNodes(row.taskBorrowId).then(({data}) => {
             let backNodes = data
             if (backNodes.length > 0) {

+ 63 - 55
src/views/modules/cw/workContract/ContractRegistrationForm.vue

@@ -113,34 +113,6 @@
         </el-col>
 
         <el-col :span="12">
-          <el-form-item label="合同金额类别" prop="contractAmountType"
-                        :rules="[
-                  {required: true, message:'请选择合同金额类别', trigger:'blur'}
-               ]">
-            <el-radio-group v-model="inputForm.contractAmountType">
-              <el-radio v-for="item in $dictUtils.getDictList('contract_amount_type')" :label="item.value" >{{item.label}}</el-radio>
-            </el-radio-group>
-          </el-form-item>
-        </el-col>
-
-        <el-col :span="12">
-          <el-form-item label="合同金额(元)" prop="contractAmount" v-if="inputForm.contractAmountType === '1'"
-                        :rules="[
-                  {required: true, message:'请输入合同金额(元)', trigger:'blur'}
-               ]">
-            <el-input maxlength="15" v-model="inputForm.contractAmount" placeholder="请输入合同金额(元)"
-                      @keyup.native="inputForm.contractAmount = twoDecimalPlaces(inputForm.contractAmount)"
-            ></el-input>
-          </el-form-item>
-        </el-col>
-
-        <el-col :span="12">
-          <el-form-item label="合同实际金额" prop="actualContractAmount">
-            <el-input maxlength="64" :disabled="true" v-model="inputForm.actualContractAmount" ></el-input>
-          </el-form-item>
-        </el-col>
-
-        <el-col :span="12">
           <el-form-item label="合同份数" prop="contractNum"
                         :rules="[{required: true, message: '合同份数', trigger: 'blur'}
                  ]">
@@ -154,22 +126,6 @@
           </el-form-item>
         </el-col>
 
-        <el-col :span="24">
-          <el-form-item label="收费标准" prop="contractFees">
-            <el-checkbox-group v-model="inputForm.contractFees">
-              <el-checkbox @change="changeContractFee" v-for="item in $dictUtils.getDictList('contract_fee')" :label="item.value">
-                {{item.label}}
-              </el-checkbox>
-            </el-checkbox-group>
-          </el-form-item>
-        </el-col>
-
-        <el-col :span="24">
-          <el-form-item prop="contractFee">
-            <el-input style="width: 100%" placeholder="请选择收费标准" v-model="inputForm.contractFee"></el-input>
-          </el-form-item>
-        </el-col>
-
         <el-col :span="12">
           <el-form-item label="修改次数" prop="changeNum"
                         :rules="[{required: true, message: '修改次数', trigger: 'blur'}
@@ -217,6 +173,50 @@
           </el-form-item>
         </el-col>
 
+        <el-col>
+          <el-form-item label="合同金额类别" prop="contractAmountType"
+                        :rules="[
+                  {required: true, message:'请选择合同金额类别', trigger:'blur'}
+               ]">
+            <el-radio-group v-model="inputForm.contractAmountType">
+              <el-radio v-for="item in $dictUtils.getDictList('contract_amount_type')" :label="item.value" >{{item.label}}</el-radio>
+            </el-radio-group>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="12">
+          <el-form-item label="合同金额(元)" prop="contractAmount" v-if="inputForm.contractAmountType === '1'"
+                        :rules="[
+                  {required: true, message:'请输入合同金额(元)', trigger:'blur'}
+               ]">
+            <el-input maxlength="15" v-model="inputForm.contractAmount" placeholder="请输入合同金额(元)"
+                      @keyup.native="inputForm.contractAmount = twoDecimalPlaces(inputForm.contractAmount)"
+            ></el-input>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="12">
+          <el-form-item label="合同实际金额" prop="actualContractAmount">
+            <el-input maxlength="64" :disabled="true" v-model="inputForm.actualContractAmount" ></el-input>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="24">
+          <el-form-item label="收费标准" prop="contractFees">
+            <el-checkbox-group v-model="inputForm.contractFees">
+              <el-checkbox @change="changeContractFee" v-for="item in $dictUtils.getDictList('contract_fee')" :label="item.value">
+                {{item.label}}
+              </el-checkbox>
+            </el-checkbox-group>
+          </el-form-item>
+        </el-col>
+
+        <el-col :span="24">
+          <el-form-item prop="contractFee">
+            <el-input style="width: 100%" placeholder="请选择收费标准" v-model="inputForm.contractFee"></el-input>
+          </el-form-item>
+        </el-col>
+
         <el-col :span="12">
           <el-form-item label="付款约定" prop="paymentAgreement">
             <el-input maxlength="64" type="textarea" v-model="inputForm.paymentAgreement" placeholder="请输入付款约定"></el-input>
@@ -484,7 +484,7 @@
         this.dataList = []
         this.dataListNew = []
         this.method = method
-        console.log('method', method)
+        // console.log('method', method)
         this.inputForm = {
           customerId: '',  // 客户id
           address: '',
@@ -517,7 +517,6 @@
         }
         this.inputForm.id = id
         if (method === 'add') {
-          // this.inputForm.contractAmountType = '1'
           this.title = `新建合同登记`
         } else if (method === 'edit') {
           this.title = '修改合同登记'
@@ -535,8 +534,14 @@
           this.$refs.archiveFile.clearUpload()
           this.contractInfoService.findById(this.inputForm.id).then(({data}) => {
             this.inputForm = this.recover(this.inputForm, data)
+            if (this.commonJS.isEmpty(this.inputForm.contractAmountType)) {
+              this.inputForm.contractAmountType = '1'
+            }
+            if (this.commonJS.isEmpty(this.inputForm.department)) {
+              this.inputForm.department = JSON.parse(localStorage.getItem('user')).officeDTO.id
+            }
             // 对数值进行判断是否为空,为空则赋值默认值
-            console.log('this.inputForm.contractStatus', this.inputForm.contractStatus)
+            // console.log('this.inputForm.contractStatus', this.inputForm.contractStatus)
             if (this.inputForm.contractStatus === undefined || this.inputForm.contractStatus === '') {
               this.inputForm.contractStatus = '新创建'
             }
@@ -616,7 +621,7 @@
         this.$refs.workClientChooseRadio.init()
       },
       getWorkClientChoose (list) {
-        console.log('list', list)
+        // console.log('list', list)
         if (this.commonJS.isEmpty(this.inputForm.cwWorkClientContactDTOList)) {
           this.inputForm.cwWorkClientContactDTOList = []
         }
@@ -647,15 +652,18 @@
         if (this.commonJS.isEmpty(this.inputForm.cwWorkClientContactDTOList)) {
           this.inputForm.cwWorkClientContactDTOList = []
         }
-        console.log('list', list)
+        // console.log('list', list)
         let _this = this
+        // eslint-disable-next-line no-unused-vars
         let _list = list
         const waitForEach = function () {
           return new Promise(function (resolve, reject) {
-            _this.inputForm.cwWorkClientContactDTOList.forEach(client => {
-              if (_list.no === client.no) {
-                _this.$message.error('已存在客户 “' + client.name + '”,请重新选择')
-                throw new Error('已存在客户 “' + client.name + '”,请重新选择')
+            _this.inputForm.cwWorkClientContactDTOList.forEach((client, index) => {
+              if (_this.inputForm.customerNo === client.no) {
+                _this.$refs.contactTable.remove(client)
+                _this.inputForm.cwWorkClientContactDTOList.splice(index, 1)
+                // _this.$message.error('已存在客户 “' + client.name + '”,请重新选择')
+                // throw new Error('已存在客户 “' + client.name + '”,请重新选择')
               }
             })
             resolve()
@@ -667,7 +675,7 @@
             no: list.no,
             name: list.name
           }
-          console.log('list', list)
+          // console.log('list', list)
           this.inputForm.customerNo = list.no
           this.inputForm.uscCode = list.uscCode
           this.inputForm.address = list.address
@@ -688,7 +696,7 @@
           this.inputForm.status = '1'
           this.inputForm.fees = this.inputForm.contractFees.join(',')
           this.inputForm.contractProperList = this.$refs.uploadComponent.getDataList()
-          console.log('this.inputForm', this.inputForm)
+          // console.log('this.inputForm', this.inputForm)
           await this.contractInfoService.save(this.inputForm).then(({data}) => {
             callback()
             this.$refs.inputForm.resetFields()

+ 3 - 3
src/views/modules/cw/workContract/CwWorkContractBorrowForm.vue

@@ -205,7 +205,7 @@
           this.loading = true
           this.inputForm.id = id
           this.$nextTick(() => {
-            console.log('id', id)
+            // console.log('id', id)
             this.$refs.inputForm.resetFields()
             // this.contractInfoService.findById(this.inputForm.id).then(({data}) => {
             //   this.$refs.archiveFile.clearUpload()
@@ -237,7 +237,7 @@
                   this.inputForm.borrowData = new Date()
                   this.$refs.uploadFile.newUpload('view', data.contractProperList, 'cwWorkContract', null, null, null, null, false)
                   this.$refs.archiveFile.newUpload('view', data.contractInfoList, 'cwWorkContract', null, null, null, null, false)
-                  console.log('data', data)
+                  // console.log('data', data)
                   this.loading = false
                 })
               } else {
@@ -375,7 +375,7 @@
       },
       // 更改状态
       updateStatusById (type) {
-        console.log('updateStatusById', this.inputForm)
+        // console.log('updateStatusById', this.inputForm)
         if (type === 'agree') {
           this.inputForm.borrowType = '5'
           this.cwWorkContractBorrowService.updateStatusById(this.inputForm)