From 151122a373835c93ef1418c7db0985c0660acf7e Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期一, 28 八月 2023 18:08:58 +0800 Subject: [PATCH] 11 --- src/store/modules/user.js | 7 src/views/login.vue | 2 src/views/project/fund/applyDetail/index.vue | 749 +++++++++++++++++++++++++++++++++++++++++----------- src/views/project/travelexpenseapply/travelexpensedetail/index.vue | 51 +++ README.md | 4 5 files changed, 638 insertions(+), 175 deletions(-) diff --git a/README.md b/README.md index a857617..19ff2bb 100644 --- a/README.md +++ b/README.md @@ -26,5 +26,5 @@ npm run build:stage # 鏋勫缓鐢熶骇鐜 -npm run build:prod -``` \ No newline at end of file +npm run build +``` diff --git a/src/store/modules/user.js b/src/store/modules/user.js index 60821f0..0839e52 100644 --- a/src/store/modules/user.js +++ b/src/store/modules/user.js @@ -1,5 +1,7 @@ import { login, logout, getInfo } from '@/api/login' import { getToken, setToken, removeToken } from '@/utils/auth' +import { Message } from 'element-ui' + const user = { state: { @@ -42,6 +44,11 @@ resolve() }).catch(error => { reject(error) + // this.$message.error('鐧婚檰淇℃伅閿欒璇烽噸璇�'); + Message({ + message: '鐧婚檰澶辫触', + type: 'error' + }) }) }) }, diff --git a/src/views/login.vue b/src/views/login.vue index 40d3760..e4dc2b8 100644 --- a/src/views/login.vue +++ b/src/views/login.vue @@ -187,7 +187,7 @@ }) .catch(() => { this.loading = false; - this.$message.error("鐧婚檰澶辫触璇烽噸璇曘��"); + // this.$message.error("鐧婚檰澶辫触璇烽噸璇曘��"); if (this.captchaOnOff) { this.getCode(); } diff --git a/src/views/project/fund/applyDetail/index.vue b/src/views/project/fund/applyDetail/index.vue index 09b6479..0f760c4 100644 --- a/src/views/project/fund/applyDetail/index.vue +++ b/src/views/project/fund/applyDetail/index.vue @@ -7,28 +7,53 @@ <el-row> <el-col :span="5"> <el-form-item label="鐢宠鏃ユ湡" prop="createTime"> - <el-date-picker clearable style="width: 100%" v-model="form.createTime" type="date" - value-format="yyyy-MM-dd HH:mm:ss" placeholder="鐢宠鏃ユ湡"> + <el-date-picker + clearable + style="width: 100%" + v-model="form.createTime" + type="date" + value-format="yyyy-MM-dd HH:mm:ss" + placeholder="鐢宠鏃ユ湡" + > </el-date-picker> </el-form-item> </el-col> <el-col :span="5"> <el-form-item label="缁忓姙浜�" prop="username"> - <el-select v-model="form.username" placeholder="鐢宠浜�" clearable filterable allow-create style="width: 100%" - @change="getUserAccount"> - <el-option v-for="dict in userlist" :key="dict.index" :label="dict.nickname" - :value="dict.nickname"></el-option> + <el-select + v-model="form.username" + placeholder="鐢宠浜�" + clearable + filterable + allow-create + style="width: 100%" + @change="getUserAccount" + > + <el-option + v-for="dict in userlist" + :key="dict.index" + :label="dict.nickname" + :value="dict.nickname" + ></el-option> </el-select> </el-form-item> </el-col> <el-col :span="5"> <el-form-item label="鎵�灞炵粍鍒�" prop="deptmentname"> - <el-input v-model="form.deptmentname" placeholder="璇疯緭鍏ユ墍灞炵粍鍒�" clearable /> + <el-input + v-model="form.deptmentname" + placeholder="璇疯緭鍏ユ墍灞炵粍鍒�" + clearable + /> </el-form-item> </el-col> <el-col :span="5"> <el-form-item label="缁勯暱" prop="managername"> - <el-input v-model="form.managername" placeholder="璇疯緭鍏ョ粍闀�" clearable /> + <el-input + v-model="form.managername" + placeholder="璇疯緭鍏ョ粍闀�" + clearable + /> </el-form-item> </el-col> </el-row> @@ -50,9 +75,13 @@ <el-col :span="5"> <el-form-item label="閾惰鍚嶇О" prop="bankname"> <el-input v-model="form.bankname" placeholder="璇疯緭鍏ラ摱琛屽悕绉�" /> - </el-form-item> </el-col><el-col :span="5"> + </el-form-item> </el-col + ><el-col :span="5"> <el-form-item label="閾惰璐﹀彿" prop="bankcardno"> - <el-input v-model="form.bankcardno" placeholder="璇疯緭鍏ラ摱琛岃处鍙�" /> + <el-input + v-model="form.bankcardno" + placeholder="璇疯緭鍏ラ摱琛岃处鍙�" + /> </el-form-item> </el-col> <el-col :span="5"> @@ -71,7 +100,11 @@ --> <el-col :span="5"> <el-form-item label="鐢宠閲戦" prop="pretaxcost"> - <el-input v-model="form.pretaxcost" placeholder="绋庡墠閲戦鍚堣" :disabled="true" /> + <el-input + v-model="form.pretaxcost" + placeholder="绋庡墠閲戦鍚堣" + :disabled="true" + /> </el-form-item> </el-col> <!-- @@ -92,7 +125,11 @@ </el-col> <el-col :span="5"> <el-form-item label="鎹愮尞鑰�" prop="name"> - <el-input :disabled="true" v-model="form.donorname" placeholder="璇疯緭鍏ユ崘鐚�呭鍚�" /> + <el-input + :disabled="true" + v-model="form.donorname" + placeholder="璇疯緭鍏ユ崘鐚�呭鍚�" + /> </el-form-item> </el-col> <!-- @@ -108,14 +145,28 @@ <el-row style="margin-top: 5px; margin-bottom: 5px" /> <el-row style="margin-bottom: 10px" v-if="businessType == '1'"> <el-col :span="4"> - <el-button @click.native.prevent="importFeeItems" type="primary" size="small"> + <el-button + @click.native.prevent="importFeeItems" + type="primary" + size="small" + > 瀵煎叆鏈嶅姟椤圭洰 </el-button> </el-col> </el-row> <el-row> - <el-table :data="rbDetails" v-loading="loading" border highlight-current-row> - <el-table-column prop="orderno" align="center" label="搴忓彿" width="65"> + <el-table + :data="rbDetails" + v-loading="loading" + border + highlight-current-row + > + <el-table-column + prop="orderno" + align="center" + label="搴忓彿" + width="65" + > <template slot-scope="scope"> <el-input v-model="scope.row.orderno" placeholder="搴忓彿" /> </template> @@ -124,53 +175,124 @@ <el-table-column prop="itemcode" align="center" label="椤圭洰缂栧彿" show-overflow-tooltip="" v-if="form.applytype == '1'"> </el-table-column>--> - <el-table-column prop="applytype" align="center" label="鏈嶅姟绫诲瀷" width="200"> + <el-table-column + prop="applytype" + align="center" + label="鏈嶅姟绫诲瀷" + width="200" + > <template slot-scope="scope"> - <el-select v-model="scope.row.applytype" placeholder="鏈嶅姟绫诲瀷" @change="verifyFeeItemType(scope.row)"> - <el-option v-for="dict in rowfeeItemTypes" :key="dict.index" :label="dict.label" - :value="dict.value"></el-option> + <el-select + v-model="scope.row.applytype" + placeholder="鏈嶅姟绫诲瀷" + @change="verifyFeeItemType(scope.row)" + > + <el-option + v-for="dict in rowfeeItemTypes" + :key="dict.index" + :label="dict.label" + :value="dict.value" + ></el-option> </el-select> </template> </el-table-column> - <el-table-column prop="itemid" align="center" label="鏈嶅姟椤圭洰" width="260"> + <el-table-column + prop="itemid" + align="center" + label="鏈嶅姟椤圭洰" + width="260" + > <template slot-scope="scope"> - <el-select v-model="scope.row.itemid" placeholder="鏈嶅姟椤圭洰" filterable @change="verifyFeeItem(scope.row)" - :filter-method="val => searchItemType(val, scope)"> - <el-option v-for="dict in scope.row.itemlist" :key="dict.index" :label="dict.itemName" - :value="dict.id"></el-option> + <el-select + v-model="scope.row.itemid" + placeholder="鏈嶅姟椤圭洰" + filterable + @change="verifyFeeItem(scope.row)" + :filter-method="val => searchItemType(val, scope)" + > + <el-option + v-for="dict in scope.row.itemlist" + :key="dict.index" + :label="dict.itemName" + :value="dict.id" + ></el-option> </el-select> </template> </el-table-column> - <el-table-column prop="servicesscope" align="center" label="鏈嶅姟璇存槑" v-if="form.applytype == '1'" width="180"> + <el-table-column + prop="servicesscope" + align="center" + label="鏈嶅姟璇存槑" + v-if="form.applytype == '1'" + width="180" + > <template slot-scope="scope"> - <el-select v-model="scope.row.servicesscope" placeholder="鏈嶅姟璇存槑" clearable allow-create filterable - @change="verifyFeeRemark(scope.row)"> - <el-option v-for="dict in scope.row.rowfeeblocks" :key="dict.servicesscope" :label="dict.remark" - :value="dict.servicesscope"></el-option> + <el-select + v-model="scope.row.servicesscope" + placeholder="鏈嶅姟璇存槑" + clearable + allow-create + @change="verifyFeeRemark(scope.row)" + > + <el-option + v-for="dict in scope.row.rowfeeblocks" + :key="dict.servicesscope" + :label="dict.remark" + :value="dict.servicesscope" + ></el-option> </el-select> </template> </el-table-column> - <el-table-column prop="price" align="center" label="鍗曚环" width="120" v-if="businessType == 4"> + <el-table-column + prop="price" + align="center" + label="鍗曚环" + width="120" + v-if="businessType == 4" + > <template slot-scope="scope"> - <el-input v-model="scope.row.price" placeholder="鍗曚环" @blur="val => { - sumTotalFee(scope.row); - } - " /> + <el-input + v-model="scope.row.price" + placeholder="鍗曚环" + @blur=" + val => { + sumTotalFee(scope.row); + } + " + /> </template> </el-table-column> - <el-table-column prop="quantity" align="center" label="鏁伴噺" width="120" v-if="businessType == 4"> + <el-table-column + prop="quantity" + align="center" + label="鏁伴噺" + width="120" + v-if="businessType == 4" + > <template slot-scope="scope"> - <el-input v-model="scope.row.quantity" placeholder="鏁伴噺" @blur="val => { - sumTotalFee(scope.row); - } - " /> + <el-input + v-model="scope.row.quantity" + placeholder="鏁伴噺" + @blur=" + val => { + sumTotalFee(scope.row); + } + " + /> </template> </el-table-column> - <el-table-column v-if="businessType == 2 || - businessType == 3 || - businessType == 4 || - ismanager == true - " prop="amount" align="center" :label="amountLabel" width="120"> + <el-table-column + v-if=" + businessType == 2 || + businessType == 3 || + businessType == 4 || + ismanager == true + " + prop="amount" + align="center" + :label="amountLabel" + width="120" + > <template slot-scope="scope"> <!-- <el-select v-model="scope.row.amount" placeholder="绋庡墠閲戦" clearable filterable allow-create @@ -182,18 +304,37 @@ <el-input v-model="scope.row.amount" placeholder="閲戦" /> </template> </el-table-column> - <el-table-column prop="taxedamount" align="center" label="绋庡悗閲戦" width="120" v-if="(this.ismanager == true) & - (form.applytype == '1' || form.applytype == '2') - "> + <el-table-column + prop="taxedamount" + align="center" + label="绋庡悗閲戦" + width="120" + v-if=" + (this.ismanager == true) & + (form.applytype == '1' || form.applytype == '2') + " + > <template slot-scope="scope"> - <el-input v-model="scope.row.taxedamount" placeholder="绋庡悗閲戦" /> + <el-input + v-model="scope.row.taxedamount" + placeholder="绋庡悗閲戦" + /> </template> </el-table-column> - <el-table-column prop="beneficiaryname" align="center" label="濮撳悕" width="120" - v-if="form.applytype == '1' || form.applytype == '2'"> + <el-table-column + prop="beneficiaryname" + align="center" + label="濮撳悕" + width="120" + v-if="form.applytype == '1' || form.applytype == '2'" + > <template slot-scope="scope"> - <el-button type="primary" plain @click="ShowDetailDialog(scope, 'expert')">{{ scope.row.beneficiaryname - }}</el-button> + <el-button + type="primary" + plain + @click="ShowDetailDialog(scope, 'expert')" + >{{ scope.row.beneficiaryname }}</el-button + > <!-- <el-select filterable allow-create @@ -213,10 +354,19 @@ </el-select> --> </template> </el-table-column> - <el-table-column prop="unitno" align="center" label="鍗曚綅鍚嶇О" width="250"> + <el-table-column + prop="unitno" + align="center" + label="鍗曚綅鍚嶇О" + width="250" + > <template slot-scope="scope"> - <el-button type="primary" plain @click="ShowDetailDialog(scope, 'unit')">{{ scope.row.unitname - }}</el-button> + <el-button + type="primary" + plain + @click="ShowDetailDialog(scope, 'unit')" + >{{ scope.row.unitname }}</el-button + > <!-- <el-select v-model="scope.row.unitno" placeholder="鍗曚綅" @@ -233,26 +383,54 @@ </el-select> --> </template> </el-table-column> - <el-table-column prop="title" align="center" label="鑱岀О" width="120" - v-if="form.applytype == '1' || form.applytype == '2'"> + <el-table-column + prop="title" + align="center" + label="鑱岀О" + width="120" + v-if="form.applytype == '1' || form.applytype == '2'" + > <template slot-scope="scope"> <el-input v-model="scope.row.title" placeholder="鑱岀О" /> </template> </el-table-column> - <el-table-column prop="idcardno" align="center" label="韬唤璇佸彿" width="200" - v-if="form.applytype == '1' || form.applytype == '2'"> + <el-table-column + prop="idcardno" + align="center" + label="韬唤璇佸彿" + width="200" + v-if="form.applytype == '1' || form.applytype == '2'" + > <template slot-scope="scope"> <el-input v-model="scope.row.idcardno" placeholder="韬唤璇佸彿" /> </template> </el-table-column> - <el-table-column prop="depositbank" align="center" label="寮�鎴烽摱琛�" width="200" v-if="form.applytype != '4'"> + <el-table-column + prop="depositbank" + align="center" + label="寮�鎴烽摱琛�" + width="200" + v-if="form.applytype != '4'" + > <template slot-scope="scope"> - <el-input v-model="scope.row.depositbank" placeholder="寮�鎴烽摱琛�" /> + <el-input + v-model="scope.row.depositbank" + placeholder="寮�鎴烽摱琛�" + /> </template> </el-table-column> - <el-table-column prop="bankcardno" align="center" label="閾惰甯愬彿" width="210" v-if="form.applytype != '4'"> + <el-table-column + prop="bankcardno" + align="center" + label="閾惰甯愬彿" + width="210" + v-if="form.applytype != '4'" + > <template slot-scope="scope"> - <el-input v-model="scope.row.bankcardno" placeholder="閾惰甯愬彿" /> + <el-input + v-model="scope.row.bankcardno" + placeholder="閾惰甯愬彿" + /> </template> </el-table-column> <el-table-column prop="remark" align="center" label="澶囨敞"> @@ -260,18 +438,47 @@ <el-input v-model="scope.row.remark" placeholder="澶囨敞" /> </template> </el-table-column> - <el-table-column fixed="right" align="center" label="鎿嶄綔" width="180"> + <el-table-column + fixed="right" + align="center" + label="鎿嶄綔" + width="180" + > <template slot-scope="scope"> - <el-button type="text" size="mini" @click="addRow(scope.$index)" - v-if="operationType == 'add' || operationType == 'update'">鏂板</el-button> - <el-button @click.native.prevent=" - deleteRows(scope.row, scope.$index, rbDetails) - " type="text" size="small" v-if="operationType == 'add' || operationType == 'update'"> + <el-button + type="text" + size="mini" + @click="addRow(scope.$index)" + v-if=" + operationType == 'add' || + operationType == 'update' || + operationType == 'check' + " + >鏂板</el-button + > + <el-button + @click.native.prevent=" + deleteRows(scope.row, scope.$index, rbDetails) + " + type="text" + size="small" + v-if=" + operationType == 'add' || + operationType == 'update' || + operationType == 'check' + " + > 鍒犻櫎 </el-button> - <el-button @click.native.prevent=" - Filepopup(scope.$index, rbDetails, scope.row) - " type="text" size="small" v-if="businessType == 3 || businessType == 4">绁ㄦ嵁</el-button> + <el-button + @click.native.prevent=" + Filepopup(scope.$index, rbDetails, scope.row) + " + type="text" + size="small" + v-if="businessType == 3 || businessType == 4" + >绁ㄦ嵁</el-button + > </template> </el-table-column> </el-table> @@ -319,31 +526,77 @@ --> <el-row> <el-col :span="12"> - <el-form-item label="璐圭敤鐢宠闄勪欢" align="left" prop="annexbankcard" v-if="businessType == 0"> - <el-upload size="mini" class="upload-demo" :action="uploadFileUrl" :file-list="fileList" multiple - :limit="20" :headers="headers" :on-success="(response, file, fileList) => - uploadSccess(response, file, fileList) - " :on-preview="downFile" :disabled="operationType == 'detail'" :on-error="handleUploadError" - :on-exceed="handleExceed" :on-remove="remove" accept="image/*,.pdf"> - <el-button :disabled="operationType == 'detail'" size="small" type="primary">涓婁紶绁ㄦ嵁</el-button> + <el-form-item + label="璐圭敤鐢宠闄勪欢" + align="left" + prop="annexbankcard" + v-if="businessType == 0" + > + <el-upload + size="mini" + class="upload-demo" + :action="uploadFileUrl" + :file-list="fileList" + multiple + :limit="20" + :headers="headers" + :on-success=" + (response, file, fileList) => + uploadSccess(response, file, fileList) + " + :on-preview="downFile" + :disabled="operationType == 'detail'" + :on-error="handleUploadError" + :on-exceed="handleExceed" + :on-remove="remove" + accept="image/*,.pdf" + > + <el-button + :disabled="operationType == 'detail'" + size="small" + type="primary" + >涓婁紶绁ㄦ嵁</el-button + > </el-upload> </el-form-item> </el-col> </el-row> <el-row v-if="operationType == 'detail' || operationType == 'check'"> <el-table :data="fundflowList" border> - <el-table-column label="瀹℃牳鏃ユ湡" align="center" width="160" prop="createTime" /> - <el-table-column label="瀹℃牳浜�" align="center" width="120" prop="checkusername" /> - <el-table-column label="瀹℃牳缁撴灉" align="center" width="200" prop="flowconclusion"> + <el-table-column + label="瀹℃牳鏃ユ湡" + align="center" + width="160" + prop="createTime" + /> + <el-table-column + label="瀹℃牳浜�" + align="center" + width="120" + prop="checkusername" + /> + <el-table-column + label="瀹℃牳缁撴灉" + align="center" + width="200" + prop="flowconclusion" + > <template slot-scope="scope"> <span v-if="scope.row.flowconclusion == 1">閫氳繃</span> <span v-if="scope.row.flowconclusion == 2">涓嶉�氳繃</span> </template> </el-table-column> - <el-table-column label="瀹℃牳澶囨敞" align="center" prop="flowcontent" /> + <el-table-column + label="瀹℃牳澶囨敞" + align="center" + prop="flowcontent" + /> </el-table> </el-row> - <el-row style="margin-top: 25px; margin-bottom: 5px" v-if="operationType == 'check'"> + <el-row + style="margin-top: 25px; margin-bottom: 5px" + v-if="operationType == 'check'" + > <el-col :span="7"> <el-form-item label="瀹℃牳缁撴灉" align="left"> <el-radio-group v-model="checkObj.flowlevelone" align="left"> @@ -362,15 +615,34 @@ </el-row> </el-form> <div slot="footer" class="dialog-footer"> - <el-button type="primary" @click="submitForm" - v-if="operationType == 'add' || operationType == 'update'">鎻愪氦淇濆瓨</el-button> - <el-button type="primary" @click="checksubmit" v-if="operationType == 'check'">鎻愪氦瀹℃牳</el-button> + <el-button + type="primary" + @click="submitForm" + v-if=" + operationType == 'add' || + operationType == 'update' || + operationType == 'check' + " + >鎻愪氦淇濆瓨</el-button + > + <el-button + type="primary" + @click="checksubmit" + v-if="operationType == 'check'" + >鎻愪氦瀹℃牳</el-button + > <el-button @click="cancel">鍏� 闂�</el-button> </div> </div> - <el-dialog :visible.sync="showSelectionDialog" :close-on-click-modal="false" :title="'鍗曚綅/涓撳淇℃伅閫夋嫨'" width="500px" - style="text-align: center" v-loading="loading"> + <el-dialog + :visible.sync="showSelectionDialog" + :close-on-click-modal="false" + :title="'鍗曚綅/涓撳淇℃伅閫夋嫨'" + width="500px" + style="text-align: center" + v-loading="loading" + > <el-form ref="funddetailForm" :model="funddetailForm"> <el-row> <el-col :span="24" v-if="selectionType == 'expert'"> @@ -381,29 +653,77 @@ </el-radio-group> </el-form-item> </el-col> - <el-col :span="24" v-if="selectionType == 'expert' && expertfrom == '1'"> - <el-form-item label="涓撳濮撳悕" prop="beneficiaryname" label-width="80px"> - <el-select filterable allow-create ref="beneficiaryname" default-first-option - v-model="funddetailForm.beneficiaryname" placeholder="璇烽�夋嫨" style="width: 100%"> - <el-option v-for="item in expertlist" :key="item.expertNo" :label="item.exportName" - :value="item.exportName"> + <el-col + :span="24" + v-if="selectionType == 'expert' && expertfrom == '1'" + > + <el-form-item + label="涓撳濮撳悕" + prop="beneficiaryname" + label-width="80px" + > + <el-select + filterable + allow-create + ref="beneficiaryname" + default-first-option + v-model="funddetailForm.beneficiaryname" + placeholder="璇烽�夋嫨" + style="width: 100%" + > + <el-option + v-for="item in expertlist" + :key="item.expertNo" + :label="item.exportName" + :value="item.exportName" + > </el-option> </el-select> </el-form-item> </el-col> <el-col :span="24" v-if="selectionType == 'unit'"> - <el-form-item label="鍗曚綅鍚嶇О" prop="unitno" label-width="120px" v-if="businessType == 1 || businessType == 2"> - <el-select v-model="funddetailForm.unitno" placeholder="鍗曚綅鍚嶇О" clearable filterable allow-create - style="width: 100%"> - <el-option v-for="(spec, index) in unitList" :key="index" :label="spec.organizationname" - :value="spec.organizationid"></el-option> + <el-form-item + label="鍗曚綅鍚嶇О" + prop="unitno" + label-width="120px" + v-if="businessType == 1 || businessType == 2" + > + <el-select + v-model="funddetailForm.unitno" + placeholder="鍗曚綅鍚嶇О" + clearable + filterable + allow-create + style="width: 100%" + > + <el-option + v-for="(spec, index) in unitList" + :key="index" + :label="spec.organizationname" + :value="spec.organizationid" + ></el-option> </el-select> </el-form-item> - <el-form-item label="鍙戠エ鍗曚綅鍚嶇О" prop="unitno" label-width="120px" v-if="businessType == 3 || businessType == 4"> - <el-select v-model="funddetailForm.unitno" placeholder="鍗曚綅鍚嶇О" clearable filterable allow-create - style="width: 100%"> - <el-option v-for="(item, index) in feeUnitList" :key="index" :label="item.reportName" - :value="item.reportNo"></el-option> + <el-form-item + label="鍙戠エ鍗曚綅鍚嶇О" + prop="unitno" + label-width="120px" + v-if="businessType == 3 || businessType == 4" + > + <el-select + v-model="funddetailForm.unitno" + placeholder="鍗曚綅鍚嶇О" + clearable + filterable + allow-create + style="width: 100%" + > + <el-option + v-for="(item, index) in feeUnitList" + :key="index" + :label="item.reportName" + :value="item.reportNo" + ></el-option> </el-select> </el-form-item> </el-col> @@ -411,22 +731,43 @@ <el-row> <el-col :span="12" v-if="expertfrom == '2'"> <el-form-item label="涓撳濮撳悕" prop="expertname" label-width="80px"> - <el-input v-model="funddetailForm.expertname" placeholder="蹇呭~椤�" /> + <el-input + v-model="funddetailForm.expertname" + placeholder="蹇呭~椤�" + /> </el-form-item> </el-col> <el-col :span="12" v-if="expertfrom == '2'"> - <el-form-item label="鑱� 绉�" prop="experttitle" label-width="80px"> - <el-select v-model="funddetailForm.experttitle" placeholder="蹇呭~椤�"> - <el-option v-for="dict in dict.type.sys_professionaltitle" :key="dict.value" :label="dict.label" - :value="dict.label"></el-option> + <el-form-item + label="鑱� 绉�" + prop="experttitle" + label-width="80px" + > + <el-select + v-model="funddetailForm.experttitle" + placeholder="蹇呭~椤�" + > + <el-option + v-for="dict in dict.type.sys_professionaltitle" + :key="dict.value" + :label="dict.label" + :value="dict.label" + ></el-option> </el-select> </el-form-item> </el-col> </el-row> <el-row> <el-col :span="24" v-if="expertfrom == '2'"> - <el-form-item label="韬唤璇佸彿" prop="expertidcardno" label-width="80px"> - <el-input v-model="funddetailForm.expertidcardno" placeholder="蹇呭~椤�" /> + <el-form-item + label="韬唤璇佸彿" + prop="expertidcardno" + label-width="80px" + > + <el-input + v-model="funddetailForm.expertidcardno" + placeholder="蹇呭~椤�" + /> </el-form-item> </el-col> </el-row> @@ -444,41 +785,91 @@ --> <el-row> <el-col :span="24" v-if="expertfrom == '2'"> - <el-form-item label="鍗曚綅鍚嶇О" prop="expertunitno" label-width="80px"> - <el-select v-model="funddetailForm.expertunitno" placeholder="鍗曚綅鍚嶇О" clearable filterable allow-create - style="width: 100%"> - <el-option v-for="(spec, index) in unitList" :key="index" :label="spec.organizationname" - :value="spec.organizationid"></el-option> - </el-select> </el-form-item></el-col> + <el-form-item + label="鍗曚綅鍚嶇О" + prop="expertunitno" + label-width="80px" + > + <el-select + v-model="funddetailForm.expertunitno" + placeholder="鍗曚綅鍚嶇О" + clearable + filterable + allow-create + style="width: 100%" + > + <el-option + v-for="(spec, index) in unitList" + :key="index" + :label="spec.organizationname" + :value="spec.organizationid" + ></el-option> + </el-select> </el-form-item + ></el-col> </el-row> <el-row> <el-col :span="24" v-if="expertfrom == '2'"> - <el-form-item label="寮�鎴烽摱琛�" prop="expertdepositbank" label-width="80px"> - <el-input v-model="funddetailForm.expertdepositbank" placeholder="蹇呭~椤�" /> + <el-form-item + label="寮�鎴烽摱琛�" + prop="expertdepositbank" + label-width="80px" + > + <el-input + v-model="funddetailForm.expertdepositbank" + placeholder="蹇呭~椤�" + /> </el-form-item> </el-col> <el-col :span="24" v-if="expertfrom == '2'"> - <el-form-item label="閾惰鍗″彿" prop="expertbankcardno" label-width="80px"> - <el-input v-model="funddetailForm.expertbankcardno" placeholder="蹇呭~椤�" /> + <el-form-item + label="閾惰鍗″彿" + prop="expertbankcardno" + label-width="80px" + > + <el-input + v-model="funddetailForm.expertbankcardno" + placeholder="蹇呭~椤�" + /> </el-form-item> </el-col> </el-row> </el-form> <span slot="footer" class="dialog-footer"> <el-button @click="showSelectionDialog = false">鍙� 娑�</el-button> - <el-button type="primary" @click="ConfirmDetailDialog()">纭� 瀹�</el-button> + <el-button type="primary" @click="ConfirmDetailDialog()" + >纭� 瀹�</el-button + > </span> </el-dialog> <el-dialog :title="pdftitle" :visible.sync="pdfVisible" width="50%"> <div class="pdfimg"> <div class="box-pdf"> <div> - <el-upload size="mini" class="upload-demo" :action="uploadFileUrl" :file-list="fileListto" multiple - :limit="20" :headers="headers" :on-success="(response, file, fileList) => - uploadSccess(response, file, fileList) - " :on-preview="downFile" :disabled="operationType == 'detail'" :on-error="handleUploadError" - :on-exceed="handleExceed" :on-remove="remove" accept="image/*,.pdf"> - <el-button :disabled="operationType == 'detail'" size="small" type="primary">涓婁紶绁ㄦ嵁</el-button> + <el-upload + size="mini" + class="upload-demo" + :action="uploadFileUrl" + :file-list="fileListto" + multiple + :limit="20" + :headers="headers" + :on-success=" + (response, file, fileList) => + uploadSccess(response, file, fileList) + " + :on-preview="downFile" + :disabled="operationType == 'detail'" + :on-error="handleUploadError" + :on-exceed="handleExceed" + :on-remove="remove" + accept="image/*,.pdf" + > + <el-button + :disabled="operationType == 'detail'" + size="small" + type="primary" + >涓婁紶绁ㄦ嵁</el-button + > </el-upload> </div> <!-- <div @@ -493,7 +884,11 @@ <div v-if="this.previewpdf" class="pdfimgmin"> <!-- <img :src="pdfimg" /> --> - <el-image style="width: 100px; height: 100px" :src="pdfimg" :preview-src-list="pdfimgsrcList"> + <el-image + style="width: 95%; height: 90%" + :src="pdfimg" + :preview-src-list="pdfimgsrcList" + > </el-image> </div> <div v-else class="pdfimgmins">{{ hintitle }}</div> @@ -1060,7 +1455,7 @@ handleDelete() { this.$modal .confirm("鏄惁纭鍒犻櫎璇ヨ褰曪紵") - .then(function () { + .then(function() { return delFund(this.curId); }) .then(() => { @@ -1075,7 +1470,7 @@ this.getfundList(); this.$modal.msgSuccess("鍒犻櫎鎴愬姛"); }) - .catch(() => { }); + .catch(() => {}); }, /** 涓婃姤鎸夐挳鎿嶄綔 */ @@ -1128,8 +1523,8 @@ if (tempDetail.itemid == null) { this.$modal.msgWarning( "鏈嶅姟椤圭洰琛ㄤ腑锛岀" + - (k + 1).toString() + - "琛岀殑鏈嶅姟椤圭洰鏈�夋嫨锛岃鍏堥�夋嫨鏈嶅姟椤圭洰鍚庡啀鎻愪氦淇濆瓨锛�" + (k + 1).toString() + + "琛岀殑鏈嶅姟椤圭洰鏈�夋嫨锛岃鍏堥�夋嫨鏈嶅姟椤圭洰鍚庡啀鎻愪氦淇濆瓨锛�" ); return; } @@ -1138,8 +1533,8 @@ if (tempDetail.servicesscope == null) { this.$modal.msgWarning( "鏈嶅姟椤圭洰琛ㄤ腑锛岀" + - (k + 1).toString() + - "琛岀殑璐圭敤璇存槑鏈�夋嫨,璇烽�夋嫨璐圭敤璇存槑鍚庡啀鎻愪氦淇濆瓨锛�" + (k + 1).toString() + + "琛岀殑璐圭敤璇存槑鏈�夋嫨,璇烽�夋嫨璐圭敤璇存槑鍚庡啀鎻愪氦淇濆瓨锛�" ); return; } @@ -1150,8 +1545,8 @@ ) { this.$modal.msgWarning( "鏈嶅姟椤圭洰琛ㄤ腑锛岀" + - (k + 1).toString() + - "琛岀殑鏈嶅姟浜哄憳濮撳悕涓洪�夋嫨,璇烽�夋嫨浜哄憳鍚庡啀鎻愪氦淇濆瓨锛�" + (k + 1).toString() + + "琛岀殑鏈嶅姟浜哄憳濮撳悕涓洪�夋嫨,璇烽�夋嫨浜哄憳鍚庡啀鎻愪氦淇濆瓨锛�" ); return; } @@ -1178,7 +1573,7 @@ // this.form.annexfiles = list.map(item => item.url).join(","); // } - //澶勭悊鏄庣粏 + //澶勭悊鏄庣粏 for (let i = 0; i < this.rbDetails.length; i++) { let tempDetail = this.rbDetails[i]; //鑾峰彇鏈嶅姟椤圭洰鏄庣粏 @@ -1196,9 +1591,15 @@ item => tempDetail.applytype == item.value ); if (applytypeIndex > -1) { - tempDetail.applytypename = this.rowfeeItemTypes[applytypeIndex].label; - tempDetail.subjecttype = this.rowfeeItemTypes[applytypeIndex].subjecttype; - tempDetail.subjecttypename = this.rowfeeItemTypes[applytypeIndex].subjecttypename; + tempDetail.applytypename = this.rowfeeItemTypes[ + applytypeIndex + ].label; + tempDetail.subjecttype = this.rowfeeItemTypes[ + applytypeIndex + ].subjecttype; + tempDetail.subjecttypename = this.rowfeeItemTypes[ + applytypeIndex + ].subjecttypename; } this.rbDetails[i] = tempDetail; /* @@ -1239,28 +1640,45 @@ }); } */ - } - //璁$畻褰撳墠琛屾姤閿�鍐呭璐圭敤鍚堣锛岀◣鍓嶉噾棰濓紙amount锛夈�佹墸绋庨噾棰濓紙taxamount锛夈�佺◣鍚庨噾棰濓紙taxedamount锛� - if (this.businessType == '2') { + //璁$畻褰撳墠琛屾姤閿�鍐呭璐圭敤鍚堣锛岀◣鍓嶉噾棰濓紙amount锛夈�佹墸绋庨噾棰濓紙taxamount锛夈�佺◣鍚庨噾棰濓紙taxedamount锛� + if (this.businessType == "2") { for (let j = 0; j < this.rbDetails.length; j++) { let tempDetail = this.rbDetails[j]; - if (isNaN(parseFloat(tempDetail.amount)) || parseFloat(tempDetail.amount) == 0) { - this.$modal.msgWarning("鏈嶅姟椤圭洰琛ㄤ腑锛岀" + (j + 1).toString() + "琛岀殑閲戦鏈緭鍏ワ紝璇峰厛杈撳叆閲戦鍚庡啀鎻愪氦淇濆瓨锛�"); + if ( + isNaN(parseFloat(tempDetail.amount)) || + parseFloat(tempDetail.amount) == 0 + ) { + this.$modal.msgWarning( + "鏈嶅姟椤圭洰琛ㄤ腑锛岀" + + (j + 1).toString() + + "琛岀殑閲戦鏈緭鍏ワ紝璇峰厛杈撳叆閲戦鍚庡啀鎻愪氦淇濆瓨锛�" + ); return; } } - } else if (this.businessType == '3' || this.businessType == '4') { + } else if (this.businessType == "3" || this.businessType == "4") { for (let j = 0; j < this.rbDetails.length; j++) { let tempDetail = this.rbDetails[j]; - if (isNaN(parseFloat(tempDetail.amount)) || parseFloat(tempDetail.amount) == 0) { - this.$modal.msgWarning("鏈嶅姟椤圭洰琛ㄤ腑锛岀" + (j + 1).toString() + "琛岀殑閲戦鏈緭鍏ワ紝璇峰厛杈撳叆閲戦鍚庡啀鎻愪氦淇濆瓨锛�"); + if ( + isNaN(parseFloat(tempDetail.amount)) || + parseFloat(tempDetail.amount) == 0 + ) { + this.$modal.msgWarning( + "鏈嶅姟椤圭洰琛ㄤ腑锛岀" + + (j + 1).toString() + + "琛岀殑閲戦鏈緭鍏ワ紝璇峰厛杈撳叆閲戦鍚庡啀鎻愪氦淇濆瓨锛�" + ); return; } - if (isNaN(parseFloat(tempDetail.taxamount)) || parseFloat(tempDetail.taxamount) == 0) { - tempDetail.taxedamount = tempDetail.amount + if ( + isNaN(parseFloat(tempDetail.taxamount)) || + parseFloat(tempDetail.taxamount) == 0 + ) { + tempDetail.taxedamount = tempDetail.amount; } else { - tempDetail.taxedamount = tempDetail.amount + tempDetail.taxamount + tempDetail.taxedamount = + tempDetail.amount + tempDetail.taxamount; } } } @@ -1317,8 +1735,8 @@ //鍏抽棴绐楀彛 this.loading = false; - // this.getfundList(); - this.$store.dispatch('tagsView/delView', this.$route) + // this.getfundList(); + this.$store.dispatch("tagsView/delView", this.$route); this.$router.go(-1); } }); @@ -1801,7 +2219,7 @@ }, //璁$畻涓◣ - calculateTax() { }, + calculateTax() {}, //璁$畻鎬婚噾棰� sumTotalFee(row) { @@ -1896,7 +2314,7 @@ }, //鏂囦欢涓婁紶 - handleUploadError() { }, + handleUploadError() {}, /** 涓嬭浇鏂囦欢鎸夐挳鎿嶄綔 */ downFile(item) { @@ -1953,6 +2371,9 @@ this.pdfVisible = true; if (this.rbDetails[index].annexfilesList) { this.fileListto = this.rbDetails[index].annexfilesList; + this.pdfimg = this.fileListto[0].url; + this.pdfimgsrcList = []; + this.pdfimgsrcList.push(this.pdfimg); } else { this.fileListto = []; this.pdfimg = ""; @@ -2146,13 +2567,13 @@ // this.getFeeUnitList(); }, - beforeCreate() { }, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠 - beforeMount() { }, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠 - beforeUpdate() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠 - updated() { }, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪悗 - beforeDestroy() { }, //鐢熷懡鍛ㄦ湡 - 閿�姣佷箣鍓� - destroyed() { }, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴� - activated() { } //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂 + beforeCreate() {}, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠 + beforeMount() {}, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠 + beforeUpdate() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠 + updated() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪悗 + beforeDestroy() {}, //鐢熷懡鍛ㄦ湡 - 閿�姣佷箣鍓� + destroyed() {}, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴� + activated() {} //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂 }; </script> diff --git a/src/views/project/travelexpenseapply/travelexpensedetail/index.vue b/src/views/project/travelexpenseapply/travelexpensedetail/index.vue index c9090c5..8f943b0 100644 --- a/src/views/project/travelexpenseapply/travelexpensedetail/index.vue +++ b/src/views/project/travelexpenseapply/travelexpensedetail/index.vue @@ -960,10 +960,13 @@ <div v-if="this.previewpdf" class="pdfimgmin"> <!-- <img :src="pdfimg" /> --> <el-image - style="width: 100px; height: 100px" + style="width: 95%; height: 90%" :src="pdfimg" :preview-src-list="pdfimgsrcList" > + <!-- <div slot="error" class="image-slot"> + <i class="el-icon-picture-outline"></i> + </div> --> </el-image> </div> <div v-else class="pdfimgmins">{{ hintitle }}</div> @@ -1071,6 +1074,8 @@ loading: true, // 瀵煎嚭閬僵灞� exportLoading: false, + // 缃戠粶璇锋眰澶� + Networkheader: null, // 褰撳墠鍗曟嵁ID curId: 0, @@ -1165,6 +1170,8 @@ }, created() { + this.Getnetworkheader(); + //鑾峰彇璁板綍鍒楄〃 // this.getList(); @@ -1222,7 +1229,20 @@ methods: { handleUploadError() {}, - + // 鑾峰彇璇锋眰澶� + Getnetworkheader() { + console.log(window.location.href); + let string = window.location.href; + if (string.includes("9091")) { + const index = string.indexOf("9091"); + this.Networkheader = string.slice(0, index + 4); // 鎴彇9091鍙婂叾鍓嶉儴瀛楃 + console.log(this.Networkheader); + } else { + const index = string.indexOf("8032"); + this.Networkheader = string.slice(0, index + 4); // 鎴彇8032鍙婂叾鍓嶉儴瀛楃 + console.log(this.Networkheader); + } + }, remove(file, fileList) { const rbDetails = [...this.rbDetails]; this.fileListto.splice(this.fileListto.indexOf(file), 1); @@ -1236,13 +1256,19 @@ //鏂囦欢涓婁紶鎴愬姛鍥炶皟 uploadSccess(response, file, fileList) { this.rbDetails; - //鑾峰彇绁ㄦ嵁淇℃伅浣嶇疆 if (response.code == 200) { this.form.filename = file.raw.name; this.$modal.msgSuccess(response.msg); - this.fileListto.push({ name: file.name, url: response.url }); + this.fileListto.push({ + name: file.name, + url: response.fileName + }); + // this.fileListto.push({ + // name: file.name, + // url: response.url + // }); this.rbDetails[this.atpresent].annexfilesList = this.fileListto; } else { console.log(response.msg); @@ -1252,8 +1278,14 @@ Filepopup(index, rows, row) { this.atpresent = index; this.pdfVisible = true; + console.log(this.rbDetails[index]); if (this.rbDetails[index].annexfilesList) { this.fileListto = this.rbDetails[index].annexfilesList; + console.log(this.fileListto); + this.pdfimg = this.Networkheader + "/prod-api" + this.fileListto[0].url; + console.log(this.pdfimg); + this.pdfimgsrcList = []; + this.pdfimgsrcList.push(this.pdfimg); } else { this.fileListto = []; this.pdfimg = ""; @@ -1273,11 +1305,12 @@ } else if (name[1] == "jpg" || "png") { this.previewpdf = true; if (item.url) { - this.pdfimg = item.url; - this.pdfimgsrcList=[] - this.pdfimgsrcList.push(item.url); + this.pdfimg = this.Networkheader + "/prod-api" + item.url; + this.pdfimgsrcList = []; + this.pdfimgsrcList.push(this.pdfimg); + console.log(this.pdfimg); } else { - this.pdfimg = item.response.url; + this.pdfimg = this.Networkheader + "/prod-api" + item.response.url; } } else { this.hintitle = "褰撳墠鏂囦欢鏆備笉鏀寔棰勮"; @@ -1578,6 +1611,7 @@ this.loading = true; listReimbursement(this.queryParams).then(response => { this.reimbursementList = response.rows; + console.log(this.reimbursementList); this.total = response.total; this.loading = false; }); @@ -1717,6 +1751,7 @@ //鑾峰彇鎶ラ攢鏄庣粏淇℃伅 getReimbursementdetaillist(curId).then(res => { this.rbDetails = res.data; + console.log(this.rbDetails); if (this.rbDetails.length == 0) { this.addDetailRow(0); } -- Gitblit v1.9.3