liuyg
2021-07-12 0ded141c23c57f4976ff5b9d42556ef9735d7602
加入枪支,车辆,装备
7 files modified
10 files added
1532 ■■■■ changed files
src/api/car/car.js 39 ●●●●● patch | view | raw | blame | history
src/api/equipments/equipments.js 39 ●●●●● patch | view | raw | blame | history
src/api/gun/gun.js 39 ●●●●● patch | view | raw | blame | history
src/router/views/index.js 39 ●●●●● patch | view | raw | blame | history
src/views/car/data.js 137 ●●●●● patch | view | raw | blame | history
src/views/car/index.vue 222 ●●●●● patch | view | raw | blame | history
src/views/dispatch/data.js 2 ●●● patch | view | raw | blame | history
src/views/dispatchChild/data.js 2 ●●● patch | view | raw | blame | history
src/views/equipments/data.js 122 ●●●●● patch | view | raw | blame | history
src/views/equipments/index.vue 222 ●●●●● patch | view | raw | blame | history
src/views/gun/data.js 128 ●●●●● patch | view | raw | blame | history
src/views/gun/index.vue 222 ●●●●● patch | view | raw | blame | history
src/views/recruitmentManagement/data.js 177 ●●●● patch | view | raw | blame | history
src/views/recruitmentManagement/index.vue 44 ●●●● patch | view | raw | blame | history
src/views/securityUnit/data.js 96 ●●●● patch | view | raw | blame | history
vue.config.js 2 ●●● patch | view | raw | blame | history
保安企业服务.zip patch | view | raw | blame | history
src/api/car/car.js
New file
@@ -0,0 +1,39 @@
import request from '@/router/axios';
export const getdata = (current, size, params) => {
  return request({
    url: '/api/car/page',
    method: 'get',
    params: {
      ...params,
      current,
      size,
    }
  })
}
export const adddata = (row) => {
  return request({
    url: '/api/car/submit',
    method: 'post',
    data: row
  })
}
export const update = (row) => {
  return request({
    url: '/api/car/submit',
    method: 'post',
    data: row
  })
}
export const remove = (ids) => {
  return request({
    url: '/api/car/remove',
    method: 'post',
    params: {
      ids,
    }
  })
}
src/api/equipments/equipments.js
New file
@@ -0,0 +1,39 @@
import request from '@/router/axios';
export const getdata = (current, size, params) => {
  return request({
    url: '/api/equipage/page',
    method: 'get',
    params: {
      ...params,
      current,
      size,
    }
  })
}
export const adddata = (row) => {
  return request({
    url: '/api/equipage/submit',
    method: 'post',
    data: row
  })
}
export const update = (row) => {
  return request({
    url: '/api/equipage/submit',
    method: 'post',
    data: row
  })
}
export const remove = (ids) => {
  return request({
    url: '/api/equipage/remove',
    method: 'post',
    params: {
      ids,
    }
  })
}
src/api/gun/gun.js
New file
@@ -0,0 +1,39 @@
import request from '@/router/axios';
export const getdata = (current, size, params) => {
  return request({
    url: '/api/gun/page',
    method: 'get',
    params: {
      ...params,
      current,
      size,
    }
  })
}
export const adddata = (row) => {
  return request({
    url: '/api/gun/submit',
    method: 'post',
    data: row
  })
}
export const update = (row) => {
  return request({
    url: '/api/gun/submit',
    method: 'post',
    data: row
  })
}
export const remove = (ids) => {
  return request({
    url: '/api/gun/remove',
    method: 'post',
    params: {
      ids,
    }
  })
}
src/router/views/index.js
@@ -220,4 +220,43 @@
        component: () =>
            import ( /* webpackChunkName: "views" */ '@/views/dispatchChild/index')
    }]
}, {
    path: '/equipments',
    component: Layout,
    redirect: '/equipments/index',
    children: [{
        path: 'index',
        name: '保安公司装备管理',
        meta: {
            i18n: 'dict'
        },
        component: () =>
            import ( /* webpackChunkName: "views" */ '@/views/equipments/index')
    }]
}, {
    path: '/car',
    component: Layout,
    redirect: '/car/index',
    children: [{
        path: 'index',
        name: '保安公司车辆管理',
        meta: {
            i18n: 'dict'
        },
        component: () =>
            import ( /* webpackChunkName: "views" */ '@/views/car/index')
    }]
}, {
    path: '/gun',
    component: Layout,
    redirect: '/gun/index',
    children: [{
        path: 'index',
        name: '保安公司枪支管理',
        meta: {
            i18n: 'dict'
        },
        component: () =>
            import ( /* webpackChunkName: "views" */ '@/views/gun/index')
    }]
}]
src/views/car/data.js
New file
@@ -0,0 +1,137 @@
var DIC = [
    {
        label: '招聘中',
        value: 1,
    }, {
        label: '停止招聘',
        value: 2,
    }
]
export var column = [
    {
        label: "id",
        prop: "id",
        hide: true,
        editDisplay: false,
        addDisplay: false
    },
    {
        label: "车牌号码",
        prop: "carNumber",
        search: true,
        rules: [{
            required: true,
            message: "请输入车牌号码",
            trigger: "blur"
        }]
    },
    {
        label: "号码种类",
        prop: "numberType",
        rules: [{
            required: true,
            message: "请输入号码种类",
            trigger: "blur"
        }],
        search: true,
    },//上面不显示
    {
        label: "车辆类型",
        prop: "carType",
        rules: [{
            required: true,
            message: "请输入车辆类型",
            trigger: "blur"
        }]
        // search: true,
    }
    , {
        label: "车辆型号",
        prop: "mode",
        // search: true,
        width: 110,
        overHidden: true,
        search: true,
        rules: [{
            required: true,
            message: "请输入车辆型号",
            trigger: "blur"
        }]
    },
    {
        label: "组织机构",
        prop: "tenantName",
        rules: [{
            required: true,
            message: "请输入组织机构",
            trigger: "blur"
        }],
        // addDisplay: true,
        // editDisplay: true,
        // viewDisplay: true,
        // searchSpan: 5,
        dicUrl: "/api/blade-system/dept/security_lazy-tree?parentId=0",
        props: {
             label: "title",
            value: "id"
        },
        // search: true,
        type: "select",
        // rules: [{
        //     required: true,
        //     message: "请选择学历",
        //     trigger: "blur"
        // }],
    },
    {
        label: "责任人",
        prop: "personInCharge",
        rules: [{
            required: true,
            message: "请输入责任人",
            trigger: "blur"
        }]
    },
    {
        label: "厂商",
        prop: "brand",
        // search: true,
        width: 110,
        overHidden: true,
        search: true,
        rules: [{
            required: true,
            message: "请输入厂商",
            trigger: "blur"
        }]
    },
    {
        label: "出厂日期",
        prop: "dateForProduction",
        // search: true,
        type: "date",
        format: "yyyy-MM-dd",
        valueFormat: "timestamp",
        searchSpan: 4,
        overHidden: true,
        rules: [{
            required: true,
            message: "请输入出厂日期",
            trigger: "blur"
        }]
    },
    {
        label: "环保标志",
        prop: "umweltsatz",
        // search: true,
        width: 110,
        overHidden: true,
        search: true,
        rules: [{
            required: true,
            message: "请输入环保标志 ,国IV",
            trigger: "blur"
        }]
    }
]
src/views/car/index.vue
New file
@@ -0,0 +1,222 @@
<template>
  <div class="equipments">
    <avue-crud
      :option="option"
      :data="data"
      :page.sync="page"
      ref="crudrec"
      @on-load="onLoad"
      :table-loading="loading"
      @row-save="rowSave"
      @search-change="searchChange"
      @search-reset="searchReset"
      @row-update="rowUpdate"
      @row-del="rowDel"
      @selection-change="selectionChange"
      @refresh-change="refreshChange"
    >
      <template slot="menuLeft">
        <el-button
          type="danger"
          size="small"
          plain
          icon="el-icon-delete"
          @click="handleDelete"
          >删 除
        </el-button>
      </template>
    </avue-crud>
  </div>
