See999 4 years ago
parent
commit
d6b6554e04

+ 82 - 49
src/xt_pages/medicalScheduling/index.vue View File

@@ -48,7 +48,7 @@
48 48
                         </el-table-column>
49 49
                         <el-table-column :label="'周一\n(' + weekDayArr[0] + ')'" style="width:200px" align="center">
50 50
                             <template slot-scope="scope">
51
-                                <div @click="hangdleClick(scope.row,scope.$index)">
51
+                                <div @click="hangdleClick(scope.row,scope.$index,0)">
52 52
                                     <el-dropdown trigger="click" @command="changeSchedule">
53 53
                                         <span class="el-dropdown-link">
54 54
                                         {{ getClass(scope.row.user_name,1) }}<i class="el-icon-arrow-down el-icon--right"></i>
@@ -62,7 +62,7 @@
62 62
                         </el-table-column>
63 63
                         <el-table-column prop="name" :label="'周二\n(' + weekDayArr[1] + ')'" style="width:14%" align="center">
64 64
                              <template slot-scope="scope">
65
-                                <div @click="hangdleClick(scope.row,scope.$index)">
65
+                                <div @click="hangdleClick(scope.row,scope.$index,1)">
66 66
                                     <el-dropdown trigger="click" @command="changeSchedule">
67 67
                                         <span class="el-dropdown-link">
68 68
                                         {{ getClass(scope.row.user_name,2) }}<i class="el-icon-arrow-down el-icon--right"></i>
@@ -76,7 +76,7 @@
76 76
                         </el-table-column>
77 77
                         <el-table-column prop="name" :label="'周三\n(' + weekDayArr[2] + ')'" style="width:14%" align="center">
78 78
                              <template slot-scope="scope">
79
-                                <div @click="hangdleClick(scope.row,scope.$index)">
79
+                                <div @click="hangdleClick(scope.row,scope.$index,2)">
80 80
                                     <el-dropdown trigger="click" @command="changeSchedule">
81 81
                                         <span class="el-dropdown-link">
82 82
                                         {{ getClass(scope.row.user_name,3) }}<i class="el-icon-arrow-down el-icon--right"></i>
@@ -90,7 +90,7 @@
90 90
                         </el-table-column>
91 91
                         <el-table-column prop="name" :label="'周四\n(' + weekDayArr[3] + ')'" style="width:14%" align="center">
92 92
                              <template slot-scope="scope">
93
-                                <div @click="hangdleClick(scope.row,scope.$index)">
93
+                                <div @click="hangdleClick(scope.row,scope.$index,3)">
94 94
                                     <el-dropdown trigger="click" @command="changeSchedule">
95 95
                                         <span class="el-dropdown-link">
96 96
                                         {{ getClass(scope.row.user_name,4) }}<i class="el-icon-arrow-down el-icon--right"></i>
@@ -104,7 +104,7 @@
104 104
                         </el-table-column>
105 105
                         <el-table-column prop="name" :label="'周五\n(' + weekDayArr[4] + ')'" style="width:14%" align="center">
106 106
                              <template slot-scope="scope">
107
-                                <div @click="hangdleClick(scope.row,scope.$index)">
107
+                                <div @click="hangdleClick(scope.row,scope.$index,4)">
108 108
                                     <el-dropdown trigger="click" @command="changeSchedule">
109 109
                                         <span class="el-dropdown-link">
110 110
                                         {{ getClass(scope.row.user_name,5) }}<i class="el-icon-arrow-down el-icon--right"></i>
@@ -118,7 +118,7 @@
118 118
                         </el-table-column>
119 119
                         <el-table-column prop="name" :label="'周六\n(' + weekDayArr[5] + ')'" style="width:14%" align="center">
120 120
                              <template slot-scope="scope">
121
-                                <div @click="hangdleClick(scope.row,scope.$index)">
121
+                                <div @click="hangdleClick(scope.row,scope.$index,5)">
122 122
                                     <el-dropdown trigger="click" @command="changeSchedule">
123 123
                                         <span class="el-dropdown-link">
124 124
                                         {{ getClass(scope.row.user_name,6) }}<i class="el-icon-arrow-down el-icon--right"></i>
@@ -132,7 +132,7 @@
132 132
                         </el-table-column>
133 133
                         <el-table-column prop="name" :label="'周日\n(' + weekDayArr[6] + ')'" style="width:14%" align="center">
134 134
                              <template slot-scope="scope">
135
-                                <div @click="hangdleClick(scope.row,scope.$index)">
135
+                                <div @click="hangdleClick(scope.row,scope.$index,6)">
136 136
                                     <el-dropdown trigger="click" @command="changeSchedule">
137 137
                                         <span class="el-dropdown-link">
138 138
                                         {{ getClass(scope.row.user_name,0) }}<i class="el-icon-arrow-down el-icon--right"></i>
@@ -283,9 +283,13 @@ export default {
283 283
                 }
284 284
             }) 
