See999 4 gadus atpakaļ
vecāks
revīzija
a7f3eb89a8
1 mainītis faili ar 75 papildinājumiem un 51 dzēšanām
  1. 75 51
      src/xt_pages/medicalScheduling/index.vue

+ 75 - 51
src/xt_pages/medicalScheduling/index.vue Parādīt failu

@@ -43,15 +43,18 @@
43 43
                     <el-table :data="tableData" border :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)', color: '#606266'}" :row-style="{ color: '#303133' }"  @cell-click="clickThis" :cell-style="tableCellStyle">
44 44
                         <el-table-column prop="name" label="医护姓名" style="width:16%" align="center">
45 45
                             <template slot-scope="scope">
46
-                                 {{scope.row.user_name}}
46
+                                <span>{{scope.row.user_name}}</span>
47 47
                             </template>
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 51
                                 <div @click="hangdleClick(scope.row,scope.$index,0)">
52 52
                                     <el-dropdown trigger="click" @command="changeSchedule">
53
-                                        <span class="el-dropdown-link">
54
-                                        {{ getClass(scope.row.user_name,1) }}<i v-if="getTimestamp(weekDayArr[0])>=timeNow && scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
53
+                                        <span class="el-dropdown-link" v-if='getClassAttributes(scope.row.user_name,1) == 2' style="color:red">
54
+                                            <span>{{ getClass(scope.row.user_name,1) }}</span><i v-if="getTimestamp(weekDayArr[0])>=timeNow && scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
55
+                                        </span>
56
+                                        <span class="el-dropdown-link" v-else>
57
+                                            <span>{{ getClass(scope.row.user_name,1) }}</span><i v-if="getTimestamp(weekDayArr[0])>=timeNow && scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
55 58
                                         </span>
56 59
                                         <el-dropdown-menu slot="dropdown" >
57 60
                                             <el-dropdown-item  :command="item.id" icon="el-icon-plus" :disabled="getTimestamp(weekDayArr[0])<timeNow?true:false" v-for="(item,index) in schedulelist" :key="index">{{item.class_name}}</el-dropdown-item>
@@ -64,8 +67,11 @@
64 67
                              <template slot-scope="scope">
65 68
                                 <div @click="hangdleClick(scope.row,scope.$index,1)">
66 69
                                     <el-dropdown trigger="click" @command="changeSchedule">
67
-                                        <span class="el-dropdown-link">
68
-                                        {{ getClass(scope.row.user_name,2) }}<i v-if="getTimestamp(weekDayArr[1])>=timeNow&&scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
70
+                                        <span class="el-dropdown-link" v-if='getClassAttributes(scope.row.user_name,2) == 2' style="color:red">
71
+                                            <span>{{ getClass(scope.row.user_name,2) }}</span><i v-if="getTimestamp(weekDayArr[1])>=timeNow&&scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
72
+                                        </span>
73
+                                        <span class="el-dropdown-link" v-else>
74
+                                            <span>{{ getClass(scope.row.user_name,2) }}</span><i v-if="getTimestamp(weekDayArr[1])>=timeNow&&scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
69 75
                                         </span>
70 76
                                         <el-dropdown-menu slot="dropdown" >
71 77
                                             <el-dropdown-item  :command="item.id" icon="el-icon-plus" :disabled="getTimestamp(weekDayArr[1])<timeNow?true:false" v-for="(item,index) in schedulelist" :key="index">{{item.class_name}}</el-dropdown-item>
@@ -78,8 +84,11 @@
78 84
                              <template slot-scope="scope">
79 85
                                 <div @click="hangdleClick(scope.row,scope.$index,2)">
80 86
                                     <el-dropdown trigger="click" @command="changeSchedule">
