From 245514f4265faba31d0e778b41c6698d541baacc Mon Sep 17 00:00:00 2001 From: ZhangXianQiang <1135831638@qq.com> Date: 星期三, 10 四月 2024 15:23:32 +0800 Subject: [PATCH] Merge branch 'master' of http://42.193.1.25:9521/r/zgyw-ui --- src/views/system/calculate/record/index.vue | 414 +++++++++++++++++++--------------------------------------- 1 files changed, 138 insertions(+), 276 deletions(-) diff --git a/src/views/system/calculate/record/index.vue b/src/views/system/calculate/record/index.vue index 1c8e04b..e132a74 100644 --- a/src/views/system/calculate/record/index.vue +++ b/src/views/system/calculate/record/index.vue @@ -1,25 +1,25 @@ <template> <div class="app-container"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> - <el-form-item label="鏍哥畻瑙勫垯" prop="ruleName"> - <el-input - v-model="queryParams.ruleName" - placeholder="璇疯緭鍏ヨ鍒欏悕绉�" - clearable - @clear="handleQuery" - @keyup.enter.native="handleQuery" - /> + <el-form-item label="鍗曚綅鍚�" prop="checkUnitId"> + <el-select v-model="queryParams.checkUnitId" clearable @clear="handleQuery" placeholder="璇烽�夋嫨鍗曚綅"> + <el-option + label="鎴愰兘x杩愮淮" + value="1"> + </el-option> + <el-option + label="鎴愰兘a杩愮淮" + value="2"> + </el-option> + </el-select> </el-form-item> - <el-form-item label="鍒涘缓鏃堕棿" prop="createTime"> - <el-date-picker - v-model="daterangeCreateTime" - style="width: 240px" - value-format="yyyy-MM-dd HH:mm:ss" - type="daterange" - range-separator="-" - start-placeholder="寮�濮嬫棩鏈�" - end-placeholder="缁撴潫鏃ユ湡" - /> + <el-form-item label="鏍哥畻鏃ユ湡" prop="date" > + <el-date-picker clearable + v-model="queryParams.date" + type="date" + value-format="yyyy-MM-dd" + placeholder="璇烽�夋嫨鏍哥畻鏃ユ湡"> + </el-date-picker> </el-form-item> <el-form-item> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button> @@ -30,12 +30,23 @@ <el-row :gutter="10" class="mb8"> <el-col :span="1.5"> <el-button + type="primary" + plain + icon="el-icon-plus" + size="mini" + @click="handleAdd" + v-hasPermi="['system:record:add']" + >鏂板</el-button> + </el-col> + <el-col :span="1.5"> + <el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate" + v-hasPermi="['system:record:edit']" >淇敼</el-button> </el-col> <el-col :span="1.5"> @@ -46,118 +57,101 @@ size="mini" :disabled="multiple" @click="handleDelete" + v-hasPermi="['system:record:remove']" >鍒犻櫎</el-button> </el-col> -<!-- <el-col :span="1.5">--> -<!-- <el-button--> -<!-- type="warning"--> -<!-- plain--> -<!-- icon="el-icon-download"--> -<!-- size="mini"--> -<!-- @click="handleExport"--> -<!-- v-hasPermi="['system:checkRule:export']"--> -<!-- >瀵煎嚭</el-button>--> -<!-- </el-col>--> + <el-col :span="1.5"> + <el-button + type="warning" + plain + icon="el-icon-download" + size="mini" + @click="handleExport" + v-hasPermi="['system:record:export']" + >瀵煎嚭</el-button> + </el-col> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> </el-row> - <el-table v-loading="loading" :data="checkRuleList" @selection-change="handleSelectionChange"> + <el-table v-loading="loading" :data="recordList" @selection-change="handleSelectionChange"> <el-table-column type="selection" width="55" align="center" /> - <el-table-column label="鏍哥畻瑙勫垯" align="center" prop="ruleName" /> - <el-table-column label="鏍哥畻瀵硅薄" align="center" prop="category"> + <el-table-column label="鏍哥畻璁板綍鏃ユ湡" align="center" prop="date" width="180"> <template slot-scope="scope"> - <div v-if="scope.row.category === 1">瑙嗛鐩戞帶</div> - <div v-else-if="scope.row.category === 2">杞﹁締璇嗗埆</div> - <div v-else-if="scope.row.category === 3">浜鸿劯璇嗗埆</div> + <span>{{ parseTime(scope.row.date, '{y}-{m}-{d}') }}</span> </template> </el-table-column> - <el-table-column label="鍚堝悓鍚�" align="center" prop="ruleDetail" /> - <el-table-column label="閲戦" align="center" prop="ruleDetail" /> - <el-table-column label="鍒涘缓鏃堕棿" align="center" prop="createTime" /> - + <el-table-column label="鏍哥畻瑙勫垯" align="center" prop="ruleId"> + <template slot-scope="scope"> + <div v-if="scope.row.ruleId == 1">鎴愰兘x杩愮淮鑰冩牳缁撴灉搴旂敤瑙勫垯</div> + </template> + </el-table-column> + <el-table-column label="鍗曚綅鍚�" align="center" prop="unitId" > + <template slot-scope="scope"> + <div v-if="scope.row.unitId == 2">鎴愰兘x杩愮淮</div> + </template> + </el-table-column> + <el-table-column label="鎬绘湇鍔¤垂" align="center" prop="totalAmount" /> + <el-table-column label="鎵e噺鏈嶅姟璐�" align="center" prop="deductAmount" /> + <el-table-column label="鑰冩牳鍒嗘暟" align="center" prop="score" /> <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width"> - <template slot-scope="scope"> - <el-button - size="mini" - type="text" - icon="el-icon-s-check" - @click="handleAudit(scope.row)" - v-hasPermi="['check:rule:audit']" - >瀹℃牳</el-button> - <el-button - size="mini" - type="text" - icon="el-icon-edit" - @click="handleUpdate(scope.row)" - >淇敼</el-button> - <el-button - size="mini" - type="text" - icon="el-icon-delete" - @click="handleDelete(scope.row)" - >鍒犻櫎</el-button> - </template> - </el-table-column> - </el-table> + <template slot-scope="scope"> + <el-button + size="mini" + type="text" + icon="el-icon-edit" + @click="handleUpdate(scope.row)" + v-hasPermi="['system:record:edit']" + >淇敼</el-button> + <el-button + size="mini" + type="text" + icon="el-icon-delete" + @click="handleDelete(scope.row)" + v-hasPermi="['system:record:remove']" + >鍒犻櫎</el-button> + </template> + </el-table-column> + </el-table> - <pagination - v-show="total>0" - :total="total" - :page.sync="queryParams.pageNum" - :limit.sync="queryParams.pageSize" - @pagination="getList" - /> - <div> - <!-- 娣诲姞鎴栦慨鏀硅�冩牳瑙勫垯瀵硅瘽妗� --> - <el-dialog :title="title" :visible.sync="open" width="600px" append-to-body> - <el-form ref="form" :model="form" :rules="rules" label-width="80px"> - <el-form-item label="瑙勫垯鍚嶇О" prop="ruleName"> - <el-input v-model="form.ruleName" placeholder="璇疯緭鍏ヨ鍒欏悕绉�" /> - </el-form-item> - <el-form-item label="瑙勫垯绫诲瀷" prop="category"> - <el-select v-model="form.category" placeholder="瑙勫垯绫诲瀷"> + <pagination + v-show="total>0" + :total="total" + :page.sync="queryParams.pageNum" + :limit.sync="queryParams.pageSize" + @pagination="getList" + /> + + <!-- 娣诲姞鎴栦慨鏀规牳绠楄褰曞璇濇 --> + <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> + <el-form ref="form" :model="form" :rules="rules" label-width="100px"> + <el-form-item label="鏍哥畻瀵硅薄" prop="checkUnitId"> + <el-select v-model="queryParams.checkUnitId" clearable @clear="handleQuery" placeholder="鏍哥畻瀵硅薄"> <el-option - v-for="item in categoryList" - :key="item.id" - :label="item.value" - :value="item.id"> + label="鎴愰兘x杩愮淮" + value="1"> + </el-option> + <el-option + label="鎴愰兘a杩愮淮" + value="2"> </el-option> </el-select> </el-form-item> - <el-form-item label="瑙勫垯鎻忚堪" prop="ruleDetail"> - <el-input v-model="form.ruleDetail" type="textarea" show-word-limit maxlength="150" placeholder="璇疯緭鍏ヨ鍒欐弿杩�"/> + <el-form-item label="鏍哥畻璁板綍鏃ユ湡" prop="date" > + <el-date-picker clearable + v-model="form.date" + type="date" + value-format="yyyy-MM-dd" + placeholder="璇烽�夋嫨鏍哥畻璁板綍鏃ユ湡"> + </el-date-picker> </el-form-item> - <el-form-item label="鍙傛暟閰嶇疆" prop="ruleDetail"> - <div class="row-warp"> - <div class="row"> - <div class="row-left">鍙傛暟鍚�</div> - <div class="row-right">鏉′欢</div> - </div> - <div class="row"> - <div class="row-left">澶╃綉瑙嗛鐐逛綅鏁�</div> - <div class="row-right"> - <div>涓嶅皯浜�</div> - <div> - <el-input class="input-w" type="number" v-model="form.videoPointNum"/>{{" %"}} - </div> - </div> - </div> - <div class="row"> - <div class="row-left">杞﹁締鍗″彛鐐逛綅鏁�</div> - <div class="row-right"> - <div>涓嶅皯浜�</div> - <div><el-input class="input-w" type="number" v-model="form.vehicleCheckpointNum"/></div>{{" %"}} - </div> - </div> - <div class="row"> - <div class="row-left">浜鸿劯鍗″彛鐐逛綅鏁�</div> - <div class="row-right"> - <div>涓嶅皯浜�</div> - <div> - <el-input class="input-w" type="number" v-model="form.faceChceckpointNum" /></div>{{" %"}} - </div> - </div> - </div> + <el-form-item label="鎬绘湇鍔¤垂" prop="totalAmount"> + <el-input v-model="form.totalAmount" placeholder="璇疯緭鍏ユ�绘湇鍔¤垂" /> + </el-form-item> + <el-form-item label="鎵e噺鏈嶅姟璐�" prop="deductAmount"> + <el-input v-model="form.deductAmount" placeholder="璇疯緭鍏ユ墸鍑忔湇鍔¤垂" /> + </el-form-item> + <el-form-item label="鑰冩牳鍒嗘暟" prop="score"> + <el-input v-model="form.score" placeholder="璇疯緭鍏ヨ�冩牳鍒嗘暟" /> </el-form-item> </el-form> <div slot="footer" class="dialog-footer"> @@ -166,83 +160,13 @@ </div> </el-dialog> </div> - - <!-- 瀹℃牳鑰冩牳瑙勫垯瀵硅瘽妗� --> - <el-dialog :title="title" :visible.sync="auditOpen" width="600px" append-to-body> - <el-form ref="form" :model="form" :rules="rules" label-width="80px"> - <el-form-item label="瑙勫垯鍚嶇О" prop="ruleName"> - <el-input v-model="form.ruleName" placeholder="璇疯緭鍏ヨ鍒欏悕绉�" disabled/> - </el-form-item> - <el-form-item label="瑙勫垯绫诲瀷" prop="category"> - <el-select v-model="form.category" placeholder="瑙勫垯绫诲瀷" disabled> - <el-option - v-for="item in categoryList" - :key="item.id" - :label="item.value" - :value="item.id"> - </el-option> - </el-select> - </el-form-item> - <el-form-item label="瑙勫垯鎻忚堪" prop="ruleDetail"> - <el-input v-model="form.ruleDetail" type="textarea" show-word-limit maxlength="150" placeholder="璇疯緭鍏ヨ鍒欐弿杩�" disabled/> - </el-form-item> - <el-form-item label="鍙傛暟閰嶇疆" prop="ruleDetail" disabled> - <div class="row-warp"> - <div class="row"> - <div class="row-left">鍙傛暟鍚�</div> - <div class="row-right">鏉′欢</div> - </div> - <div class="row"> - <div class="row-left">澶╃綉瑙嗛鐐逛綅鏁�</div> - <div class="row-right"> - <div>涓嶅皯浜�</div> - <div> - <el-input class="input-w" type="number" v-model="form.videoPointNum" disabled/> - </div> - </div> - </div> - <div class="row"> - <div class="row-left">杞﹁締鍗″彛鐐逛綅鏁�</div> - <div class="row-right"> - <div>涓嶅皯浜�</div> - <div><el-input class="input-w" type="number" v-model="form.vehicleCheckpointNum" disabled/></div> - </div> - </div> - <div class="row"> - <div class="row-left">浜鸿劯鍗″彛鐐逛綅鏁�</div> - <div class="row-right"> - <div>涓嶅皯浜�</div> - <div> - <el-input class="input-w" type="number" v-model="form.faceChceckpointNum" disabled/></div> - </div> - </div> - </div> - </el-form-item> - <el-form-item label="瀹℃牳缁撴灉" prop="auditState" > - <el-radio-group v-model="form.auditState"> - <el-radio :label="1">閫氳繃</el-radio> - <el-radio :label="2">椹冲洖</el-radio> - </el-radio-group> - </el-form-item> - <el-form-item label="瀹℃牳璇存槑" prop="auditDescription" > - <el-input v-model="form.auditDescription" type="textarea" show-word-limit maxlength="100" /> - </el-form-item> - </el-form> - <div slot="footer" class="dialog-footer"> - <el-button type="primary" @click="submitForm">纭� 瀹�</el-button> - <el-button @click="cancel">鍙� 娑�</el-button> - </div> - </el-dialog> - - </div> </template> <script> -import { listCheckRule, getCheckRule, delCheckRule, addCheckRule, updateCheckRule } from "@/api/platform/check-rule"; +import { listRecord, getRecord, delRecord, addRecord, updateRecord } from "@/api/platform/calculate-record"; export default { - name: "CheckRule", - dicts: ['platform_audit_state'], + name: "Record", data() { return { // 閬僵灞� @@ -257,34 +181,29 @@ showSearch: true, // 鎬绘潯鏁� total: 0, - // 杩愮淮绫诲瀷 - categoryList: [ - { id: 1, value: '瑙嗛鐩戞帶' }, - { id: 2, value: '杞﹁締璇嗗埆' }, - { id: 3, value: '浜鸿劯璇嗗埆' }, - ], - // 鑰冩牳瑙勫垯琛ㄦ牸鏁版嵁 - checkRuleList: [], - daterangeCreateTime: [], + // 鏍哥畻璁板綍琛ㄦ牸鏁版嵁 + recordList: [], // 寮瑰嚭灞傛爣棰� title: "", // 鏄惁鏄剧ず寮瑰嚭灞� open: false, - // 鏄惁鏄剧ず寮瑰嚭灞� - auditOpen: false, // 鏌ヨ鍙傛暟 queryParams: { pageNum: 1, pageSize: 10, - ruleName: null, - createTime: null, + date: null, + ruleId: null, + unitId: null, + totalAmount: null, + deductAmount: null, + score: null }, // 琛ㄥ崟鍙傛暟 form: {}, // 琛ㄥ崟鏍¢獙 rules: { - ruleName: [ - { required: true, message: "瑙勫垯鍚嶇О涓嶈兘涓虹┖", trigger: "blur" } + id: [ + { required: true, message: "$comment涓嶈兘涓虹┖", trigger: "blur" } ], } }; @@ -293,15 +212,11 @@ this.getList(); }, methods: { - /** 鏌ヨ鑰冩牳瑙勫垯鍒楄〃 */ + /** 鏌ヨ鏍哥畻璁板綍鍒楄〃 */ getList() { this.loading = true; - if (null != this.daterangeCreateTime && '' != this.daterangeCreateTime) { - this.queryParams["start"] = this.daterangeCreateTime[0]; - this.queryParams["end"] = this.daterangeCreateTime[1]; - } - listCheckRule(this.queryParams).then(response => { - this.checkRuleList = response.data; + listRecord(this.queryParams).then(response => { + this.recordList = response.rows; this.total = response.total; this.loading = false; }); @@ -309,21 +224,18 @@ // 鍙栨秷鎸夐挳 cancel() { this.open = false; - this.auditOpen = false; this.reset(); }, // 琛ㄥ崟閲嶇疆 reset() { this.form = { id: null, - ruleName: null, - ruleDetail: null, - videoPointNum: null, - vehicleCheckpointNum: null, - faceChceckpointNum: null, - createTime: null, - updateTime: null, - deleted: null + date: null, + ruleId: null, + unitId: null, + totalAmount: null, + deductAmount: null, + score: null }; this.resetForm("form"); }, @@ -347,27 +259,16 @@ handleAdd() { this.reset(); this.open = true; - this.title = "娣诲姞鑰冩牳瑙勫垯"; + this.title = "娣诲姞鏍哥畻璁板綍"; }, /** 淇敼鎸夐挳鎿嶄綔 */ handleUpdate(row) { this.reset(); const id = row.id || this.ids - getCheckRule(id).then(response => { + getRecord(id).then(response => { this.form = response.data; this.open = true; - this.title = "淇敼鑰冩牳瑙勫垯"; - - }); - }, - /** 瀹℃牳鎸夐挳鎿嶄綔 */ - handleAudit(row) { - this.reset(); - const id = row.id || this.ids - getCheckRule(id).then(response => { - this.form = response.data; - this.auditOpen = true; - this.title = "瀹℃牳鑰冩牳瑙勫垯"; + this.title = "淇敼鏍哥畻璁板綍"; }); }, /** 鎻愪氦鎸夐挳 */ @@ -375,17 +276,15 @@ this.$refs["form"].validate(valid => { if (valid) { if (this.form.id != null) { - updateCheckRule(this.form).then(response => { + updateRecord(this.form).then(response => { this.$modal.msgSuccess("淇敼鎴愬姛"); this.open = false; - this.auditOpen = false; this.getList(); }); } else { - addCheckRule(this.form).then(response => { + addRecord(this.form).then(response => { this.$modal.msgSuccess("鏂板鎴愬姛"); this.open = false; - this.auditOpen = false; this.getList(); }); } @@ -395,56 +294,19 @@ /** 鍒犻櫎鎸夐挳鎿嶄綔 */ handleDelete(row) { const ids = row.id || this.ids; - this.$modal.confirm('鏄惁纭鍒犻櫎鑰冩牳瑙勫垯缂栧彿涓�"' + ids + '"鐨勬暟鎹」锛�').then(function() { - return delCheckRule(ids); + this.$modal.confirm('鏄惁纭鍒犻櫎鏍哥畻璁板綍缂栧彿涓�"' + ids + '"鐨勬暟鎹」锛�').then(function() { + return delRecord(ids); }).then(() => { this.getList(); this.$modal.msgSuccess("鍒犻櫎鎴愬姛"); }).catch(() => {}); }, - /** 瀵煎嚭鎸夐挳鎿嶄綔 */ handleExport() { - this.download('system/checkRule/export', { + this.download('system/record/export', { ...this.queryParams - }, `checkRule_${new Date().getTime()}.xlsx`) + }, `record_${new Date().getTime()}.xlsx`) } } }; </script> - -<style scoped> -.input-w { - margin-left: 5px; - width: 70px; -} -.row-warp { - display: flex; - flex-direction: column; - justify-content: center; - text-align: center; - border: solid 1px gray; - /*padding: 3px;*/ -} -.row { - display: flex; - flex-direction: row; - justify-content: center; - align-items: center; - border-bottom: solid 1px gray; - padding: 3px; -} -.row:last-of-type { - border-bottom: none; -} -.row-left { - flex: 2; - border-right: solid 1px gray; -} -.row-right { - flex: 4; - display: flex; - flex-direction: row; - justify-content: center; -} -</style> -- Gitblit v1.8.0