From 7d1b06c406be40b209a73019c00a49f7ec1b3f60 Mon Sep 17 00:00:00 2001
From: wl <173@qq.com>
Date: 星期四, 21 七月 2022 17:36:32 +0800
Subject: [PATCH] 案件录入添加
---
src/views/cause/Entry.vue | 173 +++++++++++++++++++++++++++++++++++++++++--
src/api/cause.js | 9 ++
src/plugins/element.js | 4
3 files changed, 175 insertions(+), 11 deletions(-)
diff --git a/src/api/cause.js b/src/api/cause.js
index 42421af..1eac376 100644
--- a/src/api/cause.js
+++ b/src/api/cause.js
@@ -12,4 +12,13 @@
url: '/cause/getCauseList',
method: 'get',
})
+}
+export function remove(params) {
+ return request({
+ url: '/cause/deleteCause',
+ method: 'delete',
+ params:{
+ id:params
+ }
+ })
}
\ No newline at end of file
diff --git a/src/plugins/element.js b/src/plugins/element.js
index b17ba14..98a3ac6 100644
--- a/src/plugins/element.js
+++ b/src/plugins/element.js
@@ -12,11 +12,11 @@
MenuItem,
Message, Option, Pagination,
Row, Select,
- Submenu, Table, TableColumn
+ Submenu, Table, TableColumn, Upload,
} from 'element-ui'
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(Pagination).use(Dialog).use(Upload).use(DatePicker)
Vue.prototype.$message = Message
diff --git a/src/views/cause/Entry.vue b/src/views/cause/Entry.vue
index 63f5e49..534a1b8 100644
--- a/src/views/cause/Entry.vue
+++ b/src/views/cause/Entry.vue
@@ -16,11 +16,12 @@
<el-button type="primary" @click="search">鏌ヨ</el-button>
</el-form-item>
<el-form-item>
- <el-button type="primary" @click="addDialogOpen">娣诲姞</el-button>
+ <el-button type="primary" @click="addAduitDialogVisible=true">娣诲姞</el-button>
</el-form-item>
+
<el-form-item>
- <el-upload name="multipartFile" class="upload-demo" action="/api/cause/upload "
- :before-upload="beforeAvatarUpload" :on-preview="handlePreview" :on-success="respond" :limit="1">
+ <el-upload name="multipartFile" class="upload-demo" action="/api/cause/upload " :show-file-list="false"
+ :before-upload="beforeAvatarUpload" :on-success="respond" :limit="1">
<el-button type="primary">瀵煎叆</el-button>
</el-upload>
</el-form-item>
@@ -50,28 +51,110 @@
<el-table-column prop="ctime" label="鍒涘缓鏃ユ湡" width="160" header-align="center" align="center">
</el-table-column>
<el-table-column label="鎿嶄綔" width="240" header-align="center" align="center">
- <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="handleAudit(scope.row)">缇ゅ叕鍛�</el-button>
- <el-button type="text" size="medium" @click="handleAudit(scope.row)" style="color:#ff0000">鍒犻櫎</el-button>
+ <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="handleAudit(scope.row)">缇ゅ叕鍛�</el-button>
+ <el-button type="text" size="medium" @click="removeCause(scope.row.id)" style="color:#ff0000">鍒犻櫎
+ </el-button>
+ </template>
</el-table-column>
</el-table>
</template>
<el-pagination @current-change="handleCurrentChange" :current-page="queryInfo.current" :page-size="queryInfo.size"
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>
</div>
</template>
<script>
import {
- casueList
+ casueList,
+ remove
} from '@/api/cause'
export default {
name: "Entry",
data() {
return {
+ causeOptions: [],
+ auditFrom: {
+ reporterName: '',
+ mobile: '',
+ idcard: '',
+ cheatTime: '',
+ amountInvolved: '',
+ reportDescription: '',
+ information: '',
+ reportMaterials: "",
+ causeId: '',
+ fileList: [],
+ tmpTime: '',
+ },
casueList: [],
queryInfo: {
cause: '',
@@ -106,6 +189,49 @@
}
],
total: 0,
+ addAduitDialogVisible: false,
+ rules: {
+ reporterName: [{
+ required: true,
+ message: '璇疯緭鍏ユ姤妗堜汉 ',
+ trigger: 'blur'
+ }],
+ mobile: [{
+ required: true,
+ message: '璇疯緭鍏ユ墜鏈哄彿鐮�',
+ trigger: 'blur'
+ }],
+ idcard: [{
+ required: true,
+ message: '璇疯緭鍏ヨ韩浠借瘉鍙�',
+ trigger: 'blur'
+ }],
+ tmpTime: [{
+ required: true,
+ message: '璇疯緭鍏ヨ楠楁椂闂�',
+ trigger: 'blur'
+ }],
+ amountInvolved: [{
+ required: true,
+ message: '璇疯緭鍏ユ秹妗堥噾棰�',
+ trigger: 'blur'
+ }],
+ reportDescription: [{
+ required: true,
+ message: '璇疯緭鍏ユ浠舵弿杩�',
+ trigger: 'blur'
+ }],
+ information: [{
+ required: true,
+ message: '璇疯緭鍏ヨˉ鍏呬俊鎭�',
+ trigger: 'blur'
+ }],
+ causeId: [{
+ required: true,
+ message: '璇烽�夋嫨涓嬫媺閫夋嫨',
+ trigger: 'change'
+ }],
+ },
}
},
created() {
@@ -113,6 +239,24 @@
},
methods:
{
+ 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()
+ })
+ })
+ },
respond(res) {
if (res.code == 200) {
this.$message({
@@ -126,6 +270,7 @@
type: 'error'
})
}
+ location.reload();
},
beforeAvatarUpload(file) {
let Xls = file.name.split('.');
@@ -159,7 +304,6 @@
res => {
this.total = res.data.data.total
this.casueList = res.data.data.records
- console.log(res.data.data.records);
}
)
@@ -172,6 +316,17 @@
handleCurrentChange(val) {
this.queryInfo.current = val;
this.getList();
+ },
+ removeCause(val) {
+ remove(val).then(
+ res => {
+ this.$message({
+ message: '鍒犻櫎鎴愬姛',
+ type: 'success'
+ });
+ this.getList();
+ }
+ )
}
}
}
--
Gitblit v1.8.0