Browse Source

Merge remote-tracking branch 'origin/master'

sangwenwei 10 months atrás
parent
commit
f58bc9ec08
25 changed files with 506 additions and 294 deletions
  1. BIN
      dist.rar
  2. 17 0
      src/api/cw/projectRecords/ProjectReportArchiveService.js
  3. 21 11
      src/views/ccpm/reimbursement/info/InfoUpdateForm.vue
  4. 48 40
      src/views/ccpm/reimbursement/info/ReimbursementForm.vue
  5. 5 0
      src/views/consultancy/reimbursement/info/InfoForm.vue
  6. 21 11
      src/views/consultancy/reimbursement/info/InfoUpdateForm.vue
  7. 48 40
      src/views/consultancy/reimbursement/info/ReimbursementForm.vue
  8. 56 32
      src/views/cw/projectReportArchive/ProjectReportArchiveTaskForm.vue
  9. 5 0
      src/views/cw/reimbursementApproval/info/InfoForm.vue
  10. 21 11
      src/views/cw/reimbursementApproval/info/InfoUpdateForm.vue
  11. 47 40
      src/views/cw/reimbursementApproval/info/ReimbursementForm.vue
  12. 1 0
      src/views/dashboard/widgets/components/TodoList.vue
  13. 1 1
      src/views/finance/invoice/InvoiceList.vue
  14. 1 1
      src/views/flowable/task/ApplyList.vue
  15. 1 1
      src/views/flowable/task/HistoryList.vue
  16. 62 0
      src/views/flowable/task/TaskForm.vue
  17. 1 1
      src/views/flowable/task/TodoList.vue
  18. 1 0
      src/views/home/components/TodoList2.vue
  19. 1 0
      src/views/reimbursement/info/InfoList.vue
  20. 21 11
      src/views/reimbursement/info/InfoUpdateForm.vue
  21. 50 40
      src/views/reimbursement/info/ReimbursementForm.vue
  22. 3 3
      src/views/sys/dashboard/workBench/PendingList.vue
  23. 5 0
      src/views/zs/reimbursement/info/InfoForm.vue
  24. 21 11
      src/views/zs/reimbursement/info/InfoUpdateForm.vue
  25. 48 40
      src/views/zs/reimbursement/info/ReimbursementForm.vue

BIN
dist.rar


+ 17 - 0
src/api/cw/projectRecords/ProjectReportArchiveService.js

@@ -66,4 +66,21 @@ export default class ProjectReportArchiveService {
       params: {reportNo: reportNo}
     })
   }
+
+	findHiById (id) {
+		return request({
+			url: prefix + '/cwProjectReportArchive/findHiById',
+			method: 'get',
+			params: {id: id}
+		})
+	}
+
+	getLastAuditDateByReportId (reportId) {
+		return request({
+			url: prefix + '/cwProjectReportArchive/getLastAuditDateByReportId',
+			method: 'get',
+			params: {reportId: reportId}
+		})
+	}
+
 }

+ 21 - 11
src/views/ccpm/reimbursement/info/InfoUpdateForm.vue

@@ -15,17 +15,19 @@
 				 label-width="100px" @submit.native.prevent>
 
 			<el-divider content-position="left"><i class="el-icon-document"></i> 基础信息</el-divider>
-			<el-row >
-				<el-col :span="12">
-					<el-form-item hidden label="报销项" prop="reimbursementType" :disabled="status === 'audit' || status === 'taskFormDetail'"
-								  :rules="[
-                        {required: true, message:'报销项不能为空', trigger:'blur'}
-               ]">
-						<el-radio v-model="inputForm.reimbursementType" v-for="item in $dictUtils.getDictList('reimbursement_type')" :label="item.value" style="margin-right: 20px">
-							{{item.label}}</el-radio>
-					</el-form-item>
-				</el-col>
-			</el-row>
+			<div v-if="isAdmin">
+				<el-row >
+					<el-col :span="12">
+						<el-form-item label="报销项" prop="reimbursementType" :disabled="status === 'audit' || status === 'taskFormDetail'"
+									  :rules="[
+							{required: true, message:'报销项不能为空', trigger:'blur'}
+				   ]">
+							<el-radio v-model="inputForm.reimbursementType" v-for="item in $dictUtils.getDictList('reimbursement_type')" :label="item.value" style="margin-right: 20px">
+								{{item.label}}</el-radio>
+						</el-form-item>
+					</el-col>
+				</el-row>
+			</div>
 			<el-row :gutter="26">
 				<el-col :span="12">
 					<el-form-item label="经办人" prop="userName">
@@ -798,6 +800,7 @@
 				method: '',
 				visible: false,
 				loading: false,
+				isAdmin: false,
 				indexRow: '',
 				detailKey: '',
 				detailKeyContract: '',
@@ -924,6 +927,7 @@
 			getUpload () {
 			},
 			init (method, id) {
+				this.checkIsAdmin()
 				this.method = method
 				this.inputForm = {
 					id:'',
@@ -1024,6 +1028,12 @@
 					}
 				})
 			},
