|  |  |  | 
|---|
|  |  |  | export default { | 
|---|
|  |  |  | name: "catalogEdit", | 
|---|
|  |  |  | computed: {}, | 
|---|
|  |  |  | props: ['platformId'], | 
|---|
|  |  |  | props: ['platformId', 'platformDeviceId'], | 
|---|
|  |  |  | created() {}, | 
|---|
|  |  |  | data() { | 
|---|
|  |  |  | let checkId = (rule, value, callback) => { | 
|---|
|  |  |  | console.log("checkId") | 
|---|
|  |  |  | console.log(rule) | 
|---|
|  |  |  | console.log(value) | 
|---|
|  |  |  | console.log(value.length) | 
|---|
|  |  |  | console.log(this.level) | 
|---|
|  |  |  | if (!value) { | 
|---|
|  |  |  | return callback(new Error('编号不能为空')); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (value.trim().length <= 8) { | 
|---|
|  |  |  | if (value.trim().length%2 !== 0) { | 
|---|
|  |  |  | return callback(new Error('行政区划编号必须为2/4/6/8位')); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (this.form.parentId !== this.platformDeviceId && this.form.parentId.length >= value.trim().length) { | 
|---|
|  |  |  | return callback(new Error('行政区划编号长度应该每次两位递增')); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | if (value.trim().length !== 20) { | 
|---|
|  |  |  | return callback(new Error('编号必须为2/4/6/8位的行政区划或20位的虚拟组织/业务分组')); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | let catalogType = value.substring(10, 13); | 
|---|
|  |  |  | console.log(catalogType) | 
|---|
|  |  |  | if (catalogType !== "215" && catalogType !== "216") { | 
|---|
|  |  |  | return callback(new Error('编号错误,业务分组11-13位为215,虚拟组织11-13位为216')); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (catalogType === "216") { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (this.form.parentId !== this.platformDeviceId){ | 
|---|
|  |  |  | if (this.form.parentId.length <= 8) { | 
|---|
|  |  |  | return callback(new Error('编号错误,建立虚拟组织前必须先建立业务分组(11-13位为215)')); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (catalogType === "215") { | 
|---|
|  |  |  | if (this.form.parentId.length === "215") { | 
|---|
|  |  |  | return callback(new Error('编号错误,业务分组下只能建立虚拟组织(11-13位为216)')); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | callback(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return { | 
|---|
|  |  |  | submitCallback: null, | 
|---|
|  |  |  | showDialog: false, | 
|---|
|  |  |  | isLoging: false, | 
|---|
|  |  |  | isEdit: false, | 
|---|
|  |  |  | level: 0, | 
|---|
|  |  |  | form: { | 
|---|
|  |  |  | id: null, | 
|---|
|  |  |  | name: null, | 
|---|
|  |  |  | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | rules: { | 
|---|
|  |  |  | name: [{ required: true, message: "请输入名称", trigger: "blur" }], | 
|---|
|  |  |  | id: [{ required: true, message: "请输入ID", trigger: "blur" }] | 
|---|
|  |  |  | id: [{ required: true, trigger: "blur",validator: checkId  }] | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | methods: { | 
|---|
|  |  |  | openDialog: function (isEdit, id, name, parentId, callback) { | 
|---|
|  |  |  | openDialog: function (isEdit, id, name, parentId, level, callback) { | 
|---|
|  |  |  | console.log("parentId: " + parentId) | 
|---|
|  |  |  | console.log(this.form) | 
|---|
|  |  |  | this.isEdit = isEdit; | 
|---|
|  |  |  | 
|---|
|  |  |  | this.form.parentId = parentId; | 
|---|
|  |  |  | this.showDialog = true; | 
|---|
|  |  |  | this.submitCallback = callback; | 
|---|
|  |  |  | this.level = level; | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | onSubmit: function () { | 
|---|
|  |  |  | console.log("onSubmit"); | 
|---|
|  |  |  | 
|---|
|  |  |  | method:"post", | 
|---|
|  |  |  | url:`/api/platform/catalog/${!this.isEdit? "add":"edit"}`, | 
|---|
|  |  |  | data: this.form | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | .then((res)=> { | 
|---|
|  |  |  | }).then((res)=> { | 
|---|
|  |  |  | if (res.data.code === 0) { | 
|---|
|  |  |  | if (this.submitCallback)this.submitCallback(this.form) | 
|---|
|  |  |  | }else { | 
|---|