</template>
<script>
import { data, column } from "./data";
import {
  getdata,
  adddata,
  update,
  remove,
} from "@/api/car/car";
export default {
  data() {
    return {
      loading: true,
      selectionList: [],
      page: {
        pageSize: 10,
        currentPage: 1,
        total: 0,
      },
      query: {},
      data: [],
      option: {
        // card: true,
        tip: false,
        searchSize: "mini",
        searchMenuSpan: 6,
        height: 627,
        menuWidth: 160,
        align: "center",
        selection: true,
        column: column,
      },
    };
  },
  computed: {
    ids() {
      let ids = [];
      this.selectionList.forEach((ele) => {
        ids.push(ele.id);
      });
      return ids.join(",");
    },
  },
  methods: {
    sizeChange(val) {
      this.page1.currentPage = 1;
      this.page1.pageSize = val;
      this.getData();
      //   this.$message.success("行数" + val);
    },
    currentChange(val) {
      this.page1.currentPage = val;
      this.getData();
      //   this.$message.success("页码" + val);
    },
    rowSave(form, done, loading) {
      var that = this;
      //   var form = this.data[0];
      //   delete form.id;
      //   for (var k = 0; k < 13; k++) {
      adddata(form).then(
        (res) => {
          this.onLoad(this.page);
          this.$message({
            type: "success",
            message: "操作成功!",
          });
          done();
        },
        (error) => {
          window.console.log(error);
          loading();
        }
      );
      //   }
    },
    searchChange(params, done) {
      this.query = params;
      this.page.currentPage = 1;
      this.onLoad(this.page, params);
      done();
    },
    searchReset() {
      this.query = {};
      this.onLoad(this.page);
    },
    rowUpdate(row, index, done, loading) {
      console.log(row);
      update(row).then(
        () => {
          this.onLoad(this.page);
          this.$message({
            type: "success",
            message: "操作成功!",
          });
          done();
        },
        (error) => {
          window.console.log(error);
          loading();
        }
      );
    },
    rowDel(row) {
      this.$confirm("确定将选择数据删除?", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      })
        .then(() => {
          return remove(row.id);
        })
        .then(() => {
          this.onLoad(this.page);
          this.$message({
            type: "success",
            message: "操作成功!",
          });
        });
    },
    selectionChange(list) {
      this.selectionList = list;
    },
    handleDelete() {
      if (this.selectionList.length === 0) {
        this.$message.warning("请选择至少一条数据");
        return;
      }
      this.$confirm("确定将选择数据删除?", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      })
        .then(() => {
          return remove(this.ids);
        })
        .then(() => {
          this.onLoad(this.page);
          this.$message({
            type: "success",
            message: "操作成功!",
          });
          this.$refs.crudrec.toggleSelection();
        });
    },
    refreshChange() {
      this.onLoad(this.page, this.query);
    },
    onLoad(page, params = {}) {
      this.loading = true;
      getdata(
        page.currentPage,
        page.pageSize,
        Object.assign(params, this.query)
      ).then((res) => {
        // console.log(res);
        const data = res.data.data;
        this.page.total = data.total;
        this.data = data.records;
        console.log(this.data);
        this.loading = false;
      });
    },
  },
  mounted() {
    // this.Ourdata = data;
    // this.getData();
    // this.onLoad(this.page);
    // var dept_id = JSON.parse(
    //   window.localStorage.getItem("saber-userInfo")
    // ).content.dept_id;
  },
};
</script>
<style lang="scss">
.equipments {
  width: 100%;
  height: 100%;
  //   border: 1px solid #000;
  box-sizing: border-box;
}
// .el-card__body {
//   padding-bottom: 5px !important;
// }
// .avue-crud__tip,
// .el-tag,
// .el-tag--light {
//   padding: 0 !important;
// }
</style>
src/views/dispatch/data.js
@@ -21,7 +21,7 @@
        label: "保安公司",
        prop: "tenantName",
        type: "tree",
        dicUrl: "/api/blade-system/dept/lazy-tree?parentId=0",
        dicUrl: "/api/blade-system/dept/security_lazy-tree?parentId=0",
        props: {
            label: "title",
            value: "id"
src/views/dispatchChild/data.js
@@ -129,7 +129,7 @@
        // overHidden: true
    }, {
        label: "结束时间",
        prop: "dispatchertime",
        prop: "endTime",
        type: "date",
        format: "yyyy-MM-dd hh:mm:ss",
        valueFormat: "timestamp",
src/views/equipments/data.js
New file
@@ -0,0 +1,122 @@
var DIC = [
    {
        label: '招聘中',
        value: 1,
    }, {
        label: '停止招聘',
        value: 2,
    }
]
export var column = [
    {
        label: "id",
        prop: "id",
        hide: true,
        editDisplay: false,
        addDisplay: false
    },
    {
        label: "名称",
        prop: "name",
        search: true,
         rules: [{
            required: true,
            message: "请输入名称",
            trigger: "blur"
        }]
    },
    {
        label: "编号",
        prop: "number",
         rules: [{
            required: true,
            message: "请输入编号",
            trigger: "blur"
        }],
        search: true,
    },//上面不显示
    {
        label: "规格",
        prop: "specifications",
         rules: [{
            required: true,
            message: "请输入规格",
            trigger: "blur"
        }]
        // search: true,
    },
    {
        label: "型号",
        prop: "mode",
        width: 70,
         rules: [{
            required: true,
            message: "请输入型号",
            trigger: "blur"
        }]
        // search: true,
    },
    {
        label: "组织机构",
        prop: "tenantName",
        rules: [{
            required: true,
            message: "请输入组织机构",
            trigger: "blur"
        }],
        // addDisplay: true,
        // editDisplay: true,
        // viewDisplay: true,
        // searchSpan: 5,
        dicUrl: "/api/blade-system/dept/security_lazy-tree?parentId=0",
        props: {
            label: "title",
            value: "id"
        },
        // search: true,
        type: "select",
        // rules: [{
        //     required: true,
        //     message: "请选择学历",
        //     trigger: "blur"
        // }],
    },
    {
        label: "负责人",
        prop: "personInCharge",
        rules: [{
            required: true,
            message: "请输入负责人",
            trigger: "blur"
        }]
    },
    {
        label: "厂商",
        prop: "brand",
        // search: true,
        width: 110,
        overHidden: true,
        search: true,
        rules: [{
            required: true,
            message: "请输入厂商",
            trigger: "blur"
        }]
    },
    {
        label: "出厂日期",
        prop: "dateForProduction",
        // search: true,
        type: "date",
        format: "yyyy-MM-dd",
        valueFormat: "timestamp",
        searchSpan: 4,
        overHidden: true,
        rules: [{
            required: true,
            message: "请输入出厂日期",
            trigger: "blur"
        }]
    }
]
src/views/equipments/index.vue
New file
@@ -0,0 +1,222 @@
<template>
  <div class="equipments">
    <avue-crud
      :option="option"
      :data="data"
      :page.sync="page"
      ref="crudrec"
      @on-load="onLoad"
      :table-loading="loading"
      @row-save="rowSave"
      @search-change="searchChange"
      @search-reset="searchReset"
      @row-update="rowUpdate"
      @row-del="rowDel"
      @selection-change="selectionChange"
      @refresh-change="refreshChange"
    >
      <template slot="menuLeft">
        <el-button
          type="danger"
          size="small"
          plain
          icon="el-icon-delete"
          @click="handleDelete"
          >删 除
        </el-button>
      </template>
    </avue-crud>
  </div>
</template>
<script>
import { data, column } from "./data";
import {
  getdata,
  adddata,
  update,
  remove,
} from "@/api/equipments/equipments";
export default {
  data() {
    return {
      loading: true,
      selectionList: [],
      page: {
        pageSize: 10,
        currentPage: 1,
        total: 0,
      },
      query: {},
      data: [],
      option: {
        // card: true,
        tip: false,
        searchSize: "mini",
        searchMenuSpan: 6,
        height: 627,
        menuWidth: 160,
        align: "center",
        selection: true,
        column: column,
      },
    };
  },
  computed: {
    ids() {
      let ids = [];
      this.selectionList.forEach((ele) => {
        ids.push(ele.id);
      });
      return ids.join(",");
    },
  },
  methods: {
    sizeChange(val) {
      this.page1.currentPage = 1;
      this.page1.pageSize = val;
      this.getData();
      //   this.$message.success("行数" + val);
    },
    currentChange(val) {
      this.page1.currentPage = val;
      this.getData();
      //   this.$message.success("页码" + val);
    },
    rowSave(form, done, loading) {
      var that = this;
      //   var form = this.data[0];
      //   delete form.id;
      //   for (var k = 0; k < 13; k++) {
      adddata(form).then(
        (res) => {
          this.onLoad(this.page);
          this.$message({
            type: "success",
            message: "操作成功!",
          });
          done();
        },
        (error) => {
          window.console.log(error);
          loading();
        }
      );
      //   }
    },
    searchChange(params, done) {
      this.query = params;
      this.page.currentPage = 1;
      this.onLoad(this.page, params);
      done();
    },
    searchReset() {
      this.query = {};
      this.onLoad(this.page);
    },
    rowUpdate(row, index, done, loading) {
      console.log(row);
      update(row).then(
        () => {
          this.onLoad(this.page);
          this.$message({
            type: "success",
            message: "操作成功!",
          });
          done();
        },
        (error) => {
          window.console.log(error);
          loading();
        }
      );
    },
    rowDel(row) {
      this.$confirm("确定将选择数据删除?", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      })
        .then(() => {
          return remove(row.id);
        })
        .then(() => {
          this.onLoad(this.page);
          this.$message({
            type: "success",
            message: "操作成功!",
          });
        });
    },
    selectionChange(list) {
      this.selectionList = list;
    },
    handleDelete() {
      if (this.selectionList.length === 0) {
        this.$message.warning("请选择至少一条数据");
        return;
      }
      this.$confirm("确定将选择数据删除?", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      })
        .then(() => {
          return remove(this.ids);
        })
        .then(() => {
          this.onLoad(this.page);
          this.$message({
            type: "success",
            message: "操作成功!",
          });
          this.$refs.crudrec.toggleSelection();
        });
    },
    refreshChange() {
      this.onLoad(this.page, this.query);
    },
    onLoad(page, params = {}) {
      this.loading = true;
      getdata(
        page.currentPage,
        page.pageSize,
        Object.assign(params, this.query)
      ).then((res) => {
        // console.log(res);
        const data = res.data.data;
        this.page.total = data.total;
        this.data = data.records;
        console.log(this.data);
        this.loading = false;
      });
    },
  },
  mounted() {
    // this.Ourdata = data;
    // this.getData();
    // this.onLoad(this.page);
    // var dept_id = JSON.parse(
    //   window.localStorage.getItem("saber-userInfo")
    // ).content.dept_id;
  },
};
</script>
<style lang="scss">
.equipments {
  width: 100%;
  height: 100%;
  //   border: 1px solid #000;
  box-sizing: border-box;
}
// .el-card__body {
//   padding-bottom: 5px !important;
// }
// .avue-crud__tip,
// .el-tag,
// .el-tag--light {
//   padding: 0 !important;
// }
</style>
src/views/gun/data.js
New file
@@ -0,0 +1,128 @@
var DIC = [
    {
        label: '招聘中',
        value: 1,
    }, {
        label: '停止招聘',
        value: 2,
    }
]
export var column = [
    {
        label: "id",
        prop: "id",
        hide: true,
        editDisplay: false,
        addDisplay: false
    },
    {
        label: "公务用枪证编号",
        prop: "gunCardNumber",
        searchLabelWidth: 130,
        search: true,
        rules: [{
            required: true,
            message: "请输入公务用枪证编号",
            trigger: "blur"
        }]
    },
    {
        label: "发证单位名称",
        searchLabelWidth: 110,
        prop: "issueUnit",
        rules: [{
            required: true,
            message: "请输入发证单位名称",
            trigger: "blur"
        }],
        search: true,
    },//上面不显示
    {
        label: "公务用枪编号",
        prop: "cardNumber",
        searchLabelWidth: 110,
        rules: [{
            required: true,
            message: "请输入公务用枪编号",
            trigger: "blur"
        }]
        // search: true,
    },
    {
        label: "枪型",
        prop: "gunMode",
        width: 70,
        rules: [{
            required: true,
            message: "请输入枪型",
            trigger: "blur"
        }],
        search: true,
    },
    {
        label: "组织机构",
        prop: "tenantName",
        rules: [{
            required: true,
            message: "请输入组织机构",
            trigger: "blur"
        }],
        // addDisplay: true,
        // editDisplay: true,
        // viewDisplay: true,
        // searchSpan: 5,
        dicUrl: "/api/blade-system/dept/security_lazy-tree?parentId=0",
        props: {
            label: "title",
            value: "id"
        },
        // search: true,
        type: "select",
        // rules: [{
        //     required: true,
        //     message: "请选择学历",
        //     trigger: "blur"
        // }],
    },
    {
        label: "责任人",
        prop: "personInCharge",
        rules: [{
            required: true,
            message: "请输入责任人",
            trigger: "blur"
        }]
    },
    {
        label: "发证日期",
        prop: "issueTime",
        // search: true,
        type: "date",
        format: "yyyy-MM-dd",
        valueFormat: "timestamp",
        // width: 110,
        // overHidden: true,
        // search: true,
        rules: [{
            required: true,
            message: "请输入发证日期",
            trigger: "blur"
        }]
    },
    {
        label: "有效日期",
        prop: "validTime",
        // search: true,
        type: "date",
        format: "yyyy-MM-dd",
        valueFormat: "timestamp",
        searchSpan: 4,
        overHidden: true,
        rules: [{
            required: true,
            message: "请输入有效日期",
            trigger: "blur"
        }]
    }
]
src/views/gun/index.vue
New file
@@ -0,0 +1,222 @@
<template>
  <div class="equipments">
    <avue-crud
      :option="option"
      :data="data"
      :page.sync="page"
      ref="crudrec"
      @on-load="onLoad"
      :table-loading="loading"
      @row-save="rowSave"
      @search-change="searchChange"
      @search-reset="searchReset"
      @row-update="rowUpdate"
      @row-del="rowDel"
      @selection-change="selectionChange"
      @refresh-change="refreshChange"
    >
      <template slot="menuLeft">
        <el-button
          type="danger"
          size="small"
          plain
          icon="el-icon-delete"
          @click="handleDelete"
          >删 除
        </el-button>
      </template>
    </avue-crud>
  </div>
