From 7b7ebd1b9cb1f582b78981485780cad7d957f3f0 Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Tue, 09 Jul 2024 15:21:24 +0800
Subject: [PATCH] 无诈代码优化
---
src/views/home/index.vue | 2
vue.config.js | 18 ++
src/api/recordOur/outCardPopup.js | 9 +
src/components/Approval/Approval.vue | 28 ++
src/components/cardPopup/cardPopuponce.vue | 297 ++++++++++++++++++++++++++++++++++--
src/components/cardPopup/cardPopup.vue | 83 ++++------
6 files changed, 359 insertions(+), 78 deletions(-)
diff --git a/src/api/recordOur/outCardPopup.js b/src/api/recordOur/outCardPopup.js
index 7c76455..0182cc9 100644
--- a/src/api/recordOur/outCardPopup.js
+++ b/src/api/recordOur/outCardPopup.js
@@ -8,6 +8,13 @@
data: row
})
}
+export const update = (row) => {
+ return request({
+ url: '/api/blade-taskNoFraudReporting/taskNoFraudReporting/updateTwo',
+ method: 'post',
+ data: row
+ })
+}
export const uploadFile = (row) => {
return request({
@@ -35,4 +42,4 @@
type
}
})
-}
+}
\ No newline at end of file
diff --git a/src/components/Approval/Approval.vue b/src/components/Approval/Approval.vue
index 5a58daa..27da049 100644
--- a/src/components/Approval/Approval.vue
+++ b/src/components/Approval/Approval.vue
@@ -19,17 +19,23 @@
</template> -->
<template slot-scope="{ type, size, row }" slot="menu">
<el-button icon="icon-zhengjian" :size="size" :type="type" class="zhengJian-icon"
- @click.stop="handleCredentials(row)">查看</el-button>
+ @click.stop="handleCredentials(row,true)">查看</el-button>
+
+ <el-button icon="icon-zhengjian" :size="size" :type="type" class="zhengJian-icon"
+ @click.stop="handleCredentials(row,false)">重新提交</el-button>
</template>
</avue-crud>
</basic-container>
+
<div class="seeOnces" v-if="openOnceShow">
<i class="el-icon-close openOnceCLoce" style="color: #000 !important" @click="openClose">
</i>
<div class="seeOncesMain">
- <cardPopuponce class="openOnce" :paredData="paredData"></cardPopuponce>
+ <cardPopuponce class="openOnce" @child-event="parentMethod" :paredData="paredData" :status="status">
+ </cardPopuponce>
</div>
</div>
+
</div>
</template>
@@ -67,6 +73,7 @@
},
data() {
return {
+ status: false,
useWhere: "",
paredData: "",
openOnceShow: false,
@@ -89,7 +96,7 @@
searchShow: false,
// searchMenuSpan: 8,
labelWidth: 130,
- menuWidth: 100,
+ menuWidth: 160,
headerAlign: "center",
align: "center",
border: true,
@@ -232,11 +239,20 @@
},
],
},
+ {
+ label: "审核结果",
+ prop: "remark",
+ },
],
},
};
},
methods: {
+
+ parentMethod() {
+ console.log("*************123456******************")
+ this.openOnceShow = false
+ },
refreshChange() {
this.onLoad(this.page);
},
@@ -248,13 +264,15 @@
}
done();
},
- handleCredentials(val) {
+ handleCredentials(val, status) {
this.openOnceShow = true;
this.paredData = val;
+ this.status = status
console.log(val);
},
openClose() {
this.paredData = "";
+ this.status = false
this.openOnceShow = false;
},
onLoad(page, params = {}) {
@@ -312,4 +330,4 @@
.openOnceCLoce:hover {
color: red;
}
-</style>
\ No newline at end of file
+</style>
diff --git a/src/components/cardPopup/cardPopup.vue b/src/components/cardPopup/cardPopup.vue
index 1d7d95a..e91a892 100644
--- a/src/components/cardPopup/cardPopup.vue
+++ b/src/components/cardPopup/cardPopup.vue
@@ -46,11 +46,7 @@
</div>
<div class="hand-next">
- <!-- <el-button type="primary" @click="tip1up1">上一页</el-button> -->
- <!-- <el-button type="primary" @click="tip1" :disabled="!opens">暂存</el-button> -->
- <el-button type="primary" @click="up()" :disabled="!opens">{{
- //canDoIt ? "提交审批" : "已成功提交"
- opens ? "提交审批" : "提交审批"
+ <el-button type="primary" @click="up()" :disabled="!opens">{{opens ? "提交审批" : "提交审批"
}}</el-button>
<el-button type="info" @click="qx">取消</el-button>
</div>
@@ -266,46 +262,31 @@
emptyBtn: false,
submitBtn: true,
gutter: 50,
- column: [
- // {
- // label: "附件",
- // prop: "parentCode",
- // type: 'upload',
- // span: 24,
- // dragFile: true,
- // // action: action,
- // rules: [{
- // required: true,
- // message: "请上传附件",
- // trigger: "blur"
- // }]
- // },
- {
- label: '附件',
- prop: 'fileUrls',
- type: 'upload',
- span: 24,
- hide: true,
- labelWidth: 140,
- multiple: true,
- listType: "text",
- // showFileList: true,
- propsHttp: {
- res: 'data',
- name: "originalName",
- url: "link"
- },
- data: {
- suffix: 'pdf,ppt,doc,docx'
- },
- action: '/api/blade-resource/oss/endpoint/put-file-attach-suffix',
- rules: [{
- required: true,
- message: "请上传附件",
- trigger: "blur",
- }, ],
+ column: [{
+ label: '附件',
+ prop: 'fileUrls',
+ type: 'upload',
+ span: 24,
+ hide: true,
+ labelWidth: 140,
+ multiple: true,
+ listType: "text",
+ // showFileList: true,
+ propsHttp: {
+ res: 'data',
+ name: "originalName",
+ url: "link"
},
- ],
+ data: {
+ suffix: 'pdf,ppt,doc,docx'
+ },
+ action: '/api/blade-resource/oss/endpoint/put-file-attach-suffix',
+ rules: [{
+ required: true,
+ message: "请上传附件",
+ trigger: "blur",
+ }, ],
+ }, ],
},
activeNames: ["1", "2"],
@@ -354,7 +335,7 @@
} else {
this.see = true;
// this.openS();
- console.log("********6666********" + JSON.stringify(this.useWhere))
+ // console.log("********6666********" + JSON.stringify(this.useWhere))
this.obj0.noFraudType = this.useWhere
this.getPatrolGroupTree();
@@ -370,13 +351,13 @@
},
methods: {
onSelectChange(e) {
- console.log("selectChange===>", e);
+ // console.log("selectChange===>", e);
this.obj0.addressName = e.addressName
this.obj0.houseCode = e.addressCode
// this.getPlaceAddressListRequest()
},
onRemoteMethod(query) {
- console.log("remote===>", query)
+ // console.log("remote===>", query)
this.getPlaceAddressListRequest(query)
},
getPlaceAddressListRequest(query) {
@@ -388,7 +369,7 @@
},
uploadFile(param) {
- console.log("自定义上传", param);
+ // console.log("自定义上传", param);
const formData = new FormData()
formData.append('file', param.file)
formData.append('suffix', "pdf,ppt,doc,docx")
@@ -400,9 +381,9 @@
imageUrls: res.data.data.link
})
}
- console.log('上传图片成功' + JSON.stringify(res))
+ // console.log('上传图片成功' + JSON.stringify(res))
// console.log('上传图片成功2' + JSON.stringify(this.patrolGroup))
- console.log('上传图片成功2' + JSON.stringify(this.taskPlaceRecordVOList))
+ // console.log('上传图片成功2' + JSON.stringify(this.taskPlaceRecordVOList))
}).catch(response => {
console.log('图片上传失败')
@@ -410,7 +391,7 @@
},
handleChange(file, fileList) {
- console.table(fileList)
+ // console.table(fileList)
// this.fileList = fileList.slice(-3);
},
tipchose() {
diff --git a/src/components/cardPopup/cardPopuponce.vue b/src/components/cardPopup/cardPopuponce.vue
index f0e8dee..c5cbfbd 100644
--- a/src/components/cardPopup/cardPopuponce.vue
+++ b/src/components/cardPopup/cardPopuponce.vue
@@ -1,16 +1,22 @@
<template>
<basic-container class="openOnceMain">
- <!-- <el-collapse v-model="activeNames" @change="handleChange">
- <el-collapse-item title="基本信息" name="1">
- <avue-form ref="form1" v-model="obj0" :option="option" class="cardButs"></avue-form>
- </el-collapse-item>
- <el-collapse-item title="附件上传" name="2">
- <attach v-if="openattach" :type="imgType" :ptype="type" :opens="opens" :enclosure="enclosure"></attach>
- </el-collapse-item>
- </el-collapse> -->
<el-collapse v-model="activeNames" @change="handleChange">
<el-collapse-item title="基本信息" name="1">
- <avue-form ref="form1" v-model="obj0" :option="option" @submit="submit" class="cardButs"></avue-form>
+ <avue-form v-if="status" ref="form1" v-model="obj0" :option="option" @submit="submit"
+ class="cardButs"></avue-form>
+
+ <avue-form v-else ref="form1" v-model="obj0" :option="optionTwo" @submit="submit" class="cardButs">
+
+ <template slot-scope="{size}" slot="addressName">
+ <el-select v-model="obj0.addressName" clearable filterable remote :remote-method="onRemoteMethod"
+ @change="onSelectChange" placeholder="请输入与门牌地址二维码地址一致" reserve-keyword>
+ <el-option v-for="item in standardAddressList" :key="item.addressCode" :label="item.addressName"
+ :value="item">
+ </el-option>
+ </el-select>
+ </template>
+
+ </avue-form>
</el-collapse-item>
<el-collapse-item title="附件信息" name="2">
<div v-for="(item,index) in patrolGroup">
@@ -22,12 +28,13 @@
{{index1+1}}. {{item1.title}}
</div>
<div style="margin: 10px;" class="attach_row_btn">
- <el-button v-if="item1.images" @click="handleExport(item1.images)" size="small"
+ <el-button v-if="item1.images && status" @click="handleExport(item1.images)" size="small"
type="primary">下载文件</el-button>
- <!-- <el-upload class="upload-demo" :limit="1" :data="item1" :on-change="handleChange"
+
+ <el-upload v-if="!status" class="upload-demo" :limit="1" :data="item1" :on-change="handleChange"
:http-request="uploadFile">
<el-button size="small" type="primary">点击上传</el-button>
- </el-upload> -->
+ </el-upload>
</div>
</div>
</div>
@@ -35,6 +42,13 @@
<!-- <avue-form :option="optionFile" v-model="obj0"></avue-form> -->
</el-collapse-item>
</el-collapse>
+
+ <div class="hand-next">
+ <el-button type="primary" @click="commitFrom()" :disabled="status">{{status ? "提交审批" : "提交审批"
+ }}</el-button>
+ <el-button type="info" @click="qx">取消</el-button>
+ </div>
+
</basic-container>
</template>
<script>
@@ -45,9 +59,13 @@
add,
patrolGroupTree,
selectIn,
- uploadFile
+ uploadFile,
+ update
} from "@/api/recordOur/outCardPopup";
import attach from "@/components/attach/attach";
+ import {
+ getDoorplateAddressList
+ } from "@/api/permit/permit";
import {
mapGetters
} from "vuex";
@@ -55,9 +73,10 @@
components: {
attach,
},
- props: ["useWhere", "paredData"],
+ props: ["useWhere", "paredData", "status"],
data() {
return {
+ standardAddressList: [], //标准地址数据
patrolGroup: [],
opens: false,
openattach: false,
@@ -66,6 +85,7 @@
activeNames: ["1", "2"],
imgType: "",
obj0: {},
+ taskPlaceRecordVOList: [],
option: {
emptyBtn: false,
submitBtn: true,
@@ -238,6 +258,176 @@
},
]
},
+ optionTwo: {
+ emptyBtn: false,
+ submitBtn: true,
+ gutter: 50,
+ column: [{
+ labelWidth: 100,
+ label: "场所名称",
+ prop: "placeName",
+ // span: 24,
+ rules: [{
+ required: true,
+ message: "请输入场所名称",
+ trigger: "blur"
+ }]
+ }, {
+ labelWidth: 100,
+ label: "负责人名称",
+ prop: "principal",
+ // span: 24,
+ rules: [{
+ required: true,
+ message: "请输入场所负责人姓名",
+ trigger: "blur"
+ }]
+ },
+ {
+ labelWidth: 100,
+ label: "负责人电话",
+ prop: "principalPhone",
+ // span: 24,
+ rules: [{
+ required: true,
+ message: "请输入场所负责人联系方式",
+ trigger: "blur"
+ }]
+ },
+ {
+ labelWidth: 100,
+ overHidden: true,
+ slot: true,
+ label: "位置",
+ prop: "location",
+ type: "map",
+ dataType: "string",
+ value: [117.96646, 28.431002, ""],
+ mapChange: (params) => {
+ console.log('高德回调参数', params)
+ },
+ //高德初始化参数
+ params: {
+ zoom: 10,
+ zoomEnable: false,
+ dragEnable: false,
+ },
+ rules: [{
+ required: true,
+ message: "请选择地址",
+ trigger: "blur",
+ }, ],
+ },
+ {
+ labelWidth: 100,
+ overHidden: true,
+ label: "派出所名称",
+ parent: false,
+ prop: "pcsCode",
+ searchSpan: 4,
+ searchType: 'input',
+ type: "tree",
+ dicUrl: "/api/blade-policeStation/policeStation/tree",
+ props: {
+ label: "name",
+ value: "id"
+ },
+ nodeClick: (data, node, nodeComp) => {
+ this.obj0.pcsName = data.name
+ },
+ rules: [{
+ required: true,
+ message: "请输入派出所名称",
+ trigger: "blur"
+ }]
+ },
+ {
+ labelWidth: 100,
+ overHidden: true,
+ label: "社区名称",
+ parent: false,
+ prop: "communityCode",
+ // search: true,
+ searchSpan: 4,
+ searchType: 'input',
+ type: "tree",
+ dicUrl: "/api/blade-system/region/treeToCommunity?isFiter='1'",
+ defaultExpandedKeys: ["361102"],
+ props: {
+ label: "name",
+ value: "id"
+ },
+ // change: ({
+ // value,
+ // column
+ // }) => {
+ // this.$message.success('change事件查看控制台')
+ // console.log('值改变', value, column)
+ // },
+ nodeClick: (data, node, nodeComp) => {
+ this.obj0.communityName = data.name
+ // this.$message.success(JSON.stringify(data))
+ },
+ rules: [{
+ required: true,
+ message: "请选择社区名称",
+ trigger: "blur",
+ }, ],
+ },
+ {
+ labelWidth: 100,
+ label: "无诈类别",
+ prop: "noFraudType",
+ align: 'center',
+ dicUrl: "/api/blade-system/dict-biz/tree?code=noExplosionCategory",
+ props: {
+ label: "title",
+ value: "key",
+ },
+ type: 'select',
+ search: true,
+ searchSpan: 4,
+ searchLabelWidth: 96,
+ align: 'center'
+ },
+
+ {
+ labelWidth: 110,
+ prop: "addressName",
+ slot: true,
+ label: "场所标准地址",
+ rules: [{
+ required: true,
+ message: "请选择场所标准地址",
+ trigger: "blur",
+ }, ],
+ },
+ {
+ labelWidth: 110,
+ label: '二维码图片',
+ type: 'upload',
+ listType: 'picture-img',
+ propsHttp: {
+ res: 'data',
+ url: 'link',
+ },
+ canvasOption: {
+ text: ' ',
+ ratio: 0.1
+ },
+ action: '/api/blade-resource/oss/endpoint/put-file',
+ tip: '只能上传jpg/png图片',
+ span: 12,
+ row: true,
+ prop: 'qrImg',
+ rules: [{
+ required: true,
+ message: "请上传二维码图片",
+ trigger: "blur",
+ }, ],
+ },
+ ]
+ },
};
},
computed: {
@@ -269,19 +459,87 @@
// console.log(cloum);
this.paredData.jurisdiction = this.paredData.$jurisdiction;
this.obj0 = this.paredData;
- this.getPatrolGroupTree()
+ this.getPatrolGroupTree(this.obj0.noFraudType)
console.log("this.obj0******************" + JSON.stringify(this.obj0));
},
methods: {
+ onSelectChange(e) {
+ console.log("selectChange===>", e);
+ this.obj0.addressName = e.addressName
+ this.obj0.houseCode = e.addressCode
+ // this.getPlaceAddressListRequest()
+ },
+ onRemoteMethod(query) {
+ console.log("remote===>", query)
+ this.getPlaceAddressListRequest(query)
+ },
+ getPlaceAddressListRequest(query) {
+ getDoorplateAddressList(1, 50, {
+ addressName: query
+ }).then(res => {
+ this.standardAddressList = res.data.data.records;
+ })
+
+ },
+ commitFrom(val = 1) {
+ // console.log("************123*************")
+
+ if (this.obj0.fileUrls) {
+ this.obj0.fileUrls = JSON.stringify(this.obj0.fileUrls)
+ }
+ if (this.obj0.location) {
+ let arr = this.obj0.location.split(",")
+ if (arr.length > 1) {
+ this.obj0.lng = arr[0]
+ this.obj0.lat = arr[1]
+ this.obj0.location = arr[2]
+ }
+ }
+ this.obj0.type = 2
+ if (this.taskPlaceRecordVOList.length > 0) {
+ this.obj0.taskPlaceRecordVOList = this.taskPlaceRecordVOList
+ }
+ update(this.obj0).then(() => {
+ this.$emit('child-event', '');
+ // this.qx();
+ this.s
+ this.$message({
+ message: "重新提交申请成功",
+ type: "success"
+ });
+ this.$store.commit("changecanDoIt", false);
+ });
+ },
+ uploadFile(param) {
+ console.log("自定义上传", param);
+ const formData = new FormData()
+ formData.append('file', param.file)
+ formData.append('suffix', "pdf,ppt,doc,docx")
+ let data = param.data
+ uploadFile(formData).then(res => {
+ if (res.data.code == 200) {
+ this.taskPlaceRecordVOList.push({
+ itemId: data.id,
+ imageUrls: res.data.data.link
+ })
+ }
+ console.log('上传图片成功' + JSON.stringify(res))
+ // console.log('上传图片成功2' + JSON.stringify(this.patrolGroup))
+ console.log('上传图片成功2' + JSON.stringify(this.taskPlaceRecordVOList))
+
+ }).catch(response => {
+ console.log('图片上传失败')
+ })
+ },
handleExport(url) {
var elemIF = document.createElement('iframe')
elemIF.src = url;
elemIF.style.display = 'none'
document.body.appendChild(elemIF)
},
- getPatrolGroupTree() {
+ getPatrolGroupTree(noFraudType) {
let data = {
- childType: 6,
+ childType: noFraudType,
type: 2
}
patrolGroupTree(data).then((res) => {
@@ -292,10 +550,11 @@
item.children.forEach(items => {
console.log(items)
this.obj0.taskPlaceRecordVOList.forEach(itemss => {
- console.log("************789**************" + JSON.stringify(itemss))
+ // console.log("************789**************" + JSON.stringify(itemss))
+ // console.log("************items**************" + JSON.stringify(items))
if (items.id === itemss.itemId.toString()) {
items.images = itemss.imageUrls
- console.log("************123**************")
+ // console.log("************123**************" + items.images)
}
})
})
diff --git a/src/views/home/index.vue b/src/views/home/index.vue
index 1339d1b..34149bb 100644
--- a/src/views/home/index.vue
+++ b/src/views/home/index.vue
@@ -355,4 +355,4 @@
padding: 15px 28px;
font-size: 14px;
}
-</style>
+</style>
\ No newline at end of file
diff --git a/vue.config.js b/vue.config.js
index 6d32ee3..24a37c3 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -26,6 +26,22 @@
devServer: {
port: 1888,
proxy: {
+ "/api/blade-resource/oss": {
+ //本地服务接口地址
+ // target: "http://localhost:9528",
+ target: "https://srgdjczzxtpt.com:2080/api",
+ // target: "https://kt39592615.goho.co",
+ // target: "http://z4042833u6.wicp.vip",
+ // target: "http://localhost:9528",
+ // target: "http://192.168.2.109:9528",
+ //远程演示服务地址,可用于直接启动项目
+ //target: 'https://saber.bladex.cn/api',
+ changeOrigin: true,
+ ws: true,
+ pathRewrite: {
+ "^/api": "/",
+ },
+ },
'/api': {
//本地服务接口地址
target: 'http://localhost:9528',
@@ -40,4 +56,4 @@
}
}
}
-};
+};
\ No newline at end of file
--
Gitblit v1.9.3