Browse Source

功能调整

wangqiang 1 year ago
parent
commit
a9213cdad8
43 changed files with 939 additions and 244 deletions
  1. 7 0
      src/api/cw/projectRecords/ProjectRecordsService.js
  2. 2 1
      src/api/finance/invoice/FinanceInvoiceService.js
  3. 2 1
      src/api/program/ProgramProjectListInfoService.js
  4. 2 1
      src/api/program/ProgramServiceTypeService.js
  5. 2 1
      src/api/program/ProgramTypeDictService.js
  6. 2 1
      src/api/sys/ProjectService.js
  7. 2 1
      src/api/sys/ProofreadInfoService.js
  8. 2 1
      src/api/sys/ProofreadIssuedService.js
  9. 2 1
      src/api/sys/ProofreadTypeService.js
  10. 2 1
      src/api/sys/ReimbursementService.js
  11. 2 1
      src/api/sys/ReimbursementTypeService.js
  12. 2 1
      src/api/sys/WorkClientService.js
  13. 2 1
      src/api/sys/WorkContractBorrowService.js
  14. 2 1
      src/api/sys/WorkContractFileService.js
  15. 2 1
      src/api/sys/WorkContractService.js
  16. 1 1
      src/components/workClientInfoSelect/WorkClientInfoSelectDialog.vue
  17. 119 52
      src/views/cw/invoice/InvoiceForm.vue
  18. 70 56
      src/views/cw/invoice/InvoiceFormTask.vue
  19. 12 2
      src/views/cw/invoice/InvoiceFormTaskInvalid.vue
  20. 2 2
      src/views/cw/invoice/InvoiceList.vue
  21. 110 39
      src/views/cw/invoice/InvoiceUpdateForm.vue
  22. 247 0
      src/views/cw/projectRecords/ProjectMembersList2.vue
  23. 51 10
      src/views/cw/projectRecords/ProjectRecordsAddForm.vue
  24. 48 7
      src/views/cw/projectRecords/ProjectRecordsAddForm2.vue
  25. 48 4
      src/views/cw/projectRecords/ProjectRecordsForm.vue
  26. 47 3
      src/views/cw/projectRecords/ProjectRecordsForm2.vue
  27. 12 7
      src/views/cw/reimbursementApproval/info/CwProgramPageForm.vue
  28. 4 2
      src/views/cw/reimbursementApproval/info/ReimbursementForm.vue
  29. 45 5
      src/views/cw/reportManagement/ProjectRecordsInfoForm.vue
  30. 7 6
      src/views/cw/reportManagement/ReportManagementFormNew.vue
  31. 1 0
      src/views/cw/reportManagement/ReportManagementFormNew1.vue
  32. 24 3
      src/views/cw/reportManagement/reportReview/ReportReviewForm.vue
  33. 27 2
      src/views/cw/reportManagement/reportReview/ReportReviewForm2.vue
  34. 5 5
      src/views/cw/workClientInfo/WorkClientAddForm.vue
  35. 5 5
      src/views/cw/workClientInfo/WorkClientForm.vue
  36. 1 1
      src/views/cw/workContract/ContractFileForm.vue
  37. 12 12
      src/views/cw/workContract/ContractFilePaperForm.vue
  38. 1 1
      src/views/cw/workContract/ContractNameForm.vue
  39. 1 1
      src/views/cw/workContract/ContractRegistrationForm.vue
  40. 1 1
      src/views/cw/workContract/contractRegisitionAddForm/ContractAddForm.vue
  41. 1 1
      src/views/program/configuration/proofreadType/BrowseTypeForm.vue
  42. 1 1
      src/views/program/configuration/proofreadType/TypeForm.vue
  43. 1 1
      src/views/reimbursement/info/InfoList.vue

+ 7 - 0
src/api/cw/projectRecords/ProjectRecordsService.js

@@ -9,6 +9,13 @@ export default {
 			params: params,
 		});
 	},