</template>
<script>
import { data, column } from "./data";
import {
  getdata,
  adddata,
  update,
  remove,
} from "@/api/gun/gun";
export default {
  data() {
    return {
      loading: true,
      selectionList: [],
      page: {
        pageSize: 10,
        currentPage: 1,
        total: 0,
      },
      query: {},
      data: [],
      option: {
        // card: true,
        tip: false,
        searchSize: "mini",
        searchMenuSpan: 6,
        height: 627,
        menuWidth: 160,
        align: "center",
        selection: true,
        column: column,
      },
    };
  },
  computed: {
    ids() {
      let ids = [];
      this.selectionList.forEach((ele) => {
        ids.push(ele.id);
      });
      return ids.join(",");
    },
  },
  methods: {
    sizeChange(val) {
      this.page1.currentPage = 1;
      this.page1.pageSize = val;
      this.getData();
      //   this.$message.success("行数" + val);
    },
    currentChange(val) {
      this.page1.currentPage = val;
      this.getData();
      //   this.$message.success("页码" + val);
    },
    rowSave(form, done, loading) {
      var that = this;
      //   var form = this.data[0];
      //   delete form.id;
      //   for (var k = 0; k < 13; k++) {
      adddata(form).then(
        (res) => {
          this.onLoad(this.page);
          this.$message({
            type: "success",
            message: "操作成功!",
          });
          done();
        },
        (error) => {
          window.console.log(error);
          loading();
        }
      );
      //   }
    },
    searchChange(params, done) {
      this.query = params;
      this.page.currentPage = 1;
      this.onLoad(this.page, params);
      done();
    },
    searchReset() {
      this.query = {};
      this.onLoad(this.page);
    },
    rowUpdate(row, index, done, loading) {
      console.log(row);
      update(row).then(
        () => {
          this.onLoad(this.page);
          this.$message({
            type: "success",
            message: "操作成功!",
          });
          done();
        },
        (error) => {
          window.console.log(error);
          loading();
        }
      );
    },
    rowDel(row) {
      this.$confirm("确定将选择数据删除?", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      })
        .then(() => {
          return remove(row.id);
        })
        .then(() => {
          this.onLoad(this.page);
          this.$message({
            type: "success",
            message: "操作成功!",
          });
        });
    },
    selectionChange(list) {
      this.selectionList = list;
    },
    handleDelete() {
      if (this.selectionList.length === 0) {
        this.$message.warning("请选择至少一条数据");
        return;
      }
      this.$confirm("确定将选择数据删除?", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      })
        .then(() => {
          return remove(this.ids);
        })
        .then(() => {
          this.onLoad(this.page);
          this.$message({
            type: "success",
            message: "操作成功!",
          });
          this.$refs.crudrec.toggleSelection();
        });
    },
    refreshChange() {
      this.onLoad(this.page, this.query);
    },
    onLoad(page, params = {}) {
      this.loading = true;
      getdata(
        page.currentPage,
        page.pageSize,
        Object.assign(params, this.query)
      ).then((res) => {
        // console.log(res);
        const data = res.data.data;
        this.page.total = data.total;
        this.data = data.records;
        console.log(this.data);
        this.loading = false;
      });
    },
  },
  mounted() {
    // this.Ourdata = data;
    // this.getData();
    // this.onLoad(this.page);
    // var dept_id = JSON.parse(
    //   window.localStorage.getItem("saber-userInfo")
    // ).content.dept_id;
  },
};
</script>
<style lang="scss">
.equipments {
  width: 100%;
  height: 100%;
  //   border: 1px solid #000;
  box-sizing: border-box;
}
// .el-card__body {
//   padding-bottom: 5px !important;
// }
// .avue-crud__tip,
// .el-tag,
// .el-tag--light {
//   padding: 0 !important;
// }
</style>
src/views/recruitmentManagement/data.js
@@ -7,7 +7,18 @@
        value: 2,
    }
]
var DIC1 = [
    {
        label: '拥有',
        value: 1,
    }, {
        label: '未拥有',
        value: 2,
    }
]
var w = 160
    , s = 12;