81
-                                        <span class="el-dropdown-link">
82
-                                        {{ getClass(scope.row.user_name,3) }}<i v-if="getTimestamp(weekDayArr[2])>=timeNow&&scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
87
+                                        <span class="el-dropdown-link" v-if='getClassAttributes(scope.row.user_name,3) == 2' style="color:red">
88
+                                            <span>{{ getClass(scope.row.user_name,3) }}</span><i v-if="getTimestamp(weekDayArr[2])>=timeNow&&scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
89
+                                        </span>
90
+                                        <span class="el-dropdown-link" v-else>
91
+                                            <span>{{ getClass(scope.row.user_name,3) }}</span><i v-if="getTimestamp(weekDayArr[2])>=timeNow&&scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
83 92
                                         </span>
84 93
                                         <el-dropdown-menu slot="dropdown" >
85 94
                                             <el-dropdown-item  :command="item.id" icon="el-icon-plus" :disabled="getTimestamp(weekDayArr[2])<timeNow?true:false" v-for="(item,index) in schedulelist" :key="index">{{item.class_name}}</el-dropdown-item>
@@ -92,8 +101,11 @@
92 101
                              <template slot-scope="scope">
93 102
                                 <div @click="hangdleClick(scope.row,scope.$index,3)">
94 103
                                     <el-dropdown trigger="click" @command="changeSchedule">
95
-                                        <span class="el-dropdown-link">
96
-                                        {{ getClass(scope.row.user_name,4) }}<i v-if="getTimestamp(weekDayArr[3])>=timeNow&&scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
104
+                                        <span class="el-dropdown-link" v-if='getClassAttributes(scope.row.user_name,4) == 2' style="color:red">
105
+                                            <span>{{ getClass(scope.row.user_name,4) }}</span><i v-if="getTimestamp(weekDayArr[3])>=timeNow&&scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
106
+                                        </span>
107
+                                        <span class="el-dropdown-link" v-else>
108
+                                            <span>{{ getClass(scope.row.user_name,4) }}</span><i v-if="getTimestamp(weekDayArr[3])>=timeNow&&scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
97 109
                                         </span>
98 110
                                         <el-dropdown-menu slot="dropdown" >
99 111
                                             <el-dropdown-item  :command="item.id" icon="el-icon-plus" :disabled="getTimestamp(weekDayArr[3])<timeNow?true:false" v-for="(item,index) in schedulelist" :key="index">{{item.class_name}}</el-dropdown-item>
@@ -106,8 +118,11 @@
106 118
                              <template slot-scope="scope">
107 119
                                 <div @click="hangdleClick(scope.row,scope.$index,4)">
108 120
                                     <el-dropdown trigger="click" @command="changeSchedule">
109
-                                        <span class="el-dropdown-link">
110
-                                        {{ getClass(scope.row.user_name,5) }}<i v-if="getTimestamp(weekDayArr[4])>=timeNow&&scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
121
+                                        <span class="el-dropdown-link" v-if='getClassAttributes(scope.row.user_name,5) == 2' style="color:red">
122
+                                            <span>{{ getClass(scope.row.user_name,5) }}</span><i v-if="getTimestamp(weekDayArr[4])>=timeNow&&scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
123
+                                        </span>
124
+                                        <span class="el-dropdown-link" v-else>
125
+                                            <span>{{ getClass(scope.row.user_name,5) }}</span><i v-if="getTimestamp(weekDayArr[4])>=timeNow&&scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
111 126
                                         </span>
112 127
                                         <el-dropdown-menu slot="dropdown" >
113 128
                                             <el-dropdown-item  :command="item.id" icon="el-icon-plus" :disabled="getTimestamp(weekDayArr[4])<timeNow?true:false" v-for="(item,index) in schedulelist" :key="index">{{item.class_name}}</el-dropdown-item>
@@ -120,8 +135,11 @@
120 135
                              <template slot-scope="scope">
121 136
                                 <div @click="hangdleClick(scope.row,scope.$index,5)">
122 137
                                     <el-dropdown trigger="click" @command="changeSchedule">