285 285
         },
286
-        hangdleClick(val,index){
286
+        hangdleClick(val,index,num){
287 287
          console.log("val",val)
288 288
          this.docobj = val
289
+         if(this.getTimestamp(this.weekDayArr[num]) < this.timeNow){
290
+            this.$message.warning("过去日期不可以编辑")
291
+            return
292
+         }
289 293
         },
290 294
         clickThis(row, column, cell, event){
291 295
             // console.log("row",row)
@@ -492,14 +496,16 @@ export default {
492 496
                         }
493 497
                     }
494 498
                     let arr = [...newArr]
495
-                    console.log("arr=======",arr)
496
-                    this.doctorlist.map((item,index) => {
497
-                        if(!(arr[index] && item.admin_user_id == arr[index].admin_user_id)){
498
-                            arr.splice(index,0,{user_name:item.user_name,admin_user_id: item.admin_user_id,list: [],user_type:item.user_type})
499
-                        }
500
-                    })
499
+                    arr.sort(this.compare('admin_user_id'))
500
+                    this.doctorlist.sort(this.compare('admin_user_id'))
501
+                    this.doctorlist.forEach((item, index) => {
502
+                      if (arr[index] && item.admin_user_id == arr[index].admin_user_id) {
501 503
                     
502
-                    console.log("arr",arr)
504
+                      }else{
505
+                        arr.splice(index, 0, {user_name: item.user_name, admin_user_id: item.admin_user_id, list: []})
506
+                        // console.log("arr",arr)
507
+                      }
508
+                    })
503 509
                     this.tableData = arr
504 510
         
505 511
                 
@@ -561,14 +567,16 @@ export default {
561 567
                         }
562 568
                     }
563 569
                     let arr = [...newArr]
564
-
565
-                    this.doctorlist.map((item,index) => {
566
-                        if(!(arr[index] && item.admin_user_id == arr[index].admin_user_id)){
567
-                        arr.splice(index,0,{user_name:item.user_name,admin_user_id: item.admin_user_id,list: []})
568
-                        }
570
+                    arr.sort(this.compare('admin_user_id'))
571
+                    this.doctorlist.sort(this.compare('admin_user_id'))
572
+                    this.doctorlist.forEach((item, index) => {
573
+                      if (arr[index] && item.admin_user_id == arr[index].admin_user_id) {
574
+                    
575
+                      }else{
576
+                        arr.splice(index, 0, {user_name: item.user_name, admin_user_id: item.admin_user_id, list: []})
577
+                        // console.log("arr",arr)
578
+                      }
569 579
                     })
570
-
571
-                    console.log(arr)
572 580
                     this.tableData = arr
573 581
                 }
574 582
             })