export var column = [
    {
        label: "id",
@@ -41,6 +52,24 @@
        prop: "number",
        width: 70,
        // search: true,
    },
    {
        label: "保安证",
        prop: "permit",
        // addDisplay: true,
        // editDisplay: true,
        // viewDisplay: true,
        filter: false,
        type: 'tree',
        dicData: DIC1,
        searchSpan: 5,
        // dicUrl: "/api/blade-system/dict-biz/dictionary?code=equipage",
        // props: {
        //     label: "dictValue",
        //     value: "dictKey"
        // },
        // search: true,
        // type: "select",
    },
    {
        label: "学历要求",
@@ -99,18 +128,21 @@
    {
        label: "最低薪资",
        prop: "minSalary",
        width: 70,
        // search: true,
        searchSpan: 4,
    },
    {
        label: "最高薪资",
        prop: "maxSalary",
        width: 70,
        search: true,
        searchSpan: 4,
    },
    {
        label: "单位性质",
        prop: "unitsNature",
        width: 70,
        addDisplay: true,
        editDisplay: true,
        viewDisplay: true,
@@ -190,6 +222,7 @@
        // prop: "status",
        // search: true,
        // searchSpan: 4,
        width: 70,
        prop: 'status',
        filter: false,
        type: 'tree',
@@ -200,148 +233,4 @@
        //     trigger: "blur"
        // }],
    },
]
export var data = [
    {
        "tenant_id": "xx保安公司", "name": "xx职务",
        "number": "10",
        "education": "大专以上",
        "experience": "2年",
        "max_salary": "8k",
        "units_scale": "200人+",
        "linkman": "XX",
        "phone": "xxxxxxxxxx",
        "address": "环城路地一大道30号口下",
        "start_time": "7月8日",
        "end_time": "7月31日",
        "status": "2"
    },
    {
        "tenant_id": "xx保安公司", "name": "xx职务",
        "number": "10",
        "education": "大专以上",
        "experience": "2年",
        "max_salary": "8k",
        "units_scale": "200人+",
        "linkman": "XX",
        "phone": "xxxxxxxxxx",
        "address": "环城路地一大道30号口下",
        "start_time": "7月8日",
        "end_time": "7月31日",
        "status": "2"
    },
    {
        "tenant_id": "xx保安公司", "name": "xx职务",
        "number": "10",
        "education": "大专以上",
        "experience": "2年",
        "max_salary": "8k",
        "units_scale": "200人+",
        "linkman": "XX",
        "phone": "xxxxxxxxxx",
        "address": "环城路地一大道30号口下",
        "start_time": "7月8日",
        "end_time": "7月31日",
        "status": "2"
    },
    {
        "tenant_id": "xx保安公司", "name": "xx职务",
        "number": "10",
        "education": "大专以上",
        "experience": "3年",
        "max_salary": "8k",
        "units_scale": "200人+",
        "linkman": "XX",
        "phone": "xxxxxxxxxx",
        "address": "环城路地一大道30号口下",
        "start_time": "7月8日",
        "end_time": "7月31日",
        "status": "2"
    },
    {
        "tenant_id": "xx保安公司", "name": "xx职务",
        "number": "10",
        "education": "大专以上",
        "experience": "5年",
        "max_salary": "8k",
        "units_scale": "200人+",
        "linkman": "XX",
        "phone": "xxxxxxxxxx",
        "address": "环城路地一大道30号口下",
        "start_time": "7月8日",
        "end_time": "7月31日",
        "status": "2"
    },
    {
        "tenant_id": "xx保安公司", "name": "xx职务",
        "number": "10",
        "education": "大专以上",
        "experience": "2年",
        "max_salary": "8k",
        "units_scale": "200人+",
        "linkman": "XX",
        "phone": "xxxxxxxxxx",
        "address": "环城路地一大道30号口下",
        "start_time": "7月8日",
        "end_time": "7月31日",
        "status": "2"
    },
    {
        "tenant_id": "xx保安公司", "name": "xx职务",
        "number": "10",
        "education": "大专以上",
        "experience": "2年",
        "max_salary": "8k",
        "units_scale": "200人+",
        "linkman": "XX",
        "phone": "xxxxxxxxxx",
        "address": "环城路地一大道30号口下",
        "start_time": "7月8日",
        "end_time": "7月31日",
        "status": "2"
    },
    {
        "tenant_id": "xx保安公司", "name": "xx职务",
        "number": "10",
        "education": "大专以上",
        "experience": "2年",
        "max_salary": "8k",
        "units_scale": "200人+",
        "linkman": "XX",
        "phone": "xxxxxxxxxx",
        "address": "环城路地一大道30号口下",
        "start_time": "7月8日",
        "end_time": "7月31日",
        "status": "2"
    },
    {
        "tenant_id": "xx保安公司", "name": "xx职务",
        "number": "10",
        "education": "大专以上",
        "experience": "2年",
        "max_salary": "8k",
        "units_scale": "200人+",
        "linkman": "XX",
        "phone": "xxxxxxxxxx",
        "address": "环城路地一大道30号口下",
        "start_time": "7月8日",
        "end_time": "7月31日",
        "status": "2"
    },
    {
        "tenant_id": "xx保安公司", "name": "xx职务",
        "number": "10",
        "education": "大专以上",
        "experience": "2年",
        "max_salary": "8k",
        "units_scale": "200人+",
        "linkman": "XX",
        "phone": "xxxxxxxxxx",
        "address": "环城路地一大道30号口下",
        "start_time": "7月8日",
        "end_time": "7月31日",
        "status": "2"
    }
]
src/views/recruitmentManagement/index.vue
@@ -51,10 +51,11 @@
      query: {},
      data: [],
      option: {
        card: true,
        // card: true,
        tip: false,
        searchSize: "mini",
        searchMenuSpan: 6,
        height: 547,
        height: 627,
        menuWidth: 160,
        align: "center",
        selection: true,
@@ -68,7 +69,7 @@
      this.selectionList.forEach((ele) => {
        ids.push(ele.id);
      });
      return ids.join(",");
      return ids.join(",");
    },
  },
  methods: {
@@ -85,24 +86,24 @@
    },
    rowSave(form, done, loading) {
      var that = this;
    //   var form = this.data[0];
    //   delete form.id;
    //   for (var k = 0; k < 13; k++) {
        adddata(form).then(
          (res) => {
            this.onLoad(this.page);
            this.$message({
              type: "success",
              message: "操作成功!",
            });
            done();
          },
          (error) => {
            window.console.log(error);
            loading();
          }
        );
    //   }
      //   var form = this.data[0];
      //   delete form.id;
      //   for (var k = 0; k < 13; k++) {
      adddata(form).then(
        (res) => {
          this.onLoad(this.page);
          this.$message({
            type: "success",
            message: "操作成功!",
          });
          done();
        },
        (error) => {
          window.console.log(error);
          loading();
        }
      );
      //   }
    },
    searchChange(params, done) {
      this.query = params;
@@ -196,7 +197,6 @@
    // this.Ourdata = data;
    // this.getData();
    // this.onLoad(this.page);
    // var dept_id = JSON.parse(
    //   window.localStorage.getItem("saber-userInfo")
    // ).content.dept_id;
src/views/securityUnit/data.js
@@ -55,7 +55,7 @@
        label: "企业名称",
        prop: "enterprisename",
        search: true,
        width: 130,
        // width: 130,
    },
    {
        label: "企业类型",
@@ -132,13 +132,13 @@
        label: "注册资本(万元人民币)",
        prop: "registeredcapital",
        // search: true,
        width: 110,
        width: 140,
        // overHidden: true
    },
    {
        label: "实缴资本(万元人民币)",
        prop: "capital",
        width: 85,
        // width: 85,
        hide: true,
        // search: true,
        // searchSpan: 4,
@@ -147,19 +147,21 @@
    {
        label: "组织机构代码",
        prop: "organizationcode",
        width: 110,
        // width: 110,
        // search: true,
        // searchSpan: 4,
    },
    {
        label: "工商注册号",
        prop: "registrationnumber",
        width: 120,
        // search: true,
        // searchSpan: 4,
    },
    {
        label: "纳税人识别号",
        prop: "identificationnumber",
        width: 140,
        // addDisplay: true,
        // editDisplay: true,
        // viewDisplay: true,
@@ -209,13 +211,13 @@
        prop: "business",
        // search: true,
        hide: true,
        width: 110,
        // width: 110,
        overHidden: true
    },
    {
        label: "所属地区",
        prop: "region",
        width: 110,
        // width: 110,
        // search: true,
        overHidden: true
    },
@@ -292,7 +294,7 @@
        rules: [
            {
                required: true,
                message: "请选择所属部门",
                message: "请选择所属辖区",
                trigger: "click",
            },
        ],
@@ -420,6 +422,7 @@
    {
        label: "工商注册号",
        prop: "registrationnumber",
        labelWidth: w,
        span: s,
        rules: [{
@@ -528,7 +531,7 @@
        span: s,
        rules: [{
            required: true,
            message: "请输入法定代表人",
            message: "请输入统一社会信用代码",
            trigger: "blur"
        }]
    },
@@ -555,12 +558,22 @@
        label: "股东",
        prop: "shareholder",
        labelWidth: w,
        span: s
        span: s,
        rules: [{
            required: true,
            message: "请输入法定代表人",
            trigger: "blur"
        }]
    }, {
        label: "持股比例(%)",
        prop: "shareholdingratio",
        labelWidth: w,
        span: s
        span: s,
        rules: [{
            required: true,
            message: "请输入持股比例",
            trigger: "blur"
        }]
    },
    // {
    //     label: "最终受益股份",
@@ -572,7 +585,12 @@
        label: "出资金额",
        prop: "capital2",
        labelWidth: w,
        span: s
        span: s,
        rules: [{
            required: true,
            message: "请输入出资金额",
            trigger: "blur"
        }]
    }, {
        label: "出资时间",
        prop: "capitaltime",
@@ -580,17 +598,32 @@
        format: "yyyy-MM-dd",
        valueFormat: "timestamp",
        labelWidth: w,
        span: s
        span: s,
        rules: [{
            required: true,
            message: "请输入法定代表人",
            trigger: "blur"
        }]
    }, {
        label: "身份证",
        prop: "cardid",
        labelWidth: w,
        span: s
        span: s,
        rules: [{
            required: true,
            message: "请输入身份证",
            trigger: "blur"
        }]
    }, {
        label: "联系电话",
        prop: "cell",
        labelWidth: w,
        span: s
        span: s,
        rules: [{
            required: true,
            message: "请输入联系电话",
            trigger: "blur"
        }]
    },
]
@@ -610,7 +643,12 @@
        prop: "creditcode",
        disabled: true,
        labelWidth: w,
        span: s
        span: s,
        rules: [{
            required: true,
            message: "请输入统一社会信用代码",
            trigger: "blur"
        }]
    },
    // {
    //     label: "部门",
@@ -635,22 +673,42 @@
        label: "姓名",
        prop: "name",
        labelWidth: w,
        span: s
        span: s,
        rules: [{
            required: true,
            message: "请输入姓名",
            trigger: "blur"
        }]
    }, {
        label: "职务",
        prop: "post",
        labelWidth: w,
        span: s
        span: s,
        rules: [{
            required: true,
            message: "请输入职务",
            trigger: "blur"
        }]
    }, {
        label: "身份证",
        prop: "cardid2",
        labelWidth: w,
        span: s
        span: s,
        rules: [{
            required: true,
            message: "请输入身份证",
            trigger: "blur"
        }]
    }, {
        label: "联系电话",
        prop: "cell2",
        labelWidth: w,
        span: s
        span: s,
        rules: [{
            required: true,
            message: "请输入联系电话",
            trigger: "blur"
        }]
    }
    // , {
    //     label: "持股比例(%)",
vue.config.js
@@ -23,7 +23,7 @@
  //开发模式反向代理配置,生产模式请使用Nginx部署并配置反向代理。
  devServer: {
    port: 1888,
    disableHostCheck: true,
    // disableHostCheck: true,
    proxy: {
      '/api': {
        //本地服务接口地址
保安企业服务.zip
Binary files differ