Administrator
2021-08-26 5a8bc481870caa1bb54f0ab48849db932102db71
保安员修改
4 files modified
1 files added
1448 ■■■■ changed files
src/api/experience/experience.js 56 ●●●●● patch | view | raw | blame | history
src/views/securityGuard/data.js 1010 ●●●● patch | view | raw | blame | history
src/views/securityGuard/securityGuard.vue 291 ●●●● patch | view | raw | blame | history
src/views/securityGuard/securityGuardDetail.vue 86 ●●●● patch | view | raw | blame | history
src/views/system/user.vue 5 ●●●● patch | view | raw | blame | history
src/api/experience/experience.js
New file
@@ -0,0 +1,56 @@
import request from '@/router/axios';
export const getExperienceList = (current, size, params) => {
    return request({
        url: '/api/experience/page',
        method: 'get',
        params: {
            ...params,
            current,
            size
        }
    })
}
export const addExperience = (row) => {
    return request({
        url: '/api/experience/submit',
        method: 'post',
        data: row
    })
}
export const updateExperience = (row) => {
    return request({
        url: '/api/experience/submit',
        method: 'post',
        data: row
    })
}
export const experienceRemove = (ids) => {
    return request({
        url: '/api/experience/remove',
        method: 'post',
        params: {
            ids,
        }
    })
}
export const getExperienceDetail = (id) => {
    return request({
        url: '/api/experience/detail',
        method: 'get',
        params: {
            id,
        }
    })
}
src/views/securityGuard/data.js
@@ -1,314 +1,314 @@
//保安员基本信息
export var securityBaseInfoColumn = [{
    label: "",
    labelWidth: "20",
    type: 'title',
    prop: "title",
    span: 24,
    styles: {
        fontSize: '24px'
    }
},
{
    label: "所属保安公司",
    prop: "deptId",
    type: "tree",
    dicUrl: "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697",
    // dicUrl: "/api/blade-system/dept/lazy-tree?parentId=0",
    props: {
        label: "title",
        value: "id",
    },
    disabled: true,
    span: 24,
},
{
    label: "登录账号",
    prop: "account",
    disabled: true
},
{
    label: "用户姓名",
    prop: "realName",
    disabled: true,
},
{
    label: "用户昵称",
    prop: "name",
    disabled: true
},
{
    label: "手机号码",
    prop: "phone",
    disabled: true
},
{
    label: "电子邮箱",
    prop: "email",
    disabled: true
},
{
    label: "身份证号",
    prop: "cardid",
    disabled: true
},
{
    label: "籍贯",
    prop: "nativeplace",
    disabled: true
},
{
    label: "民族",
    prop: "nation",
    disabled: true
},
{
    label: "是否持证",
    prop: "hold",
    dicUrl: "/api/blade-system/dict-biz/dictionary?code=equipage",
    props: {
        label: "dictValue",
        value: "dictKey",
    },
    type: "select",
    disabled: true
},
{
    label: "保安员证编号",
    prop: "securitynumber",
    disabled: true
},
{
    label: "所属辖区",
    prop: "jurisdiction",
    // multiple: true,
    type: "tree",
    dicUrl: "/api/jurisdiction/lazy-tree?parentId=0",
    props: {
        label: "title",
        value: "id",
    },
    disabled: true
},
{
    label: "最高学历",
    prop: "education",
    type: "select",
    dicUrl: "/api/blade-system/dict-biz/dictionary?code=educationType",
    props: {
        label: "dictValue",
        value: "dictKey"
    },
    dataType: "number",
    slot: true,
    disabled: true
},
{
    label: "政治面貌",
    prop: "politicaloutlook",
    disabled: true
},
{
    label: "身高",
    prop: "height",
    disabled: true
},
{
    label: "联系地址",
    prop: "address",
    disabled: true
},
{
    label: "户口所在地",
    prop: "registered",
    disabled: true
},
{
    label: "入职时间",
    prop: "rtime",
    type: 'date',
    format: "yyyy-MM-dd",
    valueFormat: "yyyy-MM-dd",
    disabled: true
},
{
    label: "用户性别",
    prop: "sex",
    type: "select",
    dicData: [{
        label: "男",
        value: 1
        label: "",
        labelWidth: "20",
        type: 'title',
        prop: "title",
        span: 24,
        styles: {
            fontSize: '24px'
        }
    },
    {
        label: "女",
        value: 2
        label: "所属保安公司",
        prop: "deptId",
        type: "tree",
        dicUrl: "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697",
        // dicUrl: "/api/blade-system/dept/lazy-tree?parentId=0",
        props: {
            label: "title",
            value: "id",
        },
        disabled: true,
        span: 24,
    },
    {
        label: "未知",
        value: 3
        label: "登录账号",
        prop: "account",
        disabled: true
    },
    {
        label: "用户姓名",
        prop: "realName",
        disabled: true,
    },
    {
        label: "用户昵称",
        prop: "name",
        disabled: true
    },
    {
        label: "手机号码",
        prop: "phone",
        disabled: true
    },
    {
        label: "电子邮箱",
        prop: "email",
        disabled: true
    },
    {
        label: "身份证号",
        prop: "cardid",
        disabled: true
    },
    {
        label: "籍贯",
        prop: "nativeplace",
        disabled: true
    },
    {
        label: "民族",
        prop: "nation",
        disabled: true
    },
    {
        label: "是否持证",
        prop: "hold",
        dicUrl: "/api/blade-system/dict-biz/dictionary?code=equipage",
        props: {
            label: "dictValue",
            value: "dictKey",
        },
        type: "select",
        disabled: true
    },
    {
        label: "保安员证编号",
        prop: "securitynumber",
        disabled: true
    },
    {
        label: "所属辖区",
        prop: "jurisdiction",
        // multiple: true,
        type: "tree",
        dicUrl: "/api/jurisdiction/lazy-tree?parentId=0",
        props: {
            label: "title",
            value: "id",
        },
        disabled: true
    },
    {
        label: "最高学历",
        prop: "education",
        type: "select",
        dicUrl: "/api/blade-system/dict-biz/dictionary?code=educationType",
        props: {
            label: "dictValue",
            value: "dictKey"
        },
        dataType: "number",
        slot: true,
        disabled: true
    },
    {
        label: "政治面貌",
        prop: "politicaloutlook",
        disabled: true
    },
    {
        label: "身高",
        prop: "height",
        disabled: true
    },
    {
        label: "联系地址",
        prop: "address",
        disabled: true
    },
    {
        label: "户口所在地",
        prop: "registered",
        disabled: true
    },
    {
        label: "入职时间",
        prop: "rtime",
        type: 'date',
        format: "yyyy-MM-dd",
        valueFormat: "yyyy-MM-dd",
        disabled: true
    },
    {
        label: "用户性别",
        prop: "sex",
        type: "select",
        dicData: [{
                label: "男",
                value: 1
            },
            {
                label: "女",
                value: 2
            },
            {
                label: "未知",
                value: 3
            }
        ],
        disabled: true
    },
    {
        label: "用户生日",
        type: "date",
        prop: "birthday",
        disabled: true
    }
    ],
    disabled: true
},
{
    label: "用户生日",
    type: "date",
    prop: "birthday",
    disabled: true
}
]
export var securityBaseInfoColumns = [{
    label: "所属保安单位",
    prop: "tenantId",
    type: "tree",
    dicUrl: "/api/blade-system/tenant/select",
    props: {
        label: "tenantName",
        value: "tenantId"
    },
    disabled: true,
    span: 24,
},
{
    label: "登录账号",
    prop: "account",
    disabled: true
},
{
    label: "用户姓名",
    prop: "realName",
    rules: [{
        required: true,
        message: "请输入用户姓名",
        trigger: "blur"
    }, {
        min: 2,
        max: 5,
        message: '姓名长度在2到5个字符'
    }]
},
{
    label: "用户昵称",
    prop: "name"
},
{
    label: "手机号码",
    prop: "phone",
    overHidden: true,
    rules: [{
        required: true,
        message: "请输入手机号",
        trigger: "blur"
    }]
},
{
    label: "电子邮箱",
    prop: "email",
    hide: true,
    overHidden: true
},
{
    label: "身份证号",
    prop: "cardid",
    hide: true,
    overHidden: true,
    rules: [{
        required: true,
        message: "请输入身份证号",
        trigger: "blur"
    }]
},
{
    label: "籍贯",
    prop: "nativeplace",
    hide: true,
    overHidden: true
},
{
    label: "民族",
    prop: "nation",
    hide: true,
    overHidden: true
},
{
    label: "最高学历",
    prop: "education",
    type: "select",
    dicUrl: "/api/blade-system/dict-biz/dictionary?code=educationType",
    props: {
        label: "dictValue",
        value: "dictKey"
    },
    dataType: "number",
    slot: true,
    rules: [{
        required: true,
        message: "请选择学历",
        trigger: "blur"
    }]
},
{
    label: "政治面貌",
    prop: "politicaloutlook",
    hide: true,
    overHidden: true
},
{
    label: "身高",
    prop: "height",
    hide: true,
    overHidden: true
},
{
    label: "联系地址",
    prop: "address",
    hide: true,
    overHidden: true
},
{
    label: "户口所在地",
    prop: "registered",
    hide: true,
    overHidden: true
},
{
    label: "入职时间",
    prop: "rtime",
    type: 'date',
    format: "yyyy-MM-dd",
    valueFormat: "yyyy-MM-dd",
    hide: true,
    overHidden: true
},
{
    label: "用户性别",
    prop: "sex",
    type: "select",
    dicData: [{
        label: "男",
        value: 1
        label: "所属保安单位",
        prop: "tenantId",
        type: "tree",
        dicUrl: "/api/blade-system/tenant/select",
        props: {
            label: "tenantName",
            value: "tenantId"
        },
        disabled: true,
        span: 24,
    },
    {
        label: "女",
        value: 2
        label: "登录账号",
        prop: "account",
        disabled: true
    },
    {
        label: "未知",
        value: 3
        label: "用户姓名",
        prop: "realName",
        rules: [{
            required: true,
            message: "请输入用户姓名",
            trigger: "blur"
        }, {
            min: 2,
            max: 5,
            message: '姓名长度在2到5个字符'
        }]
    },
    {
        label: "用户昵称",
        prop: "name"
    },
    {
        label: "手机号码",
        prop: "phone",
        overHidden: true,
        rules: [{
            required: true,
            message: "请输入手机号",
            trigger: "blur"
        }]
    },
    {
        label: "电子邮箱",
        prop: "email",
        hide: true,
        overHidden: true
    },
    {
        label: "身份证号",
        prop: "cardid",
        hide: true,
        overHidden: true,
        rules: [{
            required: true,
            message: "请输入身份证号",
            trigger: "blur"
        }]
    },
    {
        label: "籍贯",
        prop: "nativeplace",
        hide: true,
        overHidden: true
    },
    {
        label: "民族",
        prop: "nation",
        hide: true,
        overHidden: true
    },
    {
        label: "最高学历",
        prop: "education",
        type: "select",
        dicUrl: "/api/blade-system/dict-biz/dictionary?code=educationType",
        props: {
            label: "dictValue",
            value: "dictKey"
        },
        dataType: "number",
        slot: true,
        rules: [{
            required: true,
            message: "请选择学历",
            trigger: "blur"
        }]
    },
    {
        label: "政治面貌",
        prop: "politicaloutlook",
        hide: true,
        overHidden: true
    },
    {
        label: "身高",
        prop: "height",
        hide: true,
        overHidden: true
    },
    {
        label: "联系地址",
        prop: "address",
        hide: true,
        overHidden: true
    },
    {
        label: "户口所在地",
        prop: "registered",
        hide: true,
        overHidden: true
    },
    {
        label: "入职时间",
        prop: "rtime",
        type: 'date',
        format: "yyyy-MM-dd",
        valueFormat: "yyyy-MM-dd",
        hide: true,
        overHidden: true
    },
    {
        label: "用户性别",
        prop: "sex",
        type: "select",
        dicData: [{
                label: "男",
                value: 1
            },
            {
                label: "女",
                value: 2
            },
            {
                label: "未知",
                value: 3
            }
        ],
        hide: true
    },
    {
        label: "用户生日",
        type: "date",
        prop: "birthday",
        hide: true
    }
    ],
    hide: true
},
{
    label: "用户生日",
    type: "date",
    prop: "birthday",
    hide: true
}
]
@@ -340,14 +340,14 @@
    type: 'date',
    format: "yyyy-MM-dd",
    valueFormat: "yyyy-MM-dd",
    prop: "entryTime",
    prop: "entrytime",
    formslot: true,
}, {
    label: '离职时间',
    type: 'date',
    format: "yyyy-MM-dd",
    valueFormat: "yyyy-MM-dd",
    prop: "departureTime",
    prop: "departuretime",
    formslot: true,
}, {
    label: '离职原因',
@@ -445,229 +445,227 @@
export var securityFormPageColumn = [{
    label: "姓名",
    prop: "realName",
    search: true,
    searchSpan: 3,
    width: 60,
    searchLabelWidth: 50,
    display: false
},
{
    label: "所属保安公司",
    searchLabelWidth: "110",
    // prop: "deptName",
    prop: "deptId",
    type: "tree",
    dicUrl: "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697",
    props: {
        label: "title",
        value: "id",
    },
    slot: true,
    searchSpan: 5,
    display: false,
    search: true,
    minWidth: 260
},
{
    label: "性别",
    prop: "sex",
    width: 55,
    type: "select",
    dicData: [{
        label: "男",
        value: 1,
        label: "姓名",
        prop: "realName",
        search: true,
        searchSpan: 3,
        width: 60,
        searchLabelWidth: 50,
        display: false
    },
    {
        label: "女",
        value: 2,
        label: "所属保安公司",
        searchLabelWidth: "110",
        // prop: "deptName",
        prop: "deptId",
        type: "tree",
        dicUrl: "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697",
        props: {
            label: "title",
            value: "id",
        },
        slot: true,
        searchSpan: 5,
        display: false,
        search: true,
        minWidth: 260
    },
    {
        label: "未知",
        value: 3,
        label: "性别",
        prop: "sex",
        width: 55,
        type: "select",
        dicData: [{
                label: "男",
                value: 1,
            },
            {
                label: "女",
                value: 2,
            },
            {
                label: "未知",
                value: 3,
            },
        ],
        display: false
    },
    ],
    display: false
},
{
    label: "身份证号码",
    prop: "cardid",
    search: true,
    searchLabelWidth: 90,
    searchSpan: 4,
    minWidth: 140,
    display: false
},
{
    label: "籍贯",
    prop: "nativeplace",
    hide: true,
    display: false
},
{
    label: "民族",
    prop: "nation",
    hide: true,
    width: 55,
    display: false
},
{
    label: "出生日期",
    prop: "birthday",
    type: "date",
    format: "yyyy-MM-dd",
    valueFormat: "yyyy-MM-dd",
    display: false,
    hide: true,
},
{
    label: "年龄",
    prop: "age",
    width: 55,
    display: false
},
{
    label: "学历",
    prop: "education",
    display: false,
    width: 90,
    dicUrl: "/api/blade-system/dict-biz/dictionary?code=educationType",
    props: {
        label: "dictValue",
        value: "dictKey"
    {
        label: "身份证号码",
        prop: "cardid",
        search: true,
        searchLabelWidth: 90,
        searchSpan: 5,
        minWidth: 140,
        display: false
    },
    type: "select",
    // hide: true,
    rules: [{
        required: true,
        message: "请选择学历",
        trigger: "blur"
    }],
},
{
    label: "联系电话",
    prop: "phone",
    minWidth: 100,
    display: false
},
{
    label: "健康状态",
    prop: "healstats",
    hide: true,
    display: false
},
{
    label: "保安证编号",
    prop: "securitynumber",
    search: true,
    searchLabelWidth: 90,
    minWidth: 105,
    searchSpan: 4,
    addDisplay: false,
    editDisplay: false,
    // hide: true,
},
{
    label: "入职时间",
    prop: "rtime",
    hide: true,
    display: false
},
// {
//     label: "是否派遣",
//     prop: "dispatch",
//     // hide: true,
//     type: 'select',
//     // display: false,
//     dicData: [
//         {
//             label: '未派遣',
//             value: 1
//         }, {
//             label: '已派遣',
//             value: 0
//         }
//     ]
// },
{
    label: '是否派遣',
    prop: 'dispatch',
    type: 'select',
    editDisplay: false,
    addDisplay: false,
    dicData: [
        {
    {
        label: "籍贯",
        prop: "nativeplace",
        hide: true,
        display: false
    },
    {
        label: "民族",
        prop: "nation",
        hide: true,
        width: 55,
        display: false
    },
    {
        label: "出生日期",
        prop: "birthday",
        type: "date",
        format: "yyyy-MM-dd",
        valueFormat: "yyyy-MM-dd",
        display: false,
        hide: true,
    },
    {
        label: "年龄",
        prop: "age",
        width: 55,
        display: false
    },
    {
        label: "学历",
        prop: "education",
        display: false,
        width: 90,
        dicUrl: "/api/blade-system/dict-biz/dictionary?code=educationType",
        props: {
            label: "dictValue",
            value: "dictKey"
        },
        type: "select",
        // hide: true,
        rules: [{
            required: true,
            message: "请选择学历",
            trigger: "blur"
        }],
    },
    {
        label: "联系电话",
        prop: "phone",
        minWidth: 100,
        display: false
    },
    {
        label: "健康状态",
        prop: "healstats",
        hide: true,
        display: false
    },
    {
        label: "保安证编号",
        prop: "securitynumber",
        search: true,
        searchLabelWidth: 90,
        minWidth: 105,
        searchSpan: 4,
        addDisplay: false,
        editDisplay: false,
        // hide: true,
    },
    {
        label: "入职时间",
        prop: "rtime",
        hide: true,
        display: false
    },
    // {
    //     label: "是否派遣",
    //     prop: "dispatch",
    //     // hide: true,
    //     type: 'select',
    //     // display: false,
    //     dicData: [
    //         {
    //             label: '未派遣',
    //             value: 1
    //         }, {
    //             label: '已派遣',
    //             value: 0
    //         }
    //     ]
    // },
    {
        label: '是否派遣',
        prop: 'dispatch',
        type: 'select',
        editDisplay: false,
        addDisplay: false,
        dicData: [{
            label: '未派遣',
            value: '1'
        }, {
            label: '已派遣',
            value: '0'
        }
    ]
},
{
    label: "是否持证",
    prop: "hold",
    slot: true,
    search: true,
    searchSpan: 3,
    width: 69,
    display: false,
    dicUrl: "/api/blade-system/dict-biz/dictionary?code=equipage",
    props: {
        label: "dictValue",
        value: "dictKey"
        }]
    },
    type: "select",
    rules: [{
        required: true,
        message: "请选择",
        trigger: "blur"
    }],
},
    {
        label: "是否持证",
        prop: "hold",
        slot: true,
        search: true,
        searchSpan: 3,
        width: 69,
        display: false,
        dicUrl: "/api/blade-system/dict-biz/dictionary?code=equipage",
        props: {
            label: "dictValue",
            value: "dictKey"
        },
        type: "select",
        rules: [{
            required: true,
            message: "请选择",
            trigger: "blur"
        }],
    },
// {
//     label: "入职时间",
//     prop: "rtime",
//     type: "datetime",
//     format: "yyyy-MM-dd",
//     valueFormat: "yyyy-MM-dd",
//     searchRange: true,
//     searchSpan: 6,
//     hide: true,
//     addDisplay: false,
//     editDisplay: false,
//     viewDisplay: false,
//     search: true,
//     rules: [{
//         required: true,
//         message: "请输入时间",
//         trigger: "blur"
//     }]
// },
{
    label: "在职状态",
    prop: "status",
    type: "select",
    dicUrl: "/api/blade-system/dict-biz/dictionary?code=workerState",
    props: {
        label: "dictValue",
        value: "dictKey"
    // {
    //     label: "入职时间",
    //     prop: "rtime",
    //     type: "datetime",
    //     format: "yyyy-MM-dd",
    //     valueFormat: "yyyy-MM-dd",
    //     searchRange: true,
    //     searchSpan: 6,
    //     hide: true,
    //     addDisplay: false,
    //     editDisplay: false,
    //     viewDisplay: false,
    //     search: true,
    //     rules: [{
    //         required: true,
    //         message: "请输入时间",
    //         trigger: "blur"
    //     }]
    // },
    {
        label: "在职状态",
        prop: "status",
        type: "select",
        dicUrl: "/api/blade-system/dict-biz/dictionary?code=workerState",
        props: {
            label: "dictValue",
            value: "dictKey"
        },
        dataType: "number",
        searchValue: 1,
        display: false,
        hide: true,
        searchSpan: 3,
        width: 80,
        search: true,
        rules: [{
            required: true,
            message: "请选择在职状态",
            trigger: "blur"
        }]
    },
    dataType: "number",
    display: false,
    hide: true,
    searchSpan: 3,
    width: 80,
    search: true,
    rules: [{
        required: true,
        message: "请选择在职状态",
        trigger: "blur"
    }]
},
]
src/views/securityGuard/securityGuard.vue
@@ -1,5 +1,5 @@
<template>
  <el-row class="securityGuard">
  <el-row :class="{securityGuard : isSecurity}">
    <el-col :span="0" style="display: none">
      <div class="box">
        <el-scrollbar>
@@ -26,6 +26,7 @@
          @row-del="rowDel"
          :row-style="rowStyle"
          @row-save="rowSave"
          @row-update="rowUpdate"
          :before-open="beforeOpen"
          :page.sync="page"
          @search-change="searchChange"
@@ -299,7 +300,7 @@
    return {
      securityid: "",
      excelBox1: false,
      isSecurity: false,
      isSecurity: true,
      excelForm1: {},
      excelOption1: {
        submitBtn: false,
@@ -327,7 +328,8 @@
        ],
      },
      form: {},
      form: {
      },
      search: {},
      roleBox: false,
      excelBox: false,
@@ -439,6 +441,7 @@
              {
                label: "登录账号",
                prop: "account",
                editDisabled:true,
                rules: [
                  {
                    required: true,
@@ -451,6 +454,7 @@
              {
                label: "密码",
                prop: "password",
                type:'password',
                hide: true,
                editDisplay: false,
                viewDisplay: false,
@@ -461,6 +465,7 @@
              {
                label: "确认密码",
                prop: "password2",
                type:'password',
                hide: true,
                editDisplay: false,
                viewDisplay: false,
@@ -468,6 +473,15 @@
                  { required: true, validator: validatePass2, trigger: "blur" },
                ],
              },
            ],
          },
          {
            label: "详细信息",
            prop: "detailInfo",
            labelWidth: "110",
            icon: "el-icon-s-order",
            column: [
              {
                label: "姓名",
                prop: "realName",
@@ -506,69 +520,6 @@
                row: true,
                prop: "myPicture",
              },
              // {
              //   label: "编号",
              //   prop: "code",
              // },
              {
                label: "所属辖区",
                prop: "jurisdiction",
                // multiple: true,
                type: "tree",
                dicUrl: "/api/jurisdiction/lazy-tree?parentId=0",
                props: {
                  label: "title",
                  value: "id",
                },
                checkStrictly: true,
                slot: true,
                rules: [
                  {
                    required: false,
                    message: "请选择所属辖区",
                    trigger: "click",
                  },
                ],
              },
              // {
              //   label: "所属角色",
              //   prop: "roleId",
              //   multiple: true,
              //   type: "tree",
              //   dicData: [],
              //   props: {
              //     label: "title",
              //   },
              //   checkStrictly: true,
              //   slot: true,
              //   rules: [
              //     {
              //       required: true,
              //       message: "请选择所属角色",
              //       trigger: "click",
              //     },
              //   ],
              // },
              // {
              //   label: "所属岗位",
              //   prop: "postId",
              //   type: "tree",
              //   multiple: true,
              //   dicData: [],
              //   props: {
              //     label: "postName",
              //     value: "id",
              //   },
              //   rules: [
              //     {
              //       required: false,
              //       message: "请选择所属岗位",
              //       trigger: "click",
              //     },
              //   ],
              // },
              {
                label: "是否持证",
                prop: "hold",
@@ -592,6 +543,19 @@
                hide: true,
              },
              {
                label: "身份证号",
                prop: "cardid",
                hide: true,
                overHidden: true,
                rules: [
                  {
                    required: true,
                    message: "请输入身份证号",
                    trigger: "blur",
                  },
                ],
              },
              {
                label: "手机号码",
                prop: "phone",
                overHidden: true,
@@ -606,19 +570,6 @@
              {
                label: "电子邮箱",
                prop: "email",
              },
              {
                label: "身份证号",
                prop: "cardid",
                hide: true,
                overHidden: true,
                rules: [
                  {
                    required: true,
                    message: "请输入身份证号",
                    trigger: "blur",
                  },
                ],
              },
              {
                label: "籍贯",
@@ -662,6 +613,26 @@
                prop: "registered",
              },
              {
                label: "所属辖区",
                prop: "jurisdiction",
                // multiple: true,
                type: "tree",
                dicUrl: "/api/jurisdiction/lazy-tree?parentId=0",
                props: {
                  label: "title",
                  value: "id",
                },
                checkStrictly: true,
                slot: true,
                rules: [
                  {
                    required: false,
                    message: "请选择所属辖区",
                    trigger: "click",
                  },
                ],
              },
              {
                label: "入职时间",
                prop: "rtime",
                type: "date",
@@ -688,91 +659,13 @@
                  // },
                ],
              },
              {
                label: "生日",
                type: "date",
                prop: "birthday",
                format: "yyyy-MM-dd",
                valueFormat: "yyyy-MM-dd",
              },
            ],
          },
          {
            label: "从业信息",
            prop: "detailInfo",
            icon: "el-icon-s-order",
            column: [
              {
                prop: "UserPractitionersInfo",
                type: "dynamic",
                border: false,
                span: 24,
                children: {
                  align: "left",
                  headerAlign: "center",
                  type: "form",
                  rowAdd: (done) => {
                    console.log(done, 111);
                    done({
                      input: "默认值",
                    });
                  },
                  rowDel: (row, done) => {
                    console.log(row, 222);
                    done();
                  },
                  column: [
                    {
                      width: 200,
                      label: "单位名称",
                      prop: "companyname",
                      formslot: true,
                    },
                    {
                      width: 200,
                      label: "部门",
                      prop: "department",
                      formslot: true,
                    },
                    {
                      width: 200,
                      label: "岗位",
                      prop: "post",
                      formslot: true,
                    },
                    {
                      width: 200,
                      label: "岗位职责",
                      prop: "responsibilities",
                      formslot: true,
                    },
                    {
                      width: 200,
                      label: "入职时间",
                      type: "date",
                      format: "yyyy-MM-dd",
                      valueFormat: "yyyy-MM-dd",
                      prop: "entryTime",
                      formslot: true,
                    },
                    {
                      width: 200,
                      label: "离职时间",
                      type: "date",
                      format: "yyyy-MM-dd",
                      valueFormat: "yyyy-MM-dd",
                      prop: "departureTime",
                      formslot: true,
                    },
                    {
                      width: 200,
                      label: "离职原因",
                      prop: "leaving",
                      formslot: true,
                    },
                  ],
                },
              },
              // {
              //   label: "生日",
              //   type: "date",
              //   prop: "birthday",
              //   format: "yyyy-MM-dd",
              //   valueFormat: "yyyy-MM-dd",
              // },
            ],
          },
        ],
@@ -958,6 +851,8 @@
    if (!website.tenantMode) {
      this.initData(website.tenantId);
    }
    console.log(this.search,111);
    this.search['status'] = 1;
  },
  methods: {
    handleImport1() {
@@ -1028,24 +923,7 @@
      if (row.postId) {
        row.postId = row.postId.join(",");
      }
      const userPractitionersList = [];
      var userPractitionersInfo = row.UserPractitionersInfo;
      if (userPractitionersInfo.length > 0) {
        userPractitionersInfo.forEach((item) => {
          const info = {
            companyname: item.companyname,
            department: item.department,
            departureTime: item.departureTime,
            entryTime: item.entryTime,
            name: row.realName,
            leaving: item.leaving,
            securityid: row.id,
            post: item.post,
            responsibilities: item.responsibilities,
          };
          userPractitionersList.push(info);
        });
      }
      const user = {
        account: row.account,
        address: row.address,
@@ -1072,17 +950,16 @@
        sex: row.sex,
      };
      const userMap = {
        user: user,
        userPractitionersInfo: userPractitionersList,
        user: user
      };
      securitySave(userMap).then(
        () => {
          this.initFlag = false;
          this.onLoad(this.page);
          this.$message({
            type: "success",
            message: "操作成功!",
          });
          this.initFlag = false;
          this.onLoad(this.page);
          done();
        },
        (error) => {
@@ -1095,42 +972,15 @@
      row.deptId = row.deptId;
      row.roleId = row.roleId.join(",");
      row.postId = row.postId.join(",");
      const userPractitionersList = [];
      var userPractitionersInfo = row.UserPractitionersInfo;
      if (userPractitionersInfo.length > 0) {
        userPractitionersInfo.forEach((item) => {
          const info = {
            companyname: item.companyname,
            department: item.department,
            departureTime: item.departureTime,
            entryTime: item.entryTime,
            name: row.realName,
            leaving: item.leaving,
            securityid: row.id,
            post: item.post,
            responsibilities: item.responsibilities,
          };
          userPractitionersList.push(info);
        });
      }
      var IdCardNo = row.id;
      //值替换,education 放在页面会卡死
      row.education = row.education1;
      update(row).then(
        () => {
          const experience = {
            securityid: IdCardNo,
            userPractitionersInfo: userPractitionersList,
          };
          //更新从业信息
          saveOrUpdateUserPractitionersInfo(experience).then(() => {
            this.$message({
              type: "success",
              message: "操作成功!",
            });
          });
      update(row).then(() => {
          this.initFlag = false;
          this.onLoad(this.page);
          this.$message({
            type: "success",
            message: "操作成功!",
          });
          done();
        },
        (error) => {
@@ -1146,7 +996,7 @@
        type: "warning",
      })
        .then(() => {
          row.status = "0";
          row.status = "2";
          return update(row);
        })
        .then(() => {
@@ -1334,6 +1184,7 @@
      this.onLoad(this.page, this.query);
    },
    onLoad(page, params = {}) {
      params = this.search;
      var that = this;
      //获取当前登录人员的角色信息
      var roleIds = this.userInfo.role_id.split(",");
@@ -1354,7 +1205,7 @@
            //禁止编辑
            deptColumn.disabled = true;
            deptColumn.value = that.userInfo.dept_id;
            that.isSecurity = true;
            that.isSecurity = false;
            //如果是保安公司管理员
            params["deptId"] = that.userInfo.dept_id;
          } else if (roleAlias == "公安管理员") {
src/views/securityGuard/securityGuardDetail.vue
@@ -10,6 +10,9 @@
        :data="data1"
        :page.sync="page1"
        :table-loading="loading1"
        @row-save="rowSave1"
        @row-update="rowUpdate1"
        @row-del="rowDel1"
        @refresh-change="refreshChange1"
      >
      </avue-crud>
@@ -87,7 +90,14 @@
  practitionersColumn,
  trackRecordColumn,
} from "./data";
import { getUserPractitionersInfo } from "@/api/system/user";
import {
  addExperience,
  updateExperience,
  getExperienceDetail,
  experienceRemove,
  getExperienceList
} from "@/api/experience/experience";
import {
  getPerformanceInfo,
  add,
@@ -158,12 +168,12 @@
        total: 0,
      },
      query1: {},
      query2: {},
      data1: [],
      data2: [],
      option1: {
        card: true,
        menu: false,
        addBtn: false,
        menu: true,
        height: "auto",
        widtd: "auto",
        calcHeight: 54,
@@ -246,20 +256,21 @@
    },
    //查询当前保安员的从业记录信息
    getPractitionersPageInfo() {
      var that = this;
      var param = {
        securityid: this.id,
      };
      //获取用户从业信息
      console.log(this.id, "cid");
      getUserPractitionersInfo(this.id).then((res1) => {
        that.data1 = res1.data.data;
      getExperienceList(this.current, this.size,param).then((res1) => {
        const data = res1.data.data;
        this.page1.total = data.total;
        this.data1 = data.records;
        this.loading1 = false;
      });
    },
    //查询当前保安员的现实表现记录信息
    getPerformancePageInfo() {
      //获取现实表现信息
      // getPerformanceInfo(this.id).then((res) => {
      //   that.data2 = res1.data.data;
      //   console.log(that.data2, 1);
      // });
      var param = {
        securityid: this.id,
      };
@@ -271,11 +282,32 @@
        this.loading2 = false;
      });
    },
    rowSave2(form, done, loading) {
      form.securityid = this.id;
      add(form).then(
        (res) => {
          this.getPerformancePageInfo(this.page2);
          this.$message({
            type: "success",
            message: "操作成功!",
          });
          done();
        },
        (error) => {
          window.console.log(error);
          loading();
        }
      );
      // }
    },
    //从业记录新增
    rowSave1(form, done, loading) {
      form.securityid = this.id;
      addExperience(form).then(
        (res) => {
          this.getPractitionersPageInfo(this.page1);
          this.$message({
            type: "success",
            message: "操作成功!",
@@ -306,6 +338,23 @@
        }
      );
    },
    rowUpdate1(row, index, done, loading) {
      row.securityid = this.id;
      updateExperience(row).then(
        () => {
          this.getPractitionersPageInfo(this.page1);
          this.$message({
            type: "success",
            message: "操作成功!",
          });
          done();
        },
        (error) => {
          window.console.log(error);
          loading();
        }
      );
    },
    rowDel2(row) {
      this.$confirm("确定将选择数据删除?", {
        confirmButtonText: "确定",
@@ -323,6 +372,23 @@
          });
        });
    },
    rowDel1(row) {
      this.$confirm("确定将选择数据删除?", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      })
        .then(() => {
          return experienceRemove(row.id);
        })
        .then(() => {
          this.getPractitionersPageInfo(this.page1);
          this.$message({
            type: "success",
            message: "操作成功!",
          });
        });
    },
  },
  mounted() {
    this.typeTABS = this.optionTABS.column[0];
src/views/system/user.vue
@@ -220,7 +220,8 @@
      }
    };
    return {
      form: {},
      form: {
      },
      search: {},
      roleBox: false,
      excelBox: false,
@@ -414,6 +415,7 @@
              {
                label: "密码",
                prop: "password",
                type:'password',
                hide: true,
                editDisplay: false,
                viewDisplay: false,
@@ -424,6 +426,7 @@
              {
                label: "确认密码",
                prop: "password2",
                type:'password',
                hide: true,
                editDisplay: false,
                viewDisplay: false,