Commit 781a646b by mr.wang

线索审批bug修复

parent 907c59a9
...@@ -74,6 +74,10 @@ post(`${base.alyIP13}/setSecondAgentRole`, data); ...@@ -74,6 +74,10 @@ post(`${base.alyIP13}/setSecondAgentRole`, data);
export const querySptjbList = data => export const querySptjbList = data =>
post(`${base.alyIP13}/querySptjbList?currentPageNo=` + data.currentPageNo + '&pageSize=' + data.pageSize + '&kssj=' + data.kssj + '&jssj=' + data.jssj + '&unitcode=' + data.unitcode + '&orderStatus=' + data.orderStatus); post(`${base.alyIP13}/querySptjbList?currentPageNo=` + data.currentPageNo + '&pageSize=' + data.pageSize + '&kssj=' + data.kssj + '&jssj=' + data.jssj + '&unitcode=' + data.unitcode + '&orderStatus=' + data.orderStatus);
// 审批统计(饼状图及柱状图数据) // 审批统计(饼状图及柱状图数据)
export const querySptjt = data => export const querySptjt = data =>
post(`${base.alyIP13}/querySptjt`, data); post(`${base.alyIP13}/querySptjt`, data);
// 删除代理人
export const deleteUserRole = data =>
post(`${base.alyIP13}/deleteUserRole`, data);
...@@ -123,6 +123,29 @@ const hbspsftg = { ...@@ -123,6 +123,29 @@ const hbspsftg = {
'1': '已通过', '1': '已通过',
'2': '待审批' '2': '待审批'
} }
const orderStatus = {
'1': '未开始',
'2': '进行中',
'3': '进行中',
'4': '完成'
}
const orderMethod = {
'1': '二级审批',
'3': '一级审批'
}
const sqdztStatus = {
'1': '暂存',
'2': '在审',
'3': '一级领导已审',
'4': '审批通过',
'5': '双签已审',
'6': '撤回',
'7': '一级领导驳回',
'8': '二级领导驳回',
'9': '双签驳回'
}
export { export {
spsftg, spsftg,
xjZlsfqs, xjZlsfqs,
...@@ -143,5 +166,8 @@ export { ...@@ -143,5 +166,8 @@ export {
rdbs, rdbs,
zlType, zlType,
nfxbxg, nfxbxg,
hbspsftg hbspsftg,
orderStatus,
orderMethod,
sqdztStatus
} }
...@@ -173,11 +173,14 @@ export default { ...@@ -173,11 +173,14 @@ export default {
}`; }`;
window.open(path, "_blank"); window.open(path, "_blank");
} else if (item.id == "brainDzajSP") { } else if (item.id == "brainDzajSP") {
let obj = JSON.parse(sessionStorage.getItem("userInfo")); // let obj = JSON.parse(sessionStorage.getItem("userInfo"));
let account = obj.account; // let account = obj.account;
let exStr = Base64.encode(account); // let exStr = Base64.encode(account);
let path = `${this.$baseUrl.alyIP7}/toFzSpJsp?cxrJh=${exStr}`; // let path = `${this.$baseUrl.alyIP7}/toFzSpJsp?cxrJh=${exStr}`;
window.open(path, "_blank"); // window.open(path, "_blank");
this.$router.pushToTab({
path: "/queryJz",
});
} else if ( } else if (
item.id == "zcgafx" || item.id == "zcgafx" ||
item.id == "zcajfl" || item.id == "zcajfl" ||
......
...@@ -189,9 +189,13 @@ export default { ...@@ -189,9 +189,13 @@ export default {
this.ruleForm.pzName = res.approveOrder.pzName this.ruleForm.pzName = res.approveOrder.pzName
this.ruleForm.orderTitle = res.approveOrder.orderTitle this.ruleForm.orderTitle = res.approveOrder.orderTitle
this.ruleForm.orderReason = res.approveOrder.orderReason this.ruleForm.orderReason = res.approveOrder.orderReason
this.ruleForm.xslxList = res.details.map(item => { let arr = res.details.map(item => {
return { xsXslx: item.xsXslx, xsSxz: item.xsSxz, xsMark: item.xsMark, xsStatus: item.xsStatus, createUserPid: item.createUserPid } return { xsXslx: item.xsXslx, xsSxz: item.xsSxz, xsMark: item.xsMark, xsStatus: item.xsStatus, createUserPid: item.createUserPid }
}) })
this.ruleForm.xslxList = Object.assign({},this.ruleForm.xslxList,arr)
// this.ruleForm.xslxList = res.details.map(item => {
// return { xsXslx: item.xsXslx, xsSxz: item.xsSxz, xsMark: item.xsMark, xsStatus: item.xsStatus, createUserPid: item.createUserPid }
// })
} }
}) })
}, },
......
...@@ -15,24 +15,25 @@ ...@@ -15,24 +15,25 @@
<i class="el-icon-plus"></i>新增</span <i class="el-icon-plus"></i>新增</span
> >
</template> </template>
<!-- <template #btnGroup="scope"> <template #btnGroup="scope">
<span class="hbyp" @click="showDetail(scope.scope)">详情</span> <span class="hbyp" @click="dele(scope.scope)">删除</span>
<span class="hbyp" @click="showliucheng(scope.scope)">流程</span> <!-- <span class="hbyp" @click="showliucheng(scope.scope)">流程</span> -->
</template> --> </template>
</right-content> </right-content>
<el-dialog title="设置代理人" :visible.sync="dialogFormVisible" width="45%"> <el-dialog title="设置代理人" :visible.sync="dialogFormVisible" width="45%">
<el-form :inline="true" class="demo-form-inline" style="margin: 0 15px;"> <el-form :inline="true" class="demo-form-inline" style="margin: 0 15px;">
<el-form-item label="警号"> <el-form-item label="警号">
<el-input v-model="agentUserPoliceId" placeholder=""></el-input> <el-input v-model="jinghao" placeholder=""></el-input>
</el-form-item> </el-form-item>
<el-form-item label="姓名"> <el-form-item label="姓名">
<el-input v-model="agentUserXm" placeholder=""></el-input> <el-input v-model="xingming" placeholder=""></el-input>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" @click="onSubmit" size="small" style="margin-left: 12px;">查询</el-button> <el-button type="primary" @click="onSubmit" size="small" style="margin-left: 12px;">查询</el-button>
</el-form-item> </el-form-item>
<div> <div>
候选人:<el-radio v-for="(item, index) in dlrList" :key="index" v-model="agentUserPoliceId" :label="item.policemanid">{{ item.trueName }}</el-radio> 候选人:<span v-if="dlrList.length > 0"><el-radio v-for="(item, index) in dlrList" :key="index" v-model="agentUserPoliceId" :label="item.policemanid">{{ item.trueName }}</el-radio></span>
<span v-else></span>
</div> </div>
</el-form> </el-form>
<p style="font-size: 14px; font-weight: 600; color: #ef2424;margin-left: 15px;">授权有效期为一个月</p> <p style="font-size: 14px; font-weight: 600; color: #ef2424;margin-left: 15px;">授权有效期为一个月</p>
...@@ -42,7 +43,7 @@ ...@@ -42,7 +43,7 @@
</template> </template>
<script> <script>
import { getAllowedAgentUsers, setSecondAgentRole } from "@/api/xsspLb/xsspLb.js"; import { getAllowedAgentUsers, setSecondAgentRole, deleteUserRole } from "@/api/xsspLb/xsspLb.js";
import rightContent from "@c/ptCxForm_components.vue"; import rightContent from "@c/ptCxForm_components.vue";
export default { export default {
...@@ -55,6 +56,8 @@ export default { ...@@ -55,6 +56,8 @@ export default {
dialogFormVisible: false, dialogFormVisible: false,
agentUserPoliceId: '', agentUserPoliceId: '',
agentUserXm: '', agentUserXm: '',
xingming: '',
jinghao: '',
dlrList: [], dlrList: [],
header: "线索审批管理平台", header: "线索审批管理平台",
pageBs: "queryJz", pageBs: "queryJz",
...@@ -107,13 +110,13 @@ export default { ...@@ -107,13 +110,13 @@ export default {
methods: { methods: {
add() { add() {
const param = { const param = {
agentUserPoliceId: this.agentUserPoliceId, agentUserPoliceId: this.jinghao,
loginUserPoliceId: JSON.parse(sessionStorage.getItem("userInfo")).account, loginUserPoliceId: JSON.parse(sessionStorage.getItem("userInfo")).account,
agentUserXm: this.agentUserXm agentUserXm: this.xingming
} }
getAllowedAgentUsers(param).then(res => { getAllowedAgentUsers(param).then(res => {
if(res.code == '200') { if(res.code == '200') {
this.dlrList = res.data this.dlrList = res.userList
} }
}) })
this.dialogFormVisible = true this.dialogFormVisible = true
...@@ -125,14 +128,48 @@ export default { ...@@ -125,14 +128,48 @@ export default {
loginUserPoliceId: JSON.parse(sessionStorage.getItem("userInfo")).account loginUserPoliceId: JSON.parse(sessionStorage.getItem("userInfo")).account
} }
setSecondAgentRole(param).then(res => { setSecondAgentRole(param).then(res => {
if(res.code == '200') { if(res.state == 'success') {
this.$message({ this.$message({
type: "success", type: "success",
message: "授权成功", message: "授权成功",
}); });
this.$refs.rightContent.doQuery("yes");
this.dialogFormVisible = false this.dialogFormVisible = false
} else {
this.$message({
type: "warning",
message: res.msg,
});
}
})
},
dele(obj) {
console.log(obj.row)
this.$confirm("是否继续?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
deleteUserRole({
policeId: obj.row.policeId,
qxtype: 'DLEJ_ROLEID',
}).then((res) => {
if (res.state == 'success') {
this.$message({
type: "success",
message: "删除成功",
});
this.$refs.rightContent.doQuery("yes");
} }
});
}) })
.catch(() => {
this.$message({
type: "info",
message: "已取消删除",
});
});
}, },
onSubmit() { onSubmit() {
this.add() this.add()
......
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
:cxDefaultFormThead="cxDefaultFormThead" :cxDefaultFormThead="cxDefaultFormThead"
:cxUrl="cxUrl" :cxUrl="cxUrl"
ref="rightContent" ref="rightContent"
:transformFormTable="transformFormTable"
> >
<template #btnGroup="scope"> <template #btnGroup="scope">
<span class="hbyp" @click="shenpi(scope.scope)">审批</span> <span class="hbyp" @click="shenpi(scope.scope)">审批</span>
...@@ -212,6 +213,8 @@ ...@@ -212,6 +213,8 @@
<script> <script>
import { toSpPage, toSpsqxx, querySqdDteail, queryWorkFlowList } from "@/api/xsspLb/xsspLb.js"; import { toSpPage, toSpsqxx, querySqdDteail, queryWorkFlowList } from "@/api/xsspLb/xsspLb.js";
import {orderStatus, orderMethod, sqdztStatus} from "@/assets/js/transformFormTable.js";
import rightContent from "@c/ptCxForm_components.vue"; import rightContent from "@c/ptCxForm_components.vue";
export default { export default {
...@@ -221,6 +224,7 @@ export default { ...@@ -221,6 +224,7 @@ export default {
}, },
data() { data() {
return { return {
transformFormTable: {orderStatus, orderMethod, sqdztStatus},
dialogFormVisible: false, dialogFormVisible: false,
lcDialogFormVisible: false, lcDialogFormVisible: false,
xqDialogFormVisible: false, xqDialogFormVisible: false,
...@@ -305,12 +309,12 @@ export default { ...@@ -305,12 +309,12 @@ export default {
}, },
{ {
label: "审批等级", label: "审批等级",
prop: "orderMethodStr", prop: "orderMethod",
width: "200", width: "200",
}, },
{ {
label: "审请单状态", label: "审请单状态",
prop: "orderStatusStr", prop: "sqdztStatus",
width: "200", width: "200",
}, },
{ {
...@@ -330,7 +334,7 @@ export default { ...@@ -330,7 +334,7 @@ export default {
}, },
{ {
label: "审批倒计时", label: "审批倒计时",
prop: "orderStatuStr", prop: "orderStatus",
width: "200", width: "200",
}, },
], ],
...@@ -506,11 +510,13 @@ export default { ...@@ -506,11 +510,13 @@ export default {
} }
}, },
watch: { watch: {
// "examineInfoRl.sfrlPdbz": { workFlowName(newVal, oldVal ) {
// handler: function (val, oldval) { if(newVal == '2') {
// }, this.remark = '驳回'
// deep: true, } else {
// }, this.remark = '同意,无意见!'
}
}
}, },
}; };
</script> </script>
......
...@@ -50,7 +50,7 @@ ...@@ -50,7 +50,7 @@
index: 0, index: 0,
data: [ data: [
{ {
name: "事件编号:", name: "事件编号:",
id: "asjbh", id: "asjbh",
type: "textTq", type: "textTq",
value: "", value: "",
...@@ -133,7 +133,7 @@ ...@@ -133,7 +133,7 @@
index: 0, index: 0,
data: [ data: [
{ {
name: "事件编号:", name: "事件编号:",
id: "asjbh2", id: "asjbh2",
type: "text", type: "text",
value: "", value: "",
......
...@@ -25,11 +25,11 @@ ...@@ -25,11 +25,11 @@
<el-dialog title="卷宗详情" :visible.sync="dialogFormVisible" width="70%"> <el-dialog title="卷宗详情" :visible.sync="dialogFormVisible" width="70%">
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="12"><span>卷宗名称:</span>{{ xqData.pzTitle }}</el-col> <el-col :span="12"><span>卷宗名称:</span>{{ xqData.pzTitle }}</el-col>
<el-col :span="12"><span>卷宗编号</span>{{ xqData.kssj }} 至 {{ xqData.jssj }} </el-col> <el-col :span="12"><span>有效期</span>{{ xqData.kssj }} 至 {{ xqData.jssj }} </el-col>
</el-row> </el-row>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="12"><span>案事件编号:</span>{{ xqData.asjmc }}</el-col> <el-col :span="12"><span>案事件编号:</span>{{ xqData.asjbh }}</el-col>
<el-col :span="12"><span>案事件名称:</span>{{ xqData.ajlb }}</el-col> <el-col :span="12"><span>案事件名称:</span>{{ xqData.asjmc }}</el-col>
</el-row> </el-row>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="12"><span>卷宗情况说明:</span>{{ xqData.pzTitle }}</el-col> <el-col :span="12"><span>卷宗情况说明:</span>{{ xqData.pzTitle }}</el-col>
......
...@@ -48,6 +48,7 @@ ...@@ -48,6 +48,7 @@
</div> </div>
</div> </div>
<div class="paneDivFoot"> <div class="paneDivFoot">
<div style="text-align: right"><el-button @click="print" size="mini">打印</el-button></div>
<!-- <div class="footTitle"> <!-- <div class="footTitle">
<h2>统计图</h2> <h2>统计图</h2>
<i class="el-icon-s-cooperation"></i> <i class="el-icon-s-cooperation"></i>
...@@ -58,10 +59,7 @@ ...@@ -58,10 +59,7 @@
</div> </div>
</div> </div>
<div class="bottom"> <div class="bottom">
<!-- <el-col :span="24"> <div style="text-align: right; margin-bottom: 10px;"><el-button size="mini" @click="export2Excel">导出</el-button></div>
<span class="flTtitle">信息列表</span>
<span class="info">{{ tableDataLength }}条信息</span>
</el-col> -->
<el-table <el-table
:header-cell-style="headStyle" :header-cell-style="headStyle"
v-loading="tableLoading" v-loading="tableLoading"
...@@ -219,6 +217,8 @@ ...@@ -219,6 +217,8 @@
<script> <script>
import { querySqdDteail, queryWorkFlowList, querySptjbList, querySptjt } from "@/api/xsspLb/xsspLb.js"; import { querySqdDteail, queryWorkFlowList, querySptjbList, querySptjt } from "@/api/xsspLb/xsspLb.js";
import base from "@/api/base";
import Http from "@/utils/http.js";
export default { export default {
name: "querySptj", name: "querySptj",
...@@ -232,6 +232,7 @@ export default { ...@@ -232,6 +232,7 @@ export default {
orderDetailList: [], orderDetailList: [],
lcData: [], lcData: [],
zztCount: 0, zztCount: 0,
cxUrl: '/querySptjbList',
bztData: [ bztData: [
{ {
value: null, value: null,
...@@ -359,11 +360,59 @@ export default { ...@@ -359,11 +360,59 @@ export default {
form: { form: {
currentPageNo: 1, currentPageNo: 1,
pageSize: 10, pageSize: 10,
kssj: '2021-12-18', kssj: '',
jssj: '2022-01-18', jssj: '',
unitcode: '', unitcode: '',
orderStatus: 'All' orderStatus: 'All'
}, },
propdefaultFormThead: [
{
label: "卷宗名称",
// toInfor: true,
prop: "pzName",
width: "250",
},
{
label: "申请单编号",
prop: "orderCode",
width: "200",
},
{
label: "申请单标题",
prop: "orderTitle",
width: "200",
},
{
label: "审批等级",
prop: "orderMethod",
width: "200",
},
{
label: "申请单状态",
prop: "orderStatus",
width: "200",
},
{
label: "是否过期",
prop: "orderStatusIsgq",
width: "200",
},,
{
label: "申请人",
prop: "createUserName",
width: "200",
},
{
label: "申请时间",
prop: "createTime",
width: "200",
},
{
label: "审批倒计时",
prop: "orderStatus",
width: "200",
}
],
Menu: [ Menu: [
{ {
id: "querySptj", id: "querySptj",
...@@ -386,6 +435,93 @@ export default { ...@@ -386,6 +435,93 @@ export default {
// this.startMyEcharts(); // this.startMyEcharts();
}, },
methods: { methods: {
export2Excel() {
/*导出*/
let self = this,
tHeader = [],
filterVal = [];
let formData = self.form
formData.limit = 5000
const loading = this.$loading({
lock: true,
text: "正在导出...",
spinner: "el-icon-loading",
background: "rgba(255, 255, 255, 0.7)",
});
let json = {};
for (let i in self.formData) {
if (i != "cxSj") {
json[i] = self.formData[i];
} else {
json[i] =
self.formData[i] != "" && self.formData[i] != null
? self.formData[i].join(" - ")
: "";
}
}
tHeader = [];
filterVal = [];
self.propdefaultFormThead.forEach((val) => {
tHeader.push(val.label);
filterVal.push(val.prop);
});
self.doQueryRequest(JSON.stringify(json)).then((res) => {
if (res.code == 0) {
require.ensure([], () => {
const {
export_json_to_excel,
} = require("@/vendor/Export2Excel");
const list = res.data;
const data = self.formatJson(filterVal, list);
export_json_to_excel(tHeader, data, self.excelHeader);
});
loading.close();
} else {
loading.close();
self.$message({
type: "error",
message: "查询失败",
});
}
self.tableLoadingEmit = false;
});
},
doQueryRequest(form, relurl) {
/*post方法*/
let currentUrl = "";
currentUrl = `${base.alyIP13}/querySptjbList?currentPageNo=` + this.form.currentPageNo + '&pageSize=' + this.form.pageSize + '&kssj=' + this.form.kssj + '&jssj=' + this.form.jssj + '&unitcode=' + this.form.unitcode + '&orderStatus=' + this.form.orderStatus;
return Http({
url: currentUrl,
// data: qs.stringify(form),
method: "post",
headers: {
"blade-auth": sessionStorage.getItem("token"),
},
});
},
formatJson(filterVal, jsonData) {
let arr = [];
jsonData.map((v) => {
let arr1 = [];
filterVal.map((j) => {
if (j.indexOf(",") != -1) {
let arr = j.split(",");
let data = "";
for (let i = 0; i <= arr.length - 1; i++) {
data += arr[i].split(":")[0] + ":" + v[arr[i].split(":")[1]];
}
arr1.push(data);
} else {
arr1.push(v[j]);
}
});
arr.push(arr1);
});
return arr;
},
print() {
window.print();
},
doQuery() { doQuery() {
this.queryTjlist() this.queryTjlist()
this.toQuerySptjt() this.toQuerySptjt()
...@@ -659,6 +795,7 @@ export default { ...@@ -659,6 +795,7 @@ export default {
} }
.bottom { .bottom {
padding-bottom: 15px; padding-bottom: 15px;
padding-top: 20px;
.info { .info {
font-size: 12px; font-size: 12px;
font-family: Source Han Sans CN; font-family: Source Han Sans CN;
...@@ -700,9 +837,10 @@ export default { ...@@ -700,9 +837,10 @@ export default {
margin-top: 10px; margin-top: 10px;
} }
.paneDivFoot { .paneDivFoot {
position: relative;
height: 100%; height: 100%;
background: #fff; background: #fff;
padding: 20px 20px 14px; padding: 20px 0px 14px;
margin: 20px 20px 20px 0; margin: 20px 20px 20px 0;
} }
.footTitle { .footTitle {
......
...@@ -18,8 +18,8 @@ ...@@ -18,8 +18,8 @@
<template #btnGroup="scope"> <template #btnGroup="scope">
<span class="hbyp" @click="showDetail(scope.scope)">详情</span> <span class="hbyp" @click="showDetail(scope.scope)">详情</span>
<span class="hbyp" @click="showliucheng(scope.scope)">流程</span> <span class="hbyp" @click="showliucheng(scope.scope)">流程</span>
<span class="hbyp" v-if="scope.scope.row.orderStatus == '6' || scope.scope.row.orderStatus == '7'" @click="bianji(scope.scope)">编辑</span> <span class="hbyp" v-if="scope.scope.row.orderStatus == '6' || scope.scope.row.orderStatus == '7' || scope.scope.row.orderStatus == '9'" @click="bianji(scope.scope)">编辑</span>
<span class="hbyp" v-if="scope.scope.row.orderStatus == '1' || scope.scope.row.orderStatus == '2' || scope.scope.row.orderStatus == '3'" @click="bohui(scope.scope)">撤回</span> <span class="hbyp" v-if="scope.scope.row.orderStatus == '1' || scope.scope.row.orderStatus == '2'" @click="bohui(scope.scope)">撤回</span>
</template> </template>
</right-content> </right-content>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment