liuyg
2021-09-27 8c6cf205affbbc8ada74f00a7ca25ebca867e9ed
src/views/dispatch/dispatchChildoperable.vue
@@ -6,7 +6,9 @@
        :data="data1"
        :page.sync="page1"
        ref="crudrec1"
        v-model="form"
        :table-loading="loading1"
        :before-open="beforeOpen"
        @row-save="rowSave1"
        @search-change="searchChange1"
        @search-reset="searchReset1"
@@ -21,12 +23,19 @@
</template> 
<script>
import { getdata1, adddata1, update1, remove1 } from "@/api/dispatch/dispatch";
import { getDept } from "@/api/system/dept";
import {
  getdata1,
  adddata1,
  update1,
  remove1,
  getDispatcherUnitByDeptId,
  overDispatcher,
} from "@/api/dispatch/dispatch";
import { update, getListByDeptId } from "@/api/system/user";
import { mapState } from "vuex";
export default {
  data() {
    let baseUrl = "https://cli.avuejs.com/api/area";
    return {
      deptCategory: "",
      deptId: "",
@@ -38,6 +47,7 @@
        currentPage: 1,
        total: 0,
      },
      form: {},
      query1: {},
      data1: [],
      option1: {
@@ -65,16 +75,38 @@
            // search: true,
            // labelWidth: 120,
            // searchSpan: 4,
            width: 180,
            minWidth: 210,
            addDisplay: false,
            editDisplay: false,
          },
          {
            label: "保安公司",
            prop: "deptId",
            search: true,
            labelWidth: 120,
            type: "tree",
            searchSpan: 4,
            cascaderItem: ["userIds"],
            props: {
              label: "title",
              value: "id",
            },
            width: 180,
            dicUrl: `/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697`,
            rules: [
              {
                required: true,
                message: "请输入保安公司",
                trigger: "blur",
              },
            ],
          },
          {
            label: "派遣单位",
            prop: "dispatcherUnitId",
            labelWidth: 120,
            searchLabelWidth: 80,
            dicUrl: "/api/dispatcherUnit/page-tree",
            // dicUrl: "/api/dispatcherUnit/page-tree?deptId={{key}}",
            props: {
              label: "name",
              value: "id",
@@ -92,44 +124,45 @@
              },
            ],
          },
          // {
          {
            label: "保安公司",
            prop: "deptId",
            search: true,
            label: "保安员",
            prop: "userIds",
            type: "tree",
            width: 70,
            labelWidth: 120,
            type: "select",
            searchSpan: 4,
            cascaderItem: ["name"],
            searchSpan: 3,
            search: true,
            hide: true,
            props: {
              label: "title",
              label: "realName",
              value: "id",
            },
            width: 180,
            dicUrl: `/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697`,
            // dicUrl: `/api/blade-user/page-security-units?dispatch=1&deptId={{key}}`,
            dicUrl: `/api/blade-user/page-security-units?status=1&deptId={{key}}`,
            dicData: [],
            rules: [
              {
                required: true,
                message: "请输入保安公司",
                message: "请选择保安",
                trigger: "blur",
              },
            ],
          },
          {
            label: "保安员",
            prop: "name",
            type: "select",
            prop: "securityName",
            type: "tree",
            width: 70,
            labelWidth: 120,
            searchSpan: 3,
            search: true,
            // cell: true,
            addDisplay: false,
            editDisplay: false,
            // hide: true,
            props: {
              label: "realName",
              value: "id",
            },
            dicUrl: `/api/blade-user/page-security-units?deptId={{key}}`,
            // props: {
            //   label: "realName",
            //   value: "id",
            // },
            // dicUrl: `/api/blade-user/page-security-units?dispatch=1&deptId={{key}}`,
            dicData: [],
            rules: [
              {
                required: true,
@@ -141,9 +174,11 @@
          {
            label: "身份证",
            prop: "cardid",
            prop: "idCardNo",
            labelWidth: 120,
            overHidden: true,
            addDisplay: false,
            editDisplay: false,
            rules: [
              {
                required: true,
@@ -164,7 +199,7 @@
          // },
          {
            label: "派遣时间",
            label: "开始时间",
            prop: "dispatchertime",
            type: "date",
            format: "yyyy-MM-dd",
@@ -204,12 +239,12 @@
          {
            label: "派遣时间",
            prop: "releaseTimeRange",
            type: "datetime",
            type: "date",
            format: "yyyy-MM-dd",
            valueFormat: "yyyy-MM-dd",
            searchValue: [this.getStartTime(), this.getEndTime()],
            searchRange: true,
            searchSpan: 4,
            searchSpan: 5,
            hide: true,
            addDisplay: false,
            editDisplay: false,
@@ -240,7 +275,34 @@
          },
        ],
      },
      useifid: 266,
    };
  },
  created() {
    var that = this;
    if (this.userInfo.role_name == "保安公司管理员") {
      console.log("保安公司管理员登入");
      const deptColumn = this.findObject(this.option1.column, "deptId");
      deptColumn.search = false;
      deptColumn.hide = true;
      this.useifid = this.userInfo.dept_id;
    } else {
      const deptColumn = this.findObject(
        this.option1.column,
        "dispatcherUnitId"
      );
      deptColumn.search = false;
    }
    //公安局进入
    if (this.userInfo.role_name == "公安管理员") {
      that.option1.column[1].dicUrl =
        "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697&jurisdiction=" +
        that.userInfo.jurisdiction;
    } else {
      that.option1.column[1].dicUrl =
        "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697";
    }
  },
  computed: {
    // },
@@ -251,7 +313,14 @@
      });
      return ids1.join(",");
    },
    ...mapState({
      userInfo: (state) => state.user.userInfo,
    }),
    deps() {
      return this.form.deptId;
    },
  },
  methods: {
    handleChangeTABS(column) {
      this.typeTABS = column;
@@ -272,15 +341,20 @@
      this.page1.pageSize = val;
      // this.getData();
      this.onLoad1(this.page1, this.query1);
      //   this.$message.success("行数" + val);
    },
    currentChange1(val) {
      this.page1.currentPage = val;
      // this.getData();
      this.onLoad1(this.page1, this.query1);
      //   this.$message.success("页码" + val);
    },
    rowSave1(form, done, loading) {
      // if(this.userInfo.role_name=="保安公司管理员"){
      //   const userColumn = this.findObject(this.option1.column, "userIds");
      //   userColumn.dicUrl = "/api/blade-user/page-security-units?deptId="+this.userInfo.dept_id;
      // }
      if (this.useifid != 266) {
        form["deptId"] = this.useifid;
      }
      adddata1(form).then(
        (res) => {
          this.onLoad1(this.page1);
@@ -308,6 +382,13 @@
      this.onLoad1(this.page1);
    },
    rowUpdate1(row, index, done, loading) {
      // if(this.userInfo.role_name=="保安公司管理员"){
      //   const userColumn = this.findObject(this.option1.column, "userIds");
      //   userColumn.dicUrl = "/api/blade-user/page-security-units?deptId="+this.userInfo.dept_id;
      // }
      if (this.useifid != 266) {
        row["deptId"] = this.useifid;
      }
      update1(row).then(
        () => {
          this.onLoad1(this.page1);
@@ -324,13 +405,13 @@
      );
    },
    rowDel1(row) {
      this.$confirm("确定将选择数据删除?", {
      this.$confirm("确定结束当前派遣?", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
      })
        .then(() => {
          return remove1(row.id);
          return overDispatcher(row);
        })
        .then(() => {
          this.onLoad1(this.page1);
@@ -372,6 +453,11 @@
      this.onLoad1(this.page1, this.query1);
    },
    beforeOpen(done, type) {
      this.initFlag = true;
      done();
    },
    getStartTime() {
      if (
        this.$route.query.startTime != undefined &&
@@ -396,6 +482,8 @@
    onLoad1(page, params = {}) {
      this.loading1 = true;
      var values;
      //默认查询已派遣的,派遣结束,未派遣的不显示
      params["dispatch"] = 0;
      const { releaseTimeRange } = this.query1;
      if (releaseTimeRange) {
        values = {
@@ -412,59 +500,74 @@
        };
      }
      console.log(values);
      if (this.userInfo.role_name == "保安公司管理员") {
        const deptColumn = this.findObject(this.option1.column, "deptId");
        deptColumn.disabled = true;
        // deptColumn.search = false; //会报错
        deptColumn.value = this.userInfo.dept_id;
        this.initData(2);
      } else {
        this.initData(1);
      }
      if (this.useifid != 266) {
        values["deptId"] = this.useifid;
      }
      //公安局进入
      if (this.userInfo.role_name == "公安管理员") {
        params["jurisdiction"] = this.userInfo.jurisdiction;
      }
      getdata1(
        page.currentPage,
        page.pageSize,
        // Object.assign(params, this.query)
        values
      ).then((res) => {
        // console.log(res);
        const data = res.data.data;
        this.page1.total = data.total;
        this.data1 = data.records;
        console.log(this.data1, 1111111111111111111111111);
        this.loading1 = false;
        this.$nextTick(() => this.$refs.crudrec1.dicInit("cascader"));
        // this.$nextTick(() => this.$refs.crudrec1.dicInit("cascader"));
        console.log(this.form, 111111);
      });
    },
    //派遣记录
    initData(type) {
      var that = this;
      if (type == 1) {
        getDispatcherUnitByDeptId(null).then((res) => {
          const dispatcherUnitIdColumn = that.findObject(
            this.option1.column,
            "dispatcherUnitId"
          );
          // console.log(res.data.data, 111);
          dispatcherUnitIdColumn.dicData = res.data.data;
        });
      }
      if (type == 2) {
        getDispatcherUnitByDeptId(that.userInfo.dept_id).then((res) => {
          const dispatcherUnitIdColumn = that.findObject(
            this.option1.column,
            "dispatcherUnitId"
          );
          dispatcherUnitIdColumn.dicData = res.data.data;
        });
        getListByDeptId(that.userInfo.dept_id, 1).then((res) => {
          const userIdsColumn = that.findObject(this.option1.column, "userIds");
          userIdsColumn.dicData = res.data.data;
        });
      }
    },
  },
  //  watch: {
  //   // "form.deptId"() {
  //   //   this.initData();
  //   // }
  //   deps(){
  //     console.log(this.deps,5646646)
  //   }
  // },
  mounted() {
    this.onLoad1(this.page1, this.query1);
    //去掉缓存
    // this.typeTABS = this.optionTABS.column[0];
    // var row = {};
    // if (this.readLock("paqiandata") != null) {
    //   row = JSON.parse(this.readLock("paqiandata"));
    //   this.obj0.name = row.name;
    //   for (var k in row) {
    //     this.obj0[k] = row[k];
    //   }
    //   console.log(this.obj0, 11111111);
    //   this.id = row.id;
    //   if (this.readLock("paqiandataS") != null) {
    //     var b = JSON.parse(this.readLock("paqiandataS"));
    //     var i = 0;
    //     for (var k in b) {
    //       if (b[k].name == row.name) {
    //         i = 1;
    //       }
    //     }
    //     if (i == 1) {
    //       // console.log("存在");
    //     } else {
    //       // console.log("已删除");
    //       this.obj0 = {};
    //       this.obj0.name = row.name + " 该派遣单位已删除";
    //       window.localStorage.removeItem("paqiandata");
    //       this.id = 1244241;
    //     }
    //   }
    // } else {
    //   // console.log("no");
    //   this.obj0.name = " 未选择派遣单位";
    // }
  },
};
</script>