+			// 查询当前用户是否是管理员用户
+			checkIsAdmin () {
+				userService.is().then((data) => {
+					this.isAdmin = data
+				})
+			},
 			// 表单提交
 			doSubmit () {
 				this.$refs['inputForm'].validate((valid) => {

+ 48 - 40
src/views/ccpm/reimbursement/info/ReimbursementForm.vue

@@ -2152,49 +2152,57 @@
 			if(!invoiceReimbursements) {
 				invoiceReimbursements = [];
 			}
-			this.reimbursementService.getEffectiveDataByInvoiceNumber(data.InvoiceNumber,this.inputForm.id).then((decide) => {
-				if(!decide.success){
-					//删除上传的附件信息
-					this.$refs.invoiceReimbursementUpLoadComponent.parentDeleteById(file)
-					//进行提醒
-					this.$message.warning(decide.message)
-				}else{
-					invoiceReimbursements.forEach(item => {
-						if(item.number === data.InvoiceNumber) {
-							includeFlag = true;
-							item.invoiceType = data.InherentLabelGeneralOrSpecialVATLabelCode;
-							item.invoiceProjectName = data.IssuItemInformationItemName;
-							item.number = data.InvoiceNumber;
-							item.invoiceDate = data.IssueTime;
-							item.invoiceUnit = data.SellerInformationSellerName;
-							item.amount = data.BasicInformationTotalAmWithoutTax;
-							item.taxAmount = data.BasicInformationTotalTaxAm;
-							item.count = data.BasicInformationTotalTaxincludedAmount;
-							item.buyerName = data.BuyerInformationBuyerName;
-						}
-					})
-					//列表中未查到相同发票号
-					if(!includeFlag){
-						let value = {
-							invoiceType: data.InherentLabelGeneralOrSpecialVATLabelCode,
-							invoiceProjectName: data.IssuItemInformationItemName,
-							number: data.InvoiceNumber,
-							invoiceDate: data.IssueTime,
-							invoiceUnit: data.SellerInformationSellerName,
-							amount: data.BasicInformationTotalAmWithoutTax,
-							taxAmount: data.BasicInformationTotalTaxAm,
-							count: data.BasicInformationTotalTaxincludedAmount,
-							buyerName: data.BuyerInformationBuyerName,
-							remarks: ''
+			if("江苏兴光项目管理有限公司" !== data.BuyerInformationBuyerName){
+				//删除上传的附件信息
+				this.$refs.invoiceReimbursementUpLoadComponent.parentDeleteById(file)
+				//进行提醒
+				this.$message.warning("仅可上传江苏兴光项目管理有限公司的报销数电发票")
+			}else{
+				this.reimbursementService.getEffectiveDataByInvoiceNumber(data.InvoiceNumber,this.inputForm.id).then((decide) => {
+					if(!decide.success){
+						//删除上传的附件信息
+						this.$refs.invoiceReimbursementUpLoadComponent.parentDeleteById(file)
+						//进行提醒
+						this.$message.warning(decide.message)
+					}else{
+						invoiceReimbursements.forEach(item => {
+							if(item.number === data.InvoiceNumber) {
+								includeFlag = true;
+								item.invoiceType = data.InherentLabelGeneralOrSpecialVATLabelCode;
+								item.invoiceProjectName = data.IssuItemInformationItemName;
+								item.number = data.InvoiceNumber;
+								item.invoiceDate = data.IssueTime;
+								item.invoiceUnit = data.SellerInformationSellerName;
+								item.amount = data.BasicInformationTotalAmWithoutTax;
+								item.taxAmount = data.BasicInformationTotalTaxAm;
+								item.count = data.BasicInformationTotalTaxincludedAmount;
+								item.buyerName = data.BuyerInformationBuyerName;
+							}
+						})
+						//列表中未查到相同发票号
+						if(!includeFlag){
+							let value = {
+								invoiceType: data.InherentLabelGeneralOrSpecialVATLabelCode,
+								invoiceProjectName: data.IssuItemInformationItemName,
+								number: data.InvoiceNumber,
+								invoiceDate: data.IssueTime,
+								invoiceUnit: data.SellerInformationSellerName,
+								amount: data.BasicInformationTotalAmWithoutTax,
+								taxAmount: data.BasicInformationTotalTaxAm,
+								count: data.BasicInformationTotalTaxincludedAmount,
+								buyerName: data.BuyerInformationBuyerName,
+								remarks: ''
+							}
+							this.insertInvoiceReimbursementEvent('invoiceReimbursement',value)
 						}
-						this.insertInvoiceReimbursementEvent('invoiceReimbursement',value)
 					}
-				}
 
-			}).catch(() => {
-				this.$refs.inputForm.resetFields()
-				this.loading = false
-			})
+				}).catch(() => {
+					this.$refs.inputForm.resetFields()
+					this.loading = false
+				})
+			}
+
 
 		},
 		invoiceReimbursementDispose: function (data) {

+ 5 - 0
src/views/consultancy/reimbursement/info/InfoForm.vue

@@ -623,6 +623,11 @@
 								  <el-input maxlength="50" readonly="true" v-model="scope.row.invoiceUnit" ></el-input>
 							  </template>
 						  </vxe-table-column>
+						  <vxe-table-column field="buyerName" title="购买方名称" :edit-render="{}" show-overflow="title">
+							  <template #edit="scope">
+								  <el-input maxlength="50" readonly="true" v-model="scope.row.buyerName" ></el-input>
+							  </template>
+						  </vxe-table-column>
 						  <vxe-table-column field="amount" title="金额" :edit-render="{}" show-overflow="title">
 							  <template #edit="scope">
 								  <el-input maxlength="15" readonly="true" v-model="scope.row.amount" @input="scope.row.amount = twoDecimalPlaces(scope.row.amount)" @change="countAmount(scope.row)"></el-input>

+ 21 - 11
src/views/consultancy/reimbursement/info/InfoUpdateForm.vue

@@ -15,17 +15,19 @@
              label-width="100px" @submit.native.prevent>
 
       <el-divider content-position="left"><i class="el-icon-document"></i> 基础信息</el-divider>
-		<el-row >
-			<el-col :span="12">
-				<el-form-item hidden label="报销项" prop="reimbursementType" :disabled="status === 'audit' || status === 'taskFormDetail'"
-							  :rules="[
-                        {required: true, message:'报销项不能为空', trigger:'blur'}
-               ]">
-					<el-radio v-model="inputForm.reimbursementType" v-for="item in $dictUtils.getDictList('reimbursement_type')" :label="item.value" style="margin-right: 20px">
-						{{item.label}}</el-radio>
-				</el-form-item>
-			</el-col>
-		</el-row>
+		<div v-if="isAdmin">
+			<el-row >
+				<el-col :span="12">
+					<el-form-item label="报销项" prop="reimbursementType" :disabled="status === 'audit' || status === 'taskFormDetail'"
+								  :rules="[
+							{required: true, message:'报销项不能为空', trigger:'blur'}
+				   ]">
+						<el-radio v-model="inputForm.reimbursementType" v-for="item in $dictUtils.getDictList('reimbursement_type')" :label="item.value" style="margin-right: 20px">
+							{{item.label}}</el-radio>
+					</el-form-item>
+				</el-col>
+			</el-row>
+		</div>
       <el-row :gutter="26">
         <el-col :span="12">
           <el-form-item label="经办人" prop="userName">
@@ -792,6 +794,7 @@
         method: '',
         visible: false,
         loading: false,
+		  isAdmin: false,
         indexRow: '',
         detailKey: '',
         detailKeyContract: '',
@@ -915,6 +918,7 @@
       getUpload () {
       },
       init (method, id) {
+		  this.checkIsAdmin()
         this.method = method
         this.inputForm = {
 			reimbursementType: '0',
@@ -1007,6 +1011,12 @@
 			}
         })
       },
+		// 查询当前用户是否是管理员用户
+		checkIsAdmin () {
+			userService.is().then((data) => {
+				this.isAdmin = data
+			})
+		},
       // 表单提交
       doSubmit () {
         this.$refs['inputForm'].validate((valid) => {

+ 48 - 40
src/views/consultancy/reimbursement/info/ReimbursementForm.vue

@@ -2093,49 +2093,57 @@
 			if(!invoiceReimbursements) {
 				invoiceReimbursements = [];
 			}
-			this.reimbursementService.getEffectiveDataByInvoiceNumber(data.InvoiceNumber,this.inputForm.id).then((decide) => {
-				if(!decide.success){
-					//删除上传的附件信息
-					this.$refs.invoiceReimbursementUpLoadComponent.parentDeleteById(file)
-					//进行提醒
-					this.$message.warning(decide.message)
-				}else{
-					invoiceReimbursements.forEach(item => {
-						if(item.number === data.InvoiceNumber) {
-							includeFlag = true;
-							item.invoiceType = data.InherentLabelGeneralOrSpecialVATLabelCode;
-							item.invoiceProjectName = data.IssuItemInformationItemName;
-							item.number = data.InvoiceNumber;
-							item.invoiceDate = data.IssueTime;
-							item.invoiceUnit = data.SellerInformationSellerName;
-							item.amount = data.BasicInformationTotalAmWithoutTax;
-							item.taxAmount = data.BasicInformationTotalTaxAm;
-							item.count = data.BasicInformationTotalTaxincludedAmount;
-							item.buyerName = data.BuyerInformationBuyerName;
+			if("南京兴光培训咨询有限公司" !== data.BuyerInformationBuyerName){
+				//删除上传的附件信息
+				this.$refs.invoiceReimbursementUpLoadComponent.parentDeleteById(file)
+				//进行提醒
+				this.$message.warning("仅可上传南京兴光培训咨询有限公司的报销数电发票")
+			}else{
+				this.reimbursementService.getEffectiveDataByInvoiceNumber(data.InvoiceNumber,this.inputForm.id).then((decide) => {
+					if(!decide.success){
+						//删除上传的附件信息
+						this.$refs.invoiceReimbursementUpLoadComponent.parentDeleteById(file)
+						//进行提醒
+						this.$message.warning(decide.message)
+					}else{
+						invoiceReimbursements.forEach(item => {
+							if(item.number === data.InvoiceNumber) {
+								includeFlag = true;
+								item.invoiceType = data.InherentLabelGeneralOrSpecialVATLabelCode;
+								item.invoiceProjectName = data.IssuItemInformationItemName;
+								item.number = data.InvoiceNumber;
+								item.invoiceDate = data.IssueTime;
+								item.invoiceUnit = data.SellerInformationSellerName;
+								item.amount = data.BasicInformationTotalAmWithoutTax;
+								item.taxAmount = data.BasicInformationTotalTaxAm;
+								item.count = data.BasicInformationTotalTaxincludedAmount;
+								item.buyerName = data.BuyerInformationBuyerName;
+							}
+						})
+						//列表中未查到相同发票号
+						if(!includeFlag){
+							let value = {
+								invoiceType: data.InherentLabelGeneralOrSpecialVATLabelCode,
+								invoiceProjectName: data.IssuItemInformationItemName,
+								number: data.InvoiceNumber,
+								invoiceDate: data.IssueTime,
+								invoiceUnit: data.SellerInformationSellerName,
+								amount: data.BasicInformationTotalAmWithoutTax,
+								taxAmount: data.BasicInformationTotalTaxAm,
+								count: data.BasicInformationTotalTaxincludedAmount,
+								buyerName: data.BuyerInformationBuyerName,
+								remarks: ''
+							}
+							this.insertInvoiceReimbursementEvent('invoiceReimbursement',value)
 						}
-					})
-					//列表中未查到相同发票号
-					if(!includeFlag){
-						let value = {
-							invoiceType: data.InherentLabelGeneralOrSpecialVATLabelCode,
-							invoiceProjectName: data.IssuItemInformationItemName,
-							number: data.InvoiceNumber,
-							invoiceDate: data.IssueTime,
-							invoiceUnit: data.SellerInformationSellerName,
-							amount: data.BasicInformationTotalAmWithoutTax,
-							taxAmount: data.BasicInformationTotalTaxAm,
-							count: data.BasicInformationTotalTaxincludedAmount,
-							buyerName: data.BuyerInformationBuyerName,
-							remarks: ''
-						}
-						this.insertInvoiceReimbursementEvent('invoiceReimbursement',value)
 					}
-				}
 
-			}).catch(() => {
-				this.$refs.inputForm.resetFields()
-				this.loading = false
-			})
+				}).catch(() => {
+					this.$refs.inputForm.resetFields()
+					this.loading = false
+				})
+			}
+
 
 		},
 		invoiceReimbursementDispose: function (data) {

+ 56 - 32
src/views/cw/projectReportArchive/ProjectReportArchiveTaskForm.vue

@@ -580,7 +580,7 @@
       getKeyWatch (keyWatch) {
         this.keyWatch = keyWatch
       },
-      init (method, id) {
+		async init (method, id) {
         this.activeName = 'files'
         this.projectReportArchiveService = new ProjectReportArchiveService()
         this.method = method
@@ -643,42 +643,66 @@
         this.selectRecord=[]
         this.inputForm.id = id
         this.loading = false
-        this.$nextTick(() => {
+        this.$nextTick(async () => {
         	console.log(this.inputForm.id)
           this.$refs.inputForm.resetFields()
           this.loading = true
-          this.projectReportArchiveService.queryById(this.inputForm.id).then((data) => {
-            this.$refs.uploadComponent.clearUpload()
-            this.inputForm = this.recover(this.inputForm, data)
-            this.inputForm = JSON.parse(JSON.stringify(this.inputForm))
-            if (this.commonJS.isEmpty(this.inputForm.workAttachmentDtoList)) {
-              this.inputForm.workAttachmentDtoList = []
-            }
-            if (this.commonJS.isEmpty(this.inputForm.createDate)) {
-              this.inputForm.createDate = this.moment(new Date()).format('YYYY-MM-DD HH:mm:ss')
-            }
-            if (this.commonJS.isEmpty(this.inputForm.createBy.name)) {
-              this.inputForm.createBy.name = this.$store.state.user.name
-            }
-            if (this.commonJS.isEmpty(this.inputForm.officeId)) {
-              this.inputForm.officeId = this.$store.state.user.office.id
-            }
-            if (this.commonJS.isEmpty(this.inputForm.papersNum)) {
-              this.inputForm.papersNum = 0
-            }
-            if (this.commonJS.isEmpty(this.inputForm.reportNum)) {
-              this.inputForm.reportNum = 0
-            }
-            if (this.status === 'audit' || this.status === 'taskFormDetail') {
-              this.method = 'view'
-            }
-            if (this.inputForm.auditMoney === '0') {
-              this.isShow = true
-				console.log('connectReport',this.inputForm.connectReport)
-            }
+			const data = await this.projectReportArchiveService.queryById(this.inputForm.id)
+			this.$refs.uploadComponent.clearUpload()
+			this.inputForm = this.recover(this.inputForm, data)
+			this.inputForm = JSON.parse(JSON.stringify(this.inputForm))
+			if (this.commonJS.isEmpty(this.inputForm.workAttachmentDtoList)) {
+				this.inputForm.workAttachmentDtoList = []
+			}
+			if (this.commonJS.isEmpty(this.inputForm.createDate)) {
+				this.inputForm.createDate = this.moment(new Date()).format('YYYY-MM-DD HH:mm:ss')
+			}
+			if (this.commonJS.isEmpty(this.inputForm.createBy.name)) {
+				this.inputForm.createBy.name = this.$store.state.user.name
+			}
+			if (this.commonJS.isEmpty(this.inputForm.officeId)) {
+				this.inputForm.officeId = this.$store.state.user.office.id
+			}
+			if (this.commonJS.isEmpty(this.inputForm.papersNum)) {
+				this.inputForm.papersNum = 0
+			}
+			if (this.commonJS.isEmpty(this.inputForm.reportNum)) {
+				this.inputForm.reportNum = 0
+			}
+			if (this.status === 'audit' || this.status === 'taskFormDetail') {
+				this.method = 'view'
+			}
+			if (this.inputForm.auditMoney === '0') {
+				this.isShow = true
+				console.log('connectReport', this.inputForm.connectReport)
+			}
+
+			if(!this.commonJS.isEmpty(data.status) && data.status == 2){
+				//将原有审核时间进行处理并同步
+				//通过reportId获取上一次审核通过时间
+				const hiData = await this.projectReportArchiveService.getLastAuditDateByReportId(this.inputForm.reportId);
+				if (!this.commonJS.isEmpty(hiData.auditDate)) {
+					try {
+						await this.$confirm('该报告之前已经归档并作废,是否沿用原有归档审核时间?上次归档时间为:' + hiData.auditDate, '确认信息', {
+							distinguishCancelAndClose: true,
+							confirmButtonText: '是',
+							cancelButtonText: '否'
+						});
+						this.inputForm.auditDate = hiData.auditDate;
+					} catch (action) {
+						//将当前时间进行放入
+						this.inputForm.auditDate = this.moment(new Date()).format('YYYY-MM-DD HH:mm:ss');
+					}
+					this.inputForm.number = hiData.number
+					this.inputForm.isNumber = hiData.isNumber
+				}else{
+					this.inputForm.auditDate = this.moment(new Date()).format('YYYY-MM-DD HH:mm:ss');
+				}
+			}
+
             this.$refs.uploadComponent.newUpload(this.method, this.inputForm.workAttachmentDtoList, 'cw_project_archive', null, null, null, null, false)
             this.loading = false
-          })
+
         })
       },
       saveForm (callback) {

+ 5 - 0
src/views/cw/reimbursementApproval/info/InfoForm.vue

@@ -693,6 +693,11 @@
 										<el-input maxlength="50" readonly="true" v-model="scope.row.invoiceUnit" ></el-input>
 									</template>
 								</vxe-table-column>
+								<vxe-table-column field="buyerName" title="购买方名称" :edit-render="{}" show-overflow="title">
+									<template #edit="scope">
+										<el-input maxlength="50" readonly="true" v-model="scope.row.buyerName" ></el-input>
+									</template>
+								</vxe-table-column>
 								<vxe-table-column field="amount" title="金额" :edit-render="{}" show-overflow="title">
 									<template #edit="scope">
 										<el-input maxlength="15" readonly="true" v-model="scope.row.amount" @input="scope.row.amount = twoDecimalPlaces(scope.row.amount)" @change="countAmount(scope.row)"></el-input>

+ 21 - 11
src/views/cw/reimbursementApproval/info/InfoUpdateForm.vue

@@ -15,17 +15,19 @@
 				 label-width="100px" @submit.native.prevent>
 
 			<el-divider content-position="left"><i class="el-icon-document"></i> 基础信息</el-divider>
-			<el-row >
-				<el-col :span="12">
-					<el-form-item hidden label="报销项" prop="reimbursementType" :disabled="status === 'audit' || status === 'taskFormDetail'"
-								  :rules="[
-                        {required: true, message:'报销项不能为空', trigger:'blur'}
-               ]">
-						<el-radio v-model="inputForm.reimbursementType" v-for="item in $dictUtils.getDictList('reimbursement_type')" :label="item.value" style="margin-right: 20px">
-							{{item.label}}</el-radio>
-					</el-form-item>
-				</el-col>
-			</el-row>
+			<div v-if="isAdmin">
+				<el-row >
+					<el-col :span="12">
+						<el-form-item label="报销项" prop="reimbursementType" :disabled="status === 'audit' || status === 'taskFormDetail'"
+									  :rules="[
+							{required: true, message:'报销项不能为空', trigger:'blur'}
+				   ]">
+							<el-radio v-model="inputForm.reimbursementType" v-for="item in $dictUtils.getDictList('reimbursement_type')" :label="item.value" style="margin-right: 20px">
+								{{item.label}}</el-radio>
+						</el-form-item>
+					</el-col>
+				</el-row>
+			</div>
 			<el-row :gutter="26">
 				<el-col :span="12">
 					<el-form-item label="经办人" prop="userName">
@@ -912,6 +914,7 @@
 				method: '',
 				visible: false,
 				loading: false,
+				isAdmin: false,
 				indexRow: '',
 				detailKey: '',
 				detailKeyContract: '',
@@ -1047,6 +1050,7 @@
 			getUpload () {
 			},
 			init (method, id) {
+				this.checkIsAdmin()
 				this.method = method
 				this.inputForm = {
 					reimbursementType: '0',
@@ -1146,6 +1150,12 @@
 
 				})
 			},
+			// 查询当前用户是否是管理员用户
+			checkIsAdmin () {
+				userService.is().then((data) => {
+					this.isAdmin = data
+				})
+			},
 			// 表单提交
 			doSubmit () {
 				this.$refs['inputForm'].validate((valid) => {

+ 47 - 40
src/views/cw/reimbursementApproval/info/ReimbursementForm.vue

@@ -2424,49 +2424,56 @@
 				if(!invoiceReimbursements) {
 					invoiceReimbursements = [];
 				}
-				this.reimbursementApprovalService.getEffectiveDataByInvoiceNumber(data.InvoiceNumber,this.inputForm.id).then((decide) => {
-					if(!decide.success){
-						//删除上传的附件信息
-						this.$refs.invoiceReimbursementUpLoadComponent.parentDeleteById(file)
-						//进行提醒
-						this.$message.warning(decide.message)
-					}else{
-						invoiceReimbursements.forEach(item => {
-							if(item.number === data.InvoiceNumber) {
-								includeFlag = true;
-								item.invoiceType = data.InherentLabelGeneralOrSpecialVATLabelCode;
-								item.invoiceProjectName = data.IssuItemInformationItemName;
-								item.number = data.InvoiceNumber;
-								item.invoiceDate = data.IssueTime;
-								item.invoiceUnit = data.SellerInformationSellerName;
-								item.amount = data.BasicInformationTotalAmWithoutTax;
-								item.taxAmount = data.BasicInformationTotalTaxAm;
-								item.count = data.BasicInformationTotalTaxincludedAmount;
-								item.buyerName = data.BuyerInformationBuyerName;
-							}
-						})
-						//列表中未查到相同发票号
-						if(!includeFlag){
-							let value = {
-								invoiceType: data.InherentLabelGeneralOrSpecialVATLabelCode,
-								invoiceProjectName: data.IssuItemInformationItemName,
-								number: data.InvoiceNumber,
-								invoiceDate: data.IssueTime,
-								invoiceUnit: data.SellerInformationSellerName,
-								amount: data.BasicInformationTotalAmWithoutTax,
-								taxAmount: data.BasicInformationTotalTaxAm,
-								count: data.BasicInformationTotalTaxincludedAmount,
-								buyerName: data.BuyerInformationBuyerName,
-								remarks: ''
+				if("江苏兴光会计师事务所有限责任公司" !== data.BuyerInformationBuyerName){
+					//删除上传的附件信息
+					this.$refs.invoiceReimbursementUpLoadComponent.parentDeleteById(file)
+					//进行提醒
+					this.$message.warning("仅可上传江苏兴光会计师事务所有限责任公司的报销数电发票")
+				}else{
+					this.reimbursementApprovalService.getEffectiveDataByInvoiceNumber(data.InvoiceNumber,this.inputForm.id).then((decide) => {
+						if(!decide.success){
+							//删除上传的附件信息
+							this.$refs.invoiceReimbursementUpLoadComponent.parentDeleteById(file)
+							//进行提醒
+							this.$message.warning(decide.message)
+						}else{
+							invoiceReimbursements.forEach(item => {
+								if(item.number === data.InvoiceNumber) {
+									includeFlag = true;
+									item.invoiceType = data.InherentLabelGeneralOrSpecialVATLabelCode;
+									item.invoiceProjectName = data.IssuItemInformationItemName;
+									item.number = data.InvoiceNumber;
+									item.invoiceDate = data.IssueTime;
+									item.invoiceUnit = data.SellerInformationSellerName;
+									item.amount = data.BasicInformationTotalAmWithoutTax;
+									item.taxAmount = data.BasicInformationTotalTaxAm;
+									item.count = data.BasicInformationTotalTaxincludedAmount;
+									item.buyerName = data.BuyerInformationBuyerName;
+								}
+							})
+							//列表中未查到相同发票号
+							if(!includeFlag){
+								let value = {
+									invoiceType: data.InherentLabelGeneralOrSpecialVATLabelCode,
+									invoiceProjectName: data.IssuItemInformationItemName,
+									number: data.InvoiceNumber,
+									invoiceDate: data.IssueTime,
+									invoiceUnit: data.SellerInformationSellerName,
+									amount: data.BasicInformationTotalAmWithoutTax,
+									taxAmount: data.BasicInformationTotalTaxAm,
+									count: data.BasicInformationTotalTaxincludedAmount,
+									buyerName: data.BuyerInformationBuyerName,
+									remarks: ''
+								}
+								this.insertInvoiceReimbursementEvent('invoiceReimbursement',value)
 							}
-							this.insertInvoiceReimbursementEvent('invoiceReimbursement',value)
 						}
-					}
 
-				}).catch(() => {
-					this.$refs.inputForm.resetFields()
-					this.loading = false
-				})
+					}).catch(() => {
+						this.$refs.inputForm.resetFields()
+						this.loading = false
+					})
+				}
 
 		},
 		invoiceReimbursementDispose: function (data) {

+ 1 - 0
src/views/dashboard/widgets/components/TodoList.vue

@@ -298,6 +298,7 @@
 							query: {
 								wareHouseId: row.processDefinitionName === '物资管理-入库修改' ? data.businessId : '',
 								returnId: row.processDefinitionName === '物资管理-领用退回申请' ? data.businessId : '',
+								cwArchiveId: row.processDefinitionName === '会计-项目报告归档' ? data.businessId : '',
 								formTitle: `${row.vars.title}`,
 								title: `审批【${row.task.name || ""}】`,
 								cs: cs,

+ 1 - 1
src/views/finance/invoice/InvoiceList.vue

@@ -282,7 +282,7 @@
               <el-button v-if="hasPermission('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('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('finance:invoice:edit:invalid')&&scope.row.status === '5'||scope.row.status === '7'" text type="primary"  @click="invoiceInvalidPush(scope.row)">作废</el-button>-->
+              <el-button v-if="hasPermission('finance:invoice:edit:invalid')&&scope.row.status === '5'||scope.row.status === '7'" text type="primary"  @click="invoiceInvalidPush(scope.row)">作废</el-button>
               <el-button v-if="hasPermission('finance:invoice:edit:invalid')&&scope.row.status === '6'" text type="primary"  @click="invoiceInvalidReBack(scope.row)">作废撤回</el-button>
               <el-button v-if="scope.row.status==='6' && checkIsAuditInvalid(scope.row)" text type="primary"  @click="examineInvalid(scope.row)">作废审核</el-button>
               <el-button v-if="hasPermission('finance:invoice:edit:invalid')&&scope.row.status === '8'" text type="primary"  @click="adjustInvalid(scope.row)">驳回调整</el-button>

+ 1 - 1
src/views/flowable/task/ApplyList.vue

@@ -1,5 +1,5 @@
 <template>
-	<div class="page">
+	<div class="page" style="height: calc(100% - 80px);">
 		<el-form
 			:inline="true"
 			v-if="searchVisible"

+ 1 - 1
src/views/flowable/task/HistoryList.vue

@@ -1,5 +1,5 @@
 <template>
-	<div class="page">
+	<div class="page" style="height: calc(100% - 80px);">
 		<el-form
 			:inline="true"
 			v-if="searchVisible"

+ 62 - 0
src/views/flowable/task/TaskForm.vue

@@ -110,6 +110,36 @@
 					</vxe-column>
 				</vxe-table>
 			</el-tab-pane>
+
+			<el-tab-pane label="归档历史" v-if="commonJS.isNotEmpty(cwArchiveHiFlag)" name="form-cwArchive">
+				<vxe-table
+					ref="wareHouseTable"
+					border="inner"
+					size="small"
+					:key="222"
+					max-height="1000px"
+					class="vxe-table-element"
+					:data="cwArchiveDataListHiCollect">
+					<vxe-column type="seq" width="60" title="序号"></vxe-column>
+					<vxe-column min-width="160" align="center" title="归档发起人" field="userName"></vxe-column>
+					<vxe-column min-width="160" align="center" title="归档时间" field="auditDate"></vxe-column>
+					<vxe-column min-width="160" align="center" title="归档状态" field="status">
+						<template #default="scope">
+							<el-button @click="detail(scope.row)" effect="dark"
+									   :type="$dictUtils.getDictLabel('cw_status_flag', scope.row.status, '-')">
+								{{$dictUtils.getDictLabel("cw_status", scope.row.status, '-')}}
+							</el-button>
+						</template>
+					</vxe-column>
+					<vxe-column title="操作" width="150px" fixed="right" align="center">
+						<template  #default="scope">
+							<el-button type="text" size="small" @click="hiDetailCwArchive(scope.row)">归档详情</el-button>
+						</template>
+					</vxe-column>
+				</vxe-table>
+			</el-tab-pane>
+
+
 		</el-tabs>
 
 		<el-card
@@ -245,6 +275,7 @@
 		></user-select-dialog>
 		<CollectReturnHi ref="collectReturnHi"></CollectReturnHi>
 		<WareHouseHi ref="wareHouseHi"></WareHouseHi>
+		<ProjectReportArchiveForm ref="projectReportArchiveForm" ></ProjectReportArchiveForm>
 	</div>
 </template>
 
@@ -252,6 +283,7 @@
 // import FlowChart from '../modeler/FlowChart'
 import CollectReturnHi from '@/views/materialManagement/collect/CollectReturnHiForm'
 import WareHouseHi from '@/views/materialManagement/wareHouse/WareHouseHi'
+import ProjectReportArchiveForm from '@/views/cw/projectReportArchive/ProjectReportArchiveForm'
 import noticeService from '@/api/flowable/noticeService'
 import useTabs from "@/utils/useTabs";
 import UserSelect from "@/components/userSelect/index.vue";
@@ -269,12 +301,15 @@ import print2 from "@/utils/print.js";
 import { shallowRef } from 'vue'
 import CollectService from '@/api/materialManagement/CollectService'
 import WareHouseService from '@/api/materialManagement/WareHouseService'
+import ProjectReportArchiveService from '@/api/cw/projectRecords/ProjectReportArchiveService'
 export default {
 	collectService: null,
 	wareHouseService: null,
+	projectReportArchiveService: null,
 	beforeCreate () {
 		this.collectService = new CollectService()
 		this.wareHouseService = new WareHouseService()
+		this.projectReportArchiveService = new ProjectReportArchiveService()
 	},
 	activated() {
 		this.init();
@@ -370,6 +405,7 @@ export default {
 		FlowStep,
 		FlowTimeLine,
 		CollectReturnHi,
+		ProjectReportArchiveForm,
 		WareHouseHi
 	},
 	watch: {
@@ -421,6 +457,8 @@ export default {
 			this.contractTitle = this.$route.query.contractTitle
 			this.statusFlag = this.$route.query.statusFlag
 			this.wareHouseId = this.$route.query.wareHouseId
+			this.cwArchiveId = this.$route.query.cwArchiveId
+			this.cwArchiveHiFlag = ""
 			this.returnId = this.$route.query.returnId
 			if (this.commonJS.isEmpty(this.$route.query.isShow)) {
 				this.isShow = 'true'
@@ -442,6 +480,14 @@ export default {
 					console.log(e)
 				}
 			}, 500)
+			if (this.commonJS.isNotEmpty(this.cwArchiveId)) {
+				this.projectReportArchiveService.findHiById(this.cwArchiveId).then((data) => {
+					this.cwArchiveDataListHiCollect = data
+					if (this.commonJS.isNotEmpty(data)) {
+						this.cwArchiveHiFlag = true
+					}
+				})
+			}
 		},
 		cc(procInsId) {
 			if (this.isCC && this.auditForm.userIds) {
@@ -1559,6 +1605,19 @@ export default {
 					})
 				}
 			}
+			/*if (event.props.name === 'form-cwArchive') {
+				if (this.commonJS.isNotEmpty(this.cwArchiveId)) {
+					this.projectReportArchiveService.findHiById(this.cwArchiveId).then((data) => {
+						this.cwArchiveDataListHiCollect = data
+					})
+				}
+			}*/
+		},
+		// 打开财务归档修改历史详情页
+		hiDetailCwArchive (row) {
+			if (this.commonJS.isNotEmpty(row.id)) {
+				this.$refs.projectReportArchiveForm.init('view', row.id)
+			}
 		},
 		// 打开入库修改历史详情页
 		hiDetail (row) {
@@ -1613,9 +1672,12 @@ export default {
 			cUser: false,
 			loading: false,
 			wareHouseId: '',
+			cwArchiveId: '',
+			cwArchiveHiFlag: '',
 			returnId: '',
 			dataListHi: [],
 			dataListHiCollect: [],
+			cwArchiveDataListHiCollect: [],
 			recordType:''
 		};
 	},

+ 1 - 1
src/views/flowable/task/TodoList.vue

@@ -1,5 +1,5 @@
 <template>
-	<div class="page">
+	<div class="page" style="height: calc(100% - 80px);">
 		<el-form
 			:inline="true"
 			size="default"

+ 1 - 0
src/views/home/components/TodoList2.vue

@@ -192,6 +192,7 @@
 							path: "/flowable/task/TaskForm",
 							query: {
 								wareHouseId: row.processDefinitionName === '物资管理-入库修改' ? data.businessId : '',
+								cwArchiveId: row.processDefinitionName === '会计-项目报告归档' ? data.businessId : '',
 								returnId: row.processDefinitionName === '物资管理-领用退回申请' ? data.businessId : '',
 								formTitle: `${row.vars.title}`,
 								title: `审批【${row.task.name || ""}】`,

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

@@ -232,6 +232,7 @@
           </vxe-column>
         </vxe-table>
 
+
         <vxe-pager
           background
           size="small"

+ 21 - 11
src/views/reimbursement/info/InfoUpdateForm.vue

@@ -15,17 +15,19 @@
 				 label-width="120px" @submit.native.prevent>
 
 			<el-divider content-position="left"><i class="el-icon-document"></i> 基础信息</el-divider>
-			<el-row >
-				<el-col :span="12">
-					<el-form-item hidden label="报销项" prop="reimbursementType" :disabled="status === 'audit' || status === 'taskFormDetail'"
-								  :rules="[
-                        {required: true, message:'报销项不能为空', trigger:'blur'}
-               ]">
-						<el-radio v-model="inputForm.reimbursementType" v-for="item in $dictUtils.getDictList('reimbursement_type')" :label="item.value" style="margin-right: 20px">
-							{{item.label}}</el-radio>
-					</el-form-item>
-				</el-col>
-			</el-row>
+			<div v-if="isAdmin">
+				<el-row >
+					<el-col :span="12">
+						<el-form-item label="报销项" prop="reimbursementType" :disabled="status === 'audit' || status === 'taskFormDetail'"
+									  :rules="[
+							{required: true, message:'报销项不能为空', trigger:'blur'}
+				   ]">
+							<el-radio v-model="inputForm.reimbursementType" v-for="item in $dictUtils.getDictList('reimbursement_type')" :label="item.value" style="margin-right: 20px">
+								{{item.label}}</el-radio>
+						</el-form-item>
+					</el-col>
+				</el-row>
+			</div>
 			<el-row >
 				<el-col :span="12">
 					<el-form-item label="经办人" prop="userName">
@@ -866,6 +868,7 @@
 				method: '',
 				visible: false,
 				loading: false,
+				isAdmin: false,
 				indexRow: '',
 				detailKey: '',
 				detailKeyContract: '',
@@ -1010,6 +1013,7 @@
 				this.keyWatch = keyWatch
 			},
 			init (method, id) {
+				this.checkIsAdmin()
 				this.method = method
 				this.inputForm = {
 					id:'',
@@ -1113,6 +1117,12 @@
 					}
 				})
 			},
+			// 查询当前用户是否是管理员用户
+			checkIsAdmin () {
+				userService.is().then((data) => {
+					this.isAdmin = data
+				})
+			},
 			// 表单提交
 			doSubmit () {
 				this.$refs['inputForm'].validate((valid) => {

+ 50 - 40
src/views/reimbursement/info/ReimbursementForm.vue

@@ -1277,6 +1277,7 @@
 					this.amountKey = Math.random()
 				}
 				if (type === 'invoiceReimbursement') {
+					console.log("新增行操作2:")
 					let d = {}
 					if (this.commonJS.isEmpty(this.inputForm.invoiceReimbursements)) {
 						this.inputForm.invoiceReimbursements = []
@@ -1343,6 +1344,7 @@
 				}
 			},
 			insertInvoiceReimbursementEvent (type,value) {
+				console.log("新增行操作:",value)
 				if (type === 'invoiceReimbursement') {
 					if (this.commonJS.isEmpty(this.inputForm.invoiceReimbursements)) {
 						this.inputForm.invoiceReimbursements = []
@@ -2214,49 +2216,57 @@
 					if(!invoiceReimbursements) {
 						invoiceReimbursements = [];
 					}
-					this.reimbursementService.getEffectiveDataByInvoiceNumber(data.InvoiceNumber,this.inputForm.id).then((decide) => {
-						if(!decide.success){
-							//删除上传的附件信息
-							this.$refs.invoiceReimbursementUpLoadComponent.parentDeleteById(file)
-							//进行提醒
-							this.$message.warning(decide.message)
-						}else{
-							invoiceReimbursements.forEach(item => {
-								if(item.number === data.InvoiceNumber) {
-									includeFlag = true;
-									item.invoiceType = data.InherentLabelGeneralOrSpecialVATLabelCode;
-									item.invoiceProjectName = data.IssuItemInformationItemName;
-									item.number = data.InvoiceNumber;
-									item.invoiceDate = data.IssueTime;
-									item.invoiceUnit = data.SellerInformationSellerName;
-									item.amount = data.BasicInformationTotalAmWithoutTax;
-									item.taxAmount = data.BasicInformationTotalTaxAm;
-									item.count = data.BasicInformationTotalTaxincludedAmount;
-									item.buyerName = data.BuyerInformationBuyerName;
-								}
-							})
-							//列表中未查到相同发票号
-							if(!includeFlag){
-								let value = {
-									invoiceType: data.InherentLabelGeneralOrSpecialVATLabelCode,
-									invoiceProjectName: data.IssuItemInformationItemName,
-									number: data.InvoiceNumber,
-									invoiceDate: data.IssueTime,
-									invoiceUnit: data.SellerInformationSellerName,
-									amount: data.BasicInformationTotalAmWithoutTax,
-									taxAmount: data.BasicInformationTotalTaxAm,
-									count: data.BasicInformationTotalTaxincludedAmount,
-									buyerName: data.BuyerInformationBuyerName,
-									remarks: ''
+					if("江苏兴光资产评估有限公司" !== data.BuyerInformationBuyerName){
+						//删除上传的附件信息
+						this.$refs.invoiceReimbursementUpLoadComponent.parentDeleteById(file)
+						//进行提醒
+						this.$message.warning("仅可上传江苏兴光资产评估有限公司的报销数电发票")
+					}else{
+						this.reimbursementService.getEffectiveDataByInvoiceNumber(data.InvoiceNumber,this.inputForm.id).then((decide) => {
+							if(!decide.success){
+								//删除上传的附件信息
+								this.$refs.invoiceReimbursementUpLoadComponent.parentDeleteById(file)
+								//进行提醒
+								this.$message.warning(decide.message)
+							}else{
+								invoiceReimbursements.forEach(item => {
+									if(item.number === data.InvoiceNumber) {
+										includeFlag = true;
+										item.invoiceType = data.InherentLabelGeneralOrSpecialVATLabelCode;
+										item.invoiceProjectName = data.IssuItemInformationItemName;
+										item.number = data.InvoiceNumber;
+										item.invoiceDate = data.IssueTime;
+										item.invoiceUnit = data.SellerInformationSellerName;
+										item.amount = data.BasicInformationTotalAmWithoutTax;
+										item.taxAmount = data.BasicInformationTotalTaxAm;
+										item.count = data.BasicInformationTotalTaxincludedAmount;
+										item.buyerName = data.BuyerInformationBuyerName;
+									}
+								})
+								//列表中未查到相同发票号
+								if(!includeFlag){
+									let value = {
+										invoiceType: data.InherentLabelGeneralOrSpecialVATLabelCode,
+										invoiceProjectName: data.IssuItemInformationItemName,
+										number: data.InvoiceNumber,
+										invoiceDate: data.IssueTime,
+										invoiceUnit: data.SellerInformationSellerName,
+										amount: data.BasicInformationTotalAmWithoutTax,
+										taxAmount: data.BasicInformationTotalTaxAm,
+										count: data.BasicInformationTotalTaxincludedAmount,
+										buyerName: data.BuyerInformationBuyerName,
+										remarks: ''
+									}
+									this.insertInvoiceReimbursementEvent('invoiceReimbursement',value)
 								}
-								this.insertInvoiceReimbursementEvent('invoiceReimbursement',value)
 							}
-						}
 
-					}).catch(() => {
-						this.$refs.inputForm.resetFields()
-						this.loading = false
-					})
+						}).catch(() => {
+							this.$refs.inputForm.resetFields()
+							this.loading = false
+						})
+					}
+
 
 			},
 			invoiceReimbursementDispose: function (data) {

+ 3 - 3
src/views/sys/dashboard/workBench/PendingList.vue

@@ -1,20 +1,20 @@
 <template>
 	<div class="el-scrollbar__wrap wrap-white padding-20">
 		<el-tabs v-model="activeName">
-			<el-tab-pane label="待办事项" name="todoList" style="height: calc(100vh - 210px)" lazy>
+			<el-tab-pane label="待办事项" name="todoList" style="height: calc(100vh - 150px)" lazy>
 				<todo-list
 					i="todoList"
 					:index="activeName"
 					:num="num"
 				/>
 			</el-tab-pane>
-			<el-tab-pane label="已办" name="historyList" style="height: calc(100vh - 210px)" lazy>
+			<el-tab-pane label="已办" name="historyList" style="height: calc(100vh - 150px)" lazy>
 				<history-list
 					i="historyList"
 					:index="activeName"
 				/>
 			</el-tab-pane>
-			<el-tab-pane label="我发起的" name="applyList" style="height: calc(100vh - 210px)" lazy>
+			<el-tab-pane label="我发起的" name="applyList" style="height: calc(100vh - 150px)" lazy>
 				<apply-list
 					i="applyList"
 					:index="activeName"

+ 5 - 0
src/views/zs/reimbursement/info/InfoForm.vue

@@ -623,6 +623,11 @@
 								  <el-input maxlength="50" readonly="true" v-model="scope.row.invoiceUnit" ></el-input>
 							  </template>
 						  </vxe-table-column>
+						  <vxe-table-column field="buyerName" title="购买方名称" :edit-render="{}" show-overflow="title">
+							  <template #edit="scope">
+								  <el-input maxlength="50" readonly="true" v-model="scope.row.buyerName" ></el-input>
+							  </template>
+						  </vxe-table-column>
 						  <vxe-table-column field="amount" title="金额" :edit-render="{}" show-overflow="title">
 							  <template #edit="scope">
 								  <el-input maxlength="15" readonly="true" v-model="scope.row.amount" @input="scope.row.amount = twoDecimalPlaces(scope.row.amount)" @change="countAmount(scope.row)"></el-input>

+ 21 - 11
src/views/zs/reimbursement/info/InfoUpdateForm.vue

@@ -15,17 +15,19 @@
              label-width="100px" @submit.native.prevent>
 
       <el-divider content-position="left"><i class="el-icon-document"></i> 基础信息</el-divider>
-		<el-row >
-			<el-col :span="12">
-				<el-form-item hidden label="报销项" prop="reimbursementType" :disabled="status === 'audit' || status === 'taskFormDetail'"
-							  :rules="[
-                        {required: true, message:'报销项不能为空', trigger:'blur'}
-               ]">
-					<el-radio v-model="inputForm.reimbursementType" v-for="item in $dictUtils.getDictList('reimbursement_type')" :label="item.value" style="margin-right: 20px">
-						{{item.label}}</el-radio>
-				</el-form-item>
-			</el-col>
-		</el-row>
+		<div v-if="isAdmin">
+			<el-row >
+				<el-col :span="12">
+					<el-form-item label="报销项" prop="reimbursementType" :disabled="status === 'audit' || status === 'taskFormDetail'"
+								  :rules="[
+							{required: true, message:'报销项不能为空', trigger:'blur'}
+				   ]">
+						<el-radio v-model="inputForm.reimbursementType" v-for="item in $dictUtils.getDictList('reimbursement_type')" :label="item.value" style="margin-right: 20px">
+							{{item.label}}</el-radio>
+					</el-form-item>
+				</el-col>
+			</el-row>
+		</div>
       <el-row :gutter="26">
         <el-col :span="12">
           <el-form-item label="经办人" prop="userName">
@@ -792,6 +794,7 @@
         method: '',
         visible: false,
         loading: false,
+		  isAdmin: false,
         indexRow: '',
         detailKey: '',
         detailKeyContract: '',
@@ -914,6 +917,7 @@
       getUpload () {
       },
       init (method, id) {
+		  this.checkIsAdmin()
         this.method = method
         this.inputForm = {
 			reimbursementType: '0',
@@ -1003,6 +1007,12 @@
 			}
         })
       },
+		// 查询当前用户是否是管理员用户
+		checkIsAdmin () {
+			userService.is().then((data) => {
+				this.isAdmin = data
+			})
+		},
       // 表单提交
       doSubmit () {
         this.$refs['inputForm'].validate((valid) => {

+ 48 - 40
src/views/zs/reimbursement/info/ReimbursementForm.vue

@@ -2069,49 +2069,57 @@
 			if(!invoiceReimbursements) {
 				invoiceReimbursements = [];
 			}
-			this.reimbursementService.getEffectiveDataByInvoiceNumber(data.InvoiceNumber,this.inputForm.id).then((decide) => {
-				if(!decide.success){
-					//删除上传的附件信息
-					this.$refs.invoiceReimbursementUpLoadComponent.parentDeleteById(file)
-					//进行提醒
-					this.$message.warning(decide.message)
-				}else{
-					invoiceReimbursements.forEach(item => {
-						if(item.number === data.InvoiceNumber) {
-							includeFlag = true;
-							item.invoiceType = data.InherentLabelGeneralOrSpecialVATLabelCode;
-							item.invoiceProjectName = data.IssuItemInformationItemName;
-							item.number = data.InvoiceNumber;
-							item.invoiceDate = data.IssueTime;
-							item.invoiceUnit = data.SellerInformationSellerName;
-							item.amount = data.BasicInformationTotalAmWithoutTax;
-							item.taxAmount = data.BasicInformationTotalTaxAm;
-							item.count = data.BasicInformationTotalTaxincludedAmount;
-							item.buyerName = data.BuyerInformationBuyerName;
+			if("中审众环会计师事务所(特殊普通合伙)江苏分所" !== data.BuyerInformationBuyerName){
+				//删除上传的附件信息
+				this.$refs.invoiceReimbursementUpLoadComponent.parentDeleteById(file)
+				//进行提醒
+				this.$message.warning("仅可上传中审众环会计师事务所(特殊普通合伙)江苏分所的报销数电发票")
+			}else{
+				this.reimbursementService.getEffectiveDataByInvoiceNumber(data.InvoiceNumber,this.inputForm.id).then((decide) => {
+					if(!decide.success){
+						//删除上传的附件信息
+						this.$refs.invoiceReimbursementUpLoadComponent.parentDeleteById(file)
+						//进行提醒
+						this.$message.warning(decide.message)
+					}else{
+						invoiceReimbursements.forEach(item => {
+							if(item.number === data.InvoiceNumber) {
+								includeFlag = true;
+								item.invoiceType = data.InherentLabelGeneralOrSpecialVATLabelCode;
+								item.invoiceProjectName = data.IssuItemInformationItemName;
+								item.number = data.InvoiceNumber;
+								item.invoiceDate = data.IssueTime;
+								item.invoiceUnit = data.SellerInformationSellerName;
+								item.amount = data.BasicInformationTotalAmWithoutTax;
+								item.taxAmount = data.BasicInformationTotalTaxAm;
+								item.count = data.BasicInformationTotalTaxincludedAmount;
+								item.buyerName = data.BuyerInformationBuyerName;
+							}
+						})
+						//列表中未查到相同发票号
+						if(!includeFlag){
+							let value = {
+								invoiceType: data.InherentLabelGeneralOrSpecialVATLabelCode,
+								invoiceProjectName: data.IssuItemInformationItemName,
+								number: data.InvoiceNumber,
+								invoiceDate: data.IssueTime,
+								invoiceUnit: data.SellerInformationSellerName,
+								amount: data.BasicInformationTotalAmWithoutTax,
+								taxAmount: data.BasicInformationTotalTaxAm,
+								count: data.BasicInformationTotalTaxincludedAmount,
+								buyerName: data.BuyerInformationBuyerName,
+								remarks: ''
+							}
+							this.insertInvoiceReimbursementEvent('invoiceReimbursement',value)
 						}
-					})
-					//列表中未查到相同发票号
-					if(!includeFlag){
-						let value = {
-							invoiceType: data.InherentLabelGeneralOrSpecialVATLabelCode,
-							invoiceProjectName: data.IssuItemInformationItemName,
-							number: data.InvoiceNumber,
-							invoiceDate: data.IssueTime,
-							invoiceUnit: data.SellerInformationSellerName,
-							amount: data.BasicInformationTotalAmWithoutTax,
-							taxAmount: data.BasicInformationTotalTaxAm,
-							count: data.BasicInformationTotalTaxincludedAmount,
-							buyerName: data.BuyerInformationBuyerName,
-							remarks: ''
-						}
-						this.insertInvoiceReimbursementEvent('invoiceReimbursement',value)
 					}
-				}
 
-			}).catch(() => {
-				this.$refs.inputForm.resetFields()
-				this.loading = false
-			})
+				}).catch(() => {
+					this.$refs.inputForm.resetFields()
+					this.loading = false
+				})
+			}
+
 
 		},
 		invoiceReimbursementDispose: function (data) {