Quellcode durchsuchen

修改作息配置

凉纪 vor 2 Jahren
Ursprung
Commit
5d1460a4fb

+ 23 - 13
src/components/orgTreeSelect/index.vue

@@ -1,12 +1,12 @@
 <template>
   <!--  弹出框  -->
-  <el-popover placement="bottom-start" :disabled="disabled" v-model="visible">
-    <!--  选中的值  -->
-    <div slot="reference" class="tags-box">
+  <el-popover placement="bottom-start" trigger="hover" :disabled="disabled" v-model="visible">
+    <!--  tag盒子  -->
+    <div slot="reference" class="tags-box" :class="!disabled|| 'tags-box-disabled'">
+      <span v-show="sNodeList.length > 0" class="tags-num">{{sNodeList.length}}</span>
       <i v-if="sNodeList.length > 0 && !disabled" class="el-icon-circle-close close-icon" @click="clear"></i>
       <el-tag type="success" v-for="v in sNodeList" :key="v.id">{{ v.name }}</el-tag>
     </div>
-
     <!--  文本框    -->
     <el-input style="width: 100%; margin-bottom: 20px" v-model="queryForm.value" @input="serchTreeHandler"
       placeholder="请输入查询机构名称"></el-input>
@@ -131,7 +131,6 @@ export default {
           let arr = [];
           this.defaultNode.forEach(v => {
             let node = this.$refs.tree.getNode(v);
-            debugger
             arr.push(node.data)
           })
           this.sNodeList = arr;
@@ -288,7 +287,7 @@ export default {
   border: 1px solid #dcdfe6;
   color: #606266;
   outline: 0;
-  padding: 0 15px 0 5px;
+  padding: 0 40px 0 5px;
   width: 100%;
   min-height: 40px;
   max-height: 40px;
@@ -301,20 +300,31 @@ export default {
   > span {
     margin: 5px 10px;
   }
-  &:hover {
-    .close-icon {
-      display: block;
-      color: #666;
-    }
-  }
+  //&:hover {
+  //  .close-icon {
+  //    display: block;
+  //    color: #666;
+  //  }
+  //}
   .close-icon {
     position: absolute;
     top: 30%;
     right: 5px;
-    display: none;
     cursor: pointer;
+    &:hover {
+      color: #aaa;
+    }
   }
 }
+.tags-box-disabled{
+  cursor: default;
+}
+.tags-num{
+  color:#ccc;
+  position: absolute;
+  right: 20px;
+  top:-4px;
+}
 .tree-box {
   margin-top: 20px;
   max-height: 300px;

+ 1 - 2
src/views/system/workTimeSet/dialog.add.vue

@@ -319,9 +319,8 @@ export default {
           return;
         }
       }
-      let orgIdList = this.orgIdList.map(v=>{return v.id});
       let data = {
-        orgIdList,
+        orgIdList:this.orgIdList,
         workTimeList:workTimeList
       }
       addWorkTimeDay(data).then(res=>{

+ 9 - 32
src/views/system/workTimeSet/dialog.template.vue

@@ -10,15 +10,15 @@
             label-position="left">
           <el-form-item>
             <span slot="label"> <span style="color: red"> * </span>机构 </span>
-            <org-tree-select v-model="data.orgIdList" :disabled="data.disabled" ></org-tree-select>
+            <org-tree-select v-model="formData.orgIds" :disabled="disabled" ></org-tree-select>
           </el-form-item>
           <el-form-item >
             <span slot="label"> <span style="color: red"> * </span>生效日期 </span>
             <el-date-picker
               v-model="formData.effectiveDate"
               value-format="yyyy-MM-dd hh:mm:ss"
-              :disabled="data.disabled"
-              :clearable="!data.disabled"
+              :disabled="disabled"
+              :clearable="!disabled"
               :picker-options="startDatepickerOptions"
               popper-class="no-atTheMoment"
               type="date"
@@ -172,14 +172,11 @@ export default {
       id:0,
       orgId:null,
       formData: {
-        orgIdList: [],
+        orgIds:[],
         dayOfWeeks: json,
         effectiveDate:null,
       },
-      data: {
-        orgIdList: [],
-        disabled: false,
-      },
+      disabled: false,
       startDatepickerOptions: {
         disabledDate(time) {
           const date = new Date();
@@ -223,12 +220,10 @@ export default {
       this.isShow = true;
       this.id = row.id;
       this.orgId = row.orgId;
+      this.disabled = true;
       this.getData();
     },
     onSubmit() {
-      this.formData.orgIds = this.data.orgIdList.map(v=>{
-        return v.id
-      });
       if (this.formData.orgIds.length < 1) {
         this.$message.error("机构不能为空");
         return;
@@ -284,25 +279,8 @@ export default {
     async getData() {
       queryInfoById({id:this.id}).then(res=>{
         this.formData = res.data;
-        if (this.id != 0) {
-          this.tagsList = [
-            {
-              id:res.data.orgId,
-              name:res.data.orgName
-            }
-          ];
-          this.data.disabled = true;
-          this.data.orgIdList = [this.formData.orgId];
-          if (this.orgId) {
-            this.data.orgIdList = [this.formData.orgId];
-          }
-        } else {
-          this.data.orgIdList = [];
-          this.data.disabled= false;
-        }
+        this.formData.orgIds = [res.data.orgId];
       })
-
-      // this.data.orgIdList =[];
     },
     onEnableChange(workTime) {
       if (!workTime.isWorkday) {
@@ -317,14 +295,13 @@ export default {
     handleClose() {
       this.id=null;
       this.formData = {
-        orgIdList: [],
+        orgIds: [],
         dayOfWeeks: json,
         effectiveDate: null,
         checkDataResult:null,
       };
       this.tagsList = [];
-      this.data.orgIdList = [];
-      this.data.disabled= false;
+      this.disabled= false;
       this.checkData=null;
       this.checkMsg=null;
       this.centerDialogVisiblea=false;