123
-                                        <span class="el-dropdown-link">
124
-                                        {{ getClass(scope.row.user_name,6) }}<i v-if="getTimestamp(weekDayArr[5])>=timeNow&&scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
138
+                                        <span class="el-dropdown-link" v-if='getClassAttributes(scope.row.user_name,6) == 2' style="color:red">
139
+                                            <span>{{ getClass(scope.row.user_name,6) }}</span><i v-if="getTimestamp(weekDayArr[5])>=timeNow&&scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
140
+                                        </span>
141
+                                        <span class="el-dropdown-link" v-else>
142
+                                            <span>{{ getClass(scope.row.user_name,6) }}</span><i v-if="getTimestamp(weekDayArr[5])>=timeNow&&scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
125 143
                                         </span>
126 144
                                         <el-dropdown-menu slot="dropdown" >
127 145
                                             <el-dropdown-item  :command="item.id" icon="el-icon-plus" :disabled="getTimestamp(weekDayArr[5])<timeNow?true:false" v-for="(item,index) in schedulelist" :key="index">{{item.class_name}}</el-dropdown-item>
@@ -134,8 +152,11 @@
134 152
                              <template slot-scope="scope">
135 153
                                 <div @click="hangdleClick(scope.row,scope.$index,6)">
136 154
                                     <el-dropdown trigger="click" @command="changeSchedule">
137
-                                        <span class="el-dropdown-link">
138
-                                        {{ getClass(scope.row.user_name,0) }}<i v-if="getTimestamp(weekDayArr[6])>=timeNow&&scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
155
+                                        <span class="el-dropdown-link" v-if='getClassAttributes(scope.row.user_name,0) == 2' style="color:red">
156
+                                            <span>{{ getClass(scope.row.user_name,0) }}</span><i v-if="getTimestamp(weekDayArr[6])>=timeNow&&scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
157
+                                        </span>
158
+                                        <span class="el-dropdown-link" v-else>
159
+                                            <span>{{ getClass(scope.row.user_name,0) }}</span><i v-if="getTimestamp(weekDayArr[6])>=timeNow&&scope.row.admin_user_id!=1000000?true:false" class="el-icon-arrow-down el-icon--right"></i>
139 160
                                         </span>
140 161
                                         <el-dropdown-menu slot="dropdown" >
141 162
                                             <el-dropdown-item  :command="item.id" icon="el-icon-plus" :disabled="getTimestamp(weekDayArr[6])<timeNow?true:false" v-for="(item,index) in schedulelist" :key="index">{{item.class_name}}</el-dropdown-item>
@@ -252,7 +273,8 @@ export default {
252 273
         search(){},
253 274
         toPrint(){
254 275
             this.$router.push({
255
-                path: '/medicalScheduling/schedule/print?starttime='+this.getTimestamp(this.weekDayArr[0])+"&endtime="+this.getTimestamp(this.weekDayArr[6])+"&weekArr="+ this.weekDayArr+'&typeValue='+this.typeValue,
276
+                path: '/medicalScheduling/schedule/print?starttime='+this.getTimestamp(this.weekDayArr[0])+"&endtime="+this.getTimestamp(this.weekDayArr[6])+"&weekArr="+ this.weekDayArr,
277
+                // query: { date: date }
256 278
             })
257 279
         },
258 280
         getDoctorList(){
@@ -453,7 +475,7 @@ export default {
453 475
             getStaffScheduleList(params).then(response=>{
454 476
                 if(response.data.state == 1){
455 477
                     var staffList =  response.data.data.staffList
456
-                    console.log("stafflist",staffList)                
478
+                    
457 479
                     var sevenStr = ""
458 480
                     var oneStr = ""
459 481
                     var twoStr = ""
@@ -653,13 +675,6 @@ export default {
653 675
                         sixStr = strSix
654 676
                      }
655 677
                     }
656
-                    console.log("周一",oneStr)
657
-                    console.log("周er",twoStr)
658
-                    console.log("周三",threeStr)
659
-                    console.log("周四",fourStr)
660
-                    console.log("周五",fiveStr)
661
-                    console.log("周六",sixStr)
662
-                    console.log("周日",sevenStr)
663 678
                     let tempArr = [], newArr = []
664 679
                     for (let i = 0; i < staffList.length; i++) {
665 680
                         if (tempArr.indexOf(staffList[i].user_name) === -1) {
@@ -667,13 +682,14 @@ export default {
667 682
                                 user_name: staffList[i].user_name,
668 683
                                 admin_user_id:staffList[i].admin_user_id,
669 684
                                 user_type:staffList[i].doctor_type,
670
-                                list: [{class_name:staffList[i].class_name,schedule_week:staffList[i].schedule_week}]
685
+                                user_type:staffList[i].doctor_type,
686
+                                list: [{class_name:staffList[i].class_name,admin_user_id:staffList[i].admin_user_id,schedule_week:staffList[i].schedule_week,user_type:staffList[i].doctor_type,class_attributes:staffList[i].class_attributes}]
671 687
                             })
672 688
                             tempArr.push(staffList[i].user_name);
673 689
                         } else {
674 690
                             for (let j = 0; j < newArr.length; j++) {
675 691
                                 if (newArr[j].user_name == staffList[i].user_name) {
676
-                                    newArr[j].list.push({class_name:staffList[i].class_name,admin_user_id:staffList[i].admin_user_id,schedule_week:staffList[i].schedule_week,user_type:staffList[i].doctor_type})
692
+                                    newArr[j].list.push({class_name:staffList[i].class_name,admin_user_id:staffList[i].admin_user_id,schedule_week:staffList[i].schedule_week,user_type:staffList[i].doctor_type,class_attributes:staffList[i].class_attributes})
677 693
                                 }
678 694
                             }
679 695
                         }
@@ -699,13 +715,12 @@ export default {
699 715
                     arr2.push({class_name:sixStr,schedule_week:6})
700 716
                     arr2.push({class_name:zeroStr,schedule_week:0})
701 717
                     var obj = {}
702
-                     obj.admin_user_id = "1000000"
703
-                     obj.user_name = "合计"
704
-                     obj.user_type = 10
705
-                     obj.list = arr2
706
-                     arr.push(obj)
707
-                     console.log("arr------",arr)
708
-                    this.tableData = []
718
+                    obj.admin_user_id = "1000000"
719
+                    obj.user_name = "合计"
720
+                    obj.user_type = 10
721
+                    obj.list = arr2
722
+                    arr.push(obj)
723
+                    console.log('arr',arr)
709 724
                     this.tableData = arr
710 725
         
711 726
                 
@@ -732,6 +747,25 @@ export default {
732 747
             }
733 748
         
734 749
         },
750
+        getClassAttributes(name,index){
751
+            if(name != undefined){
752
+                let newClass = '';
753
+                this.tableData.map(item => {
754
+                if(item.user_name == name){
755
+                    if(item.list){
756
+                        item.list.map(it => {
757
+                            if(it.schedule_week == index){
758
+                                newClass = it.class_attributes
759
+                            }
760
+                        })
761
+                    }
762
+                    
763
+                }
764
+                })
765
+                return newClass
766
+            }
767
+        
768
+        },
735 769
 
736 770
      unique(arr) { 
737 771
         const res = new Map();
@@ -953,13 +987,13 @@ export default {
953 987
                             user_name: staffList[i].user_name,
954 988
                             admin_user_id:staffList[i].admin_user_id,
955 989
                             user_type:staffList[i].doctor_type,
956
-                            list: [{class_name:staffList[i].class_name,schedule_week:staffList[i].schedule_week}]
990
+                            list: [{class_name:staffList[i].class_name,admin_user_id:staffList[i].admin_user_id,schedule_week:staffList[i].schedule_week,user_type:staffList[i].doctor_type,class_attributes:staffList[i].class_attributes}]
957 991
                         })
958 992
                         tempArr.push(staffList[i].user_name);
959 993
                         } else {
960 994
                         for (let j = 0; j < newArr.length; j++) {
961 995
                             if (newArr[j].user_name == staffList[i].user_name) {
962
-                            newArr[j].list.push({class_name:staffList[i].class_name,admin_user_id:staffList[i].admin_user_id,schedule_week:staffList[i].schedule_week, user_type:staffList[i].doctor_type,})
996
+                            newArr[j].list.push({class_name:staffList[i].class_name,admin_user_id:staffList[i].admin_user_id,schedule_week:staffList[i].schedule_week,user_type:staffList[i].doctor_type,class_attributes:staffList[i].class_attributes})
963 997
                             }
964 998
                         }
965 999
                         }
@@ -1099,13 +1133,13 @@ export default {
1099 1133
                             newArr.push({
1100 1134
                                 user_name: staffList[i].user_name,
1101 1135
                                 admin_user_id:staffList[i].admin_user_id,
1102
-                                list: [{class_name:staffList[i].class_name,schedule_week:staffList[i].schedule_week}]
1136
+                                list: [{class_name:staffList[i].class_name,admin_user_id:staffList[i].admin_user_id,schedule_week:staffList[i].schedule_week,user_type:staffList[i].doctor_type,class_attributes:staffList[i].class_attributes}]
1103 1137
                             })
1104 1138
                             tempArr.push(staffList[i].user_name);
1105 1139
                         } else {
1106 1140
                             for (let j = 0; j < newArr.length; j++) {
1107 1141
                                 if (newArr[j].user_name == staffList[i].user_name) {
1108
-                                    newArr[j].list.push({class_name:staffList[i].class_name,admin_user_id:staffList[i].admin_user_id,schedule_week:staffList[i].schedule_week})
1142
+                                    newArr[j].list.push({class_name:staffList[i].class_name,admin_user_id:staffList[i].admin_user_id,schedule_week:staffList[i].schedule_week,user_type:staffList[i].doctor_type,class_attributes:staffList[i].class_attributes})
1109 1143
                                 }
1110 1144
                             }
1111 1145
                         }
@@ -1125,7 +1159,7 @@ export default {
1125 1159
                             // console.log("arr",arr)
1126 1160
                           }
1127 1161
                         })
1128
-                        // console.log("arr",arr)
1162
+                        console.log("arr",arr)
1129 1163
                         this.tableData = arr
1130 1164
                     }
1131 1165
                 }
