| | |
| | | <template> |
| | | <basic-container> |
| | | <div class="dispatch"> |
| | | <div |
| | | :class="[ |
| | | 'dispatch', |
| | | $store.state.control.windowWidth >= 1024 ? 'oneRowSearch' : '', |
| | | ]" |
| | | > |
| | | <!-- <avue-tabs :option="optionTABS" @change="handleChangeTABS"></avue-tabs> |
| | | <span v-if="typeTABS.prop === 'tab1'"> --> |
| | | <avue-crud |
| | |
| | | <!-- <span v-else-if="typeTABS.prop === 'tab3'">选项卡内容3</span> --> |
| | | </div> |
| | | </basic-container> |
| | | </template> |
| | | </template> |
| | | |
| | | <script> |
| | | import { |
| | |
| | | import { mapState } from "vuex"; |
| | | export default { |
| | | data() { |
| | | var phones = (rule, value, callback) => { |
| | | window.yanzhengphons = |
| | | /^1([358][0-9]|4[579]|66|7[0135678]|9[89])[0-9]{8}$/; |
| | | if (!yanzhengphons.test(value)) { |
| | | callback(new Error("请输入正确电话")); |
| | | } else { |
| | | callback(); |
| | | } |
| | | }; |
| | | return { |
| | | typeTABS: {}, //标签页 |
| | | deptId: "", |
| | |
| | | pageSize: 10, |
| | | currentPage: 1, |
| | | total: 0, |
| | | ...this.$store.state.control.changePageSize, |
| | | }, |
| | | query: {}, |
| | | data: [], |
| | |
| | | menuWidth: 160, |
| | | align: "center", |
| | | selection: true, |
| | | ...this.$store.state.control.clearOtherBut, |
| | | column: [ |
| | | //派遣服务公司登记 |
| | | { |
| | |
| | | searchSpan: 4, |
| | | width: 210, |
| | | // span: 12, |
| | | labelWidth: 118, |
| | | labelWidth: 138, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入派遣单位名称", |
| | | trigger: "click", |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | label: "保安公司", |
| | | label: "企业名称", |
| | | prop: "deptId", |
| | | type: "tree", |
| | | overHidden: true, |
| | | dicUrl: |
| | | "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697", |
| | | dicUrl: "", |
| | | props: { |
| | | label: "title", |
| | | value: "id", |
| | |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请选择保安公司", |
| | | message: "请选择企业名称", |
| | | trigger: "click", |
| | | }, |
| | | ], |
| | | labelWidth: 118, |
| | | labelWidth: 138, |
| | | width: 230, |
| | | searchLabelWidth: 80, |
| | | search: true, |
| | |
| | | searchSpan: 4, |
| | | overHidden: true, |
| | | // span: 12, |
| | | labelWidth: 118, |
| | | labelWidth: 138, |
| | | }, |
| | | { |
| | | label: "合同生效时间", |
| | |
| | | search: true, |
| | | searchSpan: 4, |
| | | overHidden: true, |
| | | labelWidth: 118, |
| | | labelWidth: 138, |
| | | parent: false, |
| | | type: "tree", |
| | | dicUrl: "/api/jurisdiction/lazy-tree", |
| | | props: { |
| | |
| | | slot: true, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | required: false, |
| | | message: "请选择所属辖区", |
| | | trigger: "click", |
| | | }, |
| | |
| | | editDisplay: false, |
| | | viewDisplay: false, |
| | | overHidden: true, |
| | | labelWidth: 118, |
| | | labelWidth: 138, |
| | | type: "tree", |
| | | dicUrl: "/api/jurisdiction/lazy-tree", |
| | | props: { |
| | |
| | | slot: true, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | required: false, |
| | | message: "请选择所属辖区", |
| | | trigger: "click", |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | label: " 派遣单位地址", |
| | | prop: "address", |
| | | labelWidth: 138, |
| | | }, |
| | | // { |
| | | // label: " 派遣人数", |
| | | // prop: "num", |
| | | // labelWidth: 118, |
| | | // label: "合同生效时间", |
| | | // prop: "releaseTimeRange", |
| | | // type: "date", |
| | | // format: "yyyy-MM-dd", |
| | | // valueFormat: "yyyy-MM-dd", |
| | | // searchValue: [this.getStartTime(), this.getEndTime()], |
| | | // // searchRange: true, |
| | | // searchSpan: 5, |
| | | // searchLabelWidth: 110, |
| | | // hide: true, |
| | | // value: [this.getStartTime(), this.getEndTime()], |
| | | // // addDisplay: false, |
| | | // // editDisplay: false, |
| | | // // viewDisplay: false, |
| | | // range: true, |
| | | // rules: [ |
| | | // { |
| | | // required: true, |
| | | // message: "请输入时间", |
| | | // trigger: "blur", |
| | | // }, |
| | | // ], |
| | | // }, |
| | | { |
| | | label: "合同开始时间", |
| | | prop: "startTime", |
| | | labelWidth: 118, |
| | | labelWidth: 138, |
| | | type: "date", |
| | | format: "yyyy-MM-dd", |
| | | valueFormat: "yyyy-MM-dd", |
| | | // search: true, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请选择开始时间", |
| | | trigger: "click", |
| | | }, |
| | | ], |
| | | // searchSpan: 4, |
| | | // overHidden: true |
| | | }, |
| | | { |
| | | label: "合同结束时间", |
| | | prop: "endTime", |
| | | labelWidth: 118, |
| | | labelWidth: 138, |
| | | type: "date", |
| | | format: "yyyy-MM-dd", |
| | | valueFormat: "yyyy-MM-dd", |
| | | // search: true, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请选择结束时间", |
| | | trigger: "click", |
| | | }, |
| | | ], |
| | | // searchSpan: 4, |
| | | // overHidden: true |
| | | }, |
| | | { |
| | | label: " 负责人", |
| | | label: " 派遣单位联系人", |
| | | prop: "linkman", |
| | | labelWidth: 118, |
| | | labelWidth: 138, |
| | | // rules: [ |
| | | // { |
| | | // required: true, |
| | | // message: "请输入派遣单位联系人", |
| | | // trigger: "click", |
| | | // }, |
| | | // ], |
| | | }, |
| | | { |
| | | label: "派遣单位联系方式", |
| | | prop: "phone", |
| | | labelWidth: 138, |
| | | width: 130, |
| | | // rules: [ |
| | | // { |
| | | // required: true, |
| | | // message: "请输入联系方式", |
| | | // trigger: "click", |
| | | // }, |
| | | // { |
| | | // validator: phones, |
| | | // trigger: ["change", "blur"], |
| | | // }, |
| | | // ], |
| | | }, |
| | | { |
| | | label: " 负责人", |
| | | prop: "securityLinkman", |
| | | labelWidth: 138, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入负责人", |
| | | trigger: "click", |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | label: "负责人联系方式", |
| | | prop: "phone", |
| | | labelWidth: 118, |
| | | prop: "cell", |
| | | labelWidth: 138, |
| | | width: 110, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入联系方式", |
| | | trigger: "click", |
| | | }, |
| | | // { |
| | | // validator: phones, |
| | | // trigger: ["change", "blur"], |
| | | // }, |
| | | ], |
| | | }, |
| | | { |
| | | label: "派遣保安员数", |
| | | prop: "num", |
| | | type: "number", |
| | | labelWidth: 138, |
| | | width: 110, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入派遣保安员数", |
| | | trigger: "click", |
| | | }, |
| | | ], |
| | | }, |
| | | ], |
| | | }, |
| | | |
| | | useifid: 266, |
| | | }; |
| | | }, |
| | | created() { |
| | | var that = this; |
| | | if (this.userInfo.role_name == "保安公司管理员") { |
| | | const deptColumn = this.findObject(this.option.column, "deptId"); |
| | | deptColumn.search = false; |
| | |
| | | deptColumn.editDisplay = false; |
| | | deptColumn.viewDisplay = false; |
| | | deptColumn.hide = true; |
| | | this.useifid = this.userInfo.dept_id; |
| | | } |
| | | //公安局进入 |
| | | if (this.userInfo.role_name == "公安管理员") { |
| | | that.option.column[1].dicUrl = |
| | | "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697&jurisdiction=" + |
| | | that.userInfo.jurisdiction; |
| | | } else { |
| | | that.option.column[1].dicUrl = |
| | | "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697"; |
| | | } |
| | | }, |
| | | computed: { |
| | |
| | | }); |
| | | return ids1.join(","); |
| | | }, |
| | | ...mapState({ |
| | | ...mapState({ |
| | | userInfo: (state) => state.user.userInfo, |
| | | }) |
| | | }), |
| | | }, |
| | | methods: { |
| | | handleChangeTABS(column) { |
| | |
| | | // this.$message.success("页码" + val); |
| | | }, |
| | | rowSave(form, done, loading) { |
| | | form["deptId"] = this.userInfo.dept_id; |
| | | // form["deptId"] = this.userInfo.dept_id; |
| | | if (this.useifid != 266) { |
| | | form["deptId"] = this.useifid; |
| | | } |
| | | adddata(form).then( |
| | | (res) => { |
| | | this.onLoad(this.page); |
| | |
| | | this.onLoad(this.page); |
| | | }, |
| | | rowUpdate(row, index, done, loading) { |
| | | if (this.useifid != 266) { |
| | | row["deptId"] = this.useifid; |
| | | } |
| | | update(row).then( |
| | | () => { |
| | | this.onLoad(this.page); |
| | |
| | | this.onLoad(this.page, this.query); |
| | | }, |
| | | rowClick(row) { |
| | | // console.log(row); |
| | | window.localStorage.setItem("paqiandata", JSON.stringify(row)); |
| | | this.$router.push({ |
| | | path: "/dispatchChild", |
| | |
| | | ...this.query, |
| | | }; |
| | | } |
| | | |
| | | console.log(values); |
| | | |
| | | if (this.useifid != 266) { |
| | | values["deptId"] = this.useifid; |
| | | } |
| | | if (this.userInfo.role_name == "公安管理员") { |
| | | values["jurisdiction"] = that.userInfo.jurisdiction; |
| | | } |
| | | getdata( |
| | | page.currentPage, |
| | | page.pageSize, |
| | | // Object.assign(params, this.query) |
| | | values |
| | | ).then((res) => { |
| | | // console.log(res); |
| | | const data = res.data.data; |
| | | this.page.total = data.total; |
| | | this.data = data.records; |
| | | for (var k in this.data) { |
| | | // this.data[k]["deptId"] = that.userInfo.dept_id; |
| | | this.data[k]["tenantName"] = that.userInfo.user_name; |
| | | // console.log(this.data[k], 123456); |
| | | if (this.data[k].num == -1) { |
| | | this.data[k].num = null; |
| | | } |
| | | } |
| | | window.localStorage.setItem("paqiandataS", JSON.stringify(this.data)); |
| | | this.loading = false; |
| | |
| | | .el-collapse-item { |
| | | padding-top: 15px !important; |
| | | } |
| | | </style> |
| | | </style> |