更新
This commit is contained in:
17
src/api/badwgl.js
Normal file
17
src/api/badwgl.js
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
import request from "@/utils/request";
|
||||||
|
const api = "/bagl/mosty-base";
|
||||||
|
|
||||||
|
export const getDwglnfo = (id) => {
|
||||||
|
return request({
|
||||||
|
url: api + "/baxx/dwgl/getInfo/" + id,
|
||||||
|
method: "POST",
|
||||||
|
});
|
||||||
|
};
|
||||||
|
export const editDwglEdit = (data) => {
|
||||||
|
return request({
|
||||||
|
url: api + "/baxx/dwgl/edit",
|
||||||
|
method: "POST",
|
||||||
|
data,
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
@ -99,6 +99,7 @@
|
|||||||
overflow: auto;
|
overflow: auto;
|
||||||
border: 1px solid #ccc;
|
border: 1px solid #ccc;
|
||||||
top: 4px;
|
top: 4px;
|
||||||
|
|
||||||
right: 10px;
|
right: 10px;
|
||||||
left: 10px;
|
left: 10px;
|
||||||
background-color: #fff;
|
background-color: #fff;
|
||||||
@ -169,6 +170,10 @@
|
|||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
line-height: 48px;
|
line-height: 48px;
|
||||||
color: #000;
|
color: #000;
|
||||||
|
position: sticky;
|
||||||
|
top: 0;
|
||||||
|
z-index: 10;
|
||||||
|
background: #fff;
|
||||||
}
|
}
|
||||||
|
|
||||||
&::v-deep .el-form--inline {
|
&::v-deep .el-form--inline {
|
||||||
@ -348,6 +353,7 @@
|
|||||||
margin-top: 14px;
|
margin-top: 14px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.makerTitlezb{
|
|
||||||
|
.makerTitlezb {
|
||||||
color: orangered;
|
color: orangered;
|
||||||
}
|
}
|
||||||
@ -18,6 +18,7 @@ import MarkdownEdit from "./MarkdownEdit/index.vue";
|
|||||||
import FileUpload from "./FileUpload/index.vue";
|
import FileUpload from "./FileUpload/index.vue";
|
||||||
import Date from "./Date/index.vue";
|
import Date from "./Date/index.vue";
|
||||||
import Empty from "./Empty/index.vue";
|
import Empty from "./Empty/index.vue";
|
||||||
|
import CheckBox from "@/components/checkBox/index.vue";
|
||||||
export {
|
export {
|
||||||
AddressSelect,
|
AddressSelect,
|
||||||
FrameWork,
|
FrameWork,
|
||||||
@ -38,5 +39,6 @@ export {
|
|||||||
MarkdownEdit,
|
MarkdownEdit,
|
||||||
FileUpload,
|
FileUpload,
|
||||||
Date,
|
Date,
|
||||||
Empty
|
Empty,
|
||||||
|
CheckBox
|
||||||
};
|
};
|
||||||
|
|||||||
@ -14,8 +14,8 @@
|
|||||||
style="width:100%" :min="item.min || 0" :max="item.max || 1000" />
|
style="width:100%" :min="item.min || 0" :max="item.max || 1000" />
|
||||||
<!--选择 select-->
|
<!--选择 select-->
|
||||||
<MOSTY.Select v-else-if="item.type == 'select'" @change="handleNum" filterable :multiple="item.multiple"
|
<MOSTY.Select v-else-if="item.type == 'select'" @change="handleNum" filterable :multiple="item.multiple"
|
||||||
v-model="listQuery[item.prop]" :dictEnum="item.options" width="100%" clearable
|
v-model="listQuery[item.prop]" :collapse-tags="item.multiple" :dictEnum="item.options" width="100%"
|
||||||
:placeholder="`请选择${item.label}`" />
|
clearable :placeholder="`请选择${item.label}`" />
|
||||||
<!-- 选择性别 -->
|
<!-- 选择性别 -->
|
||||||
<MOSTY.Sex v-else-if="item.type == 'Sex'" v-model:sex="listQuery[item.prop]" width="100%" clearable
|
<MOSTY.Sex v-else-if="item.type == 'Sex'" v-model:sex="listQuery[item.prop]" width="100%" clearable
|
||||||
:placeholder="`请选择${item.label}`" />
|
:placeholder="`请选择${item.label}`" />
|
||||||
@ -24,16 +24,18 @@
|
|||||||
v-model="listQuery[item.prop]" clearable filterable />
|
v-model="listQuery[item.prop]" clearable filterable />
|
||||||
<!-- 部门department -->
|
<!-- 部门department -->
|
||||||
<MOSTY.Department style="width:100%" v-else-if="item.type === 'department'" clearable
|
<MOSTY.Department style="width:100%" v-else-if="item.type === 'department'" clearable
|
||||||
:placeholder="listQuery.ssbm ? listQuery.ssbm : `请选择${item.label}`" v-model="listQuery[item.prop]" />
|
:placeholder="listQuery.ssbm ? listQuery.ssbm : `请选择${item.label}`"
|
||||||
|
@getDepValue="getdep($event, item.depMc)" v-model="listQuery[item.prop]" />
|
||||||
<!-- 时间选择 type: date/time/datetime/datetimerange/daterange-->
|
<!-- 时间选择 type: date/time/datetime/datetimerange/daterange-->
|
||||||
<MOSTY.Date v-else-if="item.type == 'date'" :type="item.lx ? item.lx : 'date'" width="100%" clearable
|
<MOSTY.Date v-else-if="item.type == 'date'" :type="item.lx ? item.lx : 'date'" width="100%" clearable
|
||||||
v-model="listQuery[item.prop]" />
|
v-model="listQuery[item.prop]" />
|
||||||
<!-- 上传 upload limit:'限制张数'-->
|
<!-- 上传 upload limit:'限制张数'-->
|
||||||
<MOSTY.Upload v-else-if="item.type == 'upload'" :isAll="item.isAll" :key="item.prop" :showBtn="item.showBtn" :isImg="item.isImg" :limit="item.limit" width="100%"
|
<MOSTY.Upload v-else-if="item.type == 'upload'" :isAll="item.isAll" :key="item.prop" :showBtn="item.showBtn"
|
||||||
v-model="listQuery[item.prop]" />
|
:isImg="item.isImg" :limit="item.limit" width="100%" v-model="listQuery[item.prop]" />
|
||||||
<!--选择checkbox -->
|
<!--选择checkbox -->
|
||||||
|
<!-- <div v-else-if="item.type == 'checkbox'" >{{item.options }}</div> -->
|
||||||
<MOSTY.CheckBox v-else-if="item.type == 'checkbox'" width="100%" clearable v-model="listQuery[item.prop]"
|
<MOSTY.CheckBox v-else-if="item.type == 'checkbox'" width="100%" clearable v-model="listQuery[item.prop]"
|
||||||
:checkList="item.options" :placeholder="`请选择${item.label}`" />
|
:m="item.options" :placeholder="`请选择${item.label}`" />
|
||||||
|
|
||||||
<!-- 单选radio -->
|
<!-- 单选radio -->
|
||||||
<el-radio-group v-else-if="item.type == 'radio'" v-model="listQuery[item.prop]">
|
<el-radio-group v-else-if="item.type == 'radio'" v-model="listQuery[item.prop]">
|
||||||
@ -69,8 +71,8 @@
|
|||||||
style="width:100%" :min="child.min || 0" :max="child.max || 1000" />
|
style="width:100%" :min="child.min || 0" :max="child.max || 1000" />
|
||||||
<!--选择 select-->
|
<!--选择 select-->
|
||||||
<MOSTY.Select v-else-if="child.type == 'select'" @change="handleNum" filterable :multiple="child.multiple"
|
<MOSTY.Select v-else-if="child.type == 'select'" @change="handleNum" filterable :multiple="child.multiple"
|
||||||
v-model="listQuery[child.prop]" :dictEnum="child.options" width="100%" clearable
|
v-model="listQuery[child.prop]" :collapse-tags="child.multiple" :dictEnum="child.options" width="100%"
|
||||||
:placeholder="`请选择${child.label}`" />
|
clearable :placeholder="`请选择${child.label}`" />
|
||||||
<!-- 部门department -->
|
<!-- 部门department -->
|
||||||
<MOSTY.Department style="width:100%" v-else-if="child.type === 'department'" clearable
|
<MOSTY.Department style="width:100%" v-else-if="child.type === 'department'" clearable
|
||||||
v-model="listQuery[child.prop]" />
|
v-model="listQuery[child.prop]" />
|
||||||
@ -81,8 +83,10 @@
|
|||||||
<MOSTY.Upload v-else-if="child.type == 'upload'" :isImg="child.isImg" :limit="child.limit" width="100%"
|
<MOSTY.Upload v-else-if="child.type == 'upload'" :isImg="child.isImg" :limit="child.limit" width="100%"
|
||||||
v-model="listQuery[child.prop]" />
|
v-model="listQuery[child.prop]" />
|
||||||
<!--选择checkbox -->
|
<!--选择checkbox -->
|
||||||
|
|
||||||
|
|
||||||
<MOSTY.CheckBox v-else-if="child.type == 'checkbox'" width="100%" clearable v-model="listQuery[child.prop]"
|
<MOSTY.CheckBox v-else-if="child.type == 'checkbox'" width="100%" clearable v-model="listQuery[child.prop]"
|
||||||
:checkList="child.options" :placeholder="`请选择${child.label}`" />
|
:data="child.options" :placeholder="`请选择${child.label}`" />
|
||||||
<!-- 单选radio -->
|
<!-- 单选radio -->
|
||||||
<el-radio-group v-else-if="child.type == 'radio'" v-model="listQuery[child.prop]">
|
<el-radio-group v-else-if="child.type == 'radio'" v-model="listQuery[child.prop]">
|
||||||
<el-radio v-for="obj in child.options" :key="obj.value" :label="obj.value">{{ obj.label }}</el-radio>
|
<el-radio v-for="obj in child.options" :key="obj.value" :label="obj.value">{{ obj.label }}</el-radio>
|
||||||
@ -136,7 +140,15 @@ const submit = (resfun) => {
|
|||||||
resfun(listQuery.value);
|
resfun(listQuery.value);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
const getdep = (e, val) => {
|
||||||
|
if (val) {
|
||||||
|
if (Array.isArray(e)) {
|
||||||
|
listQuery.value[val] = e ? e.map(item => item.orgName) : '';
|
||||||
|
} else {
|
||||||
|
listQuery.value[val] = e ? e.orgName : '';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
const reset = () => {
|
const reset = () => {
|
||||||
listQuery.value = {};
|
listQuery.value = {};
|
||||||
elform.value.resetFields();
|
elform.value.resetFields();
|
||||||
|
|||||||
@ -83,6 +83,8 @@ const props = defineProps({
|
|||||||
// 可选的时候选择的数据
|
// 可选的时候选择的数据
|
||||||
const emit = defineEmits(["chooseData"]);
|
const emit = defineEmits(["chooseData"]);
|
||||||
const multipleTableRef = ref();
|
const multipleTableRef = ref();
|
||||||
|
console.log(props.tableConfiger);
|
||||||
|
|
||||||
const currentRow = ref();
|
const currentRow = ref();
|
||||||
let getConfiger = reactive({
|
let getConfiger = reactive({
|
||||||
showSelectType: null, // 显示多选还是单选还是没有选择 checkBox/radio/null
|
showSelectType: null, // 显示多选还是单选还是没有选择 checkBox/radio/null
|
||||||
|
|||||||
@ -1,8 +1,9 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="checkBox">
|
<div class="checkBox">
|
||||||
|
{{ data }}
|
||||||
<el-checkbox class="checkall" v-if="showAll" v-model="checkAll" :indeterminate="isIndeterminate" @change="handleCheckAll">全部</el-checkbox>
|
<el-checkbox class="checkall" v-if="showAll" v-model="checkAll" :indeterminate="isIndeterminate" @change="handleCheckAll">全部</el-checkbox>
|
||||||
<el-checkbox-group v-model="hasChecked" @change="handleCheckedChange">
|
<el-checkbox-group v-model="hasChecked" @change="handleCheckedChange">
|
||||||
<el-checkbox v-for="(item,idx) in checkedList" :key="idx" :label="item">{{item}}</el-checkbox>
|
<el-checkbox v-for="(item,idx) in checkedList" :key="idx" :label="item">{{item.zdmc}}</el-checkbox>
|
||||||
</el-checkbox-group>
|
</el-checkbox-group>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@ -20,6 +21,10 @@ const props = defineProps({
|
|||||||
}, showAll: {
|
}, showAll: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: true
|
default: true
|
||||||
|
},
|
||||||
|
m: {
|
||||||
|
type: Array,
|
||||||
|
default:()=>[]
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
const checkAll = ref(false);
|
const checkAll = ref(false);
|
||||||
|
|||||||
@ -0,0 +1,283 @@
|
|||||||
|
<template>
|
||||||
|
<!-- top: -63px; -->
|
||||||
|
|
||||||
|
<div class="dialog" v-if="dialogForm">
|
||||||
|
<div class="head_box" style="">
|
||||||
|
<span class="title">年检培训申请</span>
|
||||||
|
<div>
|
||||||
|
<el-button size="small" @click="editBabaEditList" type="primary" :loading="loading" v-if="!disabled">保存</el-button>
|
||||||
|
<el-button size="small" @click="close">关闭</el-button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="cntinfo">
|
||||||
|
<FormMessage ref="FormRef" v-model="listQuery" :formList="formList" :labelWidth="140" :rules="rules" :disabled="disabled">
|
||||||
|
<template #titleNoe>
|
||||||
|
<el-divider content-position="left"><span style="color: #409eff;">单位基本信息</span></el-divider>
|
||||||
|
</template>
|
||||||
|
<template #titleTow>
|
||||||
|
<el-divider content-position="left"><span style="color: #409eff;">法人信息</span></el-divider>
|
||||||
|
</template>
|
||||||
|
<template #titleThree>
|
||||||
|
<el-divider content-position="left"><span style="color: #409eff;">负责人信息</span></el-divider>
|
||||||
|
</template>
|
||||||
|
<template #titleFour>
|
||||||
|
<el-divider content-position="left"><span style="color: #409eff;">保安信息</span></el-divider>
|
||||||
|
</template>
|
||||||
|
<template #titleFive>
|
||||||
|
<el-divider content-position="left"><span style="color: #409eff;">补充信息</span></el-divider>
|
||||||
|
</template>
|
||||||
|
</FormMessage>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup>
|
||||||
|
import FormMessage from "@/components/aboutTable/FormMessage.vue";
|
||||||
|
import { ref, defineEmits, getCurrentInstance } from 'vue';
|
||||||
|
import { getDwglnfo, editDwglEdit } from "@/api/badwgl";
|
||||||
|
const { proxy } = getCurrentInstance();
|
||||||
|
const { D_BAXX_DWLX, D_BZ_YLJYZK, D_BABA_JYFW, D_BABA_GSXZ, D_BZ_SF } = proxy.$dict('D_BAXX_DWLX', 'D_BZ_YLJYZK', 'D_BABA_JYFW', 'D_BABA_GSXZ', 'D_BZ_SF');
|
||||||
|
const emit = defineEmits(["refresh"]);
|
||||||
|
const dialogForm = ref(false);
|
||||||
|
const FormRef = ref(null);
|
||||||
|
const listQuery = ref({});
|
||||||
|
|
||||||
|
|
||||||
|
const formList = ref()
|
||||||
|
const rules = ref({
|
||||||
|
csmc: [{ required: true, message: "请输入单位名称", trigger: "blur" }],
|
||||||
|
dwmc: [{ required: true, message: "请输入营业执照登记名称", trigger: "blur" }],
|
||||||
|
xydm: [{ required: true, message: "请输入信用代码", trigger: "blur" }],
|
||||||
|
// csdm: [{ required: true, message: "请输入场所代码", trigger: "blur" }],
|
||||||
|
// gds: [{ required: true, message: "请输入股东数", trigger: "blur" }],
|
||||||
|
zczj: [{ required: true, message: "请输入注册资金(万元)", trigger: "blur" }],
|
||||||
|
type: [{ required: true, message: "请选择单位类型", trigger: "blur" }],
|
||||||
|
csLxdh: [{ required: true, message: "请输入场所电话", trigger: "blur" }],
|
||||||
|
jyzk: [{ required: true, message: "请选择经营状况", trigger: "blur" }],
|
||||||
|
jyfw: [{ required: true, message: "请选择经营范围", trigger: "blur" }],
|
||||||
|
dyrs: [{ required: true, message: "请输入党员人数", trigger: "blur" }],
|
||||||
|
// gxdwdm: [{ required: true, message: "请选择管辖区县", trigger: "blur" }],
|
||||||
|
gsxz: [{ required: true, message: "请选择公司性质", trigger: "blur" }],
|
||||||
|
kyrq: [{ required: true, message: "请选择开业日期", trigger: "blur" }],
|
||||||
|
zcdz: [{ required: true, message: "请输入场所注册地址", trigger: "blur" }],
|
||||||
|
jydz: [{ required: true, message: "请输入场所经营地址", trigger: "blur" }],
|
||||||
|
mqcsyw: [{ required: true, message: "请输入目前从事业务", trigger: "blur" }],
|
||||||
|
// qzqk: [{ required: true, message: "请输入枪支情况", trigger: "blur" }],
|
||||||
|
// sfyyzz: [{ required: true, message: "请选择是否有武装押运资质", trigger: "blur" }],
|
||||||
|
// sfpxzz: [{ required: true, message: "请选择是否有培训资质", trigger: "blur" }],
|
||||||
|
// sfdzz: [{ required: true, message: "请选择是否成立党组织", trigger: "blur" }],
|
||||||
|
// zfzrr: [{ required: true, message: "请选择是否为负责人", trigger: "blur" }],
|
||||||
|
fdrXm: [{ required: true, message: "请输入法人姓名", trigger: "blur" }],
|
||||||
|
fdrSfzh: [{ required: true, message: "请输入法人账号", trigger: "blur" }],
|
||||||
|
fdrLxdh: [{ required: true, message: "请输入法人手机号", trigger: "blur" }],
|
||||||
|
fdrJzdz: [{ required: true, message: "请输入法人地址", trigger: "blur" }],
|
||||||
|
frSfzZm: [{ required: true, message: "请上传法人身份证正面", trigger: "blur" }],
|
||||||
|
frSfzFm: [{ required: true, message: "请上传法人身份证反面", trigger: "blur" }],
|
||||||
|
fzrXm: [{ required: true, message: "请输入负责人姓名", trigger: "blur" }],
|
||||||
|
fzrSfzh: [{ required: true, message: "请输入负责人身份证号", trigger: "blur" }],
|
||||||
|
fzrLxdh: [{ required: true, message: "请输入负责人联系电话", trigger: "blur" }],
|
||||||
|
nl: [{ required: true, message: "请输入负责人联系电话", trigger: "blur" }],
|
||||||
|
xb: [{ required: true, message: "请输入负责人性别", trigger: "blur" }],
|
||||||
|
baszsbh: [{ required: true, message: "请输入保安证编号", trigger: "blur" }],
|
||||||
|
fzrJzdz: [{ required: true, message: "请输入负责人地址", trigger: "blur" }],
|
||||||
|
fzrSfzZm: [{ required: true, message: "请上传负责人身份证正面", trigger: "blur" }],
|
||||||
|
fzrSfzFm: [{ required: true, message: "请上传负责人身份证反面", trigger: "blur" }],
|
||||||
|
// sfba: [{ required: true, message: "请选择是否有保安负责人", trigger: "blur" }],
|
||||||
|
// bags: [{ required: true, message: "请输入保安公司", trigger: "blur" }],
|
||||||
|
// bafzr: [{ required: true, message: "请输入保安公司负责人姓名", trigger: "blur" }],
|
||||||
|
// bars: [{ required: true, message: "请输入保安人数", trigger: "blur" }],
|
||||||
|
// bafzrsfz: [{ required: true, message: "请输入身份证号", trigger: "blur" }],
|
||||||
|
// balxdh: [{ required: true, message: "请输入保安负责人联系电话", trigger: "blur" }],
|
||||||
|
// bajzdz: [{ required: true, message: "请输入保安负责人居住地址", trigger: "blur" }],
|
||||||
|
// csmj: [{ required: true, message: "请输入场所面积(㎡)", trigger: "blur" }],
|
||||||
|
yyzzzp: [{ required: true, message: "请上传营业执照", trigger: "blur" }],
|
||||||
|
cszp: [{ required: true, message: "请上传场所照片", trigger: "blur" }],
|
||||||
|
// badwbabh: [{ required: true, message: "请输入保安单位备案编号", trigger: "blur" }],
|
||||||
|
// dwbajgmc: [{ required: true, message: "请输入保安单位备案名称", trigger: "blur" }],
|
||||||
|
// dwjyxkhm: [{ required: true, message: "请输入保安单位备案名称", trigger: "blur" }],
|
||||||
|
// dwjyxfzjg: [{ required: true, message: "请输入保安单位备案名称", trigger: "blur" }],
|
||||||
|
})
|
||||||
|
const title = ref("新增")
|
||||||
|
const disabled = ref(false)
|
||||||
|
// 初始化数据
|
||||||
|
const init = async (type,id) => {
|
||||||
|
title.value = type == 'info' ? '详情' : '修改'
|
||||||
|
disabled.value = type == 'info'
|
||||||
|
|
||||||
|
dialogForm.value = true;
|
||||||
|
formList.value = [
|
||||||
|
[
|
||||||
|
{ label: "", prop: "titleNoe", type: "slot" },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ label: "单位名称", prop: "csmc", type: "input" },
|
||||||
|
{ label: "营业执照登记名称", prop: "dwmc", type: "input" },
|
||||||
|
{ label: "信用代码", prop: "xydm", type: "input" },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
// { label: "场所名称", prop: "csmc", type: "input" },
|
||||||
|
{ label: "场所代码", prop: "code", type: "input" },
|
||||||
|
{ label: "股东数", prop: "gds", type: "input" },
|
||||||
|
{ label: "注册资金(万元)", prop: "zczj", type: "input", lx: "number" },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ label: "单位类型", prop: "type", type: "select", options: D_BAXX_DWLX },
|
||||||
|
{ label: "场所电话", prop: "csLxdh", type: "input" },
|
||||||
|
{ label: "经营状况", prop: "jyzk", type: "select", options: D_BZ_YLJYZK },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
|
||||||
|
{ label: "经营范围", prop: "jyfw", type: "select", options: D_BABA_JYFW, multiple: true },
|
||||||
|
{ label: "党员人数", prop: "dyrs", type: "input", lx: "number" },
|
||||||
|
{ label: "保安人数", prop: "bagsRysl", type: "input", lx: "number" },
|
||||||
|
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ label: "管辖区县", prop: "gxdwdm", type: "department", depMc: "gxdwmc" },
|
||||||
|
{ label: "公司性质", prop: "gsxz", type: "select", options: D_BABA_GSXZ },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ label: "开业日期", prop: "kyrq", type: "date" },
|
||||||
|
{ label: "场所注册地址", prop: "zcdz", type: "input" },
|
||||||
|
{ label: "场所经营地址", prop: "jydz", type: "input" },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ label: "目前从事业务", prop: "mqcsyw", type: "input" },
|
||||||
|
{ label: "枪支情况", prop: "qzqk", type: "input" },
|
||||||
|
{ label: "是否有武装押运资质", prop: "sfyyzz", type: "select", options: D_BZ_SF },
|
||||||
|
],
|
||||||
|
|
||||||
|
[
|
||||||
|
{ label: "是否有培训资质", prop: "sfpxzz", type: "select", options: D_BZ_SF },
|
||||||
|
{ label: "是否成立党组织", prop: "sfdzz", type: "select", options: D_BZ_SF },
|
||||||
|
], [
|
||||||
|
{ label: "", prop: "titleTow", type: "slot" },
|
||||||
|
], [
|
||||||
|
// { label: "是否为负责人", prop: "zfzrr", type: "select", options: D_BZ_SF },
|
||||||
|
{ label: "法人姓名", prop: "fdrXm", type: "input" },
|
||||||
|
{ label: "身份证号", prop: "fdrSfzh", type: "input" },
|
||||||
|
], [
|
||||||
|
{ label: "手机号码", prop: "fdrLxdh", type: "input" },
|
||||||
|
{ label: "居住地址", prop: "fdrJzdz", type: "input" },
|
||||||
|
],
|
||||||
|
[{ label: "身份证正面", prop: "frSfzZm", type: "upload" },
|
||||||
|
{ label: "身份证反面", prop: "frSfzFm", type: "upload" },
|
||||||
|
], [
|
||||||
|
{ label: "", prop: "titleThree", type: "slot" },
|
||||||
|
], [
|
||||||
|
{ label: "负责人姓名", prop: "fzrXm", type: "input" },
|
||||||
|
{ label: "身份证号", prop: "fzrSfzh", type: "input" },
|
||||||
|
{ label: "联系电话", prop: "fzrLxdh", type: "input" },
|
||||||
|
], [
|
||||||
|
// { label: "手机号码", prop: "pxrq0", type: "date" },
|
||||||
|
{ label: "年龄", prop: "nl", type: "input", },
|
||||||
|
{ label: "性别", prop: "xb", type: "input" },
|
||||||
|
{ label: "保安证编号", prop: "baszsbh", type: "input" },
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ label: "居住地址", prop: "fzrJzdz", type: "input" },
|
||||||
|
], [{ label: "身份证正面", prop: "fzrSfzZm", type: "upload" },
|
||||||
|
{ label: "身份证反面", prop: "fzrSfzFm", type: "upload" },
|
||||||
|
], [
|
||||||
|
{ label: "", prop: "titleFour", type: "slot" },
|
||||||
|
], [
|
||||||
|
// { label: "是否保安负责人", prop: "sfba", type: "select", options: D_BZ_SF },
|
||||||
|
// { label: "保安公司", prop: "bags", type: "input" },
|
||||||
|
{ label: "保安负责人", prop: "bagsFzrXm", type: "input" },
|
||||||
|
{ label: "身份证号", prop: "bagsFzrSfzh", type: "input" },
|
||||||
|
{ label: "联系方式", prop: "bagsFzrLxdh", type: "input" },
|
||||||
|
], [
|
||||||
|
{ label: "居住地址", prop: "bagsFzrJzd", type: "input" },
|
||||||
|
// { label: "保安人数", prop: "bars", type: "input", lx: "number" },
|
||||||
|
{ label: "场所面积(㎡)", prop: "csmj", type: "input", lx: "number" },
|
||||||
|
], [
|
||||||
|
{ label: "", prop: "titleFive", type: "slot" },
|
||||||
|
], [
|
||||||
|
{ label: "营业执照", prop: "yyzzzp", type: "upload" },
|
||||||
|
{ label: "武装押运证明", prop: "jyxkz", type: "upload" },
|
||||||
|
], [{ label: "场所照片", prop: "cszp", type: "upload" },],
|
||||||
|
[
|
||||||
|
{ label: "保安单位备案编号", prop: "babh", type: "input" },
|
||||||
|
{ label: "单位备案机构名称", prop: "bamc", type: "input" },
|
||||||
|
{ label: "单位经营许可号码", prop: "jyxkzBh", type: "input" },
|
||||||
|
], [
|
||||||
|
{ label: "单位经营许发证机构", prop: "jyxkzBfjg", type: "input" },
|
||||||
|
],
|
||||||
|
]
|
||||||
|
getInfo(id)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
const getInfo = (id) => {
|
||||||
|
getDwglnfo(id).then(res => {
|
||||||
|
listQuery.value = res
|
||||||
|
listQuery.value.frSfzZm = listQuery.value.frSfzZm ? listQuery.value.frSfzZm.split(',') : []
|
||||||
|
listQuery.value.frSfzFm = listQuery.value.frSfzFm ? listQuery.value.frSfzFm.split(',') : []
|
||||||
|
listQuery.value.fzrSfzZm = listQuery.value.fzrSfzZm ? listQuery.value.fzrSfzZm.split(',') : []
|
||||||
|
listQuery.value.fzrSfzFm = listQuery.value.fzrSfzFm ? listQuery.value.fzrSfzFm.split(',') : []
|
||||||
|
listQuery.value.yyzzzp = listQuery.value.yyzzzp ? listQuery.value.yyzzzp.split(',') : []
|
||||||
|
listQuery.value.jyxkz = listQuery.value.jyxkz ? listQuery.value.jyxkz.split(',') : []
|
||||||
|
listQuery.value.cszp = listQuery.value.cszp ? listQuery.value.cszp.split(',') : []
|
||||||
|
listQuery.value.jyfw = listQuery.value.jyfw ? listQuery.value.jyfw.split(',') : []
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
const editBabaEditList = () => {
|
||||||
|
FormRef.value.submit(() => {
|
||||||
|
const promes = {
|
||||||
|
...listQuery.value,
|
||||||
|
frSfzZm: listQuery.value.frSfzZm ? listQuery.value.frSfzZm.join(',') : '',
|
||||||
|
frSfzFm: listQuery.value.frSfzFm ? listQuery.value.frSfzFm.join(',') : '',
|
||||||
|
fzrSfzZm : listQuery.value.fzrSfzZm ? listQuery.value.fzrSfzZm .join(',') : '',
|
||||||
|
fzrSfzFm: listQuery.value.fzrSfzFm ? listQuery.value.fzrSfzFm.join(',') : '',
|
||||||
|
yyzzzp: listQuery.value.yyzzzp ? listQuery.value.yyzzzp.join(',') : '',
|
||||||
|
jyxkz: listQuery.value.jyxkz ? listQuery.value.jyxkz.join(',') : '',
|
||||||
|
cszp: listQuery.value.cszp ? listQuery.value.cszp.join(',') : '',
|
||||||
|
jyfw: listQuery.value.jyfw ? listQuery.value.jyfw.join(',') : '',
|
||||||
|
|
||||||
|
}
|
||||||
|
editDwglEdit(promes).then(res => {
|
||||||
|
proxy.$message({
|
||||||
|
message: "编辑成功",
|
||||||
|
type: "success",
|
||||||
|
});
|
||||||
|
dialogForm.value = false;
|
||||||
|
FormRef.value.reset()
|
||||||
|
})
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
const loading = ref(false)
|
||||||
|
const save = () => {
|
||||||
|
FormRef.value.submit(() => {
|
||||||
|
|
||||||
|
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
const close = () => {
|
||||||
|
dialogForm.value = false;
|
||||||
|
FormRef.value.reset()
|
||||||
|
};;
|
||||||
|
|
||||||
|
defineExpose({ init })
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
@import "@/assets/css/layout.scss";
|
||||||
|
|
||||||
|
.table-title {
|
||||||
|
line-height: 40px;
|
||||||
|
text-align: center;
|
||||||
|
background: #f5f5f5;
|
||||||
|
color: #333;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@ -1,5 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="dialog" v-if="dialogVisible">
|
<div class="dialog viewDetailsDialog" v-if="dialogVisible">
|
||||||
<div class="head_box">
|
<div class="head_box">
|
||||||
<span class="title">{{ title }}</span>
|
<span class="title">{{ title }}</span>
|
||||||
<div>
|
<div>
|
||||||
@ -138,7 +138,9 @@ defineExpose({ open })
|
|||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
@import "@/assets/css/layout.scss";
|
@import "@/assets/css/layout.scss";
|
||||||
|
.viewDetailsDialog {
|
||||||
|
top:-58px;
|
||||||
|
}
|
||||||
.dialog {
|
.dialog {
|
||||||
::v-deep {
|
::v-deep {
|
||||||
.imgWrapper {
|
.imgWrapper {
|
||||||
|
|||||||
@ -8,15 +8,25 @@
|
|||||||
<div class="tabBox">
|
<div class="tabBox">
|
||||||
<MyTable :tableData="pageData.tableData" :tableColumn="pageData.tableColumn" :tableHeight="pageData.tableHeight"
|
<MyTable :tableData="pageData.tableData" :tableColumn="pageData.tableColumn" :tableHeight="pageData.tableHeight"
|
||||||
:key="pageData.keyCount" :tableConfiger="pageData.tableConfiger" :controlsWidth="pageData.controlsWidth">
|
:key="pageData.keyCount" :tableConfiger="pageData.tableConfiger" :controlsWidth="pageData.controlsWidth">
|
||||||
<template #bxxLx="{ row }">
|
<!-- <template #bxxLx="{ row }">
|
||||||
<DictTag :value="row.bxxLx" :tag="false" :options="D_BZ_BXDLX" />
|
<DictTag :value="row.bxxLx" :tag="false" :options="D_BZ_BXDLX" />
|
||||||
|
</template> -->
|
||||||
|
<template #gsxz="{ row }">
|
||||||
|
<DictTag :value="row.gsxz" :tag="false" :options="D_BABA_GSXZ" />
|
||||||
</template>
|
</template>
|
||||||
<template #bxds="{ row }">
|
<template #sfyyzz="{ row }">
|
||||||
<div>{{ row.bxds?.length }}</div>
|
<DictTag :value="row.sfyyzz" :tag="false" :options="D_BZ_SF" />
|
||||||
|
</template>
|
||||||
|
<template #sfpxzz="{ row }">
|
||||||
|
<DictTag :value="row.sfpxzz" :tag="false" :options="D_BZ_SF" />
|
||||||
|
</template>
|
||||||
|
<template #sfdzz="{ row }">
|
||||||
|
<DictTag :value="row.sfdzz" :tag="false" :options="D_BZ_SF" />
|
||||||
</template>
|
</template>
|
||||||
<!-- 操作 -->
|
<!-- 操作 -->
|
||||||
<template #controls="{ row }">
|
<template #controls="{ row }">
|
||||||
<el-link type="primary" @click="addEdit('view', row)">详情</el-link>
|
<el-link type="primary" @click="openPxApllication('eitd',row)">编辑</el-link>
|
||||||
|
<el-link type="primary" @click="openPxApllication('info', row)">详情</el-link>
|
||||||
</template>
|
</template>
|
||||||
</MyTable>
|
</MyTable>
|
||||||
|
|
||||||
@ -24,29 +34,32 @@
|
|||||||
...pageData.pageConfiger,
|
...pageData.pageConfiger,
|
||||||
total: pageData.total
|
total: pageData.total
|
||||||
}"></Pages>
|
}"></Pages>
|
||||||
|
<!-- <ViewDetailsDialog ref="detailsRef" v-model="visible" /> -->
|
||||||
|
|
||||||
<ViewDetailsDialog ref="detailsRef" v-model="visible" />
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<PxApllication ref="pxApllication" />
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script setup>
|
||||||
import { onMounted, reactive, ref } from "vue";
|
import { onMounted, reactive, ref,getCurrentInstance } from "vue";
|
||||||
import MyTable from '@/components/aboutTable/MyTable.vue';
|
import MyTable from '@/components/aboutTable/MyTable.vue';
|
||||||
import Pages from '@/components/aboutTable/Pages.vue';
|
import Pages from '@/components/aboutTable/Pages.vue';
|
||||||
import PageTitle from '@/components/aboutTable/PageTitle.vue';
|
import PageTitle from '@/components/aboutTable/PageTitle.vue';
|
||||||
import ViewDetailsDialog from "./components/viewDetailsDialog.vue";
|
// import ViewDetailsDialog from "./components/viewDetailsDialog.vue";
|
||||||
|
import PxApllication from "./components/pxApllication.vue";
|
||||||
import { qcckPost } from "@/api/qcckApi.js";
|
import { qcckPost } from "@/api/qcckApi.js";
|
||||||
|
const { proxy } = getCurrentInstance();
|
||||||
|
const { D_BABA_GSXZ,D_BZ_SF } =proxy.$dict('D_BABA_GSXZ','D_BZ_SF');
|
||||||
const visible = ref(false);
|
const visible = ref(false);
|
||||||
const detailsRef = ref(null);
|
const detailsRef = ref(null);
|
||||||
const D_BZ_BXDLX = ref([]);
|
|
||||||
const pageData = reactive({
|
const pageData = reactive({
|
||||||
tableData: [],
|
tableData: [],
|
||||||
keyCount: 0,
|
keyCount: 0,
|
||||||
tableConfiger: {
|
tableConfiger: {
|
||||||
rowHieght: 61,
|
rowHieght: 61,
|
||||||
showSelectType: "null",
|
showSelectType: "null",
|
||||||
loading: false
|
loading: false,
|
||||||
},
|
},
|
||||||
total: 0,
|
total: 0,
|
||||||
pageConfiger: {
|
pageConfiger: {
|
||||||
@ -56,9 +69,17 @@ const pageData = reactive({
|
|||||||
controlsWidth: 180,
|
controlsWidth: 180,
|
||||||
tableColumn: [
|
tableColumn: [
|
||||||
{ label: "单位名称", prop: "dwmc" },
|
{ label: "单位名称", prop: "dwmc" },
|
||||||
{ label: "信用代码", prop: "xydm" },
|
{ label: "单位地址", prop: "csdz" },
|
||||||
{ label: "场所名称", prop: "csmc" },
|
{ label: "公司性质", prop: "gsxz",showSolt:'gsxz' },
|
||||||
{ label: "场所电话", prop: "csLxdh" }
|
{ label: "从事业务", prop: "mqcsyw" },
|
||||||
|
{ label: "是否有武装资质", prop: "sfyyzz",showSolt:'sfyyzz' },
|
||||||
|
{ label: "枪支情况", prop: "qzqk" },
|
||||||
|
{ label: "是否有培训资质", prop: "sfpxzz",showSolt:'sfpxzz' },
|
||||||
|
{ label: "负责人姓名", prop: "dwfzrxm" },
|
||||||
|
{ label: "负责人电话", prop: "dwfzrlxdh" },
|
||||||
|
{ label: "保安人数", prop: "bars" },
|
||||||
|
{ label: "是否成立党组织", prop: "sfdzz",showSolt:'sfdzz' },
|
||||||
|
{ label: "党员人数", prop: "dyrs" },
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -93,6 +114,12 @@ const changeSize = (val) => {
|
|||||||
pageData.pageConfiger.pageSize = val;
|
pageData.pageConfiger.pageSize = val;
|
||||||
getList();
|
getList();
|
||||||
};
|
};
|
||||||
|
// 保安证申请
|
||||||
|
const pxApllication = ref(null);
|
||||||
|
const openPxApllication = (type, row) => {
|
||||||
|
pxApllication.value.init(type, row.id);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
getList();
|
getList();
|
||||||
|
|||||||
Reference in New Issue
Block a user