From 4d35cc54167abbaffe090a309ef4c9aaf171e579 Mon Sep 17 00:00:00 2001
From: wl <173@qq.com>
Date: 星期一, 25 七月 2022 14:00:56 +0800
Subject: [PATCH] 添加和修改
---
src/views/cause/Entry.vue | 468 +++++++++++++++++++++++++++++++++++++++++----------
src/api/cause.js | 11 +
src/plugins/element.js | 2
3 files changed, 382 insertions(+), 99 deletions(-)
diff --git a/src/api/cause.js b/src/api/cause.js
index 1eac376..e54a1cb 100644
--- a/src/api/cause.js
+++ b/src/api/cause.js
@@ -17,8 +17,15 @@
return request({
url: '/cause/deleteCause',
method: 'delete',
- params:{
- id:params
+ params: {
+ id: params
}
})
+}
+
+export function user(params) {
+ return request({
+ url: '/cause/getManagerList',
+ method: 'get',
+ })
}
\ No newline at end of file
diff --git a/src/plugins/element.js b/src/plugins/element.js
index bcf8fab..98c570d 100644
--- a/src/plugins/element.js
+++ b/src/plugins/element.js
@@ -17,7 +17,5 @@
Vue.use(Button).use(Container).use(Header).use(Aside).use(Menu).use(Submenu).use(MenuItem).use(Main).use(Icon).use(Card)
.use(Col).use(Row).use(Card).use(Table).use(TableColumn).use(Form).use(FormItem).use(Input).use(Select).use(Option)
-
.use(Pagination).use(Dialog).use(Upload).use(DatePicker).use(Image)
-
Vue.prototype.$message = Message
diff --git a/src/views/cause/Entry.vue b/src/views/cause/Entry.vue
index 534a1b8..54c4799 100644
--- a/src/views/cause/Entry.vue
+++ b/src/views/cause/Entry.vue
@@ -16,7 +16,7 @@
<el-button type="primary" @click="search">鏌ヨ</el-button>
</el-form-item>
<el-form-item>
- <el-button type="primary" @click="addAduitDialogVisible=true">娣诲姞</el-button>
+ <el-button type="primary" @click="addAduitDialogVisible = true">娣诲姞</el-button>
</el-form-item>
<el-form-item>
@@ -35,7 +35,7 @@
</el-table-column>
<el-table-column prop="reportNumber" label="鎶ユ浜烘暟" width="100" header-align="center" align="center">
</el-table-column>
- <el-table-column prop="firstTime" label="鏈�鏃╁彂妗堟棩鏈�" width="150" header-align="center" align="center">
+ <el-table-column prop="firstTime" label="鏈�鏃╁彂妗堟棩鏈�" width="160" header-align="center" align="center">
</el-table-column>
<el-table-column prop="status" label="妗堜欢鐘舵��" width="110" header-align="center" align="center">
<template slot-scope="scope">
@@ -52,8 +52,8 @@
</el-table-column>
<el-table-column label="鎿嶄綔" width="240" header-align="center" align="center">
<template slot-scope="scope">
- <el-button type="text" size="medium" @click="handleAudit(scope.row)">缂栬緫</el-button>
- <el-button type="text" size="medium" @click="handleAudit(scope.row)">鎶ユ浜哄憳</el-button>
+ <el-button type="text" size="medium" @click="updateCauseDialogVisible(scope.row)">缂栬緫</el-button>
+ <el-button type="text" size="medium" @click="reporterVisible=true">鎶ユ浜哄憳</el-button>
<el-button type="text" size="medium" @click="handleAudit(scope.row)">缇ゅ叕鍛�</el-button>
<el-button type="text" size="medium" @click="removeCause(scope.row.id)" style="color:#ff0000">鍒犻櫎
</el-button>
@@ -65,95 +65,249 @@
layout="prev, pager, next" :total="total"></el-pagination>
</el-card>
- <!--娣诲姞浜哄憳寮圭獥-->
- <el-dialog title="娣诲姞" :visible.sync="addAduitDialogVisible" width="50%" :before-close="addAduitClose">
- <el-row :gutter="15">
- <el-form ref="addAduitForm" :model="auditFrom" :rules="rules" size="medium" label-width="100px">
- <el-col :span="12">
- <el-form-item label="鎶ユ浜� " prop="reporterName">
- <el-input v-model="auditFrom.reporterName" placeholder="璇疯緭鍏ユ姤妗堜汉 " clearable
- :style="{ width: '100%' }">
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鎵嬫満鍙风爜" prop="mobile">
- <el-input v-model="auditFrom.mobile" placeholder="璇疯緭鍏ユ墜鏈哄彿鐮�" clearable :style="{ width: '100%' }">
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="韬唤璇佸彿" prop="idcard">
- <el-input v-model="auditFrom.idcard" placeholder="璇疯緭鍏ヨ韩浠借瘉鍙�" clearable :style="{ width: '100%' }">
- </el-input>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="琚獥鏃堕棿" prop="cheatTime">
- <el-date-picker v-model="auditFrom.tmpTime" type="datetime" placeholder="閫夋嫨鏃ユ湡鏃堕棿"
- :style="{ width: '100%' }" format="yyyy-MM-dd HH:mm:ss" :value-format="auditFrom.cheatTime">
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="娑夋閲戦" prop="amountInvolved">
- <el-input v-model="auditFrom.amountInvolved" placeholder="璇疯緭鍏ユ秹妗堥噾棰�" clearable
- :style="{ width: '100%' }"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="妗堜欢鎻忚堪" prop="reportDescription">
- <el-input v-model="auditFrom.reportDescription" placeholder="璇疯緭鍏ユ浠舵弿杩�" clearable
- :style="{ width: '100%' }"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="琛ュ厖淇℃伅" prop="information">
- <el-input v-model="auditFrom.information" type="textarea" placeholder="璇疯緭鍏ヨˉ鍏呬俊鎭�"
- :autosize="{ minRows: 4, maxRows: 4 }" :style="{ width: '100%' }"></el-input>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-form-item label="鍏宠仈妗堜欢" prop="causeId">
- <el-select v-model="auditFrom.causeId" placeholder="璇烽�夋嫨涓嬫媺閫夋嫨" clearable :style="{ width: '50%' }">
- <el-option v-for="item in causeOptions" :key="item.id" :label="item.name" :value="item.id">
- </el-option>
- </el-select>
- </el-form-item>
- </el-col>
- </el-form>
- </el-row>
- <span slot="footer" class="dialog-footer">
- <el-button @click="addAduitDialogVisible = false">鍙� 娑�</el-button>
- <el-button type="primary" @click="addAduit">纭� 瀹�</el-button>
- </span>
- </el-dialog>
+ <!--娣诲姞妗堜欢寮圭獥-->
+ <el-dialog title="娣诲姞妗堜欢" :visible.sync="addAduitDialogVisible" width="50%" :before-close="addAduitClose">
+ <el-row :gutter="15">
+ <el-form ref="addAduitForm" :model="causeForm" :rules="rules" size="medium" label-width="100px">
+ <el-col :span="18">
+ <el-form-item label="妗堜欢缂栧彿 " prop="number">
+ <el-input v-model="causeForm.number" clearable :style="{ width: '100%' }">
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="18">
+ <el-form-item label="妗堜欢鍚嶇О" prop="name">
+ <el-input v-model="causeForm.name" clearable :style="{ width: '100%' }">
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="18">
+ <el-form-item label="鏈�鏃╁彂妗堟椂闂�" prop="firstTime">
+ <el-date-picker v-model="causeForm.firstTime" type="datetime" placeholder="閫夋嫨鏃ユ湡鏃堕棿"
+ :style="{ width: '100%' }" value-format="yyyy-MM-dd HH:mm:ss">
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
+ <el-col :span="18">
+ <el-form-item label="妗堜欢鐘舵��" prop="status">
+ <el-select v-model="causeForm.status" placeholder="璇烽�夋嫨涓嬫媺閫夋嫨" clearable :style="{ width: '100%' }">
+ <el-option v-for="item in causeOptions" :key="item.value" :label="item.label" :value="item.value">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="18">
+ <el-form-item label="璐熻矗浜�" prop="userId">
+ <el-select v-model="causeForm.userId" placeholder="璇烽�夋嫨涓嬫媺閫夋嫨" clearable :style="{ width: '100%' }">
+ <el-option v-for="item in user" :key="item.userId" :label="item.userName" :value="item.userId"
+ :disabled="item.disabled"></el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="18">
+ <el-form-item label="妗堜欢鎻忚堪" prop="description">
+ <el-input v-model="causeForm.description" clearable :style="{ width: '100%', height: '50%' }"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-form>
+ </el-row>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="addAduitDialogVisible = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="createCause">纭� 瀹�</el-button>
+ </span>
+ </el-dialog>
+
+ <!--淇敼妗堜欢寮圭獥-->
+ <el-dialog title="淇敼妗堜欢" :visible.sync="updateAduitDialogVisible" width="50%" :before-close="updateAduitClose">
+ <el-row :gutter="15">
+ <el-form ref="addAduitForm" :model="updataCauseForm" :rules="rules" size="medium" label-width="100px">
+ <el-col :span="18">
+ <el-form-item label="妗堜欢缂栧彿 " prop="number">
+ <el-input v-model="updataCauseForm.number" clearable :style="{ width: '100%' }">
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="18">
+ <el-form-item label="妗堜欢鍚嶇О" prop="name">
+ <el-input v-model="updataCauseForm.name" clearable :style="{ width: '100%' }">
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="18">
+ <el-form-item label="鏈�鍙戞棭妗堟椂闂�" prop="firstTime">
+ <el-date-picker v-model="updataCauseForm.firstTime" type="datetime" placeholder="閫夋嫨鏃ユ湡鏃堕棿"
+ :style="{ width: '100%' }" value-format="yyyy-MM-dd HH:mm:ss">
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
+ <el-col :span="18">
+ <el-form-item label="妗堜欢鐘舵��" prop="status">
+ <el-select v-model="updataCauseForm.status" clearable :style="{ width: '100%' }">
+ <el-option v-for="item in causeOptions" :key="item.value" :label="item.label" :value="item.value">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="18">
+ <el-form-item label="璐熻矗浜�" prop="userId">
+ <el-select v-model="updataCauseForm.userName" clearable :style="{ width: '100%' }">
+ <el-option v-for="item in user" :key="item.userId" :label="item.userName" :value="item.userId"
+ :disabled="item.disabled"></el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="18">
+ <el-form-item label="妗堜欢鎻忚堪" prop="description">
+ <el-input v-model="updataCauseForm.description" clearable :style="{ width: '100%', height: '50%' }">
+ </el-input>
+ </el-form-item>
+ </el-col>
+ </el-form>
+ </el-row>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="updateAduitDialogVisible = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="updateCause">纭� 瀹�</el-button>
+ </span>
+ </el-dialog>
+
+ <!--淇敼妗堜欢寮圭獥-->
+ <el-dialog title="淇敼妗堜欢" :visible.sync="updateAduitDialogVisible" width="50%" :before-close="updateAduitClose">
+ <el-row :gutter="15">
+ <el-form ref="addAduitForm" :model="updataCauseForm" :rules="rules" size="medium" label-width="100px">
+ <el-col :span="18">
+ <el-form-item label="妗堜欢缂栧彿 " prop="number">
+ <el-input v-model="updataCauseForm.number" clearable :style="{ width: '100%' }">
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="18">
+ <el-form-item label="妗堜欢鍚嶇О" prop="name">
+ <el-input v-model="updataCauseForm.name" clearable :style="{ width: '100%' }">
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="18">
+ <el-form-item label="鏈�鍙戞棭妗堟椂闂�" prop="firstTime">
+ <el-date-picker v-model="updataCauseForm.firstTime" type="datetime" placeholder="閫夋嫨鏃ユ湡鏃堕棿"
+ :style="{ width: '100%' }" value-format="yyyy-MM-dd HH:mm:ss">
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
+ <el-col :span="18">
+ <el-form-item label="妗堜欢鐘舵��" prop="status">
+ <el-select v-model="updataCauseForm.status" clearable :style="{ width: '100%' }">
+ <el-option v-for="item in causeOptions" :key="item.value" :label="item.label" :value="item.value">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="18">
+ <el-form-item label="璐熻矗浜�" prop="userId">
+ <el-select v-model="updataCauseForm.userName" clearable :style="{ width: '100%' }">
+ <el-option v-for="item in user" :key="item.userId" :label="item.userName" :value="item.userId"
+ :disabled="item.disabled"></el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="18">
+ <el-form-item label="妗堜欢鎻忚堪" prop="description">
+ <el-input v-model="updataCauseForm.description" clearable :style="{ width: '100%', height: '50%' }">
+ </el-input>
+ </el-form-item>
+ </el-col>
+ </el-form>
+ </el-row>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="updateAduitDialogVisible = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="updateCause">纭� 瀹�</el-button>
+ </span>
+ </el-dialog>
+
+
+ <!--妗堜欢浜哄憳寮圭獥-->
+ <el-dialog title="鎶ユ浜哄憳" :visible.sync="reporterVisible" width="50%" :before-close="updateAduitClose">
+ <el-row :gutter="15">
+ <el-form ref="addAduitForm" :model="updataCauseForm" :rules="rules" size="medium" label-width="100px">
+ <el-col :span="18">
+ <el-form-item label="妗堜欢缂栧彿 " prop="number">
+ <el-input v-model="updataCauseForm.number" clearable :style="{ width: '100%' }">
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="18">
+ <el-form-item label="妗堜欢鍚嶇О" prop="name">
+ <el-input v-model="updataCauseForm.name" clearable :style="{ width: '100%' }">
+ </el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="18">
+ <el-form-item label="鏈�鍙戞棭妗堟椂闂�" prop="firstTime">
+ <el-date-picker v-model="updataCauseForm.firstTime" type="datetime" placeholder="閫夋嫨鏃ユ湡鏃堕棿"
+ :style="{ width: '100%' }" value-format="yyyy-MM-dd HH:mm:ss">
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
+ <el-col :span="18">
+ <el-form-item label="妗堜欢鐘舵��" prop="status">
+ <el-select v-model="updataCauseForm.status" clearable :style="{ width: '100%' }">
+ <el-option v-for="item in causeOptions" :key="item.value" :label="item.label" :value="item.value">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="18">
+ <el-form-item label="璐熻矗浜�" prop="userId">
+ <el-select v-model="updataCauseForm.userName" clearable :style="{ width: '100%' }">
+ <el-option v-for="item in user" :key="item.userId" :label="item.userName" :value="item.userId"
+ :disabled="item.disabled"></el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="18">
+ <el-form-item label="妗堜欢鎻忚堪" prop="description">
+ <el-input v-model="updataCauseForm.description" clearable :style="{ width: '100%', height: '50%' }">
+ </el-input>
+ </el-form-item>
+ </el-col>
+ </el-form>
+ </el-row>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="updateAduitDialogVisible = false">鍙� 娑�</el-button>
+ <el-button type="primary" @click="updateCause">纭� 瀹�</el-button>
+ </span>
+ </el-dialog>
</div>
</template>
<script>
import {
casueList,
- remove
+ remove,
+ user,
+ //saveSubject
} from '@/api/cause'
export default {
name: "Entry",
data() {
return {
- causeOptions: [],
- auditFrom: {
- reporterName: '',
- mobile: '',
- idcard: '',
- cheatTime: '',
- amountInvolved: '',
- reportDescription: '',
- information: '',
- reportMaterials: "",
- causeId: '',
- fileList: [],
- tmpTime: '',
+ causeForm: {
+ name: '',
+ number: '',
+ firstTime: '',
+ userId: '',
+ status: '',
+ description: '',
+ },
+ updataCauseForm: {
+ id: '',
+ name: '',
+ number: '',
+ firstTime: '',
+ userName: '',
+ status: '',
+ userId: '',
+ description: '',
},
casueList: [],
queryInfo: {
@@ -162,6 +316,8 @@
current: 1,
size: 10
},
+ user: [],
+ updateUser: [],
options: [
{
value: null,
@@ -185,11 +341,35 @@
},
{
value: '4',
+ label: '宸叉挙妗�'
+ }
+ ],
+ causeOptions: [
+ {
+ value: '0',
+ label: '鏈鏍�'
+ },
+ {
+ value: '1',
+ label: '涓嶄簣绔嬫'
+ },
+ {
+ value: '2',
+ label: '鍙楃悊涓�'
+ },
+ {
+ value: '3',
label: '宸茬粨妗�'
+ },
+ {
+ value: '4',
+ label: '宸叉挙妗�'
}
],
total: 0,
addAduitDialogVisible: false,
+ updateAduitDialogVisible: false,
+ reporterVisible:false,
rules: {
reporterName: [{
required: true,
@@ -235,28 +415,126 @@
}
},
created() {
- this.init()
+ this.init();
+ this.userList();
},
methods:
{
+ updateCauseDialogVisible(row) {
+ this.updateAduitDialogVisible = true,
+ this.updataCauseForm = Object.assign({}, row);
+ if (this.updataCauseForm.status == 0) {
+ this.updataCauseForm.status = '鏈鏍�';
+ };
+ if (this.updataCauseForm.status == 1) {
+ this.updataCauseForm.status = '涓嶄簣绔嬫';
+ };
+ if (this.updataCauseForm.status == 2) {
+ this.updataCauseForm.status = '鍙楃悊涓�';
+ };
+ if (this.updataCauseForm.status == 3) {
+ this.updataCauseForm.status = '宸茬粨妗�';
+ };
+ if (this.updataCauseForm.status == 4) {
+ this.updataCauseForm.status = '宸叉挙妗�';
+ };
+ }
+ ,
addAduitClose() {
this.addAduitDialogVisible = false
- this.$refs.addAduitForm.resetFields()
- this.picShow = ""
},
- addAduit() {
- this.$refs.addAduitForm.validate(async (vaild) => {
- if (!vaild) return this.$message.error('杈撳叆鏈夎')
- this.auditFrom.reportMaterials = this.auditFrom.fileList.map(i => i.data).join(',')
- report(this.auditFrom).then(res => {
- this.$message.success('鎻愪氦鎴愬姛')
- this.addAduitDialogVisible = false
- this.getList()
- }).catch(err => {
- this.addAduitClose()
- })
+ updateAduitClose() {
+ this.updateAduitDialogVisible = false
+ },
+ async createCause() {
+ let form = null;
+ form = this.causeForm;
+ const data = form;
+ this.$http.post('/api/cause/addCause',
+ data
+ ).then(res => {
+ if (res.data.code == 200) {
+ this.$message({
+ type: "success",
+ message: "娣诲姞鎴愬姛"
+ });
+ this.addAduitDialogVisible = false;
+ this.getList();
+ } else {
+ this.$message({
+ type: "error",
+ message: "琛ㄥ崟涓嶈兘涓虹┖"
+ })
+ }
})
},
+
+ userList() {
+ user().then(
+ res => this.user = res
+ )
+ },
+ async updateCause() {
+ let form = null;
+ form = this.updataCauseForm;
+ const data = form;
+ //saveSubject(params);
+ data.userId = data.userName;
+ for (let key in this.user) {
+ if (data.userId == this.user[key].userName) {
+ data.userId = this.user[key].userId;
+ }
+ }
+ if (data.status == '鏈鏍�') {
+ data.status = 0;
+ }
+ if (data.status == '涓嶄簣绔嬫') {
+ data.status = 1;
+ }
+ if (data.status == '鍙楃悊涓�') {
+ data.status = 2;
+ }
+ if (data.status == '宸茬粨妗�') {
+ data.status = 3;
+ }
+ if (data.status == '宸叉挙妗�') {
+ data.status = 4;
+ }
+ this.$http.put('/api/cause/updateCause?id=' + data.id,
+ data
+ ).then(res => {
+ if (res.data.code == 200) {
+ this.$message({
+ type: "success",
+ message: "淇敼鎴愬姛"
+ });
+ if (this.updataCauseForm.status == 0) {
+ this.updataCauseForm.status = '鏈鏍�';
+ };
+ if (this.updataCauseForm.status == 1) {
+ this.updataCauseForm.status = '涓嶄簣绔嬫';
+ };
+ if (this.updataCauseForm.status == 2) {
+ this.updataCauseForm.status = '鍙楃悊涓�';
+ };
+ if (this.updataCauseForm.status == 3) {
+ this.updataCauseForm.status = '宸茬粨妗�';
+ };
+ if (this.updataCauseForm.status == 4) {
+ this.updataCauseForm.status = '宸叉挙妗�';
+ };
+ this.updateAduitDialogVisible = false;
+ // location.reload();
+ this.getList();
+ } else {
+ this.$message({
+ type: "error",
+ message: "琛ㄥ崟涓嶈兘涓虹┖"
+ })
+ }
+ })
+
+ },
respond(res) {
if (res.code == 200) {
this.$message({
--
Gitblit v1.8.0