+	zxList: function (params) {
+		return request({
+			url: prefix + "/cwProjectRecords/zxList",
+			method: "get",
+			params: params,
+		});
+	},
 	list1: function (params) {
 		return request({
 			url: prefix + "/cwProjectReport/list",

+ 2 - 1
src/api/finance/invoice/FinanceInvoiceService.js

@@ -1,5 +1,6 @@
 import request from '@/utils/httpRequest'
-import { ASSESS_PATH as prefix } from "../../AppPath";
+// import { ASSESS_PATH as prefix } from "../../AppPath";
+import { FINANCE_PATH as prefix } from "../../AppPath";
 
 export default class FinanceInvoiceService {
   list (params) {

+ 2 - 1
src/api/program/ProgramProjectListInfoService.js

@@ -1,5 +1,6 @@
 import request from '@/utils/httpRequest'
-import { ASSESS_PATH as prefix } from "../AppPath";
+// import { ASSESS_PATH as prefix } from "../AppPath";
+import { FINANCE_PATH as prefix } from "../AppPath";
 
 export default class ProgramProjectListInfoService {
 	getOverArchiveFlag () {

+ 2 - 1
src/api/program/ProgramServiceTypeService.js

@@ -1,5 +1,6 @@
 import request from '@/utils/httpRequest'
-import { ASSESS_PATH as prefix } from "../AppPath";
+// import { ASSESS_PATH as prefix } from "../AppPath";
+import { FINANCE_PATH as prefix } from "../AppPath";
 
 export default class ProgramServiceTypeService {
   list (params) {

+ 2 - 1
src/api/program/ProgramTypeDictService.js

@@ -1,5 +1,6 @@
 import request from '@/utils/httpRequest'
-import { ASSESS_PATH as prefix } from "../AppPath";
+// import { ASSESS_PATH as prefix } from "../AppPath";
+import { FINANCE_PATH as prefix } from "../AppPath";
 
 export default class ProgramTypeDictService {
   list (params) {

+ 2 - 1
src/api/sys/ProjectService.js

@@ -1,5 +1,6 @@
 import request from '@/utils/httpRequest'
-import { ASSESS_PATH as prefix } from "../AppPath";
+// import { ASSESS_PATH as prefix } from "../AppPath";
+import { FINANCE_PATH as prefix } from "../AppPath";
 
 export default class PostService {
   list (params) {

+ 2 - 1
src/api/sys/ProofreadInfoService.js

@@ -1,5 +1,6 @@
 import request from '@/utils/httpRequest'
-import { ASSESS_PATH as prefix } from "../AppPath";
+// import { ASSESS_PATH as prefix } from "../AppPath";
+import { FINANCE_PATH as prefix } from "../AppPath";
 
 export default class ProofreadInfoService {
   save (param) {

+ 2 - 1
src/api/sys/ProofreadIssuedService.js

@@ -1,5 +1,6 @@
 import request from '@/utils/httpRequest'
-import { ASSESS_PATH as prefix } from "../AppPath";
+// import { ASSESS_PATH as prefix } from "../AppPath";
+import { FINANCE_PATH as prefix } from "../AppPath";
 
 export default class ProofreadIssuedService {
   save (param) {

+ 2 - 1
src/api/sys/ProofreadTypeService.js

@@ -1,5 +1,6 @@
 import request from '@/utils/httpRequest'
-import { ASSESS_PATH as prefix } from "../AppPath";
+// import { ASSESS_PATH as prefix } from "../AppPath";
+import { FINANCE_PATH as prefix } from "../AppPath";
 
 export default class ProofreadTypeService {
   list (param) {

+ 2 - 1
src/api/sys/ReimbursementService.js

@@ -1,5 +1,6 @@
 import request from '@/utils/httpRequest'
-import { ASSESS_PATH as prefix } from "../AppPath";
+// import { ASSESS_PATH as prefix } from "../AppPath";
+import { FINANCE_PATH as prefix } from "../AppPath";
 
 export default class ReimbursementService {
   list (param) {

+ 2 - 1
src/api/sys/ReimbursementTypeService.js

@@ -1,5 +1,6 @@
 import request from '@/utils/httpRequest'
-import { ASSESS_PATH as prefix } from "../AppPath";
+// import { ASSESS_PATH as prefix } from "../AppPath";
+import { FINANCE_PATH as prefix } from "../AppPath";
 
 export default class ReimbursementTypeService {
   list (param) {

+ 2 - 1
src/api/sys/WorkClientService.js

@@ -1,5 +1,6 @@
 import request from '@/utils/httpRequest'
-import { ASSESS_PATH as prefix } from "../AppPath";
+// import { ASSESS_PATH as prefix } from "../AppPath";
+import { FINANCE_PATH as prefix } from "../AppPath";
 
 export default class WorkClientService {
   list (param) {

+ 2 - 1
src/api/sys/WorkContractBorrowService.js

@@ -1,5 +1,6 @@
 import request from '@/utils/httpRequest'
-import { ASSESS_PATH as prefix } from "../AppPath";
+// import { ASSESS_PATH as prefix } from "../AppPath";
+import { FINANCE_PATH as prefix } from "../AppPath";
 
 export default class WorkContractService {
   save (param) {

+ 2 - 1
src/api/sys/WorkContractFileService.js

@@ -1,5 +1,6 @@
 import request from '@/utils/httpRequest'
-import { ASSESS_PATH as prefix } from "../AppPath";
+// import { ASSESS_PATH as prefix } from "../AppPath";
+import { FINANCE_PATH as prefix } from "../AppPath";
 
 export default class WorkContractService {
   save (param) {

+ 2 - 1
src/api/sys/WorkContractService.js

@@ -1,5 +1,6 @@
 import request from '@/utils/httpRequest'
-import { ASSESS_PATH as prefix } from "../AppPath";
+// import { ASSESS_PATH as prefix } from "../AppPath";
+import { FINANCE_PATH as prefix } from "../AppPath";
 
 export default class WorkContractService {
   list (param) {

+ 1 - 1
src/components/workClientInfoSelect/WorkClientInfoSelectDialog.vue

@@ -144,7 +144,7 @@
       refreshList () {
         this.loading = true
         this.$http({
-          url: '/assess-server/workClientInfo/workClientInfo/componentList',
+          url: '/finance-server/workClientInfo/workClientInfo/componentList',
           method: 'get',
           params: {
 			  'current': this.tablePage.currentPage,

+ 119 - 52
src/views/cw/invoice/InvoiceForm.vue

@@ -48,28 +48,33 @@
 						  <el-input :readonly="true"  placeholder="请填写项目编号" v-model="scope.row.programNo"/>
 					  </template>
 				  </vxe-table-column>
-				  <vxe-table-column field="reportNo" title="报告号" :edit-render="{}" show-overflow="title">
+				  <vxe-table-column field="clientName" align="center" title="委托方" :edit-render="{}">
 					  <template v-slot:edit="scope">
-						  <el-input :readonly="true"  v-model="scope.row.reportNo" placeholder="请填写报告号"/>
+						  <el-input :readonly="true" placeholder="请填写委托方" v-model="scope.row.clientName"/>
 					  </template>
 				  </vxe-table-column>
-				  <vxe-table-column   field="account" align="center" title="发票金额(元)" :edit-render="{}" show-overflow="title">
+				  <vxe-table-column field="reportNo" title="报告号" :edit-render="{}" show-overflow="title">
 					  <template v-slot:edit="scope">
-						  <el-input
-
-							  v-on:input="scope.row.account=scope.row.account.replace(/[^\d.-]/g,'')
-							  .replace(/^\./g,'')
-							  .replace(/\.{2,}/g,'.')
-							  .replace('.','$#$').replace(/\./g,'').replace('$#$','.')
-							  .replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3')"
-							  v-model="scope.row.account"
-							  controls-position="right"
-							  :controls="false"
-							  style="width:100%;"
-							  placeholder="请输入发票金额(元)"
-							  clearable />
+						  <el-input :readonly="true"  v-model="scope.row.reportNo" placeholder="请填写报告号"/>
 					  </template>
 				  </vxe-table-column>
+<!--				  <vxe-table-column   field="account" align="center" title="发票金额(元)" :edit-render="{}" show-overflow="title">-->
+<!--					  <template v-slot:edit="scope">-->
+<!--						  <el-input-->
+
+<!--							  v-on:input="scope.row.account=scope.row.account.replace(/[^\d.-]/g,'')-->
+<!--							  .replace(/^\./g,'')-->
+<!--							  .replace(/\.{2,}/g,'.')-->
+<!--							  .replace('.','$#$').replace(/\./g,'').replace('$#$','.')-->
+<!--							  .replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3')"-->
+<!--							  v-model="scope.row.account"-->
+<!--							  controls-position="right"-->
+<!--							  :controls="false"-->
+<!--							  style="width:100%;"-->
+<!--							  placeholder="请输入发票金额(元)"-->
+<!--							  clearable />-->
+<!--					  </template>-->
+<!--				  </vxe-table-column>-->
 				  <!--            <vxe-table-column field="clientName" title="委托方" :edit-render="{}">-->
 				  <!--              <template v-slot:edit="scope">-->
 				  <!--                <el-input :readonly="true" placeholder="请填写委托方" v-model="scope.row.clientName"/>-->
@@ -129,7 +134,6 @@
                 :value="inputForm.name"
                 :clearable="true"
                 :accordion="true"
-
                 @getValue="(value) => {inputForm.name=value}"/>
             </el-form-item>
           </el-col>
@@ -168,7 +172,7 @@
                 <el-input  v-model="inputForm.telPhone" placeholder="请填写电话" clearable></el-input>
               </el-form-item>
             </el-col>
-            <el-col v-if="inputForm.billingType === '1' && method!=='view'" :span="12">
+            <el-col v-if="inputForm.billingType !== '2' && method!=='view'" :span="12">
               <el-form-item label="开户银行" prop="openBank"
                             :rules="[
                         {required: true, message:'开户银行不能为空', trigger:'blur'},{required: true, message:'开户银行不能为空', trigger:'change'}
@@ -183,7 +187,7 @@
                 </el-select>
               </el-form-item>
             </el-col>
-			  <el-col v-else="inputForm.billingType === '1' && method==='view'" :span="12">
+			  <el-col v-else-if="inputForm.billingType !== '2' && method==='view'" :span="12">
 				  <el-form-item label="开户银行" prop="openBank"
 								:rules="[
                ]">
@@ -279,26 +283,29 @@
 							  :rules="[
                         {required: true, message:'发票金额不能为空', trigger:'blur'}
                ]">
-					<el-input
-						@input="fixedAccount"
-						placeholder="请填写发票金额"
-						maxlength="15"
+					<el-input-number
 						v-model="inputForm.account"
-						:disabled="true"
-					>
-
-					</el-input>
+						controls-position="right"
+						style="width:100%"
+						:precision="2"
+						:max="9999999999"
+						:step="0.01"
+						:min="0"
+						placeholder="请填写发票金额"
+						:controls="false"
+						clearable>
+					</el-input-number>
 				</el-form-item>
-			</el-col>
-          <el-col :span="12">
-            <el-form-item label="是否多张开票" prop="isMultiple"
-                          :rules="[
-                        {required: true, message:'是否多张开票不能为空', trigger:'blur'}
-               ]">
-              <el-radio  v-model="inputForm.isMultiple" v-for="item in yesNoFlag" :label="item.value" style="margin-right: 20px">
-                {{item.label}}</el-radio>
-            </el-form-item>
-          </el-col>
+			</el-col >
+<!--          <el-col :span="12">-->
+<!--            <el-form-item label="是否多张开票" prop="isMultiple"-->
+<!--                          :rules="[-->
+<!--                        {required: true, message:'是否多张开票不能为空', trigger:'blur'}-->
+<!--               ]">-->
+<!--              <el-radio  v-model="inputForm.isMultiple" v-for="item in yesNoFlag" :label="item.value" style="margin-right: 20px">-->
+<!--                {{item.label}}</el-radio>-->
+<!--            </el-form-item>-->
+<!--          </el-col>-->
           <el-col :span="24">
             <el-form-item label="开票内容要求" prop="billingContentTerms"
                           :rules="[
@@ -372,8 +379,8 @@
 			<el-col :span="12">
 				<el-form-item label="接收邮箱" prop="actualDrawerEmailAddress"
 							  :rules="[
-							/*{required: true, message:'邮箱不能为空', trigger:'blur'},
-							{required: true, message:'邮箱不能为空', trigger:'change'}*/
+							{required: true, message:'邮箱不能为空', trigger:'blur'},
+							{required: true, message:'邮箱不能为空', trigger:'change'}
                ]">
 					<el-input v-model="inputForm.actualDrawerEmailAddress" placeholder="请输入接收邮箱" show-word-limit @blur="checkEmail" maxlength="50"></el-input>
 					<el-button  type="primary" style="position: absolute;right: 0px;" @click="openDia">完善邮箱</el-button>
@@ -568,20 +575,14 @@
 			</el-col>
           </el-row>
         </el-form>
-		  <el-divider content-position="left"><i class="el-icon-document"></i>
-			  收款明细
-			  <el-button style="margin-left: 20px" :disabled="receivablesFlag!==true" type="primary" @click="insertEvent('receivables')">
-				  新增
-			  </el-button>
-		  </el-divider>
-<!--        <el-divider content-position="left"><i class="el-icon-document"></i>-->
-<!--          收款明细-->
-<!--          <vxe-button style="margin-left: 20px" :disabled="receivablesFlag!==true" status="primary" @click="insertEvent('receivables')">-->
-<!--            新增-->
-<!--          </vxe-button>-->
-<!--        </el-divider>-->
         <el-form :model="inputForm" ref="inputForm" v-loading="loading" :class="method==='view'?'readonly':''"  :disabled="receivablesFlag!==true"
                  label-width="160px" @submit.native.prevent>
+			<el-divider content-position="left"><i class="el-icon-document"></i>
+				收款明细
+				<el-button style="margin-left: 20px" :disabled="receivablesFlag!==true" type="primary" @click="insertEvent('receivables')">
+					新增
+				</el-button>
+			</el-divider>
         <el-row  :gutter="15">
           <el-col :span="24">
 			  <vxe-table
@@ -618,7 +619,17 @@
 				  </vxe-table-column>
 				  <vxe-table-column field="remittanceDate" title="汇款时间" :edit-render="{}" show-overflow="title">
 					  <template v-slot:edit="scope">
-						  <el-input v-model="scope.row.remittanceDate" type="date" transfer placeholder="请填写汇款时间"/>
+<!--						  <el-input v-model="scope.row.remittanceDate" type="date" transfer placeholder="请填写汇款时间"/>-->
+						  <el-date-picker
+							  v-model="scope.row.remittanceDate"
+							  type="date"
+							  value-format="YYYY-MM-DD"
+							  placeholder="请填写汇款时间"
+							  style="width:100%"
+							  size="default"
+							  placement="bottom-start"
+							  clearable>
+						  </el-date-picker>
 					  </template>
 				  </vxe-table-column>
 				  <vxe-table-column title="操作" width="100">
@@ -644,6 +655,40 @@
     <ProgramPageForm ref="programPageForm" @getProgram="getProgram"></ProgramPageForm>
     <ContractForm  ref="contractForm" @getContract="getContract"></ContractForm>
     <WorkClientForm  ref="workClientForm" @getWorkClientRadioChoose="getWorkClient"></WorkClientForm>
+	  <!--		邮箱弹窗-->
+	  <el-dialog v-model="dialogFormVisible" style="width: 50%" title="邮箱修改">
+		  <el-form :model="form" label-width="160px">
+			  <el-row :gutter="15">
+				  <el-col :span="24">
+					  <el-form-item label="姓名:" prop="userName"
+									:rules="[
+               ]">
+						  <el-input :disabled="true" v-model="userName" style="width: 95%"></el-input>
+					  </el-form-item>
+				  </el-col >
+				  <el-col :span="24">
+					  <el-form-item label="邮箱:" prop="userEmail">
+						  <el-input v-model="userEmail" style="width: 95%"></el-input>
+					  </el-form-item>
+				  </el-col>
+				  <el-col :span="24">
+					  <el-form-item label="电话:" prop="userPhone"
+									:rules="[
+               ]">
+						  <el-input :disabled="true" v-model="userPhone" style="width: 95%"></el-input>
+					  </el-form-item>
+				  </el-col>
+			  </el-row>
+		  </el-form>
+		  <template #footer>
+      <span class="dialog-footer">
+        <el-button @click="dialogFormVisible = false">关闭</el-button>
+        <el-button type="primary" @click="updateEmail">
+          确认
+        </el-button>
+      </span>
+		  </template>
+	  </el-dialog>
   </div>
 </template>
 
@@ -657,9 +702,14 @@
   import SelectUserTree from '@/views/utils/treeUserSelect'
   import SelectTree from '@/components/treeSelect/treeSelect.vue'
   import XEUtils from 'xe-utils'
+  import userService from "../../../api/sys/userService";
   export default {
     data () {
       return {
+		  userName: this.$store.state.user.name,
+		  userEmail: '',
+		  userPhone: '',
+		  dialogFormVisible: false,
 		  tableRules: {
 			  account: [
 				  { required: true, message: '请填写发票金额' }
@@ -1075,6 +1125,7 @@
             r.programId = item.id
 			  r.reportNo = item.reportNo
 			  r.account=item.account
+			  r.clientName = item.clientContactsName
 			  r.accountTotal=item.accountTotal
             this.inputForm.financeInvoiceBaseDTOList[this.programRow] = r
           } else {
@@ -1086,6 +1137,7 @@
               programId: item.id,
 				reportNo:item.reportNo,
 				account:item.account,
+				clientName: item.clientContactsName,
 				accountTotal:item.accountTotal
             }
             this.inputForm.financeInvoiceBaseDTOList.push(r)
@@ -1110,6 +1162,7 @@
       },
       getContract (row) {
         this.inputForm.financeInvoiceBaseDTOList[0].contractName = row.contractName // 合同名称
+		  this.inputForm.financeInvoiceBaseDTOList[0].clientName = row.clientContactsName // 委托方名称
         // this.inputForm.financeInvoiceBaseDTOList[0].client = row.clientId // 委托方
         // this.inputForm.financeInvoiceBaseDTOList[0].clientName = row.clientName // 委托方名称
         this.$forceUpdate()
@@ -1333,6 +1386,20 @@
 			console.log('accountTotal', this.inputForm.accountTotal)
 			return footerData
 		},
+		//点开邮箱
+		openDia() {
+			this.dialogFormVisible = true
+		},
+		//修改用户邮箱
+		updateEmail() {
+			let id = this.$store.state.user.id
+			userService.updateEmail({id: id, userEmail: this.userEmail}).then(
+				this.$message.success("修改成功"),
+				this.inputForm.actualDrawerEmailAddress=this.userEmail,
+				this.userEmail=this.userEmail,
+				this.dialogFormVisible = false
+			)
+		},
     }
   }
 </script>

+ 70 - 56
src/views/cw/invoice/InvoiceFormTask.vue

@@ -42,28 +42,33 @@
 						<el-input :readonly="true" placeholder="请填写项目编号" v-model="scope.row.programNo"/>
 					</template>
 				</vxe-table-column>
+			    <vxe-table-column field="clientName" align="center" title="委托方" :edit-render="{}">
+				<template v-slot:edit="scope">
+				  <el-input :readonly="true" placeholder="请填写委托方" v-model="scope.row.clientName"/>
+				</template>
+			    </vxe-table-column>
 				<vxe-table-column field="reportNo" align="center" title="报告号" :edit-render="{}">
 					<template v-slot:edit="scope">
-						<el-input :readonly="true" placeholder="请填写项目编号" v-model="scope.row.reportNo"/>
-					</template>
-				</vxe-table-column>
-				<vxe-table-column   field="account" align="center"   title="发票金额(元)" :edit-render="{}">
-					<template v-slot:edit="scope">
-						<el-input
-							v-on:input="scope.row.account=scope.row.account.replace(/[^-0-9.]/g,'')
-							  .replace(/^\./g,'')
-							  .replace(/\.{2,}/g,'.')
-							  .replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3')"
-							v-model="scope.row.account"
-							controls-position="right"
-							:controls="false"
-							style="width:100%;"
-							placeholder="请输入发票金额(元)"
-							clearable
-						>
-						</el-input>
+						<el-input :readonly="true" placeholder="请填写报告号" v-model="scope.row.reportNo"/>
 					</template>
 				</vxe-table-column>
+<!--				<vxe-table-column   field="account" align="center"   title="发票金额(元)" :edit-render="{}">-->
+<!--					<template v-slot:edit="scope">-->
+<!--						<el-input-->
+<!--							v-on:input="scope.row.account=scope.row.account.replace(/[^-0-9.]/g,'')-->
+<!--							  .replace(/^\./g,'')-->
+<!--							  .replace(/\.{2,}/g,'.')-->
+<!--							  .replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3')"-->
+<!--							v-model="scope.row.account"-->
+<!--							controls-position="right"-->
+<!--							:controls="false"-->
+<!--							style="width:100%;"-->
+<!--							placeholder="请输入发票金额(元)"-->
+<!--							clearable-->
+<!--						>-->
+<!--						</el-input>-->
+<!--					</template>-->
+<!--				</vxe-table-column>-->
 				<!--          <vxe-table-column field="clientName" title="委托方" :edit-render="{}">-->
 				<!--            <template v-slot:edit="scope">-->
 				<!--              <el-input :readonly="true" placeholder="请填写委托方" v-model="scope.row.clientName"/>-->
@@ -127,6 +132,7 @@
               :value="inputForm.name"
               :clearable="true"
               :accordion="true"
+			  size="default"
               @getValue="(value) => {inputForm.name=value}"/>
           </el-form-item>
         </el-col>
@@ -170,7 +176,7 @@
               </el-input>
             </el-form-item>
           </el-col>
-          <el-col v-if="inputForm.billingType === '1' && status !== 'audit'" :span="12">
+          <el-col v-if="inputForm.billingType !== '2' && status !== 'audit'" :span="12">
             <el-form-item label="开户银行" prop="openBank"
                           :rules="[
                       {required: true, message:'开户银行不能为空', trigger:'blur'},{required: true, message:'开户银行不能为空', trigger:'change'}
@@ -185,7 +191,7 @@
               </el-select>
             </el-form-item>
           </el-col>
-			<el-col v-else="inputForm.billingType === '1' && status === 'audit'" :span="12">
+			<el-col v-else-if="inputForm.billingType !== '2' && status === 'audit'" :span="12">
 				<el-form-item label="开户银行" prop="openBank"
 							  :rules="[
                       {required: true, message:'开户银行不能为空', trigger:'blur'},{required: true, message:'开户银行不能为空', trigger:'change'}
@@ -227,7 +233,7 @@
               </el-input>
             </el-form-item>
           </el-col>
-          <el-col v-if="inputForm.billingType === '1'" :span="12">
+          <el-col v-if="inputForm.billingType !== '2'" :span="12">
             <el-form-item label="开户银行" prop="openBank"
                           :rules="[
              ]">
@@ -285,14 +291,18 @@
                         :rules="[
                         {required: true, message:'发票金额不能为空', trigger:'blur'}
                ]">
-            <el-input
-              placeholder="请填写发票金额"
-              maxlength="15"
-              v-model="inputForm.accountTotal"
-			  :disabled="true"
-            >
-
-            </el-input>
+			  <el-input-number
+				  v-model="inputForm.account"
+				  controls-position="right"
+				  style="width:100%"
+				  :precision="2"
+				  :max="9999999999"
+				  :step="0.01"
+				  :min="0"
+				  placeholder="请填写发票金额"
+				  :controls="false"
+				  clearable>
+			  </el-input-number>
           </el-form-item>
         </el-col >
 		  <el-col :span="12" v-if="(this.commonJS.isNotEmpty(this.bj1)) && status === 'audit'">
@@ -323,16 +333,16 @@
 				  </el-select>
 			  </el-form-item>
 		  </el-col>
-        <el-col :span="12">
-          <el-form-item label="是否多张开票" prop="isMultiple"
-                        :rules="[
-                        {required: true, message:'是否多张开票不能为空', trigger:'blur'}
-               ]">
-            <el-radio v-model="inputForm.isMultiple" v-for="item in yesNoFlag" :label="item.value" style="margin-right: 20px">
-              {{item.label}}
-            </el-radio>
-          </el-form-item>
-        </el-col>
+<!--        <el-col :span="12">-->
+<!--          <el-form-item label="是否多张开票" prop="isMultiple"-->
+<!--                        :rules="[-->
+<!--                        {required: true, message:'是否多张开票不能为空', trigger:'blur'}-->
+<!--               ]">-->
+<!--            <el-radio v-model="inputForm.isMultiple" v-for="item in yesNoFlag" :label="item.value" style="margin-right: 20px">-->
+<!--              {{item.label}}-->
+<!--            </el-radio>-->
+<!--          </el-form-item>-->
+<!--        </el-col>-->
         <el-col :span="24">
           <el-form-item label="开票内容要求" prop="billingContentTerms"
                         :rules="[
@@ -396,8 +406,8 @@
 		  <el-col :span="12">
 			  <el-form-item label="接收邮箱" prop="actualDrawerEmailAddress"
 							:rules="[
-							/*{required: true, message:'邮箱不能为空', trigger:'blur'},
-							{required: true, message:'邮箱不能为空', trigger:'change'}*/
+							{required: true, message:'邮箱不能为空', trigger:'blur'},
+							{required: true, message:'邮箱不能为空', trigger:'change'}
                ]">
 				  <el-input v-model="inputForm.actualDrawerEmailAddress" placeholder="请输入接收邮箱" show-word-limit @blur="checkEmail" maxlength="50"></el-input>
 				  <el-button  type="primary" style="position: absolute;right: 0px;" @click="openDia">完善邮箱</el-button>
@@ -1039,10 +1049,10 @@
 					  if (this.commonJS.isEmpty(this.inputForm.billingPeopleReal)) {
 						  this.inputForm.billingPeopleReal = this.$store.state.user.id
 					  }
-					  console.log('reconciliationPeople', this.inputForm.reconciliationPeople)
-					  if (this.commonJS.isEmpty(this.inputForm.reconciliationPeople)) {
-						  this.inputForm.reconciliationPeople = this.$store.state.user.id
-					  }
+					  // console.log('reconciliationPeople', this.inputForm.reconciliationPeople)
+					  // if (this.commonJS.isEmpty(this.inputForm.reconciliationPeople)) {
+						//   this.inputForm.reconciliationPeople = this.$store.state.user.id
+					  // }
 					  if (this.commonJS.isEmpty(this.inputForm.financeInvoiceBaseDTOList)) {
 						  this.inputForm.financeInvoiceBaseDTOList = []
 					  }
@@ -1072,10 +1082,11 @@
 					  if (!this.commonJS.isEmpty(this.status) && this.status === 'audit' && (this.commonJS.isEmpty(this.inputForm.financeInvoiceDetailDTOList) || this.inputForm.financeInvoiceDetailDTOList.length === 0)) {
 						  this.inputForm.financeInvoiceDetailDTOList = []
 						  let i = this.inputForm.financeInvoiceBaseDTOList.length
-						  let sun = 0
-						  for (let j = 0; j < i; j++) {
-						  	sun = (100*sun + 100* this.inputForm.financeInvoiceBaseDTOList[j].account)/100
-						  }
+						  let sun = this.inputForm.account
+						  // let sun = 0
+						  // for (let j = 0; j < i; j++) {
+						  // 	sun = (100*sun + 100* this.inputForm.financeInvoiceBaseDTOList[j].account)/100
+						  // }
 						  console.log(sun)
 						  this.inputForm.financeInvoiceDetailDTOList.push({
 							  code: '',
@@ -1143,8 +1154,8 @@
 				  this.loading = false
 				  throw new Error()
 			  }
-			  this.inputForm.account = this.inputForm.accountTotal
-			  console.log(this.inputForm.account)
+			  // this.inputForm.account = this.inputForm.accountTotal
+			  // console.log(this.inputForm.account)
 			  if (status === 'save') {
 				  // 暂存
 				  this.loading = true
@@ -1209,11 +1220,11 @@
 						  this.$message.error('第' + (j + 1) + '行的基本信息不能为空')
 						  throw new Error()
 					  }
-					  if (this.commonJS.isEmpty(this.inputForm.financeInvoiceBaseDTOList[j].account)) {
-						  this.loading = false
-						  this.$message.error('第' + (j + 1) + '行的发票金额不能为空')
-						  throw new Error()
-					  }
+					  // if (this.commonJS.isEmpty(this.inputForm.financeInvoiceBaseDTOList[j].account)) {
+						//   this.loading = false
+						//   this.$message.error('第' + (j + 1) + '行的发票金额不能为空')
+						//   throw new Error()
+					  // }
 				  }
 			  }
 			  if (this.inputForm.status === '5') {
@@ -1422,6 +1433,7 @@
 					  r.programId = item.id
 					  r.reportNo = item.reportNo
 					  r.reportType = item.reportType
+					  r.clientName = item.clientContactsName
 					  this.inputForm.financeInvoiceBaseDTOList[this.programRow] = r
 					  this.bj1 = rows.bj1
 				  } else {
@@ -1432,6 +1444,7 @@
 						  contractId: item.contractId,
 						  programId: item.id,
 						  reportNo: item.reportNo,
+						  clientName: item.clientContactsName,
 						  reportType: item.reportType
 					  }
 					  this.$refs.baseTable.insertAt(r)
@@ -1459,6 +1472,7 @@
 		  },
 		  getContract(row) {
 			  this.inputForm.financeInvoiceBaseDTOList[0].contractName = row.contractName // 合同名称
+			  this.inputForm.financeInvoiceBaseDTOList[0].clientName = row.clientContactsName // 委托方名称
 			  // this.inputForm.financeInvoiceBaseDTOList[0].client = row.clientId // 委托方
 			  // this.inputForm.financeInvoiceBaseDTOList[0].clientName = row.clientName // 委托方名称
 			  this.$forceUpdate()

+ 12 - 2
src/views/cw/invoice/InvoiceFormTaskInvalid.vue

@@ -36,11 +36,21 @@
 						<el-input :readonly="true" placeholder="请填写项目编号" v-model="scope.row.programNo"/>
 					</template>
 				</vxe-table-column>
-				<vxe-table-column field="account" align="center" title="发票金额(元)" :edit-render="{}">
+				<vxe-table-column field="clientName" align="center" title="委托方" :edit-render="{}">
 					<template v-slot:edit="scope">
-						<el-input :disabled="true" placeholder="请填写发票金额" v-model="scope.row.account" @blur="scope.row.account = twoDecimalPlaces(scope.row.account)" maxlength="15"/>
+						<el-input :readonly="true" placeholder="请填写委托方" v-model="scope.row.clientName"/>
 					</template>
 				</vxe-table-column>
+				<vxe-table-column field="reportNo" align="center" title="报告号" :edit-render="{}">
+					<template v-slot:edit="scope">
+						<el-input :readonly="true" placeholder="请填写报告号" v-model="scope.row.reportNo"/>
+					</template>
+				</vxe-table-column>
+<!--				<vxe-table-column field="account" align="center" title="发票金额(元)" :edit-render="{}">-->
+<!--					<template v-slot:edit="scope">-->
+<!--						<el-input :disabled="true" placeholder="请填写发票金额" v-model="scope.row.account" @blur="scope.row.account = twoDecimalPlaces(scope.row.account)" maxlength="15"/>-->
+<!--					</template>-->
+<!--				</vxe-table-column>-->
 				<!--          <vxe-table-column field="clientName" title="委托方" :edit-render="{}">-->
 				<!--            <template v-slot:edit="scope">-->
 				<!--              <el-input :readonly="true" placeholder="请填写委托方" v-model="scope.row.clientName"/>-->

+ 2 - 2
src/views/cw/invoice/InvoiceList.vue

@@ -271,7 +271,7 @@
               <el-button @click="invoiceDetail(scope.row)" :type="$dictUtils.getDictLabel('invoice_status_info', scope.row.status, '')" effect="dark" >{{$dictUtils.getDictLabel("invoice_status", scope.row.status, '')}} </el-button>
             </template>
           </vxe-column>
-          <vxe-column min-width="110" title="操作"  fixed="right" align="center">
+          <vxe-column min-width="250" title="操作"  fixed="right" align="center">
             <template  #default="scope">
               <div v-if="isAdmin">
                 <el-button v-if="(scope.row.status === '5')" text type="primary"  @click="editForm(scope.row.id)">修改</el-button>
@@ -281,7 +281,7 @@
               <el-button v-if="hasPermission('cw_finance:invoice:edit')&&scope.row.createBy.id === $store.state.user.id&&(scope.row.status === '1'||scope.row.status === '3')" text type="primary" @click="invoicePush(scope.row)">修改</el-button>
               <el-button v-if="hasPermission('cw_finance:invoice:edit')&&scope.row.createBy.id === $store.state.user.id&&scope.row.status === '2'" text type="primary"  @click="invoiceReback(scope.row)">撤回</el-button>
               <el-button v-if="hasPermission('cw_finance:invoice:edit:detail')&&scope.row.status === '5'&&scope.row.receivablesStatus !== '1'" text type="primary"  @click="editDetail(scope.row.id)">修改发票明细</el-button>
-              <el-button v-if="hasPermission('cw_finance:invoice:edit:receivables')&&scope.row.status === '5'&&scope.row.receivablesStatus !== '1'" text type="primary"  @click="view(true, scope.row.id)">收款</el-button>
+              <el-button v-if="hasPermission('cw_finance:invoice:edit:receivables')&&scope.row.status === '5'&&scope.row.receivablesStatus !== '1'" text type="primary"  @click="view(true, scope.row)">收款</el-button>
               <el-button v-if="hasPermission('cw_finance:invoice:edit:is_receivables')&&scope.row.status === '5'&&scope.row.receivablesStatus !== '1'" text type="primary"  @click="isReceivables(scope.row)">确认收款</el-button>
               <el-button v-if="hasPermission('cw_finance:invoice:edit:is_receivables')&&scope.row.status === '5'&&scope.row.receivablesStatus === '1'" text type="primary" @click="recallReceivables(scope.row)">撤回收款</el-button>
               <el-button v-if="hasPermission('cw_finance:invoice:edit')&&scope.row.createBy.id === $store.state.user.id&&(scope.row.status === '5'||scope.row.status === '7')" text type="primary"  @click="invoiceInvalidPush(scope.row)">作废</el-button>

+ 110 - 39
src/views/cw/invoice/InvoiceUpdateForm.vue

@@ -46,11 +46,21 @@
 						<el-input :readonly="true" placeholder="请填写项目编号" v-model="scope.row.programNo"/>
 					</template>
 				</vxe-table-column>
-				<vxe-table-column field="account" align="center" title="发票金额(元)" :edit-render="{}">
+				<vxe-table-column field="clientName" align="center" title="委托方" :edit-render="{}">
 					<template v-slot:edit="scope">
-						<el-input :disabled="true" placeholder="请填写发票金额" v-model="scope.row.account" @blur="scope.row.account = twoDecimalPlaces(scope.row.account)" maxlength="15"/>
+						<el-input :readonly="true" placeholder="请填写委托方" v-model="scope.row.clientName"/>
 					</template>
 				</vxe-table-column>
+				<vxe-table-column field="reportNo" align="center" title="报告号" :edit-render="{}">
+					<template v-slot:edit="scope">
+						<el-input :readonly="true" placeholder="请填写报告号" v-model="scope.row.reportNo"/>
+					</template>
+				</vxe-table-column>
+<!--				<vxe-table-column field="account" align="center" title="发票金额(元)" :edit-render="{}">-->
+<!--					<template v-slot:edit="scope">-->
+<!--						<el-input :disabled="true" placeholder="请填写发票金额" v-model="scope.row.account" @blur="scope.row.account = twoDecimalPlaces(scope.row.account)" maxlength="15"/>-->
+<!--					</template>-->
+<!--				</vxe-table-column>-->
 				<!--          <vxe-table-column field="clientName" title="委托方" :edit-render="{}">-->
 				<!--            <template v-slot:edit="scope">-->
 				<!--              <el-input :readonly="true" placeholder="请填写委托方" v-model="scope.row.clientName"/>-->
@@ -155,7 +165,7 @@
               </el-input>
             </el-form-item>
           </el-col>
-          <el-col v-if="inputForm.billingType === '1'" :span="12">
+          <el-col v-if="inputForm.billingType !== '2'" :span="12">
             <el-form-item label="开户银行" prop="openBank"
                           :rules="[
                       {required: true, message:'开户银行不能为空', trigger:'blur'},{required: true, message:'开户银行不能为空', trigger:'change'}
@@ -203,7 +213,7 @@
               </el-input>
             </el-form-item>
           </el-col>
-          <el-col v-if="inputForm.billingType === '1'" :span="12">
+          <el-col v-if="inputForm.billingType !== '2'" :span="12">
             <el-form-item label="开户银行" prop="openBank"
                           :rules="[
              ]">
@@ -256,31 +266,25 @@
             </el-select>
           </el-form-item>
         </el-col>
-        <el-col :span="12">
-          <el-form-item label="发票金额(元)" prop="account"
-                        :rules="[
+		  <el-col :span="12">
+			  <el-form-item label="发票金额(元)" prop="account"
+							:rules="[
                         {required: true, message:'发票金额不能为空', trigger:'blur'}
                ]">
-            <el-input
-              @input="fixedAccount"
-              placeholder="请填写发票金额"
-              maxlength="15"
-              v-model="inputForm.account"
-            >
-            </el-input>
-            <!--            <el-input-number-->
-            <!--              v-model="inputForm.account"-->
-            <!--              controls-position="right"-->
-            <!--              :controls="false"-->
-            <!--              style="width:100%;"-->
-            <!--              :max="999999999999999"-->
-            <!--              :precision="2"-->
-            <!--              placeholder="请填写发票金额"-->
-            <!--              :step="0.01"-->
-            <!--              clearable>-->
-            <!--            </el-input-number>-->
-          </el-form-item>
-        </el-col>
+				  <el-input-number
+					  v-model="inputForm.account"
+					  controls-position="right"
+					  style="width:100%"
+					  :precision="2"
+					  :max="9999999999"
+					  :step="0.01"
+					  :min="0"
+					  placeholder="请填写发票金额"
+					  :controls="false"
+					  clearable>
+				  </el-input-number>
+			  </el-form-item>
+		  </el-col >
 		  <el-col :span="12">
 			  <el-form-item label="报备类型" prop="reportType"
 							:rules="[]"
@@ -295,16 +299,16 @@
 				  </el-select>
 			  </el-form-item>
 		  </el-col>
-        <el-col :span="12">
-          <el-form-item label="是否多张开票" prop="isMultiple"
-                        :rules="[
-                        {required: true, message:'是否多张开票不能为空', trigger:'blur'}
-               ]">
-            <el-radio v-model="inputForm.isMultiple" v-for="item in yesNoFlag" :label="item.value" style="margin-right: 20px">
-              {{item.label}}
-            </el-radio>
-          </el-form-item>
-        </el-col>
+<!--        <el-col :span="12">-->
+<!--          <el-form-item label="是否多张开票" prop="isMultiple"-->
+<!--                        :rules="[-->
+<!--                        {required: true, message:'是否多张开票不能为空', trigger:'blur'}-->
+<!--               ]">-->
+<!--            <el-radio v-model="inputForm.isMultiple" v-for="item in yesNoFlag" :label="item.value" style="margin-right: 20px">-->
+<!--              {{item.label}}-->
+<!--            </el-radio>-->
+<!--          </el-form-item>-->
+<!--        </el-col>-->
         <el-col :span="24">
           <el-form-item label="开票内容要求" prop="billingContentTerms"
                         :rules="[
@@ -392,6 +396,16 @@
               @getValue="(value) => {inputForm.billingPeopleReal=value}"/>
           </el-form-item>
         </el-col>
+		  <el-col :span="12">
+			  <el-form-item label="接收邮箱" prop="actualDrawerEmailAddress"
+							:rules="[
+							{required: true, message:'邮箱不能为空', trigger:'blur'},
+							{required: true, message:'邮箱不能为空', trigger:'change'}
+               ]">
+				  <el-input v-model="inputForm.actualDrawerEmailAddress" placeholder="请输入接收邮箱" show-word-limit @blur="checkEmail" maxlength="50"></el-input>
+				  <el-button  type="primary" style="position: absolute;right: 0px;" @click="openDia">完善邮箱</el-button>
+			  </el-form-item>
+		  </el-col>
         <el-col :span="12">
           <el-form-item label="对账人" prop="reconciliationPeople"
                         :rules="[
@@ -659,7 +673,40 @@
     <ContractForm  ref="contractForm" @getContract="getContract"></ContractForm>
     <WorkClientForm  ref="workClientForm" @getWorkClientRadioChoose="getWorkClient"></WorkClientForm>
     <WorkClientBillingChooseRadio ref="billingChoose" @getBilling="getBilling"></WorkClientBillingChooseRadio>
-
+		<!--		邮箱弹窗-->
+		<el-dialog v-model="dialogFormVisible" style="width: 50%" title="邮箱修改">
+			<el-form :model="form" label-width="160px">
+				<el-row :gutter="15">
+					<el-col :span="24">
+						<el-form-item label="姓名:" prop="userName"
+									  :rules="[
+               ]">
+							<el-input :disabled="true" v-model="userName" style="width: 95%"></el-input>
+						</el-form-item>
+					</el-col >
+					<el-col :span="24">
+						<el-form-item label="邮箱:" prop="userEmail">
+							<el-input v-model="userEmail" style="width: 95%"></el-input>
+						</el-form-item>
+					</el-col>
+					<el-col :span="24">
+						<el-form-item label="电话:" prop="userPhone"
+									  :rules="[
+               ]">
+							<el-input :disabled="true" v-model="userPhone" style="width: 95%"></el-input>
+						</el-form-item>
+					</el-col>
+				</el-row>
+			</el-form>
+			<template #footer>
+      <span class="dialog-footer">
+        <el-button @click="dialogFormVisible = false">关闭</el-button>
+        <el-button type="primary" @click="updateEmail">
+          确认
+        </el-button>
+      </span>
+			</template>
+		</el-dialog>
 
 		<template #footer>
 			<span class="dialog-footer">
@@ -681,6 +728,7 @@
   import SelectUserTree from '@/views/utils/treeUserSelect'
   import SelectTree from '@/components/treeSelect/treeSelect.vue'
   import WorkClientBillingChooseRadio from '@/views/cw/workClientInfo/WorkClientBillingChooseRadio'
+  import userService from "../../../api/sys/userService";
 
   export default {
     props: {
@@ -699,6 +747,10 @@
     },
     data () {
       return {
+		  userName: this.$store.state.user.name,
+		  userEmail: '',
+		  userPhone: '',
+		  dialogFormVisible: false,
         title: '',
         method: '',
         visible: false,
@@ -1278,6 +1330,8 @@
             r.programNo = item.projectNumber
             r.contractId = item.contractId
             r.programId = item.id
+			  r.reportNo = item.reportNo
+			  r.clientName = item.clientContactsName
             this.inputForm.financeInvoiceBaseDTOList[this.programRow] = r
           } else {
             let r = {
@@ -1285,6 +1339,8 @@
               contractName: item.contractName,
               programNo: item.projectNumber,
               contractId: item.contractId,
+				reportNo: item.reportNo,
+				clientName: item.clientContactsName,
               programId: item.id
             }
             this.$refs.baseTable.insertAt(r)
@@ -1311,6 +1367,7 @@
       },
       getContract (row) {
         this.inputForm.financeInvoiceBaseDTOList[0].contractName = row.contractName // 合同名称
+		  this.inputForm.financeInvoiceBaseDTOList[0].clientName = row.clientContactsName // 委托方名称
         // this.inputForm.financeInvoiceBaseDTOList[0].client = row.clientId // 委托方
         // this.inputForm.financeInvoiceBaseDTOList[0].clientName = row.clientName // 委托方名称
         this.$forceUpdate()
@@ -1606,7 +1663,21 @@
           var result = this.inputForm.account.replace(reg, regStrs[i][1])
           this.inputForm.account = result
         }
-      }
+      },
+		//点开邮箱
+		openDia() {
+			this.dialogFormVisible = true
+		},
+		//修改用户邮箱
+		updateEmail() {
+			let id = this.$store.state.user.id
+			userService.updateEmail({id: id, userEmail: this.userEmail}).then(
+				this.$message.success("修改成功"),
+				this.inputForm.actualDrawerEmailAddress=this.userEmail,
+				this.userEmail=this.userEmail,
+				this.dialogFormVisible = false
+			)
+		},
     }
   }
 </script>

+ 247 - 0
src/views/cw/projectRecords/ProjectMembersList2.vue

@@ -0,0 +1,247 @@
+<template>
+  <div class="page">
+    <el-form v-if="searchVisible" :inline="true" class="query-form m-b-10"  ref="searchForm" :model="searchForm" @keyup.enter.native="refreshList()" @submit.native.prevent>
+      <!-- 搜索框-->
+      <el-form-item label="项目名称" prop="projectName">
+        <el-input v-model="searchForm.projectName" placeholder="请输入项目名称" clearable></el-input>
+      </el-form-item>
+      <el-form-item label="项目编号" prop="projectNumber">
+        <el-input v-model="searchForm.projectNumber" placeholder="请输入项目编号" clearable></el-input>
+      </el-form-item>
+      <el-form-item label="创建时间" prop="createDates">
+        <el-date-picker
+          placement="bottom-start"
+          format="YYYY-MM-DD HH:mm:ss"
+          value-format="YYYY-MM-DD HH:mm:ss"
+          v-model="searchForm.createDates"
+          type="datetimerange"
+          range-separator="至"
+          start-placeholder="开始日期"
+          end-placeholder="结束日期">
+        </el-date-picker>
+      </el-form-item>
+
+      <el-form-item>
+        <el-button type="primary" @click="refreshList()" icon="el-icon-search">查询</el-button>
+        <el-button @click="resetSearch()" icon="el-icon-refresh-right">重置</el-button>
+      </el-form-item>
+    </el-form>
+    <div class="jp-table top" style="">
+      <vxe-toolbar :refresh="{query: refreshList}"  ref="toolbarRef" custom>
+        <template #buttons>
+          <!--          <el-button v-if="hasPermission('cwProjectRecords:add')" type="primary" icon="el-icon-plus" @click="add()">新建</el-button>-->
+          <!--          <el-button v-if="hasPermission('klg:question:del')" type="danger" icon="el-icon-delete" @click="del()" :disabled="$refs.questionsTable && $refs.questionsTable.getCheckboxRecords().length === 0" plain>删除</el-button>-->
+        </template>
+		  <template #tools>
+			  <vxe-button
+				  text
+				  type="primary"
+				  :title="searchVisible ? '收起检索' : '展开检索'"
+				  icon="vxe-icon-search"
+				  class="tool-btn"
+				  @click="searchVisible = !searchVisible"
+			  ></vxe-button>
+		  </template>
+      </vxe-toolbar>
+      <div style="height: calc(100% - 90px)">
+        <vxe-table
+          border="inner"
+          auto-resize
+          resizable
+          height="auto"
+          :loading="loading"
+          ref="projectTable"
+          show-header-overflow
+          show-overflow
+          highlight-hover-row
+          :menu-config="{}"
+          @sort-change="sortChangeHandle"
+          :sort-config="{remote:true}"
+          :data="dataList"
+          :checkbox-config="{}">
+          <vxe-column type="seq" width="60" title="序号"></vxe-column>
+<!--          <vxe-column type="checkbox" width="60" ></vxe-column>-->
+          <vxe-column min-width="230" align="center" title="项目名称" field="projectName">
+            <template #default="scope">
+              <el-link  type="primary" :underline="false" v-if="hasPermission('cwProjectRecords:view')" @click="view(scope.row.id)">{{scope.row.projectName}}</el-link>
+              <el-link  type="primary" :underline="false" v-else-if="hasPermission('cwProjectRecords:view')"  @click="view(scope.row.id,)">{{scope.row.projectName}}</el-link>
+              <span v-else>{{scope.row.projectName}}</span>
+            </template>
+          </vxe-column>
+          <vxe-column min-width="150" align="center" title="项目编号" field="projectNumber"></vxe-column>
+          <vxe-column min-width="230" align="center" title="合同名称" field="contractName">
+            <template #default="scope">
+              <el-link  type="primary" :underline="false" v-if="commonJS.isNotEmpty(scope.row.contractId)&&commonJS.isNotEmpty(scope.row.contractName)" @click="viewContract(scope.row.contractId)">{{scope.row.contractName}}</el-link>
+              <span v-else style="color: red">暂无合同</span>
+            </template>
+          </vxe-column>
+          <vxe-column min-width="160" align="center" title="委托方" field="clientContactsName"></vxe-column>
+          <vxe-column min-width="80" align="center" title="成员数量" field="memberCount"></vxe-column>
+          <vxe-column min-width="80" align="center" title="创建人" field="createBy.name"></vxe-column>
+          <vxe-column min-width="120" align="center" title="创建时间" field="createTime"></vxe-column>
+          <vxe-column title="操作" width="70px" fixed="right" align="center">
+            <template  #default="scope">
+<!--              项目创建人、项目组成员、管理员可编辑-->
+<!--              <el-button v-if="hasPermission('cwProjectRecords:edit')&&(scope.row.createBy.id === $store.state.user.id||isAdmin||haveProjectIds.includes(scope.row.id))" type="text" @click="edit(scope.row.id)">编辑</el-button>-->
+<!--              项目创建人、管理员、项目现场负责人、项目经理1、项目经理2可编辑-->
+              <el-button v-if="hasPermission('cwProjectRecords:edit')&&
+              (
+              isAdmin ||
+              $store.state.user.id === scope.row.createBy.id ||
+              $store.state.user.id === scope.row.projectLeaderId ||
+              $store.state.user.id === scope.row.projectMasterId ||
+              $store.state.user.id === scope.row.realHeader
+              )" text type="primary"  size="small" @click="edit(scope.row.id)">编辑</el-button>
+
+            </template>
+          </vxe-column>
+        </vxe-table>
+        <vxe-pager
+          background
+          :current-page="tablePage.currentPage"
+          :page-size="tablePage.pageSize"
+          :total="tablePage.total"
+          :page-sizes="[10, 20, 100, 1000, {label: '全量数据', value: 1000000}]"
+          :layouts="['PrevPage', 'JumpNumber', 'NextPage', 'FullJump', 'Sizes', 'Total']"
+          @page-change="currentChangeHandle">
+        </vxe-pager>
+      </div>
+    </div>
+    <ProjectRecordsForm ref="projectRecordsForm" @refreshList="refreshList"></ProjectRecordsForm>
+    <ContractNameForm ref="contractNameForm"></ContractNameForm>
+    <ProjectRecordsAddForm ref="projectRecordsAddForm" @refreshList="refreshList"></ProjectRecordsAddForm>
+    <ProjectMembersEditForm ref="projectMembersEditForm" @refreshList="refreshList"></ProjectMembersEditForm>
+  </div>
+</template>
+
+<script>
+  import projectRecordsService from '@/api/cw/projectRecords/ProjectRecordsService'
+  import ProjectRecordsForm from './ProjectRecordsForm'
+  import userService from '@/api/sys/UserService'
+  import ContractNameForm from '../workContract/ContractNameForm'
+  import ProjectRecordsAddForm from './ProjectRecordsAddForm'
+  import ProjectMembersEditForm from './ProjectMembersEditForm'
+  export default {
+    data () {
+      return {
+		  searchVisible: true,
+        searchForm: {
+          projectMasterName: '',
+          projectNumber: '',
+          projectName: '',
+          createDates: [],
+          status: ''
+        },
+        dataList: [],
+        tablePage: {
+          total: 0,
+          currentPage: 1,
+          pageSize: 10,
+          orders: []
+        },
+        loading: false,
+        processDefinitionAuditId: '',
+        procDefAuditKey: '',
+        isAdmin: false,
+        haveProjectIds: ''
+      }
+    },
+    created () {
+    },
+    components: {
+      ProjectRecordsForm,
+      ContractNameForm,
+      ProjectRecordsAddForm,
+      ProjectMembersEditForm
+    },
+    computed: {
+      userName () {
+        return this.$store.state.user.name
+      },
+      user () {
+        this.createName = this.$store.state.user.name
+        return this.$store.state.user
+      }
+    },
+    mounted () {
+		this.$nextTick(() => {
+			//将表格和工具栏进行关联
+			const $table = this.$refs.projectTable;
+			const $toolbar = this.$refs.toolbarRef;
+			$table.connect($toolbar);
+		})
+      this.refreshList()
+    },
+    activated () {
+      this.refreshList()
+    },
+    methods: {
+      // 新增
+      add () {
+        this.$refs.projectRecordsAddForm.init('add', 'false')
+      },
+      // 修改
+      edit (id) {
+        id = id || this.$refs.projectTable.getCheckboxRecords().map(item => {
+          return item.id
+        })[0]
+        this.$refs.projectMembersEditForm.init('edit', id)
+      },
+      // 查看
+      view (id) {
+        this.$refs.projectRecordsForm.init('view', id)
+      },
+      viewContract (id) {
+        this.$refs.contractNameForm.init('view', id)
+      },
+      // 查询当前用户是否是管理员用户
+      checkIsAdmin () {
+        userService.is().then((data) => {
+          this.isAdmin = data
+        })
+      },
+      // 获取数据列表
+      refreshList () {
+        this.loading = true
+        projectRecordsService.zxList({
+          'current': this.tablePage.currentPage,
+          'size': this.tablePage.pageSize,
+          'orders': this.tablePage.orders,
+          ...this.searchForm
+        }).then((data) => {
+          projectRecordsService.getHaveProjectIds().then((data) => {
+            if (this.commonJS.isNotEmpty(data)) {
+              this.haveProjectIds = data.map(i => {
+                if (this.commonJS.isNotEmpty(i)) {
+                  return i
+                }
+              }).join(',')
+            }
+          })
+          this.dataList = data.records
+          this.tablePage.total = data.total
+          this.loading = false
+        })
+        this.checkIsAdmin()
+      },
+      // 当前页
+      currentChangeHandle ({ currentPage, pageSize }) {
+        this.tablePage.currentPage = currentPage
+        this.tablePage.pageSize = pageSize
+        this.refreshList()
+      },
+      // 排序
+      sortChangeHandle (column) {
+        this.tablePage.orders = []
+        if (column.order != null) {
+          this.tablePage.orders.push({column: this.$utils.toLine(column.property), asc: column.order === 'asc'})
+        }
+        this.refreshList()
+      },
+      resetSearch () {
+        this.$refs.searchForm.resetFields()
+        this.refreshList()
+      }
+    }
+  }
+</script>

+ 51 - 10
src/views/cw/projectRecords/ProjectRecordsAddForm.vue

@@ -224,19 +224,24 @@
 					  <el-form-item label="项目经理1" prop="projectMasterId"
 									:rules="[
                    ]">
-                    <UserSelectForQualification style="width: 100%" ref="userSelect1" :disabled="status === 'audit' || status === 'taskFormDetail'"
-										 :readonly="true" :limit='1' :modelValue="inputForm.projectMasterId"
-										 @update:modelValue='(value) => {changeSignatory1(value)}'></UserSelectForQualification>
-
+<!--                    <UserSelectForQualification style="width: 100%" ref="userSelect1" :disabled="status === 'audit' || status === 'taskFormDetail'"-->
+<!--										 :readonly="true" :limit='1' :modelValue="inputForm.projectMasterId"-->
+<!--										 @update:modelValue='(value) => {changeSignatory1(value)}'></UserSelectForQualification>-->
+						  <UserSelectSignatory :readonly="true" :disabled="status === 'audit' || status === 'taskFormDetail'"
+											   :limit='1' :modelValue="inputForm.projectMasterId"
+											   @update:modelValue='(value) => {inputForm.projectMasterId = value}'></UserSelectSignatory>
 					  </el-form-item>
 				  </el-col>
 				  <el-col :span="12">
                   <el-form-item label="项目经理2" prop="realHeader"
                                 :rules="[
                    ]">
-                    <UserSelectForQualification style="width: 100%" ref="userSelect2" :disabled="status === 'audit' || status === 'taskFormDetail'"
-										 :readonly="true" :limit='1' :modelValue="inputForm.realHeader"
-										 @update:modelValue='(value) => {changeSignatory2(value)}'></UserSelectForQualification>
+<!--                    <UserSelectForQualification style="width: 100%" ref="userSelect2" :disabled="status === 'audit' || status === 'taskFormDetail'"-->
+<!--										 :readonly="true" :limit='1' :modelValue="inputForm.realHeader"-->
+<!--										 @update:modelValue='(value) => {changeSignatory2(value)}'></UserSelectForQualification>-->
+					  <UserSelectSignatory :readonly="true" :disabled="status === 'audit' || status === 'taskFormDetail'"
+										   :limit='1' :modelValue="inputForm.realHeader"
+										   @update:modelValue='(value) => {inputForm.realHeader = value}'></UserSelectSignatory>
                   </el-form-item>
                 </el-col>
 
@@ -255,6 +260,36 @@
                     <el-input :disabled="true" v-model="inputForm.createDate" placeholder="请填写创建时间" clearable></el-input>
                   </el-form-item>
                 </el-col>
+				  <el-col :span="12">
+					  <el-form-item label="项目开始时间" prop="projectStartTime"
+									:rules="[
+                   ]">
+						  <el-date-picker
+							  v-model="inputForm.projectStartTime"
+							  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="projectEndTime"
+									:rules="[
+                   ]">
+						  <el-date-picker
+							  v-model="inputForm.projectEndTime"
+							  type="date"
+							  value-format="YYYY-MM-DD"
+							  placeholder="选择项目结束时间"
+							  style="width:100%"
+							  placement="bottom-start"
+							  clearable>
+						  </el-date-picker>
+					  </el-form-item>
+				  </el-col>
               </el-row>
               <el-tabs v-model="activeName" type="border-card" @tab-click="tabHandleClick">
                 <el-tab-pane name="client">
@@ -451,6 +486,8 @@
 			projectType: '',
           id: '',
           createDate: '',
+			projectStartTime: '',
+			projectEndTime: '',
           createBy: {
             id: '',
             name: ''
@@ -582,6 +619,8 @@
 			projectType: '',
           id: '',
           createDate: '',
+			projectStartTime: '',
+			projectEndTime: '',
           createBy: {
             id: '',
             name: this.$store.state.user.name
@@ -645,9 +684,9 @@
             if (this.commonJS.isEmpty(this.inputForm.cwProjectClientInfoDTOList)) {
               this.inputForm.cwProjectClientInfoDTOList = []
             }
-            // if (this.commonJS.isEmpty(this.inputForm.projectLeaderId)) {
-            //   this.inputForm.projectLeaderId = this.$store.state.user.id
-            // }
+            if (this.commonJS.isEmpty(this.inputForm.projectLeaderId)) {
+              this.inputForm.projectLeaderId = this.$store.state.user.id
+            }
             if (this.commonJS.isEmpty(this.inputForm.projectMoney)) {
               this.inputForm.projectMoney = ''
             }
@@ -717,6 +756,8 @@
 			projectType: '',
           id: '',
           createDate: '',
+			projectStartTime: '',
+			projectEndTime: '',
           createBy: {
             id: '',
             name: ''

+ 48 - 7
src/views/cw/projectRecords/ProjectRecordsAddForm2.vue

@@ -223,19 +223,24 @@
 					  <el-form-item label="项目经理1" prop="projectMasterId"
 									:rules="[
                    ]">
-                    <UserSelectForQualification style="width: 100%" ref="userSelect1" :disabled="status === 'audit' || status === 'taskFormDetail'"
-										 :readonly="true" :limit='1' :modelValue="inputForm.projectMasterId"
-										 @update:modelValue='(value) => {changeSignatory1(value)}'></UserSelectForQualification>
-
+<!--                    <UserSelectForQualification style="width: 100%" ref="userSelect1" :disabled="status === 'audit' || status === 'taskFormDetail'"-->
+<!--										 :readonly="true" :limit='1' :modelValue="inputForm.projectMasterId"-->
+<!--										 @update:modelValue='(value) => {changeSignatory1(value)}'></UserSelectForQualification>-->
+						  <UserSelectSignatory :readonly="true" :disabled="status === 'audit' || status === 'taskFormDetail'"
+											   :limit='1' :modelValue="inputForm.projectMasterId"
+											   @update:modelValue='(value) => {inputForm.projectMasterId = value}'></UserSelectSignatory>
 					  </el-form-item>
 				  </el-col>
 				  <el-col :span="12">
                   <el-form-item label="项目经理2" prop="realHeader"
                                 :rules="[
                    ]">
-                    <UserSelectForQualification style="width: 100%" ref="userSelect2" :disabled="status === 'audit' || status === 'taskFormDetail'"
-										 :readonly="true" :limit='1' :modelValue="inputForm.realHeader"
-										 @update:modelValue='(value) => {changeSignatory2(value)}'></UserSelectForQualification>
+<!--                    <UserSelectForQualification style="width: 100%" ref="userSelect2" :disabled="status === 'audit' || status === 'taskFormDetail'"-->
+<!--										 :readonly="true" :limit='1' :modelValue="inputForm.realHeader"-->
+<!--										 @update:modelValue='(value) => {changeSignatory2(value)}'></UserSelectForQualification>-->
+					  <UserSelectSignatory :readonly="true" :disabled="status === 'audit' || status === 'taskFormDetail'"
+										   :limit='1' :modelValue="inputForm.realHeader"
+										   @update:modelValue='(value) => {inputForm.realHeader = value}'></UserSelectSignatory>
                   </el-form-item>
                 </el-col>
 
@@ -254,6 +259,36 @@
                     <el-input :disabled="true" v-model="inputForm.createDate" placeholder="请填写创建时间" clearable></el-input>
                   </el-form-item>
                 </el-col>
+				  <el-col :span="12">
+					  <el-form-item label="项目开始时间" prop="projectStartTime"
+									:rules="[
+                   ]">
+						  <el-date-picker
+							  v-model="inputForm.projectStartTime"
+							  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="projectEndTime"
+									:rules="[
+                   ]">
+						  <el-date-picker
+							  v-model="inputForm.projectEndTime"
+							  type="date"
+							  value-format="YYYY-MM-DD"
+							  placeholder="选择项目结束时间"
+							  style="width:100%"
+							  placement="bottom-start"
+							  clearable>
+						  </el-date-picker>
+					  </el-form-item>
+				  </el-col>
               </el-row>
               <el-tabs v-model="activeName" type="border-card" @tab-click="tabHandleClick">
                 <el-tab-pane name="client">
@@ -450,6 +485,8 @@
 			projectType: '',
           id: '',
           createDate: '',
+			projectStartTime: '',
+			projectEndTime: '',
           createBy: {
             id: '',
             name: ''
@@ -581,6 +618,8 @@
 			projectType: '',
           id: '',
           createDate: '',
+			projectStartTime: '',
+			projectEndTime: '',
           createBy: {
             id: '',
             name: this.$store.state.user.name
@@ -716,6 +755,8 @@
 			projectType: '',
           id: '',
           createDate: '',
+			projectStartTime: '',
+			projectEndTime: '',
           createBy: {
             id: '',
             name: ''

+ 48 - 4
src/views/cw/projectRecords/ProjectRecordsForm.vue

@@ -229,15 +229,21 @@
                                 {required: true, message:'项目经理1不能为空', trigger:'blur'}
                    ]">
                     <!--                    <el-input v-model="inputForm.projectMasterId" placeholder="请填写项目经理" clearable></el-input>-->
-                    <UserSelectForQualification :readonly="true" :disabled="method === 'view'" :limit='1' :modelValue="inputForm.projectMasterId" @update:modelValue='(value) => {inputForm.projectMasterId = value}'></UserSelectForQualification>
-                  </el-form-item>
+<!--                    <UserSelectForQualification :readonly="true" :disabled="method === 'view'" :limit='1' :modelValue="inputForm.projectMasterId" @update:modelValue='(value) => {inputForm.projectMasterId = value}'></UserSelectForQualification>-->
+					  <UserSelectSignatory :readonly="true" :disabled="status === 'audit' || status === 'taskFormDetail'"
+										   :limit='1' :modelValue="inputForm.projectMasterId"
+										   @update:modelValue='(value) => {inputForm.projectMasterId = value}'></UserSelectSignatory>
+				  </el-form-item>
                 </el-col>
                 <el-col :span="12">
                   <el-form-item label="项目经理2" prop="realHeader"
                                 :rules="[
                    ]">
-                    <UserSelectForQualification :readonly="true" :disabled="method === 'view'" :limit='1' :modelValue="inputForm.realHeader" @update:modelValue='(value) => {inputForm.realHeader = value}'></UserSelectForQualification>
-                  </el-form-item>
+<!--                    <UserSelectForQualification :readonly="true" :disabled="method === 'view'" :limit='1' :modelValue="inputForm.realHeader" @update:modelValue='(value) => {inputForm.realHeader = value}'></UserSelectForQualification>-->
+					  <UserSelectSignatory :readonly="true" :disabled="status === 'audit' || status === 'taskFormDetail'"
+										   :limit='1' :modelValue="inputForm.realHeader"
+										   @update:modelValue='(value) => {inputForm.realHeader = value}'></UserSelectSignatory>
+				  </el-form-item>
                 </el-col>
                 <el-col :span="12">
                   <el-form-item label="创建人" prop="createBy.name"
@@ -253,6 +259,36 @@
                     <el-input :disabled="true" v-model="inputForm.createDate" placeholder="请填写创建时间" clearable></el-input>
                   </el-form-item>
                 </el-col>
+				  <el-col :span="12">
+					  <el-form-item label="项目开始时间" prop="projectStartTime"
+									:rules="[
+                   ]">
+						  <el-date-picker
+							  v-model="inputForm.projectStartTime"
+							  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="projectEndTime"
+									:rules="[
+                   ]">
+						  <el-date-picker
+							  v-model="inputForm.projectEndTime"
+							  type="date"
+							  value-format="YYYY-MM-DD"
+							  placeholder="选择项目结束时间"
+							  style="width:100%"
+							  placement="bottom-start"
+							  clearable>
+						  </el-date-picker>
+					  </el-form-item>
+				  </el-col>
               </el-row>
             </el-form>
             <el-tabs v-model="activeName" style="width: 100%;" type="border-card" @tab-click="tabHandleClick">
@@ -531,6 +567,7 @@
 </template>
 
 <script>
+	import UserSelectSignatory from '@/components/userSelect'
   import UpLoadComponent from '@/views/common/UpLoadComponent'
   import SelectTree from '@/components/treeSelect/treeSelect.vue'
   import UserSelect from '@/components/userSelect'
@@ -569,6 +606,8 @@
         inputForm: {
           id: '',
           createDate: '',
+			projectStartTime: '',
+			projectEndTime: '',
           createBy: {
             id: '',
             name: ''
@@ -669,6 +708,7 @@
       }
     },
     components: {
+		UserSelectSignatory,
       UpLoadComponent,
       SelectTree,
       UserSelect,
@@ -701,6 +741,8 @@
         this.inputForm = {
           id: '',
           createDate: '',
+			projectStartTime: '',
+			projectEndTime: '',
           createBy: {
             id: '',
             name: this.$store.state.user.name
@@ -938,6 +980,8 @@
         this.inputForm = {
           id: '',
           createDate: '',
+			projectStartTime: '',
+			projectEndTime: '',
           createBy: {
             id: '',
             name: ''

+ 47 - 3
src/views/cw/projectRecords/ProjectRecordsForm2.vue

@@ -228,15 +228,21 @@
                                 {required: true, message:'项目经理1不能为空', trigger:'blur'}
                    ]">
                     <!--                    <el-input v-model="inputForm.projectMasterId" placeholder="请填写项目经理" clearable></el-input>-->
-                    <UserSelectForQualification :readonly="true" :disabled="method === 'view'" :limit='1' :modelValue="inputForm.projectMasterId" @update:modelValue='(value) => {inputForm.projectMasterId = value}'></UserSelectForQualification>
+<!--                    <UserSelectForQualification :readonly="true" :disabled="method === 'view'" :limit='1' :modelValue="inputForm.projectMasterId" @update:modelValue='(value) => {inputForm.projectMasterId = value}'></UserSelectForQualification>-->
+					  <UserSelectSignatory :readonly="true" :disabled="status === 'audit' || status === 'taskFormDetail'"
+										   :limit='1' :modelValue="inputForm.projectMasterId"
+										   @update:modelValue='(value) => {inputForm.projectMasterId = value}'></UserSelectSignatory>
                   </el-form-item>
                 </el-col>
                 <el-col :span="12">
                   <el-form-item label="项目经理2" prop="realHeader"
                                 :rules="[
                    ]">
-                    <UserSelectForQualification :readonly="true" :disabled="method === 'view'" :limit='1' :modelValue="inputForm.realHeader" @update:modelValue='(value) => {inputForm.realHeader = value}'></UserSelectForQualification>
-                  </el-form-item>
+<!--                    <UserSelectForQualification :readonly="true" :disabled="method === 'view'" :limit='1' :modelValue="inputForm.realHeader" @update:modelValue='(value) => {inputForm.realHeader = value}'></UserSelectForQualification>-->
+					  <UserSelectSignatory :readonly="true" :disabled="status === 'audit' || status === 'taskFormDetail'"
+										   :limit='1' :modelValue="inputForm.realHeader"
+										   @update:modelValue='(value) => {inputForm.realHeader = value}'></UserSelectSignatory>
+				  </el-form-item>
                 </el-col>
                 <el-col :span="12">
                   <el-form-item label="创建人" prop="createBy.name"
@@ -252,6 +258,36 @@
                     <el-input :disabled="true" v-model="inputForm.createDate" placeholder="请填写创建时间" clearable></el-input>
                   </el-form-item>
                 </el-col>
+				  <el-col :span="12">
+					  <el-form-item label="项目开始时间" prop="projectStartTime"
+									:rules="[
+                   ]">
+						  <el-date-picker
+							  v-model="inputForm.projectStartTime"
+							  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="projectEndTime"
+									:rules="[
+                   ]">
+						  <el-date-picker
+							  v-model="inputForm.projectEndTime"
+							  type="date"
+							  value-format="YYYY-MM-DD"
+							  placeholder="选择项目结束时间"
+							  style="width:100%"
+							  placement="bottom-start"
+							  clearable>
+						  </el-date-picker>
+					  </el-form-item>
+				  </el-col>
               </el-row>
             </el-form>
             <el-tabs v-model="activeName" style="width: 100%;" type="border-card" @tab-click="tabHandleClick">
@@ -530,6 +566,7 @@
 </template>
 
 <script>
+	import UserSelectSignatory from '@/components/userSelect'
   import UpLoadComponent from '@/views/common/UpLoadComponent'
   import SelectTree from '@/components/treeSelect/treeSelect.vue'
   import UserSelect from '@/components/userSelect'
@@ -568,6 +605,8 @@
         inputForm: {
           id: '',
           createDate: '',
+			projectStartTime: '',
+			projectEndTime: '',
           createBy: {
             id: '',
             name: ''
@@ -668,6 +707,7 @@
       }
     },
     components: {
+		UserSelectSignatory,
       UpLoadComponent,
       SelectTree,
       UserSelect,
@@ -700,6 +740,8 @@
         this.inputForm = {
           id: '',
           createDate: '',
+			projectStartTime: '',
+			projectEndTime: '',
           createBy: {
             id: '',
             name: this.$store.state.user.name
@@ -937,6 +979,8 @@
         this.inputForm = {
           id: '',
           createDate: '',
+			projectStartTime: '',
+			projectEndTime: '',
           createBy: {
             id: '',
             name: ''

+ 12 - 7
src/views/cw/reimbursementApproval/info/CwProgramPageForm.vue

@@ -30,7 +30,7 @@
                 <el-button @click="resetSearch()" icon="el-icon-refresh-right">重置</el-button>
               </el-form-item>
             </el-form>
-            <div v-if="num" style="margin-bottom: 10px"><span style="color: #F56C6C">注:最多选择 10 条数据</span></div>
+<!--            <div v-if="num" style="margin-bottom: 10px"><span style="color: #F56C6C">注:最多选择 10 条数据</span></div>-->
             <vxe-table
               border="inner"
               auto-resize
@@ -50,12 +50,12 @@
               :sort-config="{remote:true}"
               :data="dataList">
               <vxe-column type="seq" width="60" title="序号"></vxe-column>
-              <vxe-column type="checkbox" width="60px"></vxe-column>
+              <vxe-column type="radio" width="60px"></vxe-column>
               <vxe-column min-width="230" align="center" title="项目名称" field="projectName"></vxe-column>
               <vxe-column min-width="160" align="center" title="项目编号" field="projectNumber"></vxe-column>
               <vxe-column min-width="160" align="center" title="合同名称" field="contractName"></vxe-column>
               <vxe-column min-width="160" align="center" title="创建人" field="createBy.name"></vxe-column>
-              <vxe-column min-width="160" align="center" title="创建时间" field="createDate"></vxe-column>
+              <vxe-column min-width="160" align="center" title="创建时间" field="createTime"></vxe-column>
               <!--          <vxe-column  title="项目名称" field="name"></vxe-column>-->
               <!--          <vxe-column width="200px" title="项目编号" field="no"></vxe-column>-->
               <!--          <vxe-column width="150px" title="登记人" field="createBy"></vxe-column>-->
@@ -84,7 +84,7 @@
             </el-form>
           </div>
         </el-main>
-        <el-aside width="300px" v-if="checkType === '1' && commonJS.isNotEmpty(dataListAllSelections.length) && dataListAllSelections.length > 0">
+        <!--<el-aside width="300px" v-if="checkType === '1' && commonJS.isNotEmpty(dataListAllSelections.length) && dataListAllSelections.length > 0">
           <el-tag
             style="margin: 10px 0 0 0"
             :key="tag.id"
@@ -94,7 +94,7 @@
             @close="del(tag, index)">
             {{tag.projectName.length>20?tag.projectName.substring(0,20)+'...':tag.projectName}}
           </el-tag>
-        </el-aside>
+        </el-aside>-->
       </el-container>
 		<template #footer>
 			<span class="dialog-footer">
@@ -184,7 +184,7 @@
       getProgram () {
         let rows
         if (this.checkType === '1') {
-          if (this.commonJS.isEmpty(this.dataListAllSelections)) {
+          /*if (this.commonJS.isEmpty(this.dataListAllSelections)) {
             this.$message.error('请至少选择一条数据')
             return
           }
@@ -199,7 +199,12 @@
               return
             }
           }
-          rows = this.dataListAllSelections
+          rows = this.dataListAllSelections*/
+			rows = this.$refs.programTable.getRadioRecord()
+			if (this.commonJS.isEmpty(rows)) {
+				this.$message.error('请选择一条数据')
+				return
+			}
         } else {
           if (this.commonJS.isEmpty(this.detail)) {
             this.$message.error('请填写开票详情')

+ 4 - 2
src/views/cw/reimbursementApproval/info/ReimbursementForm.vue

@@ -1811,8 +1811,10 @@
       },
       getProgram (rows) {
         if (this.commonJS.isNotEmpty(rows)) {
-          this.inputForm.detailInfos[this.indexRow].projectId = rows.map(item => { return item.id }).join(',')
-          this.inputForm.detailInfos[this.indexRow].projectName = rows.map(item => { return item.projectName }).join(',')
+			this.inputForm.detailInfos[this.indexRow].projectId = rows.id
+			this.inputForm.detailInfos[this.indexRow].projectName = rows.projectName
+          // this.inputForm.detailInfos[this.indexRow].projectId = rows.map(item => { return item.id }).join(',')
+          // this.inputForm.detailInfos[this.indexRow].projectName = rows.map(item => { return item.projectName }).join(',')
           // this.inputForm.detailInfos[this.indexRow].reportNumber = rows.map(item => { return item.reportNumber }).join(',')
         }
         this.indexRow = ''

+ 45 - 5
src/views/cw/reportManagement/ProjectRecordsInfoForm.vue

@@ -231,15 +231,21 @@
                                 {required: true, message:'项目经理1不能为空', trigger:'blur'}
                    ]">
                     <!--                    <el-input v-model="inputForm.projectMasterId" placeholder="请填写项目经理" clearable></el-input>-->
-                    <UserSelectForQualification :readonly="true" :disabled="method === 'view'" :limit='1' :modelValue="inputForm.projectMasterId" @update:modelValue='(value) => {inputForm.projectMasterId = value}'></UserSelectForQualification>
-                  </el-form-item>
+<!--                    <UserSelectForQualification :readonly="true" :disabled="method === 'view'" :limit='1' :modelValue="inputForm.projectMasterId" @update:modelValue='(value) => {inputForm.projectMasterId = value}'></UserSelectForQualification>-->
+					  <UserSelectSignatory :readonly="true" :disabled="status === 'audit' || status === 'taskFormDetail'"
+										   :limit='1' :modelValue="inputForm.projectMasterId"
+										   @update:modelValue='(value) => {inputForm.projectMasterId = value}'></UserSelectSignatory>
+				  </el-form-item>
                 </el-col>
                 <el-col :span="12">
                   <el-form-item label="项目经理2" prop="realHeader"
                                 :rules="[
                    ]">
-                    <UserSelectForQualification :readonly="true" :disabled="method === 'view'" :limit='1' :modelValue="inputForm.realHeader" @update:modelValue='(value) => {inputForm.realHeader = value}'></UserSelectForQualification>
-                  </el-form-item>
+<!--                    <UserSelectForQualification :readonly="true" :disabled="method === 'view'" :limit='1' :modelValue="inputForm.realHeader" @update:modelValue='(value) => {inputForm.realHeader = value}'></UserSelectForQualification>-->
+					  <UserSelectSignatory :readonly="true" :disabled="status === 'audit' || status === 'taskFormDetail'"
+										   :limit='1' :modelValue="inputForm.realHeader"
+										   @update:modelValue='(value) => {inputForm.realHeader = value}'></UserSelectSignatory>
+				  </el-form-item>
                 </el-col>
                 <el-col :span="12">
                   <el-form-item label="创建人" prop="createBy.name"
@@ -255,6 +261,36 @@
                     <el-input :disabled="true" v-model="inputForm.createDate" placeholder="请填写创建时间" clearable></el-input>
                   </el-form-item>
                 </el-col>
+				  <el-col :span="12">
+					  <el-form-item label="项目开始时间" prop="projectStartTime"
+									:rules="[
+                   ]">
+						  <el-date-picker
+							  v-model="inputForm.projectStartTime"
+							  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="projectEndTime"
+									:rules="[
+                   ]">
+						  <el-date-picker
+							  v-model="inputForm.projectEndTime"
+							  type="date"
+							  value-format="YYYY-MM-DD"
+							  placeholder="选择项目结束时间"
+							  style="width:100%"
+							  placement="bottom-start"
+							  clearable>
+						  </el-date-picker>
+					  </el-form-item>
+				  </el-col>
               </el-row>
             </el-form>
             <el-tabs v-model="activeName" style="width: 100%;" type="border-card" @tab-click="tabHandleClick">
@@ -634,7 +670,7 @@
 					  <el-col :span="24">
 						  <el-form-item label="收费标准" prop="contractFees">
 							  <el-checkbox-group v-model="inputForm2.contractFees">
-								  <el-checkbox @change="changeContractFee" v-for="item in $dictUtils.getDictList('contract_fee')" :label="item.value">
+								  <el-checkbox @change="changeContractFee" v-for="item in $dictUtils.getDictList('contract_fee_new')" :label="item.value">
 									  {{item.label}}
 								  </el-checkbox>
 							  </el-checkbox-group>
@@ -1949,6 +1985,8 @@
           id: '',
 			projectType: '',
           createDate: '',
+			projectStartTime: '',
+			projectEndTime: '',
           createBy: {
             id: '',
             name: ''
@@ -2728,6 +2766,8 @@
           id: '',
 			projectType: '',
           createDate: '',
+			projectStartTime: '',
+			projectEndTime: '',
           createBy: {
             id: '',
             name: ''

+ 7 - 6
src/views/cw/reportManagement/ReportManagementFormNew.vue

@@ -242,7 +242,8 @@
 					<el-col :span="12">
 						<el-form-item label="造价咨询营业收入(万元)" prop="ziXunShouRu"
 									  :rules="[
-										{ validator: ziXunShouRuRange, trigger: 'change' }
+										{ validator: ziXunShouRuRange, trigger: 'change' },
+										{required: true, message: '造价咨询营业收入(万元)不能为空', trigger: 'blur'},
 			   ]">
 							<!--						  <el-input v-model="inputForm.ziXunShouRu" placeholder="请输入造价咨询营业收入" clearable></el-input>-->
 							<el-input
@@ -263,7 +264,7 @@
 				<div>
 					<el-divider content-position="left"><i class="el-icon-document"></i>
 						<span style="color:#f5222d;">*</span> 项目组成员(质量控制流程)
-						<el-button size="default" style="margin-left: 20px" :disabled="true" type="primary" @click="insertEvent('detail')" plain>
+						<el-button size="default" style="margin-left: 20px" type="primary" @click="insertEvent('detail')" plain>
 							新增
 						</el-button>
 					</el-divider>
@@ -288,7 +289,7 @@
 								</vxe-table-column>
 								<vxe-table-column field="memberName" title="成员名称" :edit-render="{}" show-overflow="title" :rules="[{required: true, message:'请选择用户', trigger:'blur'}]">
 									<template v-slot:edit="scope">
-										<el-input v-model="scope.row.memberName" :disabled="true" @focus="userPullListForm(scope.$rowIndex)"></el-input>
+										<el-input v-model="scope.row.memberName" @focus="userPullListForm(scope.$rowIndex)"></el-input>
 									</template>
 								</vxe-table-column>
 								<vxe-table-column field="userRole" title="角色" :edit-render="{}" show-overflow="title">
@@ -318,7 +319,7 @@
 								</vxe-table-column>
 								<vxe-table-column title="操作" width="100">
 									<template v-slot="scope">
-<!--										<el-button size="default" type="danger" @click="removeEvent(scope.row,scope.$rowIndex,'detail')" :disabled="true" v-if="scope.$rowIndex !== 0 ">删除</el-button>-->
+										<el-button size="default" type="danger" @click="removeEvent(scope.row,scope.$rowIndex,'detail')"  v-if="scope.$rowIndex !== 0 ">删除</el-button>
 									</template>
 								</vxe-table-column>
 							</vxe-table>
@@ -345,7 +346,7 @@
 								</vxe-table-column>
 								<vxe-table-column field="memberName" title="成员名称" :edit-render="{}" show-overflow="title" :rules="[{required: true, message:'请选择用户', trigger:'blur'}]">
 									<template v-slot:edit="scope">
-										<el-input v-model="scope.row.memberName" :disabled="true" @focus="userPullListForm(scope.$rowIndex)"></el-input>
+										<el-input v-model="scope.row.memberName" @focus="userPullListForm(scope.$rowIndex)"></el-input>
 									</template>
 								</vxe-table-column>
 								<vxe-table-column field="userRole" title="角色" :edit-render="{}" show-overflow="title">
@@ -375,7 +376,7 @@
 								</vxe-table-column>
 								<vxe-table-column title="操作" width="100">
 									<template v-slot="scope">
-<!--										<el-button size="default" type="danger" @click="removeEvent(scope.row,scope.$rowIndex,'detail')"  v-if="scope.$rowIndex !== 0 && scope.$rowIndex !== 1 ">删除</el-button>-->
+										<el-button size="default" type="danger" @click="removeEvent(scope.row,scope.$rowIndex,'detail')"  v-if="scope.$rowIndex !== 0 && scope.$rowIndex !== 1 ">删除</el-button>
 									</template>
 								</vxe-table-column>
 							</vxe-table>

+ 1 - 0
src/views/cw/reportManagement/ReportManagementFormNew1.vue

@@ -97,6 +97,7 @@
 					<el-col :span="12">
 						<el-form-item label="造价咨询营业收入(万元)" prop="ziXunShouRu"
 									  :rules="[
+									  	{ validator: ziXunShouRuRange, trigger: 'change' },
 										{required: true, message: '造价咨询营业收入(万元)不能为空', trigger: 'blur'},
 			   ]">
 							<el-input

+ 24 - 3
src/views/cw/reportManagement/reportReview/ReportReviewForm.vue

@@ -234,7 +234,8 @@
 				  <el-col :span="12">
 					  <el-form-item label="造价咨询营业收入(万元)" prop="ziXunShouRu"
 									:rules="[
-										{ validator: ziXunShouRuRange, trigger: 'change' }
+										{ validator: ziXunShouRuRange, trigger: 'change' },
+										{required: true, message: '造价咨询营业收入(万元)不能为空', trigger: 'blur'},
 			   ]">
 						  <el-input
 							  v-on:input="inputForm.ziXunShouRu=inputForm.ziXunShouRu.replace(/[^\d.]/g,'')
@@ -796,7 +797,7 @@
 
 					  let d = {
 						  memberName: data.memberName + '(' + this.inputForm.reviewByName + '代)',
-						  userId: this.inputForm.reviewBy,
+						  userId: data.id,
 						  userRole: '技术负责人',
 						  enrollCertNo: data.enrollCertNo,
 						  profession: data.profession,
@@ -881,6 +882,13 @@
           // 暂存
           this.inputForm.reviewStatus = '1'
           this.loading = true
+			let i = this.inputForm.detailInfos.length
+
+			for (let j = 0; j < i; j++) {
+				this.inputForm.detailInfos[j].detailNumber = ''
+				this.inputForm.detailInfos[j].detailNumber = j + 1;
+			}
+
 			this.reportReviewService.saveFormReviewNew(this.inputForm).then((data) => {
 				callback(data.businessTable, data.businessId, this.inputForm)
 				this.loading = false
@@ -909,6 +917,7 @@
 				  let i = this.inputForm.detailInfos.length
 
 				  for (let j = 0; j < i; j++) {
+					  this.inputForm.detailInfos[j].detailNumber = ''
 					  this.inputForm.detailInfos[j].detailNumber = j+1;
 					  let k = j + 1
 					  if (this.commonJS.isEmpty(this.inputForm.detailInfos[j].memberName)){
@@ -985,6 +994,7 @@
 					  }
 
 					  for (let j = 0; j < i; j++) {
+						  this.inputForm.detailInfos[j].detailNumber = ''
 						  this.inputForm.detailInfos[j].detailNumber = j+1;
 						  let k = j + 1
 						  if (this.commonJS.isEmpty(this.inputForm.detailInfos[j].memberName)){
@@ -1179,6 +1189,14 @@
       },
 		// 新增
 		async insertEvent (type) {
+			// if (!this.inputForm.reviewBy) {
+			// 	this.$message.error('请先选择审核人员!')
+			// 	throw new Error('请先选择审核人员!')
+			// }
+			// await userService.queryById(this.inputForm.reviewBy).then((data2) => {
+			// 	this.inputForm.reviewByName = data2.name
+			// })
+
 			if (type === 'detail') {
 
 				//根据项目等级来设置
@@ -1203,6 +1221,9 @@
 					}
 
 					if (this.inputForm.detailInfos.length  == 1) {
+						await userService.queryById(this.inputForm.reviewBy).then((data2) => {
+							this.inputForm.reviewByName = data2.name
+						})
 						//查询陈红星的注册/资格证号,专业信息
 						this.reportReviewService.getUserInfo(this.inputForm.reviewBy).then((data) => {
 
@@ -1215,7 +1236,7 @@
 
 							let d = {
 								memberName: data.memberName + '(' + this.inputForm.reviewByName + '代)',
-								userId: this.inputForm.reviewBy,
+								userId: data.id,
 								userRole: '技术负责人',
 								enrollCertNo: data.enrollCertNo,
 								profession: data.profession,

+ 27 - 2
src/views/cw/reportManagement/reportReview/ReportReviewForm2.vue

@@ -89,6 +89,7 @@
 				  <el-col :span="12">
 					  <el-form-item label="造价咨询营业收入(万元)" prop="ziXunShouRu"
 									:rules="[
+										{ validator: ziXunShouRuRange, trigger: 'change' },
 										{required: true, message: '造价咨询营业收入(万元)不能为空', trigger: 'blur'},
 			   ]">
 						  <el-input
@@ -681,7 +682,7 @@
 
 					  let d = {
 						  memberName: data.memberName + '(' + this.inputForm.reviewByName + '代)',
-						  userId: this.inputForm.reviewBy,
+						  userId: data.id,
 						  userRole: '技术负责人',
 						  enrollCertNo: data.enrollCertNo,
 						  profession: data.profession,
@@ -766,6 +767,12 @@
           // 暂存
           this.inputForm.reviewStatus = '1'
           this.loading = true
+
+			for (let j = 0; j < i; j++) {
+				this.inputForm.detailInfos[j].detailNumber = ''
+				this.inputForm.detailInfos[j].detailNumber = j + 1;
+			}
+
 			this.reportReviewService.saveFormReviewNew(this.inputForm).then((data) => {
 				callback(data.businessTable, data.businessId, this.inputForm)
 				this.loading = false
@@ -794,6 +801,7 @@
 				  let i = this.inputForm.detailInfos.length
 
 				  for (let j = 0; j < i; j++) {
+					  this.inputForm.detailInfos[j].detailNumber = ''
 					  this.inputForm.detailInfos[j].detailNumber = j+1;
 					  let k = j + 1
 					  if (this.commonJS.isEmpty(this.inputForm.detailInfos[j].memberName)){
@@ -870,6 +878,7 @@
 					  }
 
 					  for (let j = 0; j < i; j++) {
+						  this.inputForm.detailInfos[j].detailNumber = ''
 						  this.inputForm.detailInfos[j].detailNumber = j+1;
 						  let k = j + 1
 						  if (this.commonJS.isEmpty(this.inputForm.detailInfos[j].memberName)){
@@ -1065,6 +1074,13 @@
       },
 		// 新增
 		async insertEvent (type) {
+			if (!this.inputForm.reviewBy) {
+				this.$message.error('请先选择审核人员!')
+				throw new Error('请先选择审核人员!')
+			}
+			await userService.queryById(this.inputForm.reviewBy).then((data2) => {
+				this.inputForm.reviewByName = data2.name
+			})
 			if (type === 'detail') {
 
 				//根据项目等级来设置
@@ -1101,7 +1117,7 @@
 
 							let d = {
 								memberName: data.memberName + '(' + this.inputForm.reviewByName + '代)',
-								userId: this.inputForm.reviewBy,
+								userId: data.id,
 								userRole: '技术负责人',
 								enrollCertNo: data.enrollCertNo,
 								profession: data.profession,
@@ -1235,6 +1251,15 @@
 			})
 
 		},
+		ziXunShouRuRange(rule, value, callback) {
+			if (!value || value.trim() === "") {
+				callback(new Error('造价咨询营业收入不能为空!'));
+			} else if (parseFloat(value) <= 0) {
+				callback(new Error('造价咨询营业收入必须大于0!'));
+			} else {
+				callback();
+			}
+		},
 	}
   }
 </script>

+ 5 - 5
src/views/cw/workClientInfo/WorkClientAddForm.vue

@@ -94,11 +94,11 @@
                     </el-form-item>
                   </el-col>
 					<el-col :span="12">
-                    <el-form-item label="代表方" prop="representativeParty"
+                    <el-form-item label="代表方" prop="representativePartys"
                                   :rules="[
                                   {required: true, message:'代表方不能为空', trigger:'blur'}
                    ]">
-                      <el-select v-model="inputForm.representativeParty" placeholder="请选择代表方" clearable style="width: 100%;">
+                      <el-select v-model="inputForm.representativePartys" placeholder="请选择代表方" clearable style="width: 100%;" multiple>
                         <el-option
                           v-for="item in $dictUtils.getDictList('representative_party')"
                           :key="item.value"
@@ -772,7 +772,7 @@
           abbreviation: '',
           englishName: '',
           type: '',
-			representativeParty: '',
+			representativePartys: [],
           uscCode: '',
           scType: '',
           manageLevelType: '',
@@ -954,7 +954,7 @@
           abbreviation: '',
           englishName: '',
           type: '',
-			representativeParty: '',
+			representativePartys: [],
           uscCode: '',
           scType: '',
           manageLevelType: '',
@@ -1160,7 +1160,7 @@
           abbreviation: '',
           englishName: '',
           type: '',
-			representativeParty: '',
+			representativePartys: [],
           uscCode: '',
           scType: '',
           manageLevelType: '',

+ 5 - 5
src/views/cw/workClientInfo/WorkClientForm.vue

@@ -93,11 +93,11 @@
                   </el-form-item>
                 </el-col>
 				  <el-col :span="12">
-					  <el-form-item label="代表方" prop="representativeParty"
+					  <el-form-item label="代表方" prop="representativePartys"
 									:rules="[
                                   {required: true, message:'代表方不能为空', trigger:'blur'}
                    ]">
-						  <el-select v-model="inputForm.representativeParty" placeholder="请选择代表方" clearable style="width: 100%;">
+						  <el-select v-model="inputForm.representativePartys" placeholder="请选择代表方" clearable style="width: 100%;" multiple>
 							  <el-option
 								  v-for="item in $dictUtils.getDictList('representative_party')"
 								  :key="item.value"
@@ -950,7 +950,7 @@
           abbreviation: '',
           englishName: '',
           type: '',
-			representativeParty: '',
+			representativePartys: [],
           uscCode: '',
           scType: '',
           manageLevelType: '',
@@ -1154,7 +1154,7 @@
           abbreviation: '',
           englishName: '',
           type: '',
-			representativeParty: '',
+			representativePartys: [],
           uscCode: '',
           scType: '',
           manageLevelType: '',
@@ -1440,7 +1440,7 @@
           abbreviation: '',
           englishName: '',
           type: '',
-			representativeParty: '',
+			representativePartys: [],
           uscCode: '',
           scType: '',
           manageLevelType: '',

+ 1 - 1
src/views/cw/workContract/ContractFileForm.vue

@@ -218,7 +218,7 @@
         <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">
+              <el-checkbox @change="changeContractFee" :disabled="true" v-for="item in $dictUtils.getDictList('contract_fee_new')" :label="item.value">
                 {{item.label}}
               </el-checkbox>
             </el-checkbox-group>

+ 12 - 12
src/views/cw/workContract/ContractFilePaperForm.vue

@@ -235,7 +235,7 @@
         <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">
+              <el-checkbox @change="changeContractFee" :disabled="true" v-for="item in $dictUtils.getDictList('contract_fee_new')" :label="item.value">
                 {{item.label}}
               </el-checkbox>
             </el-checkbox-group>
@@ -625,9 +625,7 @@
 
 			  this.commonApi.getTaskNameByProcInsId(this.inputForm.taskFiledPaperProcInsId).then((data) => {
 				  if (this.commonJS.isNotEmpty(data)) {
-					  if (data === '公司领导审核') {
-						  this.testFlag = false
-					  } else if (data === '部门主任审核') {
+					  if (data === '合同归档管理员审核') {
 						  this.testFlag = true
 					  }
 				  }
@@ -869,14 +867,16 @@
 			this.inputForm.createTime = ''
 			this.commonApi.getTaskNameByProcInsId(this.inputForm.taskFiledPaperProcInsId).then((data) => {
 				console.log('进来了')
-				if (this.commonJS.isNotEmpty(data)) {
-					if (data === '公司领导审核') {
-						this.inputForm.status = '5'
-						this.inputForm.filedPaperType = '5'
-					}
-				} else {
-					this.inputForm.filedPaperType = '2'
-				}
+				// if (this.commonJS.isNotEmpty(data)) {
+				// 	if (data === '公司领导审核') {
+				// 		this.inputForm.status = '5'
+				// 		this.inputForm.filedPaperType = '5'
+				// 	}
+				// } else {
+				// 	this.inputForm.filedPaperType = '2'
+				// }
+				this.inputForm.status = '5'
+				this.inputForm.filedPaperType = '5'
 				this.contractFilePaperService.save(this.inputForm).then((data) => {
 					console.log('data', data)
 					callback(data.businessTable, data.businessId, this.inputForm)

+ 1 - 1
src/views/cw/workContract/ContractNameForm.vue

@@ -239,7 +239,7 @@
               <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">
+                    <el-checkbox @change="changeContractFee" v-for="item in $dictUtils.getDictList('contract_fee_new')" :label="item.value">
                       {{item.label}}
                     </el-checkbox>
                   </el-checkbox-group>

+ 1 - 1
src/views/cw/workContract/ContractRegistrationForm.vue

@@ -238,7 +238,7 @@
         <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">
+              <el-checkbox @change="changeContractFee" v-for="item in $dictUtils.getDictList('contract_fee_new')" :label="item.value">
                 {{item.label}}
               </el-checkbox>
             </el-checkbox-group>

+ 1 - 1
src/views/cw/workContract/contractRegisitionAddForm/ContractAddForm.vue

@@ -248,7 +248,7 @@
         <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">
+              <el-checkbox @change="changeContractFee" v-for="item in $dictUtils.getDictList('contract_fee_new')" :label="item.value">
                 {{item.label}}
               </el-checkbox>
             </el-checkbox-group>

+ 1 - 1
src/views/program/configuration/proofreadType/BrowseTypeForm.vue

@@ -20,7 +20,7 @@
                       label: 'name',         // 显示名称
                       children: 'children'    // 子级字段名
                     }"
-                url="/assess-server/proofread/type/treeData?type=2"
+                url="/finance-server/proofread/type/treeData?type=2"
                 :value="inputForm.parentId"
                 :clearable="true"
                 :accordion="true"

+ 1 - 1
src/views/program/configuration/proofreadType/TypeForm.vue

@@ -20,7 +20,7 @@
                       label: 'name',         // 显示名称
                       children: 'children'    // 子级字段名
                     }"
-                url="/assess-server/proofread/type/treeData?type=1"
+                url="/finance-server/proofread/type/treeData?type=1"
                 :value="inputForm.parentId"
                 :clearable="true"
                 :accordion="true"

+ 1 - 1
src/views/reimbursement/info/InfoList.vue

@@ -69,7 +69,7 @@
                   label: 'name',         // 显示名称
                   children: 'children'    // 子级字段名
                 }"
-          url="/assess-server/reimbursement/type/treeData1?type=last"
+          url="/finance-server/reimbursement/type/treeData1?type=last"
           :value="searchForm.remiType"
           :clearable="true"
           :accordion="true"