@@ -605,40 +613,55 @@ export default {
605 613
 
606 614
                     if(id == 0){
607 615
                         let arr = [...newArr]
608
-                        this.doctorlist.map((item,index) => {
609
-                            if(!(arr[index] && item.admin_user_id == arr[index].admin_user_id)){
610
-                                arr.splice(index,0,{user_name:item.user_name,admin_user_id: item.admin_user_id,list: []})
611
-                            }
616
+                        arr.sort(this.compare('admin_user_id'))
617
+                        this.doctorlist.sort(this.compare('admin_user_id'))
618
+                        this.doctorlist.forEach((item, index) => {
619
+                          if (arr[index] && item.admin_user_id == arr[index].admin_user_id) {
620
+                        
621
+                          }else{
622
+                            arr.splice(index, 0, {user_name: item.user_name, admin_user_id: item.admin_user_id, list: []})
623
+                            // console.log("arr",arr)
624
+                          }
612 625
                         })
613 626
                         this.tableData = arr
614 627
                     }
615 628
                     if(id == 2){
616 629
                         let arr = [...newArr]
630
+                        arr.sort(this.compare('admin_user_id'))
631
+                        this.doctorlist.sort(this.compare('admin_user_id'))
617 632
                         let newDoctor = []
618 633
                         this.doctorlist.map(item => {
619
-                            if(item.user_type == 2){
620
-                                newDoctor.push(item)
621
-                            }
634
+                        if (item.user_type == 2) {
635
+                            newDoctor.push(item)
636
+                        }
622 637
                         })
623
-                        newDoctor.map((item,index) => {
624
-                            if(!(arr[index] && item.admin_user_id == arr[index].admin_user_id)){
625
-                                arr.splice(index,0,{user_name:item.user_name,admin_user_id: item.admin_user_id,list: []})
626
-                            }
638
+                        newDoctor.map((item, index) => {
639
+                        if (arr[index] && item.admin_user_id == arr[index].admin_user_id) {
640
+                        
641
+                          }else{
642
+                            arr.splice(index, 0, {user_name: item.user_name, admin_user_id: item.admin_user_id, list: []})
643
+                            // console.log("arr",arr)
644
+                          }
627 645
                         })
628 646
                         this.tableData = arr
629 647
                     }
630 648
                     if(id == 3){
631 649
                         let arr = [...newArr]
650
+                        arr.sort(this.compare('admin_user_id'))
651
+                        this.doctorlist.sort(this.compare('admin_user_id'))
632 652
                         let newDoctor = []
633 653
                         this.doctorlist.map(item => {
634
-                            if(item.user_type == 3){
635
-                                newDoctor.push(item)
636
-                            }
654
+                        if (item.user_type == 3) {
655
+                            newDoctor.push(item)
656
+                        }
637 657
                         })
638
-                        newDoctor.map((item,index) => {
639
-                            if(!(arr[index] && item.admin_user_id == arr[index].admin_user_id)){
640
-                                arr.splice(index,0,{user_name:item.user_name,admin_user_id: item.admin_user_id,list: []})
641
-                            }
658
+                        newDoctor.map((item, index) => {
659
+                        if (arr[index] && item.admin_user_id == arr[index].admin_user_id) {
660
+                        
661
+                          }else{
662
+                            arr.splice(index, 0, {user_name: item.user_name, admin_user_id: item.admin_user_id, list: []})
663
+                            // console.log("arr",arr)
664
+                          }
642 665
                         })
643 666
                         this.tableData = arr
644 667
                     }
@@ -680,14 +703,16 @@ export default {
680 703
                         this.tableData = newArr
681 704
                     }else{
682 705
                         let arr = [...newArr]
683
-                        this.doctorlist.map((item,index) => {
684
-                            if(!(arr[index] && item.admin_user_id == arr[index].admin_user_id)){
685
-                                arr.splice(index,0,{user_name:item.user_name,admin_user_id: item.admin_user_id,list: []})
686
-                            }
687
-                        })
706
+                        arr.sort(this.compare('admin_user_id'))
707
+                        this.doctorlist.sort(this.compare('admin_user_id'))
708
+                        this.doctorlist.forEach((item, index) => {
709
+                          if (arr[index] && item.admin_user_id == arr[index].admin_user_id) {
688 710
                         
689
-            
690
-                        console.log(arr)
711
+                          }else{
712
+                            arr.splice(index, 0, {user_name: item.user_name, admin_user_id: item.admin_user_id, list: []})
713
+                            // console.log("arr",arr)
714
+                          }
715
+                        })
691 716
                         this.tableData = arr
692 717
                     }
693 718
                 }
@@ -803,7 +828,14 @@ export default {
803 828
                 })
804 829
               }
805 830
            })
806
-        }
831
+        },
832
+        compare(property){
833
+            return function(a,b){
834
+                var value1 = a[property];
835
+                var value2 = b[property];
836
+                return value1 - value2;
837
+            }
838
+        },
807 839
     },
808 840
     created(){
809 841
         //获取医护人员
@@ -858,7 +890,7 @@ export default {
858 890
     border-radius: 4px;
859 891
 }
860 892
 .classBox{
861
-    width:25%;
893
+    width:28%;
862 894
     height: 100%;
863 895
     border: 1px solid #EBEEF5;
864 896
     .classTitle{
@@ -878,6 +910,7 @@ export default {
878 910
         flex-direction: column;
879 911
         >div>p{
880 912
             line-height: 30px;
913
+            color: rgb(48, 49, 51);
881 914
         }
882 915
         .classMainBox{
883 916
             height: 350px;

+ 17 - 6
src/xt_pages/medicalScheduling/medical_print.vue View File

@@ -121,12 +121,16 @@ export default {
121 121
                 }
122 122
               }
123 123
               let arr = [...newArr]
124
-              this.doctorlist.map((item,index) => {
125
-                if(!(arr[index] && item.admin_user_id == arr[index].admin_user_id)){
126
-                  arr.splice(index,0,{user_name:item.user_name,admin_user_id: item.admin_user_id,list: []})
127
-                }
124
+              arr.sort(this.compare('admin_user_id'))
125
+              this.doctorlist.sort(this.compare('admin_user_id'))
126
+              this.doctorlist.forEach((item, index) => {
127
+                if (arr[index] && item.admin_user_id == arr[index].admin_user_id) {
128
+              
129
+                }else{
130
+                  arr.splice(index, 0, {user_name: item.user_name, admin_user_id: item.admin_user_id, list: []})
131
+                  // console.log("arr",arr)
132
+                }
128 133
               })
129
-              console.log(arr)
130 134
               this.tableData = arr
131 135
               
132 136
             }
@@ -163,7 +167,14 @@ export default {
163 167
         }
164 168
         var currentdate = year + seperator1 + month + seperator1 + strDate;
165 169
         return currentdate;
166
-      }
170
+      },
171
+      compare(property){
172
+        return function(a,b){
173
+            var value1 = a[property];
174
+            var value2 = b[property];
175
+            return value1 - value2;
176
+        }
177
+      },
167 178
     },
168 179
     created(){
169 180
       var starttime =  this.$route.query.starttime