@@ -1242,21 +1276,11 @@ export default {
1242 1276
             }
1243 1277
         },
1244 1278
        tableCellStyle (row, rowIndex, column) {
1245
-        // console.log("row",row.column.label)
1246 1279
          var week = (row.column.label).split('');
1280
+         var weeks = week[4]+week[5]+week[6]+week[7]+week[8]+week[9]+week[10]+week[11]+week[12]
1247 1281
         //  console.log("week",week)
1248
-         var weeks = ""
1249
-         if (week.length == 14) {
1250
-            weeks = week[4]+week[5]+week[6]+week[7]+week[8]+week[9]+week[10]+week[11]+week[12]
1251
-         }
1252
-         if(week.length == 13){
1253
-           weeks = week[4]+week[5]+week[6]+week[7]+week[8]+week[9]+week[10]+week[11]
1254
-         }
1255
-        //  console.log("week",week)
1256
-        // console.log("weeks",weeks)
1282
+        //  console.log("weeks",weeks)
1257 1283
          var weekdate =  this.getTimestamp(weeks)
1258
-        //  console.log("日期",weekdate)
1259
-        //  console.log("当前日期",this.timeNow)
1260 1284
          if(weekdate  < this.timeNow){
1261 1285
            return 'background-color:#e5e5e5;'
1262 1286
           }
@@ -1344,7 +1368,7 @@ export default {
1344 1368
 </style>
1345 1369
 <style lang="scss">
1346 1370
 .schedulingTable{
1347
-    .el-table th .cell {
1371
+    .el-table .cell {
1348 1372
         white-space: pre-line;/*保留换行符*/
1349 1373
     }
1350 1374
 }