From 3e8ac4ea677985ee75dab817a318c9ee15fe8940 Mon Sep 17 00:00:00 2001 From: yxh <172933527@qq.com> Date: 星期一, 28 八月 2023 11:24:08 +0800 Subject: [PATCH] yxh --- src/views/login.vue | 99 + src/views/project/fund/applyDetail/index.vue | 746 ++++++++++++---- src/views/project/travelexpenseapply/travelexpensedetail/index.vue | 820 ++++++++++++++--- src/views/project/travelexpenseapply/index.vue | 968 +++++++++++++++++---- 4 files changed, 2,059 insertions(+), 574 deletions(-) diff --git a/src/views/login.vue b/src/views/login.vue index 113f8c7..40d3760 100644 --- a/src/views/login.vue +++ b/src/views/login.vue @@ -1,25 +1,43 @@ <template> <div class="login"> - <el-form ref="loginForm" :model="loginForm" :rules="loginRules" class="login-form"> + <el-form + ref="loginForm" + :model="loginForm" + :rules="loginRules" + class="login-form" + > <h3 class="title">娴欐睙鐪丱PO鏁板瓧鍖栫鐞嗗钩鍙�</h3> <el-form-item prop="username"> - <el-input v-model="loginForm.username" type="text" auto-complete="off" placeholder="璐﹀彿"> - <svg-icon slot="prefix" icon-class="user" class="el-input__icon input-icon" /> + <el-input + v-model="loginForm.username" + type="text" + auto-complete="off" + placeholder="璐﹀彿" + > + <svg-icon + slot="prefix" + icon-class="user" + class="el-input__icon input-icon" + /> </el-input> </el-form-item> <el-form-item prop="password"> <el-input v-model="loginForm.password" type="password" - auto-complete="off" + auto-complete="off" @focus="tip" placeholder="瀵嗙爜" @keyup.enter.native="handleLogin" > - <svg-icon slot="prefix" icon-class="password" class="el-input__icon input-icon" /> + <svg-icon + slot="prefix" + icon-class="password" + class="el-input__icon input-icon" + /> </el-input> </el-form-item> - <br> + <br /> <el-form-item prop="code" v-if="captchaOnOff"> <el-input v-model="loginForm.code" @@ -28,13 +46,21 @@ style="width: 63%" @keyup.enter.native="handleLogin" > - <svg-icon slot="prefix" icon-class="validCode" class="el-input__icon input-icon" /> + <svg-icon + slot="prefix" + icon-class="validCode" + class="el-input__icon input-icon" + /> </el-input> <div class="login-code"> - <img :src="codeUrl" @click="getCode" class="login-code-img"/> + <img :src="codeUrl" @click="getCode" class="login-code-img" /> </div> </el-form-item> - <el-checkbox v-model="loginForm.rememberMe" style="margin:0px 0px 25px 0px;">璁颁綇瀵嗙爜</el-checkbox> + <el-checkbox + v-model="loginForm.rememberMe" + style="margin:0px 0px 25px 0px;" + >璁颁綇瀵嗙爜</el-checkbox + > <el-form-item style="width:100%;"> <el-button :loading="loading" @@ -47,7 +73,9 @@ <span v-else>鐧� 褰� 涓�...</span> </el-button> <div style="float: right;" v-if="register"> - <router-link class="link-type" :to="'/register'">绔嬪嵆娉ㄥ唽</router-link> + <router-link class="link-type" :to="'/register'" + >绔嬪嵆娉ㄥ唽</router-link + > </div> </el-form-item> </el-form> @@ -61,7 +89,7 @@ <script> import { getCodeImg } from "@/api/login"; import Cookies from "js-cookie"; -import { encrypt, decrypt } from '@/utils/jsencrypt' +import { encrypt, decrypt } from "@/utils/jsencrypt"; export default { name: "Login", @@ -81,8 +109,13 @@ { required: true, trigger: "blur", message: "璇疯緭鍏ユ偍鐨勮处鍙�" } ], password: [ - { required: true, trigger: "blur", message: "瀵嗙爜蹇呴』鍖呭惈澶у皬鍐欏瓧姣嶃�佹暟瀛椼�佺壒娈婂瓧绗︿腑鐨勮嚦灏戜笁绉嶄笖闀垮害澶т簬绛変簬8浣�" } - ], + { + required: true, + trigger: "blur", + message: + "瀵嗙爜蹇呴』鍖呭惈澶у皬鍐欏瓧姣嶃�佹暟瀛椼�佺壒娈婂瓧绗︿腑鐨勮嚦灏戜笁绉嶄笖闀垮害澶т簬绛変簬8浣�" + } + ] // code: [{ required: true, trigger: "change", message: "璇疯緭鍏ラ獙璇佺爜" }] }, loading: false, @@ -106,12 +139,13 @@ this.getCookie(); }, methods: { - tip(){ + tip() { //console.log('awdawd',鑱氱劍); }, getCode() { getCodeImg().then(res => { - this.captchaOnOff = res.captchaOnOff === undefined ? true : res.captchaOnOff; + this.captchaOnOff = + res.captchaOnOff === undefined ? true : res.captchaOnOff; if (this.captchaOnOff) { this.codeUrl = "data:image/gif;base64," + res.img; this.loginForm.uuid = res.uuid; @@ -121,10 +155,11 @@ getCookie() { const username = Cookies.get("username"); const password = Cookies.get("password"); - const rememberMe = Cookies.get('rememberMe') + const rememberMe = Cookies.get("rememberMe"); this.loginForm = { username: username === undefined ? this.loginForm.username : username, - password: password === undefined ? this.loginForm.password : decrypt(password), + password: + password === undefined ? this.loginForm.password : decrypt(password), rememberMe: rememberMe === undefined ? false : Boolean(rememberMe) }; }, @@ -134,21 +169,29 @@ this.loading = true; if (this.loginForm.rememberMe) { Cookies.set("username", this.loginForm.username, { expires: 30 }); - Cookies.set("password", encrypt(this.loginForm.password), { expires: 30 }); - Cookies.set('rememberMe', this.loginForm.rememberMe, { expires: 30 }); + Cookies.set("password", encrypt(this.loginForm.password), { + expires: 30 + }); + Cookies.set("rememberMe", this.loginForm.rememberMe, { + expires: 30 + }); } else { Cookies.remove("username"); Cookies.remove("password"); - Cookies.remove('rememberMe'); + Cookies.remove("rememberMe"); } - this.$store.dispatch("Login", this.loginForm).then(() => { - this.$router.push({ path: this.redirect || "/" }).catch(()=>{}); - }).catch(() => { - this.loading = false; - if (this.captchaOnOff) { - this.getCode(); - } - }); + this.$store + .dispatch("Login", this.loginForm) + .then(() => { + this.$router.push({ path: this.redirect || "/" }).catch(() => {}); + }) + .catch(() => { + this.loading = false; + 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 23a9bce..995450c 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,10 +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"> @@ -72,9 +100,14 @@ --> <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> <!-- + </el-col> + <!-- <el-col :span="5"> <el-form-item label="搴旂即绋�" prop="taxcost" v-if="businessType == '1' || businessType == '2'"> <el-input v-model="form.taxcost" placeholder="搴旂即绋庨噾棰濆悎璁�" :disabled="true" /> @@ -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,50 +175,125 @@ <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 + 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> </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 @@ -179,18 +305,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 @@ -210,10 +355,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="鍗曚綅" @@ -230,26 +384,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="澶囨敞"> @@ -257,18 +439,39 @@ <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'" + >鏂板</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> - <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> @@ -316,31 +519,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"> @@ -359,15 +608,30 @@ </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'" + >鎻愪氦淇濆瓨</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'"> @@ -378,29 +642,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> @@ -408,22 +720,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> @@ -441,41 +774,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 @@ -489,7 +872,13 @@ </div> <div v-if="this.previewpdf" class="pdfimgmin"> - <img :src="pdfimg" /> + <!-- <img :src="pdfimg" /> --> + <el-image + style="width: 100px; height: 100px" + :src="pdfimg" + :preview-src-list="pdfimgsrcList" + > + </el-image> </div> <div v-else class="pdfimgmins">{{ hintitle }}</div> </div> @@ -650,7 +1039,6 @@ totalAfterTaxAmount: 0.0, totalAmount: 0.0, - //璐圭敤绫诲瀷鏁扮粍 feeItemTypes: [], @@ -727,7 +1115,7 @@ checkObj: { flowlevelone: null, flowconclusion: null, - fundid: null, + fundid: null }, // 鏌ヨ鍙傛暟 @@ -783,6 +1171,7 @@ //绁ㄦ嵁鏂囦欢 pdftitle: "", pdfimg: "", + pdfimgsrcList: [], pdfVisible: false, previewpdf: false, hintitle: "閫変腑宸︿晶宸蹭笂浼犳枃浠堕瑙堟煡鐪�", @@ -856,22 +1245,19 @@ // if (!this.businessType && !this.operationType) { if (this.businessType == "1") { - this.businessName = "涓撳鍔冲姟璐圭敵璇峰崟" - this.amountLabel = "绋庡墠閲戦" + this.businessName = "涓撳鍔冲姟璐圭敵璇峰崟"; + this.amountLabel = "绋庡墠閲戦"; this.getUnitList(); - } - else if (this.businessType == "2") { + } else if (this.businessType == "2") { this.businessName = "浼︾悊涓撳鍔冲姟璐圭敵璇峰崟"; - this.amountLabel = "绋庡墠閲戦" + this.amountLabel = "绋庡墠閲戦"; this.getUnitList(); - } - else if (this.businessType == "3") { + } else if (this.businessType == "3") { this.businessName = "鍖诲鎴愭湰鎶ラ攢鍗�"; - this.amountLabel = "閲戦" - } - else if (this.businessType == "4") { + this.amountLabel = "閲戦"; + } else if (this.businessType == "4") { this.businessName = "鍔炲叕璐圭敤鎶ラ攢鍗�"; - this.amountLabel = "閲戦" + this.amountLabel = "閲戦"; // this.getBaseInfoList(); } @@ -883,16 +1269,13 @@ console.log("this.curCase", this.curCase); } this.handleAdd(); - } - else if (this.operationType == "update") { + } else if (this.operationType == "update") { this.title = this.businessName + "淇敼"; this.handleUpdate(); - } - else if (this.operationType == "detail") { + } else if (this.operationType == "detail") { this.title = this.businessName + "鏌ョ湅"; this.handleDetail(); - } - else if (this.operationType == "check") { + } else if (this.operationType == "check") { this.title = this.businessName + "瀹℃牳"; this.handleCheck(); } @@ -1004,7 +1387,7 @@ } }); - //涓氬姟娴佺▼ + //涓氬姟娴佺▼ let listFundflowparams = { fundid: this.curId, fundtype: 2 @@ -1046,7 +1429,7 @@ } }); - //涓氬姟娴佺▼ + //涓氬姟娴佺▼ let listFundflowparams = { fundid: this.curId, fundtype: 2 @@ -1055,14 +1438,13 @@ this.fundflowList = res.rows; }); }); - }, /** 鍒犻櫎鎸夐挳鎿嶄綔 */ handleDelete() { this.$modal .confirm("鏄惁纭鍒犻櫎璇ヨ褰曪紵") - .then(function () { + .then(function() { return delFund(this.curId); }) .then(() => { @@ -1077,7 +1459,7 @@ this.getfundList(); this.$modal.msgSuccess("鍒犻櫎鎴愬姛"); }) - .catch(() => { }); + .catch(() => {}); }, /** 涓婃姤鎸夐挳鎿嶄綔 */ @@ -1130,8 +1512,8 @@ if (tempDetail.itemid == null) { this.$modal.msgWarning( "鏈嶅姟椤圭洰琛ㄤ腑锛岀" + - (k + 1).toString() + - "琛岀殑鏈嶅姟椤圭洰鏈�夋嫨锛岃鍏堥�夋嫨鏈嶅姟椤圭洰鍚庡啀鎻愪氦淇濆瓨锛�" + (k + 1).toString() + + "琛岀殑鏈嶅姟椤圭洰鏈�夋嫨锛岃鍏堥�夋嫨鏈嶅姟椤圭洰鍚庡啀鎻愪氦淇濆瓨锛�" ); return; } @@ -1140,17 +1522,20 @@ if (tempDetail.servicesscope == null) { this.$modal.msgWarning( "鏈嶅姟椤圭洰琛ㄤ腑锛岀" + - (k + 1).toString() + - "琛岀殑璐圭敤璇存槑鏈�夋嫨,璇烽�夋嫨璐圭敤璇存槑鍚庡啀鎻愪氦淇濆瓨锛�" + (k + 1).toString() + + "琛岀殑璐圭敤璇存槑鏈�夋嫨,璇烽�夋嫨璐圭敤璇存槑鍚庡啀鎻愪氦淇濆瓨锛�" ); return; } - if (tempDetail.beneficiaryno == null || tempDetail.beneficiaryno == "鐐瑰嚮閫夋嫨") { + if ( + tempDetail.beneficiaryno == null || + tempDetail.beneficiaryno == "鐐瑰嚮閫夋嫨" + ) { this.$modal.msgWarning( "鏈嶅姟椤圭洰琛ㄤ腑锛岀" + - (k + 1).toString() + - "琛岀殑鏈嶅姟浜哄憳濮撳悕涓洪�夋嫨,璇烽�夋嫨浜哄憳鍚庡啀鎻愪氦淇濆瓨锛�" + (k + 1).toString() + + "琛岀殑鏈嶅姟浜哄憳濮撳悕涓洪�夋嫨,璇烽�夋嫨浜哄憳鍚庡啀鎻愪氦淇濆瓨锛�" ); return; } @@ -1329,13 +1714,13 @@ // fundid: this.checkObj.fundid, fundid: this.curId, flowconclusion: this.checkObj.flowlevelone, - flowcontent: this.checkObj.flowconclusion, + flowcontent: this.checkObj.flowconclusion }; - checkfund(checkFundObj).then((res) => { + checkfund(checkFundObj).then(res => { //鍏抽棴绐楀彛 this.reset(); this.$modal.msgSuccess("瀹℃牳瀹屾垚!"); - this.$store.dispatch('tagsView/delView', this.$route) + this.$store.dispatch("tagsView/delView", this.$route); this.$router.go(-1); }); }, @@ -1343,7 +1728,7 @@ // 鍙栨秷鎸夐挳 cancel() { // this.reset(); - this.$store.dispatch('tagsView/delView', this.$route) + this.$store.dispatch("tagsView/delView", this.$route); this.$router.go(-1); }, @@ -1352,7 +1737,11 @@ getUserProfile().then(res => { this.userprofile = res.data; this.standardlevel = res.data.standardlevel; - if (this.userprofile.userName == "admin" || this.userprofile.userName == "001" || this.userprofile.userName == "047") { + if ( + this.userprofile.userName == "admin" || + this.userprofile.userName == "001" || + this.userprofile.userName == "047" + ) { this.ismanager = true; } else { this.ismanager = false; @@ -1413,7 +1802,7 @@ getUserAccount() { this.personlist.map(res => { if (res.username == this.form.username) { - this.form.bankname = res.depositbank;//res.branchbankname銆乺es.depositbank; + this.form.bankname = res.depositbank; //res.branchbankname銆乺es.depositbank; this.form.bankcardno = res.bankcardno; this.form.phone = res.telephone; } @@ -1792,7 +2181,7 @@ }, //璁$畻涓◣ - calculateTax() { }, + calculateTax() {}, //璁$畻鎬婚噾棰� sumTotalFee(row) { @@ -1887,7 +2276,7 @@ }, //鏂囦欢涓婁紶 - handleUploadError() { }, + handleUploadError() {}, /** 涓嬭浇鏂囦欢鎸夐挳鎿嶄綔 */ downFile(item) { @@ -1962,6 +2351,8 @@ this.previewpdf = true; if (item.url) { this.pdfimg = item.url; + this.pdfimgsrcList = []; + this.pdfimgsrcList.push(item.url); } else { this.pdfimg = item.response.url; } @@ -2020,7 +2411,8 @@ } else { //淇濆瓨鏂板涓撳 this.expertform.id = null; - this.expertform.userno = this.personlist[this.personlist.length - 1].id + 1; + this.expertform.userno = + this.personlist[this.personlist.length - 1].id + 1; this.expertform.usertype = "expert"; this.expertform.username = this.funddetailForm.expertname; this.expertform.idcardno = this.funddetailForm.expertidcardno; @@ -2117,7 +2509,7 @@ this.rbDetails[tempIndex] = singleDetail; this.showSelectionDialog = false; - }, + } }, //鐢熷懡鍛ㄦ湡 - 鍒涘缓瀹屾垚锛堝彲浠ヨ闂綋鍓峵his瀹炰緥锛� @@ -2134,13 +2526,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/index.vue b/src/views/project/travelexpenseapply/index.vue index 6104285..0e6ef90 100644 --- a/src/views/project/travelexpenseapply/index.vue +++ b/src/views/project/travelexpenseapply/index.vue @@ -1,6 +1,12 @@ <template> <div class="app-container"> - <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px"> + <el-form + :model="queryParams" + ref="queryForm" + :inline="true" + v-show="showSearch" + label-width="68px" + > <el-row> <!-- <el-col :span="6"> @@ -12,31 +18,68 @@ --> <el-col :span="6"> <el-form-item label="缁忓姙浜�" prop="username"> - <el-input v-model="queryParams.username" placeholder="璇疯緭鍏ョ粡鍔炰汉" clearable size="small" - @keyup.enter.native="handleQuery" /> + <el-input + v-model="queryParams.username" + placeholder="璇疯緭鍏ョ粡鍔炰汉" + clearable + size="small" + @keyup.enter.native="handleQuery" + /> </el-form-item> </el-col> <el-col :span="8"> <el-form-item label="鎶ラ攢鏃ユ湡" prop="createTime"> - <el-date-picker format="yyyy-MM-dd" value-format="yyyy-MM-dd" v-model="value1" type="daterange" @blur="onpick" - range-separator="鑷�" start-placeholder="鎶ラ攢寮�濮嬫棩鏈�" end-placeholder="鎶ラ攢缁撴潫鏃ユ湡" @keyup.enter.native="handleQuery"> + <el-date-picker + format="yyyy-MM-dd" + value-format="yyyy-MM-dd" + v-model="value1" + type="daterange" + @blur="onpick" + range-separator="鑷�" + start-placeholder="鎶ラ攢寮�濮嬫棩鏈�" + end-placeholder="鎶ラ攢缁撴潫鏃ユ湡" + @keyup.enter.native="handleQuery" + > </el-date-picker> </el-form-item> </el-col> <el-col :span="6"> <el-form-item label="瀹℃牳鐘舵��" prop="recordstatus"> - <el-input v-model="queryParams.recordstatus" placeholder="璇烽�夋嫨瀹℃牳鐘舵��" clearable size="small" v-if="0" - @keyup.enter.native="handleQuery" /> - <el-select v-model="queryParams.recordstatus" placeholder="璇烽�夋嫨瀹℃牳鐘舵��" clearable size="small"> - <el-option v-for="dict in dict.type.sys_recordstatus" :key="dict.value" :label="dict.label" - :value="dict.value" /> + <el-input + v-model="queryParams.recordstatus" + placeholder="璇烽�夋嫨瀹℃牳鐘舵��" + clearable + size="small" + v-if="0" + @keyup.enter.native="handleQuery" + /> + <el-select + v-model="queryParams.recordstatus" + placeholder="璇烽�夋嫨瀹℃牳鐘舵��" + clearable + size="small" + > + <el-option + v-for="dict in dict.type.sys_recordstatus" + :key="dict.value" + :label="dict.label" + :value="dict.value" + /> </el-select> </el-form-item> </el-col> <el-col :span="4"> <el-form-item> - <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button> - <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button> + <el-button + type="primary" + icon="el-icon-search" + size="mini" + @click="handleQuery" + >鎼滅储</el-button + > + <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" + >閲嶇疆</el-button + > </el-form-item> </el-col> </el-row> @@ -44,42 +87,91 @@ <el-row :gutter="10" class="mb8"> <el-col :span="1.5"> - <el-button type="primary" plain icon="el-icon-plus" @click="handleAdd">鏂板</el-button> + <el-button type="primary" plain icon="el-icon-plus" @click="handleAdd" + >鏂板</el-button + > <!-- v-hasPermi="['project:funddetail:add']" --> </el-col> <el-col :span="1.5"> - <el-button type="warning" plain icon="el-icon-download" :loading="exportLoading" - @click="handleExport">瀵煎嚭</el-button> + <el-button + type="warning" + plain + icon="el-icon-download" + :loading="exportLoading" + @click="handleExport" + >瀵煎嚭</el-button + > </el-col> <!-- v-hasPermi="['project:funddetail:export']" --> - <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> + <right-toolbar + :showSearch.sync="showSearch" + @queryTable="getList" + ></right-toolbar> </el-row> - <el-table :row-class-name="rowClassName" v-loading="loading" :data="reimbursementList" @selection-change="handleSelectionChange" > + <el-table + :row-class-name="rowClassName" + v-loading="loading" + :data="reimbursementList" + @selection-change="handleSelectionChange" + > <!-- <el-table-column type="selection" width="55" align="center" /> <el-table-column label="鎶ラ攢浜虹被鍒�" width="120" align="center" prop="costtype"> <template slot-scope="scope"> <dict-tag :options="dict.type.sys_travelexpensebelong" :value="scope.row.costtype" /> </template> </el-table-column>--> - <el-table-column label="鐢宠鏃堕棿" width="150" align="center" prop="createTime"> + <el-table-column + label="鐢宠鏃堕棿" + width="150" + align="center" + prop="createTime" + > <template slot-scope="scope"> <span>{{ parseTime(scope.row.createTime, "{y}-{m}-{d}") }}</span> </template> </el-table-column> - <el-table-column label="瀹℃牳鐘舵��" align="center" prop="recordstatus" width="160"> + <el-table-column + label="瀹℃牳鐘舵��" + align="center" + prop="recordstatus" + width="160" + > <template slot-scope="scope"> - <dict-tag :options="dict.type.sys_recordstatus" :value="scope.row.recordstatus" /> + <dict-tag + :options="dict.type.sys_recordstatus" + :value="scope.row.recordstatus" + /> </template> </el-table-column> - <el-table-column label="缁忓姙浜�" width="150" align="center" prop="username" /> + <el-table-column + label="缁忓姙浜�" + width="150" + align="center" + prop="username" + /> <!-- <el-table-column label="鍑哄樊浜�" width="180" align="center" prop="travelers"> </el-table-column>--> - <el-table-column label="鎶ラ攢閲戦" width="150" align="center" prop="amountrequested"> + <el-table-column + label="鎶ラ攢閲戦" + width="150" + align="center" + prop="amountrequested" + > </el-table-column> - <el-table-column label="鎵�灞炵粍鍒�" width="150" align="center" prop="deptmentname" /> - <el-table-column label="缁勯暱" width="150" align="center" prop="managername" /> + <el-table-column + label="鎵�灞炵粍鍒�" + width="150" + align="center" + prop="deptmentname" + /> + <el-table-column + label="缁勯暱" + width="150" + align="center" + prop="managername" + /> <el-table-column label="鍑哄樊浜嬬敱" align="center" prop="reason" /> <!-- <el-table-column label="鑱旂郴鐢佃瘽" width="120" align="center" prop="phone"> </el-table-column> @@ -89,47 +181,114 @@ </el-table-column> <el-table-column label="鎶ラ攢鍚堣" align="center" prop="financechecher"/>--> <!-- <el-table-column label="璐㈠姟瀹℃牳" width="120" align="center" prop="financechecher" /> --> - <el-table-column label="鎹愮尞鑰�" width="150" align="center" prop="donorname" /> - <el-table-column label="鎿嶄綔" align="center" fixed="right" class-name="small-padding fixed-width"> + <el-table-column + label="鎹愮尞鑰�" + width="150" + align="center" + prop="donorname" + /> + <el-table-column + label="鎿嶄綔" + align="center" + fixed="right" + class-name="small-padding fixed-width" + > <template slot-scope="scope"> - <el-button v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1" size="mini" type="text" - icon="el-icon-upload2" @click="handleup(scope.row)">涓婃姤</el-button> - <el-button v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1" size="mini" type="text" - icon="el-icon-edit" @click="handleUpdate(scope.row)">淇敼</el-button> - <el-button size="mini" type="text" icon="el-icon-edit" @click="handleDetail(scope.row)">鏌ョ湅</el-button> + <el-button + v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1" + size="mini" + type="text" + icon="el-icon-upload2" + @click="handleup(scope.row)" + >涓婃姤</el-button + > + <el-button + v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1" + size="mini" + type="text" + icon="el-icon-edit" + @click="handleUpdate(scope.row)" + >淇敼</el-button + > + <el-button + size="mini" + type="text" + icon="el-icon-edit" + @click="handleDetail(scope.row)" + >鏌ョ湅</el-button + > <!-- v-hasPermi="['project:funddetail:edit']" --> - <el-button size="mini" type="text" icon="el-icon-download" @click="gettable(scope.row)"> + <el-button + size="mini" + type="text" + icon="el-icon-download" + @click="gettable(scope.row)" + > 涓嬭浇 </el-button> <!-- v-hasPermi="['project:funddetail:edit']" --> - <el-button v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1" size="mini" type="text" - icon="el-icon-delete" @click="handleDelete(scope.row)">鍒犻櫎</el-button> + <el-button + v-if="scope.row.recordstatus == -1 || scope.row.recordstatus == 1" + size="mini" + type="text" + icon="el-icon-delete" + @click="handleDelete(scope.row)" + >鍒犻櫎</el-button + > <!-- v-hasPermi="['project:funddetail:remove']" --> </template> </el-table-column> </el-table> <!-- v-hasPermi="['project:donateconsolationfund:edit']" --> - <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" - @pagination="getList" /> + <pagination + v-show="total > 0" + :total="total" + :page.sync="queryParams.pageNum" + :limit.sync="queryParams.pageSize" + @pagination="getList" + /> <!-- 娣诲姞鎴栦慨鏀硅垂鐢ㄧ敵璇锋槑缁嗗璇濇 --> - <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="1400px" append-to-body - @close="reset"> + <el-dialog + :title="title" + :visible.sync="open" + :close-on-click-modal="false" + width="1400px" + append-to-body + @close="reset" + > <el-form ref="form" :model="form" :rules="rules" label-width="120px"> - <el-row><el-col :span="5"> + <el-row + ><el-col :span="5"> <el-form-item label="鐢宠鏃ユ湡" prop="createTime"> - <el-date-picker style="width: 100%" v-model="form.createTime" type="date" value-format="yyyy-MM-dd HH:mm:ss" - placeholder="鐢宠鏃ユ湡"> + <el-date-picker + 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" clearable filterable allow-create ref="getReportname" - default-first-option placeholder="璇烽�夋嫨"> - <el-option v-for="item in personsList" :key="item.reportNo" :label="item.reportName" - :value="item.reportName"> + <el-select + v-model="form.username" + clearable + filterable + allow-create + ref="getReportname" + default-first-option + placeholder="璇烽�夋嫨" + > + <el-option + v-for="item in personsList" + :key="item.reportNo" + :label="item.reportName" + :value="item.reportName" + > </el-option> </el-select> </el-form-item> @@ -154,8 +313,18 @@ </el-col> <el-col :span="5"> <el-form-item label="鎹愮尞鑰�" prop="infoid"> - <el-select v-model="form.infoid" @change="selectbaseinfo" filterable placeholder="璇烽�夋嫨鎹愮尞鑰�"> - <el-option v-for="item in baselist" :key="item.index" :label="item.name" :value="item.infoid"> + <el-select + v-model="form.infoid" + @change="selectbaseinfo" + filterable + placeholder="璇烽�夋嫨鎹愮尞鑰�" + > + <el-option + v-for="item in baselist" + :key="item.index" + :label="item.name" + :value="item.infoid" + > </el-option> </el-select> </el-form-item> @@ -164,17 +333,36 @@ <el-row style="margin-top: 10px"> <el-col :span="5"> <el-form-item label="鎶ラ攢閲戦" prop="amountrequested"> - <el-input :disabled="true" v-model="form.amountrequested" placeholder="鎶ラ攢鍚堣閲戦" /> + <el-input + :disabled="true" + v-model="form.amountrequested" + placeholder="鎶ラ攢鍚堣閲戦" + /> </el-form-item> </el-col> <el-col :span="10"> <el-form-item label="澶у啓閲戦" prop="bigstrmoney"> - <el-input :disabled="true" v-model="form.bigstrmoney" placeholder="鎶ラ攢澶у啓閲戦" /> - </el-form-item> </el-col><el-col :span="5"> + <el-input + :disabled="true" + v-model="form.bigstrmoney" + placeholder="鎶ラ攢澶у啓閲戦" + /> + </el-form-item> </el-col + ><el-col :span="5"> <el-form-item label="瀹℃牳鐘舵��" prop="flowlevel"> - <el-select v-model="form.recordstatus" placeholder="璇烽�夋嫨瀹℃牳鐘舵��" clearable :disabled="true" size="small"> - <el-option v-for="dict in dict.type.sys_recordstatus" :key="dict.value" :label="dict.label" - :value="dict.value" /> + <el-select + v-model="form.recordstatus" + placeholder="璇烽�夋嫨瀹℃牳鐘舵��" + clearable + :disabled="true" + size="small" + > + <el-option + v-for="dict in dict.type.sys_recordstatus" + :key="dict.value" + :label="dict.label" + :value="dict.value" + /> </el-select> </el-form-item> </el-col> @@ -281,116 +469,263 @@ </el-row> <el-row> <el-table :data="rbDetails" border highlight-current-row> - <el-table-column prop="orderno" slot="" label="搴忓彿" align="center" fixed width="65"> + <el-table-column + prop="orderno" + slot="" + label="搴忓彿" + align="center" + fixed + width="65" + > <template slot-scope="scope"> <el-input v-model="scope.row.orderno" placeholder="搴忓彿" /> </template> </el-table-column> <!--涓婚敭銆佸涓嶅睍绀�--> - <el-table-column prop="id" slot="" label="涓婚敭" align="center" fixed width="95" v-if="false"> + <el-table-column + prop="id" + slot="" + label="涓婚敭" + align="center" + fixed + width="95" + v-if="false" + > <template slot-scope="scope"> <el-input v-model="scope.row.id" placeholder="id" /> </template> </el-table-column> - <el-table-column prop="rbid" slot="" label="澶栭敭" align="center" fixed width="95" v-if="false"> + <el-table-column + prop="rbid" + slot="" + label="澶栭敭" + align="center" + fixed + width="95" + v-if="false" + > <template slot-scope="scope"> <el-input v-model="scope.row.rbid" placeholder="rbid" /> </template> </el-table-column> - <el-table-column prop="persontype" slot="" label="浜哄憳绫诲埆" align="center" fixed width="130"> + <el-table-column + prop="persontype" + slot="" + label="浜哄憳绫诲埆" + align="center" + fixed + width="130" + > <template slot-scope="scope"> - <el-select v-model="scope.row.persontype" value-key="value" placeholder="浜哄憳绫诲埆" - @change="getPersons(scope.row)"> - <el-option v-for="dict in dict.type.sys_travelexpensebelong" :key="dict.value" :label="dict.label" - :value="dict.label"></el-option> + <el-select + v-model="scope.row.persontype" + value-key="value" + placeholder="浜哄憳绫诲埆" + @change="getPersons(scope.row)" + > + <el-option + v-for="dict in dict.type.sys_travelexpensebelong" + :key="dict.value" + :label="dict.label" + :value="dict.label" + ></el-option> </el-select> </template> </el-table-column> - <el-table-column prop="personname" slot="" label="璐圭敤浜哄憳" align="center" fixed width="110"> + <el-table-column + prop="personname" + slot="" + label="璐圭敤浜哄憳" + align="center" + fixed + width="110" + > <template slot-scope="scope"> - <el-select v-model="scope.row.personname" clearable filterable allow-create default-first-option - placeholder="璇烽�夋嫨" @focus1="getPersons(scope.row)"> - <el-option v-for="item in personsSel" :key="item.reportNo" :label="item.reportName" - :value="item.reportName"> + <el-select + v-model="scope.row.personname" + clearable + filterable + allow-create + default-first-option + placeholder="璇烽�夋嫨" + @focus1="getPersons(scope.row)" + > + <el-option + v-for="item in personsSel" + :key="item.reportNo" + :label="item.reportName" + :value="item.reportName" + > </el-option> </el-select> </template> </el-table-column> - <el-table-column prop="starttime" slot="" label="寮�濮嬫棩鏈�" fixed align="center" width="150"> + <el-table-column + prop="starttime" + slot="" + label="寮�濮嬫棩鏈�" + fixed + align="center" + width="150" + > <template slot-scope="scope"> - <el-date-picker :picker-options="{ - disabledDate: time => { - if (scope.row.endtime) { - return ( - time.getTime() > - new Date(scope.row.endtime.replace(/-/g, '/')) - ); + <el-date-picker + :picker-options="{ + disabledDate: time => { + if (scope.row.endtime) { + return ( + time.getTime() > + new Date(scope.row.endtime.replace(/-/g, '/')) + ); + } } - } - }" clearable size="small" style="width: 100%" v-model="scope.row.starttime" type="date" - value-format="yyyy-MM-dd HH:mm:ss" placeholder="寮�濮嬫棩鏈�" @blur="getdays(scope.row)"> + }" + clearable + size="small" + style="width: 100%" + v-model="scope.row.starttime" + type="date" + value-format="yyyy-MM-dd HH:mm:ss" + placeholder="寮�濮嬫棩鏈�" + @blur="getdays(scope.row)" + > </el-date-picker> </template> </el-table-column> - <el-table-column prop="endtime" slot="" label="缁撴潫鏃ユ湡" align="center" fixed width="150"> + <el-table-column + prop="endtime" + slot="" + label="缁撴潫鏃ユ湡" + align="center" + fixed + width="150" + > <template slot-scope="scope"> - <el-date-picker :picker-options="{ - disabledDate: time => { - if (scope.row.starttime) { - return ( - time.getTime() < - new Date(scope.row.starttime.replace(/-/g, '/')) - ); + <el-date-picker + :picker-options="{ + disabledDate: time => { + if (scope.row.starttime) { + return ( + time.getTime() < + new Date(scope.row.starttime.replace(/-/g, '/')) + ); + } } - } - }" clearable size="small" style="width: 100%" v-model="scope.row.endtime" type="date" - value-format="yyyy-MM-dd HH:mm:ss" placeholder="缁撴潫鏃ユ湡" @blur="getdays(scope.row)"> + }" + clearable + size="small" + style="width: 100%" + v-model="scope.row.endtime" + type="date" + value-format="yyyy-MM-dd HH:mm:ss" + placeholder="缁撴潫鏃ユ湡" + @blur="getdays(scope.row)" + > </el-date-picker> </template> </el-table-column> - <el-table-column prop="departure" slot="" label="鍑哄彂鍦�" align="center" width="100"> + <el-table-column + prop="departure" + slot="" + label="鍑哄彂鍦�" + align="center" + width="100" + > <template slot-scope="scope"> <el-input v-model="scope.row.departure" placeholder="鍑哄彂鍦�" /> </template> </el-table-column> - <el-table-column label="鍒拌揪鍦�" prop="destination" align="center" width="140"> + <el-table-column + label="鍒拌揪鍦�" + prop="destination" + align="center" + width="140" + > <template slot-scope="scope"> <!-- <el-input v-model="scope.row.destination" placeholder="鍒拌揪鍦�" @blur="getallowance(scope.row)" /> --> - <el-select filterable allow-create v-model="scope.row.destination" value-key="value" placeholder="鍒拌揪鍦�" - @change="getallowance(scope.row)"> - <el-option v-for="dict in dict.type.sys_area_name" :key="dict.value" :label="dict.label" - :value="dict.label"></el-option> + <el-select + filterable + allow-create + v-model="scope.row.destination" + value-key="value" + placeholder="鍒拌揪鍦�" + @change="getallowance(scope.row)" + > + <el-option + v-for="dict in dict.type.sys_area_name" + :key="dict.value" + :label="dict.label" + :value="dict.label" + ></el-option> </el-select> </template> </el-table-column> <el-table-column prop="days" label="澶╂暟" width="65" align="center"> <template slot-scope="scope"> - <el-input v-model="scope.row.days" @blur="getallowance(scope.row)" placeholder="澶╂暟" /> + <el-input + v-model="scope.row.days" + @blur="getallowance(scope.row)" + placeholder="澶╂暟" + /> </template> </el-table-column> - <el-table-column prop="traffictype" label="鍑哄彂浜ら�氬伐鍏�" align="center" width="100"> + <el-table-column + prop="traffictype" + label="鍑哄彂浜ら�氬伐鍏�" + align="center" + width="100" + > <template slot-scope="scope"> - <el-select v-model="scope.row.traffictype" placeholder="鍑哄彂浜ら�氬伐鍏�"> - <el-option v-for="dict in dict.type.sys_traffictype" :key="dict.value" :label="dict.label" - :value="dict.label"></el-option> + <el-select + v-model="scope.row.traffictype" + placeholder="鍑哄彂浜ら�氬伐鍏�" + > + <el-option + v-for="dict in dict.type.sys_traffictype" + :key="dict.value" + :label="dict.label" + :value="dict.label" + ></el-option> </el-select> </template> </el-table-column> - <el-table-column prop="traffictype2" label="杩斿洖浜ら�氬伐鍏�" align="center" width="100"> + <el-table-column + prop="traffictype2" + label="杩斿洖浜ら�氬伐鍏�" + align="center" + width="100" + > <template slot-scope="scope"> - <el-select v-model="scope.row.traffictype2" placeholder="杩斿洖浜ら�氬伐鍏�"> - <el-option v-for="dict in dict.type.sys_traffictype" :key="dict.value" :label="dict.label" - :value="dict.label"></el-option> + <el-select + v-model="scope.row.traffictype2" + placeholder="杩斿洖浜ら�氬伐鍏�" + > + <el-option + v-for="dict in dict.type.sys_traffictype" + :key="dict.value" + :label="dict.label" + :value="dict.label" + ></el-option> </el-select> </template> </el-table-column> - <el-table-column prop="trafficexpense" label="浜ら�氳垂" align="center" width="80"> + <el-table-column + prop="trafficexpense" + label="浜ら�氳垂" + align="center" + width="80" + > <template slot-scope="scope"> - <el-input v-model="scope.row.trafficexpense" placeholder="浜ら�氳垂" @blur="val => { - sumRowFee(scope.row); - } - " /> + <el-input + v-model="scope.row.trafficexpense" + placeholder="浜ら�氳垂" + @blur=" + val => { + sumRowFee(scope.row); + } + " + /> </template> </el-table-column> <!-- @@ -405,65 +740,144 @@ </template> </el-table-column> --> - <el-table-column prop="hotelexpense" label="浣忓璐�" align="center" width="80"> + <el-table-column + prop="hotelexpense" + label="浣忓璐�" + align="center" + width="80" + > <template slot-scope="scope"> - <el-input v-model="scope.row.hotelexpense" placeholder="浣忓璐�" @blur="val => { - sumRowFee(scope.row); - } - " /> + <el-input + v-model="scope.row.hotelexpense" + placeholder="浣忓璐�" + @blur=" + val => { + sumRowFee(scope.row); + } + " + /> </template> </el-table-column> - <el-table-column prop="foodexpenses" label="椁愯垂鎶ラ攢" align="center" width="80"> + <el-table-column + prop="foodexpenses" + label="椁愯垂鎶ラ攢" + align="center" + width="80" + > <template slot-scope="scope"> - <el-input v-model="scope.row.foodexpenses" placeholder="浼欓璐规姤閿�" @blur="val => { - sumRowFee(scope.row); - } - " /> + <el-input + v-model="scope.row.foodexpenses" + placeholder="浼欓璐规姤閿�" + @blur=" + val => { + sumRowFee(scope.row); + } + " + /> </template> </el-table-column> - <el-table-column prop="foodallowance" label="浼欓琛ュ姪" align="center" width="80"> + <el-table-column + prop="foodallowance" + label="浼欓琛ュ姪" + align="center" + width="80" + > <template slot-scope="scope"> - <el-input v-model="scope.row.foodallowance" placeholder="浼欓璐硅ˉ鍔�" @blur="val => { - sumRowFee(scope.row); - } - " /> + <el-input + v-model="scope.row.foodallowance" + placeholder="浼欓璐硅ˉ鍔�" + @blur=" + val => { + sumRowFee(scope.row); + } + " + /> </template> </el-table-column> - <el-table-column prop="otherexpense" label="鍏潅璐硅ˉ鍔�" align="center" width="80"> + <el-table-column + prop="otherexpense" + label="鍏潅璐硅ˉ鍔�" + align="center" + width="80" + > <template slot-scope="scope"> - <el-input v-model="scope.row.otherexpense" placeholder="鏉傝垂" @blur="val => { - sumRowFee(scope.row); - } - " /> + <el-input + v-model="scope.row.otherexpense" + placeholder="鏉傝垂" + @blur=" + val => { + sumRowFee(scope.row); + } + " + /> </template> </el-table-column> - <el-table-column prop="otherfeeamount" label="鍏朵粬璐圭敤" align="center" width="90"> + <el-table-column + prop="otherfeeamount" + label="鍏朵粬璐圭敤" + align="center" + width="90" + > <template slot-scope="scope"> - <el-input v-model="scope.row.otherfeeamount" placeholder="鍏朵粬璐圭敤" @blur="val => { - sumRowFee(scope.row); - } - " /> + <el-input + v-model="scope.row.otherfeeamount" + placeholder="鍏朵粬璐圭敤" + @blur=" + val => { + sumRowFee(scope.row); + } + " + /> </template> </el-table-column> - <el-table-column prop="departure" slot="" label="鍏朵粬璐圭敤璇存槑" align="center" width="120"> + <el-table-column + prop="departure" + slot="" + label="鍏朵粬璐圭敤璇存槑" + align="center" + width="120" + > <template slot-scope="scope"> - <el-input v-model="scope.row.otherfeedesc" placeholder="鍏朵粬璐圭敤璇存槑" /> + <el-input + v-model="scope.row.otherfeedesc" + placeholder="鍏朵粬璐圭敤璇存槑" + /> </template> </el-table-column> - <el-table-column prop="total" label="鍚堣" align="center" width="110"> + <el-table-column + prop="total" + label="鍚堣" + align="center" + width="110" + > <template slot-scope="scope"> <el-input v-model="scope.row.total" placeholder="鍚堣" /> </template> </el-table-column> - <el-table-column fixed="right" label="鎿嶄綔" align="center" width="120" v-if="dialogType == 'edit'"> + <el-table-column + fixed="right" + label="鎿嶄綔" + align="center" + width="120" + v-if="dialogType == 'edit'" + > <template slot-scope="scope"> - <el-button type="text" size="mini" @click="addDetailRow(scope.$index)">鏂板</el-button> - <el-button @click.native.prevent=" - deleteDetailRow(scope.$index, rbDetails, scope.row) - " type="text" size="small"> + <el-button + type="text" + size="mini" + @click="addDetailRow(scope.$index)" + >鏂板</el-button + > + <el-button + @click.native.prevent=" + deleteDetailRow(scope.$index, rbDetails, scope.row) + " + type="text" + size="small" + > 鍒犻櫎 </el-button> </template> @@ -475,75 +889,192 @@ </el-row> <el-row style="margin-top: 30px"> <el-table :data="rbPayees" border highlight-current-row> - <el-table-column prop="orderno" slot="" label="搴忓彿" align="center" fixed width="65"> + <el-table-column + prop="orderno" + slot="" + label="搴忓彿" + align="center" + fixed + width="65" + > <template slot-scope="scope"> <el-input v-model="scope.row.orderno" placeholder="搴忓彿" /> </template> </el-table-column> <!--涓婚敭銆佸閿笉灞曠ず--> - <el-table-column prop="id" slot="" label="涓婚敭" align="center" fixed width="95" v-if="false"> + <el-table-column + prop="id" + slot="" + label="涓婚敭" + align="center" + fixed + width="95" + v-if="false" + > <template slot-scope="scope"> <el-input v-model="scope.row.id" placeholder="id" /> </template> </el-table-column> - <el-table-column prop="rbid" slot="" label="澶栭敭" align="center" fixed width="95" v-if="false"> + <el-table-column + prop="rbid" + slot="" + label="澶栭敭" + align="center" + fixed + width="95" + v-if="false" + > <template slot-scope="scope"> <el-input v-model="scope.row.rbid" placeholder="rbid" /> </template> </el-table-column> - <el-table-column prop="persontype" slot="" label="浜哄憳绫诲埆" align="center" fixed width="130"> + <el-table-column + prop="persontype" + slot="" + label="浜哄憳绫诲埆" + align="center" + fixed + width="130" + > <template slot-scope="scope"> - <el-select v-model="scope.row.persontype" value-key="value" placeholder="浜哄憳绫诲埆" - @change="getPersons(scope.row)"> - <el-option v-for="dict in dict.type.sys_travelexpensebelong" :key="dict.value" :label="dict.label" - :value="dict.label"></el-option> + <el-select + v-model="scope.row.persontype" + value-key="value" + placeholder="浜哄憳绫诲埆" + @change="getPersons(scope.row)" + > + <el-option + v-for="dict in dict.type.sys_travelexpensebelong" + :key="dict.value" + :label="dict.label" + :value="dict.label" + ></el-option> </el-select> </template> </el-table-column> - <el-table-column prop="personname" slot="" label="鏀舵浜�" align="center" fixed width="110"> + <el-table-column + prop="personname" + slot="" + label="鏀舵浜�" + align="center" + fixed + width="110" + > <template slot-scope="scope"> - <el-select v-model="scope.row.personname" clearable filterable allow-create ref="getReportname" - default-first-option placeholder="璇烽�夋嫨" @change="getAccountinfo2(scope.row, scope.row.persontype)"> - <el-option v-for="item in personsSel" :key="item.reportNo" :label="item.reportName" - :value="item.reportName"> + <el-select + v-model="scope.row.personname" + clearable + filterable + allow-create + ref="getReportname" + default-first-option + placeholder="璇烽�夋嫨" + @change="getAccountinfo2(scope.row, scope.row.persontype)" + > + <el-option + v-for="item in personsSel" + :key="item.reportNo" + :label="item.reportName" + :value="item.reportName" + > </el-option> </el-select> </template> </el-table-column> - <el-table-column prop="bankname" slot="" label="閾惰鍚嶇О" align="center" fixed width="200"> + <el-table-column + prop="bankname" + slot="" + label="閾惰鍚嶇О" + align="center" + fixed + width="200" + > <template slot-scope="scope"> <el-input v-model="scope.row.bankname" placeholder="閾惰鍚嶇О" /> </template> </el-table-column> - <el-table-column prop="bankcardno" slot="" label="閾惰鍗″彿" align="center" fixed width="200"> + <el-table-column + prop="bankcardno" + slot="" + label="閾惰鍗″彿" + align="center" + fixed + width="200" + > <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="amount" slot="" label="鎵撴閲戦" align="center" fixed width="130"> + <el-table-column + prop="amount" + slot="" + label="鎵撴閲戦" + align="center" + fixed + width="130" + > <template slot-scope="scope"> <el-input v-model="scope.row.amount" placeholder="鎵撴閲戦" /> </template> </el-table-column> - <el-table-column prop="remark" slot="" label="璇锋璇存槑" align="center" fixed width="280"> + <el-table-column + prop="remark" + slot="" + label="璇锋璇存槑" + align="center" + fixed + width="280" + > <template slot-scope="scope"> <el-input v-model="scope.row.remark" placeholder="璇存槑" /> - </template> </el-table-column><el-table-column prop="paiddate" slot="" label="鎵撴鏃ユ湡" fixed align="center" - width="150"> + </template> </el-table-column + ><el-table-column + prop="paiddate" + slot="" + label="鎵撴鏃ユ湡" + fixed + align="center" + width="150" + > <template slot-scope="scope"> - <el-date-picker clearable size="small" style="width: 100%" v-model="scope.row.paiddate" type="date" - value-format="yyyy-MM-dd HH:mm:ss" placeholder="鎵撴鏃ユ湡" :disabled="true"> + <el-date-picker + clearable + size="small" + style="width: 100%" + v-model="scope.row.paiddate" + type="date" + value-format="yyyy-MM-dd HH:mm:ss" + placeholder="鎵撴鏃ユ湡" + :disabled="true" + > </el-date-picker> </template> </el-table-column> - <el-table-column label="鎿嶄綔" align="center" width="100" v-if="dialogType == 'edit'"> + <el-table-column + label="鎿嶄綔" + align="center" + width="100" + v-if="dialogType == 'edit'" + > <template slot-scope="scope"> - <el-button type="text" size="mini" @click="addPayeeRow(scope.$index)">鏂板</el-button> - <el-button @click.native.prevent=" - deletePayeeRow(scope.$index, rbPayees, scope.row) - " type="text" size="small"> + <el-button + type="text" + size="mini" + @click="addPayeeRow(scope.$index)" + >鏂板</el-button + > + <el-button + @click.native.prevent=" + deletePayeeRow(scope.$index, rbPayees, scope.row) + " + type="text" + size="small" + > 鍒犻櫎 </el-button> </template> @@ -590,30 +1121,76 @@ --> <el-form-item label="鏂囦欢涓婁紶" align="left" prop="annexfiles"> <!-- <file-upload ref="fileUpload" :fileType=fileType :limit="1" :on-success="handleUploadSuccess"></file-upload> --> - <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="dialogType == 'detail'" :on-error="handleUploadError" - :on-exceed="handleExceed" :on-remove="remove" accept="image/*,.pdf"> - <el-button :disabled="dialogType == 'detail'" size="small" type="primary">涓婁紶</el-button> + <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="dialogType == 'detail'" + :on-error="handleUploadError" + :on-exceed="handleExceed" + :on-remove="remove" + accept="image/*,.pdf" + > + <el-button + :disabled="dialogType == 'detail'" + size="small" + type="primary" + >涓婁紶</el-button + > </el-upload> </el-form-item> </el-col> </el-row> <el-row v-if="dialogType == 'detail'"> <el-table :data="fundflowList" border> - <el-table-column label="瀹℃牳浜�" align="center" width="120" prop="checkusername" /> - <el-table-column label="瀹℃牳鏃ユ湡" align="center" width="160" prop="createTime" /> - <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 + label="瀹℃牳浜�" + align="center" + width="120" + prop="checkusername" + /> + <el-table-column + label="瀹℃牳鏃ユ湡" + align="center" + width="160" + prop="createTime" + /> + <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-form> <div slot="footer" class="dialog-footer"> - <el-button type="primary" @click="submitForm" v-if="dialogType == 'edit'">淇� 瀛�</el-button> + <el-button + type="primary" + @click="submitForm" + v-if="dialogType == 'edit'" + >淇� 瀛�</el-button + > <el-button @click="cancel">鍙� 娑�</el-button> </div> </el-dialog> @@ -836,7 +1413,7 @@ }, methods: { - handleUploadError() { }, + handleUploadError() {}, remove(file) { this.fileList.splice(this.fileList.indexOf(file), 1); @@ -855,7 +1432,7 @@ this.$modal.msgSuccess(response.msg); this.fileList.push({ name: response.fileName, url: response.fileName }); } else { - console.log(response.msg);; + console.log(response.msg); } }, @@ -964,7 +1541,7 @@ row.days = ( Math.floor( Math.abs(Date.parse(row.starttime) - Date.parse(row.endtime)) / - (1000 * 3600 * 24) + (1000 * 3600 * 24) ) + 1 ).toString(); } else { @@ -1300,8 +1877,8 @@ this.form = response.data; this.fileList = this.form.annexfiles ? this.form.annexfiles - .split(",") - .map(item => ({ url: item, name: item })) + .split(",") + .map(item => ({ url: item, name: item })) : []; this.form.recordstatus = response.data.recordstatus + ""; @@ -1359,8 +1936,8 @@ //闄勪欢 this.fileList = this.form.annexfiles ? this.form.annexfiles - .split(",") - .map(item => ({ url: item, name: item })) + .split(",") + .map(item => ({ url: item, name: item })) : []; //瀹℃牳鐘舵�� @@ -1554,7 +2131,7 @@ const ids = row.id || this.ids; this.$modal .confirm("鏄惁纭鍒犻櫎璇ユ潯璁板綍锛�") - .then(function () { + .then(function() { // 鍒犻櫎details鍐呯殑鏁版嵁 return delReimbursement(ids); }) @@ -1563,7 +2140,7 @@ this.getList(); this.$modal.msgSuccess("鍒犻櫎鎴愬姛"); }) - .catch(() => { }); + .catch(() => {}); }, /** 瀵煎嚭鎸夐挳鎿嶄綔 */ @@ -1579,7 +2156,7 @@ this.$download.name(response.msg); this.exportLoading = false; }) - .catch(() => { }); + .catch(() => {}); }, //鏂板涓�琛� @@ -1862,7 +2439,7 @@ this.form.amountrequested = allSum.toFixed(2); this.form.bigstrmoney = this.convertCurrency(this.form.amountrequested); - } catch { } + } catch {} }, //閲戦鏁板瓧杞崲鎴愬ぇ鍐� @@ -1968,11 +2545,10 @@ //鏄庢樉鎻愮ず瀹℃壒閫�鍥炶褰� rowClassName({ row, column, rowIndex, columnIndex }) { //姝ゅ垽鏂负鏈�鍚庝笁琛� - if (row.backflowlevel==199) { + if (row.backflowlevel == 199) { return "addClassva"; } - }, - + } } }; </script> @@ -1981,7 +2557,7 @@ <style> .addClassva { /* background: #10aec2; */ - background:#10aec2!important; + background: #93b5cf !important; /* color:whitesmoke; */ } </style> diff --git a/src/views/project/travelexpenseapply/travelexpensedetail/index.vue b/src/views/project/travelexpenseapply/travelexpensedetail/index.vue index f88787c..c9090c5 100644 --- a/src/views/project/travelexpenseapply/travelexpensedetail/index.vue +++ b/src/views/project/travelexpenseapply/travelexpensedetail/index.vue @@ -3,19 +3,36 @@ <div class="boxdiv"> <div class="top-text">{{ title }}</div> <el-form ref="form" :model="form" :rules="rules" label-width="120px"> - <el-row><el-col :span="5"> + <el-row + ><el-col :span="5"> <el-form-item label="鐢宠鏃ユ湡" prop="createTime"> - <el-date-picker style="width: 100%" v-model="form.createTime" type="date" value-format="yyyy-MM-dd HH:mm:ss" - placeholder="鐢宠鏃ユ湡"> + <el-date-picker + 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" clearable filterable allow-create ref="getReportname" - default-first-option placeholder="璇烽�夋嫨"> - <el-option v-for="item in personsList" :key="item.reportNo" :label="item.reportName" - :value="item.reportName"> + <el-select + v-model="form.username" + clearable + filterable + allow-create + ref="getReportname" + default-first-option + placeholder="璇烽�夋嫨" + > + <el-option + v-for="item in personsList" + :key="item.reportNo" + :label="item.reportName" + :value="item.reportName" + > </el-option> </el-select> </el-form-item> @@ -40,8 +57,18 @@ </el-col> <el-col :span="5"> <el-form-item label="鎹愮尞鑰�" prop="infoid"> - <el-select v-model="form.infoid" @change="selectbaseinfo" filterable placeholder="璇烽�夋嫨鎹愮尞鑰�"> - <el-option v-for="item in baselist" :key="item.index" :label="item.name" :value="item.infoid"> + <el-select + v-model="form.infoid" + @change="selectbaseinfo" + filterable + placeholder="璇烽�夋嫨鎹愮尞鑰�" + > + <el-option + v-for="item in baselist" + :key="item.index" + :label="item.name" + :value="item.infoid" + > </el-option> </el-select> </el-form-item> @@ -50,17 +77,36 @@ <el-row style="margin-top: 10px"> <el-col :span="5"> <el-form-item label="鎶ラ攢閲戦" prop="amountrequested"> - <el-input :disabled="true" v-model="form.amountrequested" placeholder="鎶ラ攢鍚堣閲戦" /> + <el-input + :disabled="true" + v-model="form.amountrequested" + placeholder="鎶ラ攢鍚堣閲戦" + /> </el-form-item> </el-col> <el-col :span="10"> <el-form-item label="澶у啓閲戦" prop="bigstrmoney"> - <el-input :disabled="true" v-model="form.bigstrmoney" placeholder="鎶ラ攢澶у啓閲戦" /> - </el-form-item> </el-col><el-col :span="5"> + <el-input + :disabled="true" + v-model="form.bigstrmoney" + placeholder="鎶ラ攢澶у啓閲戦" + /> + </el-form-item> </el-col + ><el-col :span="5"> <el-form-item label="瀹℃牳鐘舵��" prop="flowlevel"> - <el-select v-model="form.recordstatus" placeholder="璇烽�夋嫨瀹℃牳鐘舵��" clearable :disabled="true" size="small"> - <el-option v-for="dict in dict.type.sys_recordstatus" :key="dict.value" :label="dict.label" - :value="dict.value" /> + <el-select + v-model="form.recordstatus" + placeholder="璇烽�夋嫨瀹℃牳鐘舵��" + clearable + :disabled="true" + size="small" + > + <el-option + v-for="dict in dict.type.sys_recordstatus" + :key="dict.value" + :label="dict.label" + :value="dict.value" + /> </el-select> </el-form-item> </el-col> @@ -166,191 +212,441 @@ <el-col :span="20">鎶ラ攢鏄庣粏</el-col> </el-row> <el-row> - <el-table :data="rbDetails" border highlight-current-row :summary-method="getSummaries" show-summary> - <el-table-column prop="orderno" slot="" label="搴忓彿" align="center" fixed width="65"> + <el-table + :data="rbDetails" + ref="table" + border + highlight-current-row + :summary-method="getSummaries" + show-summary + > + <el-table-column + prop="orderno" + slot="" + label="搴忓彿" + align="center" + fixed + width="65" + > <template slot-scope="scope"> <el-input v-model="scope.row.orderno" placeholder="搴忓彿" /> </template> </el-table-column> <!--涓婚敭銆佸涓嶅睍绀�--> - <el-table-column prop="id" slot="" label="涓婚敭" align="center" fixed width="95" v-if="false"> + <el-table-column + prop="id" + slot="" + label="涓婚敭" + align="center" + fixed + width="95" + v-if="false" + > <template slot-scope="scope"> <el-input v-model="scope.row.id" placeholder="id" /> </template> </el-table-column> - <el-table-column prop="rbid" slot="" label="澶栭敭" align="center" fixed width="95" v-if="false"> + <el-table-column + prop="rbid" + slot="" + label="澶栭敭" + align="center" + fixed + width="95" + v-if="false" + > <template slot-scope="scope"> <el-input v-model="scope.row.rbid" placeholder="rbid" /> </template> </el-table-column> - <el-table-column prop="persontype" slot="" label="浜哄憳绫诲埆" align="center" fixed width="130"> + <el-table-column + prop="persontype" + slot="" + label="浜哄憳绫诲埆" + align="center" + fixed + width="130" + > <template slot-scope="scope"> - <el-select v-model="scope.row.persontype" value-key="value" placeholder="浜哄憳绫诲埆" - @change="getPersons(scope.row)"> - <el-option v-for="dict in dict.type.sys_travelexpensebelong" :key="dict.value" :label="dict.label" - :value="dict.label"></el-option> + <el-select + v-model="scope.row.persontype" + value-key="value" + placeholder="浜哄憳绫诲埆" + @change="getPersons(scope.row)" + > + <el-option + v-for="dict in dict.type.sys_travelexpensebelong" + :key="dict.value" + :label="dict.label" + :value="dict.label" + ></el-option> </el-select> </template> </el-table-column> - <el-table-column prop="personname" slot="" label="璐圭敤浜哄憳" align="center" fixed width="110"> + <el-table-column + prop="personname" + slot="" + label="璐圭敤浜哄憳" + align="center" + fixed + width="110" + > <template slot-scope="scope"> - <el-select v-model="scope.row.personname" clearable filterable allow-create default-first-option - placeholder="璇烽�夋嫨" @focus1="getPersons(scope.row)"> - <el-option v-for="item in personsSel" :key="item.reportNo" :label="item.reportName" - :value="item.reportName"> + <el-select + v-model="scope.row.personname" + clearable + filterable + allow-create + default-first-option + placeholder="璇烽�夋嫨" + @focus1="getPersons(scope.row)" + > + <el-option + v-for="item in personsSel" + :key="item.reportNo" + :label="item.reportName" + :value="item.reportName" + > </el-option> </el-select> </template> </el-table-column> - <el-table-column prop="starttime" slot="" label="寮�濮嬫棩鏈�" fixed align="center" width="150"> + <el-table-column + prop="starttime" + slot="" + label="寮�濮嬫棩鏈�" + fixed + align="center" + width="150" + > <template slot-scope="scope"> - <el-date-picker :picker-options="{ - disabledDate: time => { - if (scope.row.endtime) { - return ( - time.getTime() > - new Date(scope.row.endtime.replace(/-/g, '/')) - ); + <el-date-picker + :picker-options="{ + disabledDate: time => { + if (scope.row.endtime) { + return ( + time.getTime() > + new Date(scope.row.endtime.replace(/-/g, '/')) + ); + } } - } - }" clearable size="small" style="width: 100%" v-model="scope.row.starttime" type="date" - value-format="yyyy-MM-dd HH:mm:ss" placeholder="寮�濮嬫棩鏈�" @blur="getdays(scope.row)"> + }" + clearable + size="small" + style="width: 100%" + v-model="scope.row.starttime" + type="date" + value-format="yyyy-MM-dd HH:mm:ss" + placeholder="寮�濮嬫棩鏈�" + @blur="getdays(scope.row)" + > </el-date-picker> </template> </el-table-column> - <el-table-column prop="endtime" slot="" label="缁撴潫鏃ユ湡" align="center" fixed width="150"> + <el-table-column + prop="endtime" + slot="" + label="缁撴潫鏃ユ湡" + align="center" + fixed + width="150" + > <template slot-scope="scope"> - <el-date-picker :picker-options="{ - disabledDate: time => { - if (scope.row.starttime) { - return ( - time.getTime() < - new Date(scope.row.starttime.replace(/-/g, '/')) - ); + <el-date-picker + :picker-options="{ + disabledDate: time => { + if (scope.row.starttime) { + return ( + time.getTime() < + new Date(scope.row.starttime.replace(/-/g, '/')) + ); + } } - } - }" clearable size="small" style="width: 100%" v-model="scope.row.endtime" type="date" - value-format="yyyy-MM-dd HH:mm:ss" placeholder="缁撴潫鏃ユ湡" @blur="getdays(scope.row)"> + }" + clearable + size="small" + style="width: 100%" + v-model="scope.row.endtime" + type="date" + value-format="yyyy-MM-dd HH:mm:ss" + placeholder="缁撴潫鏃ユ湡" + @blur="getdays(scope.row)" + > </el-date-picker> </template> </el-table-column> - <el-table-column prop="departure" slot="" label="鍑哄彂鍦�" align="center" width="100"> + <el-table-column + prop="departure" + slot="" + label="鍑哄彂鍦�" + align="center" + width="100" + > <template slot-scope="scope"> <el-input v-model="scope.row.departure" placeholder="鍑哄彂鍦�" /> </template> </el-table-column> - <el-table-column label="鍒拌揪鍦�" prop="destination" align="center" width="140"> + <el-table-column + label="鍒拌揪鍦�" + prop="destination" + align="center" + width="140" + > <template slot-scope="scope"> <!-- <el-input v-model="scope.row.destination" placeholder="鍒拌揪鍦�" @blur="getallowance(scope.row)" /> --> - <el-select filterable allow-create v-model="scope.row.destination" value-key="value" placeholder="鍒拌揪鍦�" - @change="getallowance(scope.row)"> - <el-option v-for="dict in dict.type.sys_area_name" :key="dict.value" :label="dict.label" - :value="dict.label"></el-option> + <el-select + filterable + allow-create + v-model="scope.row.destination" + value-key="value" + placeholder="鍒拌揪鍦�" + @change="getallowance(scope.row)" + > + <el-option + v-for="dict in dict.type.sys_area_name" + :key="dict.value" + :label="dict.label" + :value="dict.label" + ></el-option> </el-select> </template> </el-table-column> <el-table-column prop="days" label="澶╂暟" width="65" align="center"> <template slot-scope="scope"> - <el-input v-model="scope.row.days" @blur="getallowance(scope.row)" placeholder="澶╂暟" /> + <el-input + v-model="scope.row.days" + @blur="getallowance(scope.row)" + placeholder="澶╂暟" + /> </template> </el-table-column> - <el-table-column prop="traffictype" label="鍑哄彂浜ら�氬伐鍏�" align="center" width="100"> + <el-table-column + prop="traffictype" + label="鍑哄彂浜ら�氬伐鍏�" + align="center" + width="100" + > <template slot-scope="scope"> - <el-select v-model="scope.row.traffictype" placeholder="鍑哄彂浜ら�氬伐鍏�"> - <el-option v-for="dict in dict.type.sys_traffictype" :key="dict.value" :label="dict.label" - :value="dict.label"></el-option> + <el-select + v-model="scope.row.traffictype" + placeholder="鍑哄彂浜ら�氬伐鍏�" + > + <el-option + v-for="dict in dict.type.sys_traffictype" + :key="dict.value" + :label="dict.label" + :value="dict.label" + ></el-option> </el-select> </template> </el-table-column> - <el-table-column prop="traffictype2" label="杩斿洖浜ら�氬伐鍏�" align="center" width="100"> + <el-table-column + prop="traffictype2" + label="杩斿洖浜ら�氬伐鍏�" + align="center" + width="100" + > <template slot-scope="scope"> - <el-select v-model="scope.row.traffictype2" placeholder="杩斿洖浜ら�氬伐鍏�"> - <el-option v-for="dict in dict.type.sys_traffictype" :key="dict.value" :label="dict.label" - :value="dict.label"></el-option> + <el-select + v-model="scope.row.traffictype2" + placeholder="杩斿洖浜ら�氬伐鍏�" + > + <el-option + v-for="dict in dict.type.sys_traffictype" + :key="dict.value" + :label="dict.label" + :value="dict.label" + ></el-option> </el-select> </template> </el-table-column> - <el-table-column prop="trafficexpense" label="浜ら�氳垂" align="center" width="80"> + <el-table-column + prop="trafficexpense" + label="浜ら�氳垂" + align="center" + width="80" + > <template slot-scope="scope"> - <el-input v-model="scope.row.trafficexpense" placeholder="浜ら�氳垂" @blur="val => { - sumRowFee(scope.row); - } - " /> + <el-input + v-model="scope.row.trafficexpense" + placeholder="浜ら�氳垂" + @blur=" + val => { + sumRowFee(scope.row); + } + " + /> </template> </el-table-column> - <el-table-column prop="cityfee" label="甯傚唴浜ら�氳垂" align="center" width="100"> + <el-table-column + prop="cityfee" + label="甯傚唴浜ら�氳垂" + align="center" + width="100" + > <template slot-scope="scope"> - <el-input v-model="scope.row.cityfee" placeholder="甯傚唴浜ら�氳垂" @blur="(val) => { - sumRowFee(scope.row); - } - ">{{ Number(scope.row.cityfee).toFixed(2) }} + <el-input + v-model="scope.row.cityfee" + placeholder="甯傚唴浜ら�氳垂" + @blur=" + val => { + sumRowFee(scope.row); + } + " + >{{ Number(scope.row.cityfee).toFixed(2) }} </el-input> </template> </el-table-column> - <el-table-column prop="hotelexpense" label="浣忓璐�" align="center" width="80"> + <el-table-column + prop="hotelexpense" + label="浣忓璐�" + align="center" + width="80" + > <template slot-scope="scope"> - <el-input v-model="scope.row.hotelexpense" placeholder="浣忓璐�" @blur="val => { - sumRowFee(scope.row); - } - " /> + <el-input + v-model="scope.row.hotelexpense" + placeholder="浣忓璐�" + @blur=" + val => { + sumRowFee(scope.row); + } + " + /> </template> </el-table-column> - <el-table-column prop="foodexpenses" label="椁愯垂鎶ラ攢" align="center" width="80"> + <el-table-column + prop="foodexpenses" + label="椁愯垂鎶ラ攢" + align="center" + width="80" + > <template slot-scope="scope"> - <el-input v-model="scope.row.foodexpenses" placeholder="浼欓璐规姤閿�" @blur="val => { - sumRowFee(scope.row); - } - " /> + <el-input + v-model="scope.row.foodexpenses" + placeholder="浼欓璐规姤閿�" + @blur=" + val => { + sumRowFee(scope.row); + } + " + /> </template> </el-table-column> - <el-table-column prop="foodallowance" label="浼欓琛ュ姪" align="center" width="80"> + <el-table-column + prop="foodallowance" + label="浼欓琛ュ姪" + align="center" + width="80" + > <template slot-scope="scope"> - <el-input v-model="scope.row.foodallowance" placeholder="浼欓璐硅ˉ鍔�" @blur="val => { - sumRowFee(scope.row); - } - " /> + <el-input + v-model="scope.row.foodallowance" + placeholder="浼欓璐硅ˉ鍔�" + @blur=" + val => { + sumRowFee(scope.row); + } + " + /> </template> </el-table-column> - <el-table-column prop="otherexpense" label="鍏潅璐硅ˉ鍔�" align="center" width="80"> + <el-table-column + prop="otherexpense" + label="鍏潅璐硅ˉ鍔�" + align="center" + width="80" + > <template slot-scope="scope"> - <el-input v-model="scope.row.otherexpense" placeholder="鏉傝垂" @blur="val => { - sumRowFee(scope.row); - } - " /> + <el-input + v-model="scope.row.otherexpense" + placeholder="鏉傝垂" + @blur=" + val => { + sumRowFee(scope.row); + } + " + /> </template> </el-table-column> - <el-table-column prop="otherfeeamount" label="鍏朵粬璐圭敤" align="center" width="90"> + <el-table-column + prop="otherfeeamount" + label="鍏朵粬璐圭敤" + align="center" + width="90" + > <template slot-scope="scope"> - <el-input v-model="scope.row.otherfeeamount" placeholder="鍏朵粬璐圭敤" @blur="val => { - sumRowFee(scope.row); - } - " /> + <el-input + v-model="scope.row.otherfeeamount" + placeholder="鍏朵粬璐圭敤" + @blur=" + val => { + sumRowFee(scope.row); + } + " + /> </template> </el-table-column> - <el-table-column prop="departure" slot="" label="鍏朵粬璐圭敤璇存槑" align="center" width="120"> + <el-table-column + prop="departure" + slot="" + label="鍏朵粬璐圭敤璇存槑" + align="center" + width="120" + > <template slot-scope="scope"> - <el-input v-model="scope.row.otherfeedesc" placeholder="鍏朵粬璐圭敤璇存槑" /> + <el-input + v-model="scope.row.otherfeedesc" + placeholder="鍏朵粬璐圭敤璇存槑" + /> </template> </el-table-column> - <el-table-column prop="total" label="鍚堣" align="center" width="110" fixed="right"> + <el-table-column + prop="total" + label="鍚堣" + align="center" + width="110" + fixed="right" + > <template slot-scope="scope"> <el-input v-model="scope.row.total" placeholder="鍚堣" /> </template> </el-table-column> - <el-table-column fixed="right" label="鎿嶄綔" align="center" width="120"> + <el-table-column + fixed="right" + label="鎿嶄綔" + align="center" + width="120" + > <template slot-scope="scope"> - <el-button type="text" size="mini" @click="addDetailRow(scope.$index)" - v-if="operationType == 'edit'">鏂板</el-button> - <el-button @click.native.prevent=" - deleteDetailRow(scope.$index, rbDetails, scope.row) - " type="text" size="small" v-if="operationType == 'edit'">鍒犻櫎</el-button> - <el-button @click.native.prevent=" - Filepopup(scope.$index, rbDetails, scope.row) - " type="text" size="small">绁ㄦ嵁</el-button> + <el-button + type="text" + size="mini" + @click="addDetailRow(scope.$index)" + v-if="operationType == 'edit'" + >鏂板</el-button + > + <el-button + @click.native.prevent=" + deleteDetailRow(scope.$index, rbDetails, scope.row) + " + type="text" + size="small" + v-if="operationType == 'edit'" + >鍒犻櫎</el-button + > + <el-button + @click.native.prevent=" + Filepopup(scope.$index, rbDetails, scope.row) + " + type="text" + size="small" + >绁ㄦ嵁</el-button + > </template> </el-table-column> </el-table> @@ -359,60 +655,153 @@ <el-col :span="20">鎵撴鏄庣粏</el-col> </el-row> <el-row style="margin-top: 5px"> - <el-table :data="rbPayees" border highlight-current-row :summary-method="getSummaries" show-summary> - <el-table-column prop="orderno" slot="" label="搴忓彿" align="center" fixed width="65"> + <el-table + :data="rbPayees" + border + highlight-current-row + :summary-method="getSummaries" + show-summary + > + <el-table-column + prop="orderno" + slot="" + label="搴忓彿" + align="center" + fixed + width="65" + > <template slot-scope="scope"> <el-input v-model="scope.row.orderno" placeholder="搴忓彿" /> </template> </el-table-column> <!--涓婚敭銆佸閿笉灞曠ず--> - <el-table-column prop="id" slot="" label="涓婚敭" align="center" fixed width="95" v-if="false"> + <el-table-column + prop="id" + slot="" + label="涓婚敭" + align="center" + fixed + width="95" + v-if="false" + > <template slot-scope="scope"> <el-input v-model="scope.row.id" placeholder="id" /> </template> </el-table-column> - <el-table-column prop="rbid" slot="" label="澶栭敭" align="center" fixed width="95" v-if="false"> + <el-table-column + prop="rbid" + slot="" + label="澶栭敭" + align="center" + fixed + width="95" + v-if="false" + > <template slot-scope="scope"> <el-input v-model="scope.row.rbid" placeholder="rbid" /> </template> </el-table-column> - <el-table-column prop="persontype" slot="" label="浜哄憳绫诲埆" align="center" fixed width="130"> + <el-table-column + prop="persontype" + slot="" + label="浜哄憳绫诲埆" + align="center" + fixed + width="130" + > <template slot-scope="scope"> - <el-select v-model="scope.row.persontype" value-key="value" placeholder="浜哄憳绫诲埆" - @change="getPersons(scope.row)"> - <el-option v-for="dict in dict.type.sys_travelexpensebelong" :key="dict.value" :label="dict.label" - :value="dict.label"></el-option> + <el-select + v-model="scope.row.persontype" + value-key="value" + placeholder="浜哄憳绫诲埆" + @change="getPersons(scope.row)" + > + <el-option + v-for="dict in dict.type.sys_travelexpensebelong" + :key="dict.value" + :label="dict.label" + :value="dict.label" + ></el-option> </el-select> </template> </el-table-column> - <el-table-column prop="personname" slot="" label="鏀舵浜�" align="center" fixed width="110"> + <el-table-column + prop="personname" + slot="" + label="鏀舵浜�" + align="center" + fixed + width="110" + > <template slot-scope="scope"> - <el-select v-model="scope.row.personname" clearable filterable allow-create ref="getReportname" - default-first-option placeholder="璇烽�夋嫨" @change="getAccountinfo2(scope.row, scope.row.persontype)"> - <el-option v-for="item in personsSel" :key="item.reportNo" :label="item.reportName" - :value="item.reportName"> + <el-select + v-model="scope.row.personname" + clearable + filterable + allow-create + ref="getReportname" + default-first-option + placeholder="璇烽�夋嫨" + @change="getAccountinfo2(scope.row, scope.row.persontype)" + > + <el-option + v-for="item in personsSel" + :key="item.reportNo" + :label="item.reportName" + :value="item.reportName" + > </el-option> </el-select> </template> </el-table-column> - <el-table-column prop="bankname" slot="" label="閾惰鍚嶇О" align="center" fixed width="200"> + <el-table-column + prop="bankname" + slot="" + label="閾惰鍚嶇О" + align="center" + fixed + width="200" + > <template slot-scope="scope"> <el-input v-model="scope.row.bankname" placeholder="閾惰鍚嶇О" /> </template> </el-table-column> - <el-table-column prop="bankcardno" slot="" label="閾惰鍗″彿" align="center" fixed width="200"> + <el-table-column + prop="bankcardno" + slot="" + label="閾惰鍗″彿" + align="center" + fixed + width="200" + > <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="amount" slot="" label="鎵撴閲戦" align="center" fixed width="130"> + <el-table-column + prop="amount" + slot="" + label="鎵撴閲戦" + align="center" + fixed + width="130" + > <template slot-scope="scope"> <el-input v-model="scope.row.amount" placeholder="鎵撴閲戦" /> </template> </el-table-column> - <el-table-column prop="remark" slot="" label="璇锋璇存槑" align="center" fixed> + <el-table-column + prop="remark" + slot="" + label="璇锋璇存槑" + align="center" + fixed + > <template slot-scope="scope"> <el-input v-model="scope.row.remark" placeholder="璇存槑" /> </template> @@ -425,35 +814,74 @@ </el-date-picker> </template> </el-table-column>--> - <el-table-column label="鎿嶄綔" align="center" width="100" v-if="operationType == 'edit'"> + <el-table-column + label="鎿嶄綔" + align="center" + width="100" + v-if="operationType == 'edit'" + > <template slot-scope="scope"> - <el-button type="text" size="mini" @click="addPayeeRow(scope.$index)">鏂板</el-button> - <el-button @click.native.prevent=" - deletePayeeRow(scope.$index, rbPayees, scope.row) - " type="text" size="small"> + <el-button + type="text" + size="mini" + @click="addPayeeRow(scope.$index)" + >鏂板</el-button + > + <el-button + @click.native.prevent=" + deletePayeeRow(scope.$index, rbPayees, scope.row) + " + type="text" + size="small" + > 鍒犻櫎 </el-button> </template> </el-table-column> </el-table> </el-row> - <el-row style="margin-top: 25px; margin-bottom: 5px" v-if="operationType != 'edit'"> + <el-row + style="margin-top: 25px; margin-bottom: 5px" + v-if="operationType != 'edit'" + > <el-col :span="20">瀹℃牳璁板綍</el-col> </el-row> <el-row v-if="operationType != 'add'"> <el-table :data="fundflowList" border> - <el-table-column label="瀹℃牳鏃ユ湡" align="center" width="200" prop="createTime" /> - <el-table-column label="瀹℃牳浜�" align="center" width="150" prop="checkusername" /> - <el-table-column label="瀹℃牳缁撴灉" align="center" width="200" prop="flowconclusion"> + <el-table-column + label="瀹℃牳鏃ユ湡" + align="center" + width="200" + prop="createTime" + /> + <el-table-column + label="瀹℃牳浜�" + align="center" + width="150" + 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"> @@ -472,8 +900,18 @@ </el-row> </el-form> <div slot="footer" class="dialog-footer"> - <el-button type="primary" @click="submitForm" v-if="operationType == 'edit'">淇� 瀛�</el-button> - <el-button type="primary" @click="checksubmit" v-if="operationType == 'check'">鎻� 浜�</el-button> + <el-button + type="primary" + @click="submitForm" + v-if="operationType == 'edit'" + >淇� 瀛�</el-button + > + <el-button + type="primary" + @click="checksubmit" + v-if="operationType == 'check'" + >鎻� 浜�</el-button + > <!--<el-button @click="cancel">閫� 鍑�</el-button>--> </div> </div> @@ -482,12 +920,31 @@ <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 @@ -501,7 +958,13 @@ </div> <div v-if="this.previewpdf" class="pdfimgmin"> - <img :src="pdfimg" /> + <!-- <img :src="pdfimg" /> --> + <el-image + style="width: 100px; height: 100px" + :src="pdfimg" + :preview-src-list="pdfimgsrcList" + > + </el-image> </div> <div v-else class="pdfimgmins">{{ hintitle }}</div> </div> @@ -590,6 +1053,7 @@ value: 0, label: "" }, + pdfimgsrcList: [], hintitle: "閫変腑宸︿晶宸蹭笂浼犳枃浠堕瑙堟煡鐪�", atpresent: "", @@ -750,9 +1214,14 @@ this.handleCheck(curId); } }, + updated() { + this.$nextTick(() => { + this.$refs["table"].doLayout(); + }); + }, methods: { - handleUploadError() { }, + handleUploadError() {}, remove(file, fileList) { const rbDetails = [...this.rbDetails]; @@ -805,6 +1274,8 @@ this.previewpdf = true; if (item.url) { this.pdfimg = item.url; + this.pdfimgsrcList=[] + this.pdfimgsrcList.push(item.url); } else { this.pdfimg = item.response.url; } @@ -820,6 +1291,9 @@ treeselect().then(response => { this.deptOptions = response.data; }); + }, + cellCilicksa(row) { + console.log(row); }, //鑾峰彇浜哄憳鍒楄〃 @@ -912,7 +1386,7 @@ row.days = ( Math.floor( Math.abs(Date.parse(row.starttime) - Date.parse(row.endtime)) / - (1000 * 3600 * 24) + (1000 * 3600 * 24) ) + 1 ).toString(); } else { @@ -951,14 +1425,15 @@ //浼欓璐硅ˉ鍔╋細鍩庡競锛堣タ钘忥紝鏂扮枂锛岄潚娴�.120锛夛紙鍏朵粬100锛� if (tempStr == "鏉窞") { row.foodallowance = ""; - } - else if (tempStr == "瑗胯棌" || tempStr == "鏂扮枂" || tempStr == "闈掓捣") { + } else if ( + tempStr == "瑗胯棌" || + tempStr == "鏂扮枂" || + tempStr == "闈掓捣" + ) { row.foodallowance = (parseInt(row.days) * 120).toString(); - } - else { + } else { row.foodallowance = (parseInt(row.days) * 100).toString(); } - //璁$畻鍚堣 this.sumRowFee(row); @@ -1234,8 +1709,8 @@ this.form = response.data; this.fileListto = this.form.annexfiles ? this.form.annexfiles - .split(",") - .map(item => ({ url: item, name: item })) + .split(",") + .map(item => ({ url: item, name: item })) : []; this.form.recordstatus = response.data.recordstatus + ""; @@ -1279,7 +1754,6 @@ listFundflow(listFundflowparams).then(res => { this.fundflowList = res.rows; }); - }); }, @@ -1297,8 +1771,8 @@ //绁ㄦ嵁 this.fileListto = this.form.annexfiles ? this.form.annexfiles - .split(",") - .map(item => ({ url: item, name: item })) + .split(",") + .map(item => ({ url: item, name: item })) : []; //瀹℃牳鐘舵�� @@ -1358,8 +1832,8 @@ //绁ㄦ嵁 this.fileListto = this.form.annexfiles ? this.form.annexfiles - .split(",") - .map(item => ({ url: item, name: item })) + .split(",") + .map(item => ({ url: item, name: item })) : []; //瀹℃牳鐘舵�� @@ -1429,7 +1903,7 @@ this.open = false; this.$modal.msgSuccess("鎻愪氦瀹℃牳鎴愬姛!"); // 鍏抽棴绐楀彛 - this.$store.dispatch('tagsView/delView', this.$route) + this.$store.dispatch("tagsView/delView", this.$route); this.$router.go(-1); }); }, @@ -1547,7 +2021,7 @@ this.open = false; // 鍏抽棴绐楀彛 - this.$store.dispatch('tagsView/delView', this.$route) + this.$store.dispatch("tagsView/delView", this.$route); this.$router.go(-1); // this.getList(); @@ -1577,7 +2051,7 @@ this.open = false; // 鍏抽棴绐楀彛 - this.$store.dispatch('tagsView/delView', this.$route) + this.$store.dispatch("tagsView/delView", this.$route); this.$router.go(-1); }) .catch(err => { @@ -1593,7 +2067,7 @@ const ids = row.id || this.ids; this.$modal .confirm("鏄惁纭鍒犻櫎璇ユ潯璁板綍锛�") - .then(function () { + .then(function() { // 鍒犻櫎details鍐呯殑鏁版嵁 return delReimbursement(ids); }) @@ -1602,7 +2076,7 @@ this.getList(); this.$modal.msgSuccess("鍒犻櫎鎴愬姛"); }) - .catch(() => { }); + .catch(() => {}); }, /** 瀵煎嚭鎸夐挳鎿嶄綔 */ @@ -1618,7 +2092,7 @@ this.$download.name(response.msg); this.exportLoading = false; }) - .catch(() => { }); + .catch(() => {}); }, //鏂板涓�琛� @@ -1901,7 +2375,7 @@ this.form.amountrequested = allSum.toFixed(2); this.form.bigstrmoney = this.convertCurrency(this.form.amountrequested); - } catch { } + } catch {} }, //閲戦鏁板瓧杞崲鎴愬ぇ鍐� -- Gitblit v1.9.3