Commit 1779911b by lp784568205

修改了群体发现

parent e13dfc56
......@@ -37,10 +37,21 @@ export const delThxs = params =>
// 主题研判 研判发现
//群体计算接口(群体列表信息的新增接口)
export const insertQtxx = params =>
post(`${base.alyIP}/thyp/initTh`, params);
// 群体相关嫌疑人列表查询
export const getXyrByThbh = params =>
post(`${base.alyIP}/thyp/getXyrByThbh`, params);
// 群体相关案件列表查询
export const getAjByThbh = params =>
post(`${base.alyIP}/thyp/getAjByThbh`, params);
\ No newline at end of file
post(`${base.alyIP}/thyp/getAjByThbh`, params);
//新增研判结果
export const addThyp = params =>
postform(`${base.alyIP}/thyp/addThyp`, params);
//研判结果详情
export const getThypXq = params =>
post(`${base.alyIP}/thyp/getThypXq`, params);
\ No newline at end of file
......@@ -92,6 +92,16 @@
<p>高危</p>
</el-button>
</div>
<div class="leftToolbar2" ref="leftToolbar" v-if="showTuanhuo">
<el-button
class="toolBarItem"
@click.native="toTuanhuo"
title="获取团伙信息"
>
<i class="el-icon-picture-outline-round"></i>
<p>团伙</p>
</el-button>
</div>
<div class="leftToolbar3" ref="leftToolbar" v-if="showNt">
<el-button class="toolBarItem" @click.native="toNt" title="进入脑图">
<i class="el-icon-picture-outline-round"></i>
......@@ -227,6 +237,7 @@ export default {
toolbarBoo: false,
showGang: false,
showDanger: false,
showTuanhuo: false,
showNt: false,
photoLoading: false,
newUnfoldParams: this.unfoldParams,
......@@ -466,6 +477,11 @@ export default {
this.showGang = true;
this.showDanger = true;
this.showNt = true;
} else if (
this.type == "qtfxfx" ||
this.$route.query.type == "qtfxfx"
) {
this.showTuanhuo = true;
}
}
);
......@@ -518,9 +534,44 @@ export default {
query: { asjbh: this.nodedata.name },
});
},
toTuanhuo() {
debugger;
if (this.objSfhm.name) {
debugger;
let params = {
id: this.objSfhm.zjhm,
type: 'person',
};
let obj = {
childrenXhrStr: "/apialy/thyp/getAccompliceById",
photoXhrStr: null,
params: params,
nodedata: {
type: "person",
id: 0,
name: scope.row.zjhm,
children: true,
},
nodeClickBoo: true,
};
sessionStorage.setItem("key", JSON.stringify(obj));
this.$router.pushToTab({
path: "/ypEcharts",
// key: data.row.bfkh,
query: {
title: "嫌疑人分析",
type: "xyrfx",
// type: "argxfx",
types: "tonat",
},
});
} else {
this.$message.error("请选择嫌疑人!");
}
},
toNt() {
debugger
if ( this.objSfhm.name) {
debugger;
if (this.objSfhm.name) {
var userInfo = JSON.parse(sessionStorage.getItem("userInfo"));
var idcard = userInfo.identitycard;
var params = {
......@@ -535,7 +586,7 @@ export default {
};
this.toDetail(`${this.$baseUrl.alyIP4}/naotuBox`, params);
} else {
this.$message.error('请选择关系人!')
this.$message.error("请选择关系人!");
}
},
toDetail(url, PARAMS) {
......
......@@ -107,7 +107,7 @@ const mainRouters = [
ajzbRoutes,
...dswtzxxRoutes,
...xshbRoutes,
ztypRoutes,
...ztypRoutes,
mxglRoutes,
rlxnpgRoutes,
zdxnpgRoutes,
......
......@@ -187,8 +187,37 @@ const menuLayouts = [
},
];
export default {
export default [{
path: "/right",
component: menuLayout,
children: [...menuLayouts]
};
\ No newline at end of file
},
{
path: "/qtjsForm",
name: "qtjsForm",
meta: {
title: '群体计算',
isAdd: true,
},
component: () => import("@/views/ztyp/qtjsForm.vue")
},
{
path: "/addYpjg",
name: "addYpjg",
meta: {
title: '新增研判结果',
isAdd: true,
},
component: () => import("@/views/ztyp/addYpjg.vue")
},
{
path: "/detailYpjg",
name: "detailYpjg",
meta: {
title: '新增研判结果',
isAdd: true,
},
component: () => import("@/views/ztyp/detailYpjg.vue")
},
];
<template>
<div>
<form-compontent
:formField="propFormField"
:formLabelAligns="formLabelAlign"
@submit="submit"
:propTitle="title"
>
</form-compontent>
</div>
</template>
<script>
import formCompontent from "@c/form.vue";
import { addThyp } from "@/api/yhz/yhz.js";
export default {
name: "qtjs",
components: {
formCompontent,
},
data() {
return {
title: "群体计算",
propFormField: [
//基本信息
{
title: "",
id: 1,
objStr: "thyp",
index: 0,
data: [
{
name: "团伙编号:",
id: "thbh",
type: "text",
value: "",
placeholder: "请输入",
col: "2",
prop: "checkEmpty",
},
{
name: "研判结论:",
id: "ypjg",
type: "text",
value: "",
placeholder: "请输入",
col: "2",
prop: "checkEmpty",
},
],
},
{
title: "",
id: 2,
objStr: "",
index: 1,
data: [
{
name: "文件:",
id: "fileList",
type: "file",
value: "",
placeholder: "请输入",
col: "2",
},
],
},
],
formLabelAlign: {},
};
},
methods: {
submit(params) {
let loading = this.$loading({
lock: true,
text: "正在保存...",
spinner: "el-icon-loading",
background: "rgba(255, 255, 255, 0.7)",
});
addThyp(params).then((res) => {
if (res.success && res.code == 200) {
this.$alert("保存成功!", "提示", {
confirmButtonText: "确定",
type: "success",
callback: () => {
loading.close();
window.close();
window.opener.location.reload();
},
});
} else {
loading.close();
this.$message.error("添加失败,请检查数据格式是否正确");
}
});
},
},
created() {},
mounted() {
this.$set(this.formLabelAlign, "thbh", this.$route.query.thbh);
this.$forceUpdate();
},
};
</script>
<style scoped lang="scss">
</style>
\ No newline at end of file
<!--
* @Author: your name
* @Date: 2021-08-31 09:52:33
* @LastEditTime: 2021-10-08 15:12:40
* @LastEditors: Please set LastEditors
* @Description: In User Settings Edit
* @FilePath: \founder_vue\src\views\hnksh\ceshi.vue
-->
<template>
<div class="Content" id="hmxsDetail">
<right-content
:cxQueryField="cxQueryField"
:pageObject="pageObject"
:pageFooterProps="pageFooterProps"
labelWidth="110px"
title="研判结果详情"
>
</right-content>
</div>
</template>
<script>
import rightContent from "@c/PersonInfor.vue";
import { getThypXq } from "@/api/yhz/yhz.js";
import axios from "@/utils/http.js";
export default {
name: "queryAj",
components: {
rightContent,
},
data() {
return {
cxQueryField: [
{
title: "", //如果不分小模块就删除title
id: 1,
objStr: "",
data: [
{
label: "研判结论:",
prop: "ypjg",
col: "3",
},
{
label: "附件列表:",
prop: "fjList",
col: "3",
},
],
},
],
pageFooterProps: [
{
label: "录入人:",
prop: "xxdjryXm",
col: "3",
},
{
label: "录入单位:",
prop: "xxdjdwGajgmc",
col: "3",
},
{
label: "录入时间:",
prop: "djsj",
col: "3",
},
],
defaultProps: {
parent: "parentId", // 父级唯一标识
value: "id", // 唯一标识
label: "label", // 标签显示
children: "children", // 子级
},
pageObject: {},
xxzjbh: "",
};
},
mounted() {},
methods: {
getInfor() {
let _this = this;
let loading = this.$loading({
lock: true,
text: "正在加载...",
spinner: "el-icon-loading",
background: "rgba(255, 255, 255, 0.7)",
});
getThypXq({
xxzjbh: _this.xxzjbh,
}).then((res) => {
var result = res.data.rows;
this.pageObject = result;
loading.close();
});
},
},
created() {
this.$store.commit("user/SET_Breadcrumb", this.breadcrumbList);
this.xxzjbh = this.$route.query.xxzjbh;
this.getInfor();
},
};
</script>
<style scoped lang="scss">
</style>
<template>
<div>
<form-compontent
:formField="propFormField"
:formLabelAligns="formLabelAlign"
@submit="submit"
:propTitle="title"
>
</form-compontent>
</div>
</template>
<script>
import formCompontent from "@c/form.vue";
import { insertQtxx } from "@/api/yhz/yhz.js";
export default {
name: "qtjs",
components: {
formCompontent,
},
data() {
return {
title: "群体计算",
propFormField: [
//基本信息
{
title: "",
id: 1,
objStr: "",
index: 0,
data: [
{
name: "起始时间:",
id: "startDate",
type: "dates",
value: "",
placeholder: "请输入",
col: "2",
},
{
name: "结束时间:",
id: "endDate",
type: "dates",
value: "",
placeholder: "请输入",
col: "2",
},
{
name: "人员数:",
id: "rysl",
type: "text",
value: "3",
placeholder: "请输入",
col: "2",
},
{
name: "案件数:",
id: "ajsl",
type: "text",
prop: "checkEmpty",
value: "",
placeholder: "请输入",
col: "2",
},
{
name: "人员系数:",
id: "ryWxxs",
type: "text",
prop: "checkEmpty",
value: "",
placeholder: "请输入",
col: "2",
},
{
name: "案件系数:",
id: "ajWxxs",
type: "text",
prop: "checkEmpty",
value: "",
placeholder: "请输入",
col: "2",
},
],
},
],
formLabelAlign: {},
breadcrumbList: [
{
name: "刑嫌列控管理",
to: "/queryGzry",
isActive: false,
},
{
name: "房产信息列表",
to: "/queryFcxx",
isActive: false,
},
{
name: this.$route.query.xxzjbh ? "修改房产信息" : "新增房产信息",
to: "/addFcxx",
isActive: true,
},
],
glxxXxzjbh: "",
xxzjbh: "",
};
},
methods: {
submit(params) {
let loading = this.$loading({
lock: true,
text: "正在保存...",
spinner: "el-icon-loading",
background: "rgba(255, 255, 255, 0.7)",
});
insertQtxx({
startDate: this.formLabelAlign.startDate,
endDate: this.formLabelAlign.endDate,
rysl: this.formLabelAlign.rysl,
ajsl: this.formLabelAlign.ajsl,
ryWxxs: this.formLabelAlign.ryWxxs,
ajWxxs: this.formLabelAlign.ajWxxs,
}).then((res) => {
if (res.success && res.code == 200) {
this.$alert("保存成功!", "提示", {
confirmButtonText: "确定",
type: "success",
callback: () => {
loading.close();
window.close();
window.opener.location.reload();
},
});
} else {
loading.close();
this.$message.error("添加失败,请检查数据格式是否正确");
}
});
},
},
created() {
},
mounted() {
this.$set(this.formLabelAlign, 'rysl', 3);
this.$forceUpdate();
},
};
</script>
<style scoped lang="scss">
</style>
\ No newline at end of file
......@@ -11,23 +11,36 @@
@toInfor="toInfor"
@toInforDa="toInforDa"
>
<template #listOperation="scope">
<span class="hbyps" v-if="show" @click="add(scope.scope)">
<i class="el-ibncon-plus"></i>群体计算</span
>
<span class="hbyps" v-if="showS" @click="addX()">
<i class="el-ibncon-plus"></i>新增</span
>
</template>
<template #btnGroup="scope">
<span class="hbyp" @click="toKshfx(scope.scope)">可视化分析</span>
<span class="hbyp" @click="toQtyp(scope.scope)">群体研判</span>
<span class="hbyp" v-if="show" @click="toKshfx(scope.scope)"
>可视化分析</span
>
<span class="hbyp" v-if="show" @click="toQtyp(scope.scope)"
>群体研判</span
>
<span class="hbyp" v-if="showS" @click="toDetail(scope.scope)">详情</span>
</template>
</right-content>
<!-- 群体相关嫌疑人列表 -->
<el-dialog title="相关嫌疑人" :visible.sync="dialogTableXyr">
<el-table :data="xyrData">
<el-table-column
v-for="(item, index) in tableXyr" :key="index"
v-for="(item, index) in tableXyr"
:key="index"
:prop="item.prop"
:label="item.label"
align="center"
></el-table-column>
</el-table>
</el-dialog>
<!-- 群体相关案件列表 -->
</div>
</template>
......@@ -42,6 +55,7 @@ export default {
data() {
return {
dialogTableXyr: false,
dialogTableAj: false,
tableXyr: [
{
label: "团伙编号",
......@@ -61,6 +75,25 @@ export default {
},
],
xyrData: [],
tableAj: [
{
label: "团伙编号",
prop: "thbh",
},
{
label: "姓名",
prop: "xm",
},
{
label: "证件号码",
prop: "zjhm",
},
{
label: "户籍地",
prop: "hjddmStr",
},
],
ajData: [],
header: "主题研判",
pageBs: "queryQtypfx",
cxFormData: {
......@@ -169,25 +202,164 @@ export default {
disabled: false,
},
],
//跳转可视化
nodedata: {
type: "person",
id: 0,
name: "objectValue",
children: true,
},
//群体研判表单切换
show: true,
showS: false,
thbh: '',
};
},
created() {
this.$store.commit("user/SET_Menu", this.Menu);
},
methods: {
//群体计算
add() {
this.$router.pushToTab({
path: "/qtjsForm",
});
},
addX() {
this.$router.pushToTab({
path: "/addYpjg",
query: {
thbh: this.thbh,
},
})
},
toDetail(scope) {
this.$router.pushToTab({
path: "/detailYpjg",
query: {
xxzjbh: scope.row.xxzjbh,
},
})
},
// 可视化
toKshfx(scope) {},
toKshfx(scope) {
//
debugger;
let params = {
zjhm: scope.row.zjhm,
};
let obj = {
childrenXhrStr: "/apialy/thyp/getXyrByZjhm",
photoXhrStr: null,
params: params,
nodedata: {
type: "person",
id: 0,
name: scope.row.zjhm,
children: true,
},
nodeClickBoo: true,
};
sessionStorage.setItem("key", JSON.stringify(obj));
this.$router.pushToTab({
path: "/ypEcharts",
// key: data.row.bfkh,
query: {
title: "群体发现分析",
type: "qtfxfx",
// type: "argxfx",
types: "tonat",
},
});
},
// 群体研判
toQtyp(scope) {},
toQtyp(scope) {
this.thbh = scope.row.thbh;
var self = this;
this.show = false;
this.showS = true;
(self.pageBs = "queryZjShow"), (self.cxFormData.thbh = scope.row.thbh);
// self.cxFormData.teamNum = "2";
self.cxUrl = "/thyp/getThypList";
var arreyTj = [
{
name: "团伙编号",
id: "thbh",
type: "text",
value: "",
placeholder: "",
col: "3",
},
];
var arrey = [
{
label: "研判结论",
prop: "ypjg",
},
{
label: "录入人",
prop: "xxdjryXm",
},
{
label: "录入单位",
prop: "xxdjdwGajgmc",
},
{
label: "录入时间",
prop: "djsj",
},
];
let lengtha = arreyTj.length - this.cxQueryField.length;
if (lengtha < 0) {
this.cxQueryField.splice(arreyTj.length);
}
let length = arrey.length - this.cxDefaultFormThead.length;
if (length < 0) {
this.cxDefaultFormThead.splice(arrey.length);
}
arreyTj.forEach((item, index) => {
this.$set(this.cxQueryField, index, {});
this.$set(this.cxQueryField, index, item);
});
arrey.forEach((items, indexs) => {
this.$set(this.cxDefaultFormThead, indexs, {});
this.$set(this.cxDefaultFormThead, indexs, items);
});
},
// 群体相关嫌疑人列表
toInfor(scope) {
// scope.thbh
getXyrByThbh({ thbh: scope.thbh }).then((res) => {
var result = res.data.rows;
this.xyrData = [...result];
});
debugger;
this.dialogTableXyr = true
this.dialogTableXyr = true;
},
// 群体相关案件列表
toInforDa(scope) {
// scope.thbh
getAjByThbh({ thbh: scope.thbh }).then((res) => {
var result = res.data.rows;
this.ajData = [...result];
});
this.dialogTableAj = true;
debugger;
},
//群体研判新增附件
fileOnchange(file, fileList) {
if (fileList.length > 0) {
this.fileArr = [fileList[0]]; // 这一步,是 展示最后一次选择的csv文件
if (fileList.length > 1) this.$message.error("只能上传一个文件!");
}
},
objectAssignment(value) {
if (
Object.prototype.toString.call(value) == "[object Object]" ||
Object.prototype.toString.call(value) == "[object Array]"
)
return JSON.parse(JSON.stringify(value));
},
},
};
</script>
......@@ -248,5 +420,21 @@ export default {
margin-right: 16px;
cursor: pointer;
}
.hbyps {
font-size: 14px;
font-family: Source Han Sans CN;
font-weight: 400;
line-height: 22px;
color: #007aff;
margin-right: 16px;
cursor: pointer;
display: inline-block;
width: 87px;
// border: 1px solid;
line-height: 28px;
text-align: center;
border: 1px solid #007aff;
border-radius: 5px;
}
@import "@/assets/styles/rightContent.scss";
</style>
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