safecheck-client 3.0.33-16 → 3.0.33-160

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (165) hide show
  1. package/index.html +6 -2
  2. package/package.json +133 -133
  3. package/src/App.vue +2 -2
  4. package/src/components/Util/ImgSelfSafePlus.vue +19 -10
  5. package/src/components/Util.js +7 -0
  6. package/src/components/android/AreaPlan.vue +2 -1
  7. package/src/components/android/CurrentCreate.vue +1 -1
  8. package/src/components/android/ImgSelfAndroid.vue +1 -1
  9. package/src/components/android/SafecheckDevices.vue +5 -1
  10. package/src/components/android/SafecheckOrderV.vue +18 -12
  11. package/src/components/map/checkScreen.vue +27 -21
  12. package/src/components/paper/PlanChooser.vue +4 -2
  13. package/src/components/pc/NewCheckpaper.vue +11 -8
  14. package/src/components/planmanage/PlanManage.vue +14 -4
  15. package/src/components/planmanage/checkPlanList.vue +2 -1
  16. package/src/components/planmanage/checkUserList.vue +2 -0
  17. package/src/components/report/HiddenSituation.vue +3 -3
  18. package/src/components/rongcheng/AspiratedPaperFeedbackm.vue +28 -2
  19. package/src/components/rongcheng/AspiratedPaperMessage.vue +1 -1
  20. package/src/components/rongcheng/DefectPaper.vue +1 -1
  21. package/src/components/rongcheng/PaperListNPSQ.vue +36 -1
  22. package/src/components/rongcheng/PaperListSQ.vue +32 -11
  23. package/src/components/rongcheng/PhoneUpUserinfo.vue +939 -802
  24. package/src/components/rongcheng/SafecheckOrderV.vue +1 -1
  25. package/src/components/rongcheng/report/CheckPlanAreaList.vue +1 -3
  26. package/src/components/safecheckNew/PaperList.vue +785 -0
  27. package/src/components/safecheckNew/android/AddPlanItem.vue +419 -0
  28. package/src/components/safecheckNew/android/AreaPlan.vue +561 -0
  29. package/src/components/safecheckNew/android/CurrentCreate.vue +1050 -0
  30. package/src/components/safecheckNew/android/Recheck.vue +379 -0
  31. package/src/components/safecheckNew/android/SafecheckDevices.vue +1400 -0
  32. package/src/components/safecheckNew/android/SafecheckOrderV.vue +2692 -0
  33. package/src/filiale/Util.js +5 -0
  34. package/src/filiale/baiyin/android/AndroidDefectDeal.vue +633 -0
  35. package/src/filiale/baiyin/android.js +10 -0
  36. package/src/filiale/baiyin/pc/PaperList.vue +790 -0
  37. package/src/filiale/baiyin/pc/PlanChooser.vue +167 -0
  38. package/src/filiale/baiyin/pc/PlanManage.vue +834 -0
  39. package/src/filiale/baiyin/pc/RightTreeSafe.vue +348 -0
  40. package/src/filiale/baiyin/pc/RoleSelector.vue +160 -0
  41. package/src/filiale/baiyin/pc.js +17 -0
  42. package/src/filiale/bayan/android/AddPlanItem.vue +7 -2
  43. package/src/filiale/bayan/android/CheckPlanDown.vue +249 -0
  44. package/src/filiale/bayan/android/SafecheckOrderV.vue +20 -7
  45. package/src/filiale/bayan/android/SafecheckUserInfo.vue +566 -514
  46. package/src/filiale/bayan/android.js +1 -0
  47. package/src/filiale/bayan/pc/CheckDetail.vue +205 -0
  48. package/src/filiale/bayan/pc/CheckPlan.vue +59 -0
  49. package/src/filiale/bayan/pc/CheckPlanAreaList.vue +565 -0
  50. package/src/filiale/bayan/pc/CheckSearchUser.vue +1110 -0
  51. package/src/filiale/bayan/pc/DefectListNew.vue +597 -0
  52. package/src/filiale/bayan/pc/DefectMainNew.vue +63 -0
  53. package/src/filiale/bayan/pc/DefectPaperNew.vue +1218 -0
  54. package/src/filiale/bayan/pc/DeviceChange.vue +1838 -0
  55. package/src/filiale/bayan/pc/HiddenSituation.vue +256 -0
  56. package/src/filiale/bayan/pc/NewCheckpaper.vue +31 -1
  57. package/src/filiale/bayan/pc/PaperList.vue +119 -12
  58. package/src/filiale/bayan/pc/PlanManage.vue +29 -8
  59. package/src/filiale/bayan/pc/SelectCheckPlan.vue +333 -0
  60. package/src/filiale/bayan/pc.js +7 -0
  61. package/src/filiale/dexin/android/SafecheckOrderV.vue +123 -24
  62. package/src/filiale/fugou/android/SafecheckOrderV.vue +2796 -0
  63. package/src/filiale/fugou/android.js +2 -1
  64. package/src/filiale/fugou/pc/AddToCheckBook.vue +13 -14
  65. package/src/filiale/fugou/pc/CheckBook.vue +2 -0
  66. package/src/filiale/fugou/pc/CheckBookEntry.vue +2 -6
  67. package/src/filiale/fugou/pc/CheckBookList.vue +2 -2
  68. package/src/filiale/fugou/pc/CheckBookSearchUser.vue +35 -18
  69. package/src/filiale/fugou/pc/CheckBookUser.vue +102 -45
  70. package/src/filiale/fugou/pc/DefectPaperNew.vue +10 -6
  71. package/src/filiale/fugou/pc/PaperDefectMain.vue +12 -6
  72. package/src/filiale/fugou/pc/PaperList.vue +14 -6
  73. package/src/filiale/fugou/pc/PlanManage.vue +62 -8
  74. package/src/filiale/fugou/pc/checkUserList.vue +36 -35
  75. package/src/filiale/hanzhong/pc/CheckHiddenDanger.vue +15 -5
  76. package/src/filiale/hanzhong/pc/CheckSafeDetail.vue +12 -2
  77. package/src/filiale/hanzhong/pc/CheckSafeStatus.vue +12 -3
  78. package/src/filiale/hanzhong/pc/CheckSearchUser.vue +13 -0
  79. package/src/filiale/hanzhong/pc/CheckUserList.vue +30 -11
  80. package/src/filiale/hanzhong/pc/CheckerSafeDetail.vue +11 -2
  81. package/src/filiale/jingyang/pc/ReportCheckItemList.vue +543 -0
  82. package/src/filiale/jingyang/pc.js +1 -0
  83. package/src/filiale/kelai/pc/CheckPlanAreaList.vue +2 -22
  84. package/src/filiale/liaoyuan/pc/checkPlanList.vue +373 -0
  85. package/src/filiale/liaoyuan/pc.js +2 -1
  86. package/src/filiale/qianneng/pc/PaperList.vue +31 -1
  87. package/src/filiale/qingjian/android/PhoneUpUserinfo.vue +7 -5
  88. package/src/filiale/qingjian/android/SafecheckOrderV.vue +66 -1
  89. package/src/filiale/rongchuang/android/SafecheckDevices.vue +468 -748
  90. package/src/filiale/rongchuang/android/SafecheckOrderV.vue +984 -1234
  91. package/src/filiale/rongchuang/android.js +1 -0
  92. package/src/filiale/rongchuang/pc/NewCheckpaper.vue +294 -305
  93. package/src/filiale/rongchuang/pc/PaperList.vue +812 -0
  94. package/src/filiale/rongchuang/pc.js +1 -0
  95. package/src/filiale/siyang/android/PhoneRecordInfo.vue +214 -0
  96. package/src/filiale/siyang/android/SafecheckOrderV.vue +2796 -0
  97. package/src/filiale/siyang/android/SafecheckUserInfo.vue +789 -0
  98. package/src/filiale/siyang/android.js +11 -0
  99. package/src/filiale/siyang/pc/PaperDefectMain.vue +864 -0
  100. package/src/filiale/siyang/pc/PaperList.vue +834 -0
  101. package/src/filiale/siyang/pc/PlanManage.vue +839 -0
  102. package/src/filiale/siyang/pc/checkUserList.vue +781 -0
  103. package/src/filiale/siyang/pc.js +15 -0
  104. package/src/filiale/tianke/pc/checkScreen.vue +36 -31
  105. package/src/filiale/tongchuan/android/PhoneUpUserinfo.vue +60 -2
  106. package/src/filiale/tongchuan/android/SafecheckOrderV.vue +2 -3
  107. package/src/filiale/tongchuan/pc/NewCheckpaper.vue +1 -1
  108. package/src/filiale/tongchuan/pc/checkUserList.vue +2 -2
  109. package/src/filiale/weinan/android/PaperFeedback.vue +8 -8
  110. package/src/filiale/weinan/android/SafecheckDevices.vue +6 -2
  111. package/src/filiale/weinan/android/SafecheckOrderV.vue +16 -2
  112. package/src/filiale/weinan/android/SafecheckUserInfo.vue +7 -2
  113. package/src/filiale/weinan/pc/CheckSearchUser.vue +1078 -0
  114. package/src/filiale/weinan/pc/DefectListNew.vue +617 -0
  115. package/src/filiale/weinan/pc/DefectMainNew.vue +1 -1
  116. package/src/filiale/weinan/pc/DefectPaperNew.vue +7 -1
  117. package/src/filiale/weinan/pc.js +2 -0
  118. package/src/filiale/wenxi/android/CurrentCreate.vue +1055 -1055
  119. package/src/filiale/wenxi/android/PhoneUpUserinfo.vue +1 -1
  120. package/src/filiale/wenxi/android/SafecheckUserInfo.vue +85 -63
  121. package/src/filiale/wenxi/pc/NewCheckpaper.vue +1358 -1358
  122. package/src/filiale/wenxi/pc/PaperDefectMain.vue +790 -790
  123. package/src/filiale/yangchunboneng/android/AddPlanItem.vue +46 -1
  124. package/src/filiale/yangchunboneng/android/CurrentCreate.vue +45 -4
  125. package/src/filiale/yangchunboneng/android/DailyworkloadQuery.vue +2 -2
  126. package/src/filiale/yangchunboneng/android/NewCheckpaperAndroid.vue +20 -20
  127. package/src/filiale/yangchunboneng/android/PaperFeedback.vue +3 -3
  128. package/src/filiale/yangchunboneng/android/PhoneUpUserinfo.vue +1235 -0
  129. package/src/filiale/yangchunboneng/android/SafecheckDevices.vue +5 -5
  130. package/src/filiale/yangchunboneng/android/SafecheckOrderV.vue +17 -4
  131. package/src/filiale/yangchunboneng/android/SafecheckUserInfo.vue +30 -12
  132. package/src/filiale/yangchunboneng/android/safeHistoryLook.vue +2 -1
  133. package/src/filiale/yangchunboneng/android.js +1 -0
  134. package/src/filiale/yangchunboneng/pc/CheckBookList.vue +4 -4
  135. package/src/filiale/yangchunboneng/pc/CheckBookSearchUser.vue +76 -32
  136. package/src/filiale/yangchunboneng/pc/CheckBookUser.vue +72 -1
  137. package/src/filiale/yangchunboneng/pc/CheckSearchUser.vue +187 -13
  138. package/src/filiale/yangchunboneng/pc/PaperDefectMain.vue +98 -3
  139. package/src/filiale/yangchunboneng/pc/PaperList.vue +17 -0
  140. package/src/filiale/yongzhou/android/PaperFeedback.vue +1 -1
  141. package/src/filiale/yongzhou/android/SafecheckOrderV.vue +221 -256
  142. package/src/filiale/yongzhou/pc/CheckPlan.vue +59 -0
  143. package/src/filiale/yongzhou/pc/CheckSearchUser.vue +1 -1
  144. package/src/filiale/yongzhou/pc/DefectPaperNew.vue +1105 -0
  145. package/src/filiale/yongzhou/pc/NoCheckplanSafecheck.vue +412 -107
  146. package/src/filiale/yongzhou/pc/PaperDefectMain.vue +872 -0
  147. package/src/filiale/yongzhou/pc/PaperList.vue +1 -1
  148. package/src/filiale/yongzhou/pc/SelectCheckPlan.vue +364 -0
  149. package/src/filiale/yongzhou/pc/communityTypeDetailG.vue +56 -125
  150. package/src/filiale/yongzhou/pc/communityTypeDetailM.vue +94 -187
  151. package/src/filiale/yongzhou/pc/safeDetail.vue +311 -20
  152. package/src/filiale/yongzhou/pc/safeStatistics.vue +74 -24
  153. package/src/filiale/yongzhou/pc/safeStatisticsDay.vue +2 -2
  154. package/src/filiale/yongzhou/pc/safeStatisticsMonth.vue +2 -2
  155. package/src/filiale/yongzhou/pc/safeStatisticsYear.vue +47 -23
  156. package/src/filiale/yongzhou/pc/safeTable.vue +3 -3
  157. package/src/filiale/yongzhou/pc.js +4 -0
  158. package/src/filiale/yuansheng/android/AndroidDefectDeal.vue +652 -0
  159. package/src/filiale/yuansheng/android.js +1 -0
  160. package/src/filiale/zhongsheng/android/CurrentCreate.vue +7 -2
  161. package/src/filiale/zhongsheng/pc/DefectPaperWeiXiu.vue +6 -2
  162. package/src/main.js +33 -33
  163. package/src/rongcheng.js +3 -1
  164. package/src/safecheck-android.js +6 -0
  165. package/src/safecheck.js +3 -0
@@ -0,0 +1,597 @@
1
+ <template>
2
+ <div>
3
+ <!-- <div :style="{'height':needRepair?'60%':'100%'}">-->
4
+ <div :style="{'height': '100%'}">
5
+ <criteria-paged :model="model" :pager="false" v-ref:paged>
6
+ <criteria partial='criteria'>
7
+ <div partial>
8
+ <ul class="nav nav-tabs">
9
+ <li role="presentation" class="active"><a style=" color: #5ac0d9 !important;">隐患明细</a></li>
10
+ </ul>
11
+ </div>
12
+ </criteria>
13
+ <data-grid :model="model" partial='list' class="table_sy">
14
+ <template partial='head'>
15
+ <tr>
16
+ <!-- <th>-->
17
+ <!-- <nobr>隐患设备</nobr>-->
18
+ <!-- </th>-->
19
+ <th>
20
+ <nobr>隐患项</nobr>
21
+ </th>
22
+ <th>
23
+ <nobr>隐患原因</nobr>
24
+ </th>
25
+ <th>
26
+ <nobr>隐患处理方式</nobr>
27
+ </th>
28
+ <!-- <th>-->
29
+ <!-- <nobr>审核结果</nobr>-->
30
+ <!-- </th>-->
31
+ <th>
32
+ <nobr>备注</nobr>
33
+ </th>
34
+ <th>
35
+ <nobr>操作</nobr>
36
+ </th>
37
+ </tr>
38
+ </template>
39
+ <template partial='body'>
40
+ <!-- <td style="text-align: center">-->
41
+ <!-- <nobr>{{row.f_device_type}}</nobr>-->
42
+ <!-- </td>-->
43
+ <td style="text-align: center">
44
+ <nobr>{{row.f_item_name}}</nobr>
45
+ </td>
46
+ <td style="text-align: center">
47
+ <nobr>{{row.f_item_value}}</nobr>
48
+ </td>
49
+ <td style="text-align: center">
50
+ <nobr>{{row.f_repaire_type}}</nobr>
51
+ </td>
52
+ <td style="text-align: center">
53
+ <nobr>{{row.f_deal_remark ? row.f_deal_remark : ' '}}</nobr>
54
+ </td>
55
+ <!-- <td style="text-align: center">-->
56
+ <!-- <nobr>{{row.f_audit_results?row.f_audit_results:'暂无审核结果'}}</nobr>-->
57
+ <!-- </td>-->
58
+ <td style="text-align: center">
59
+ <button v-if="row.f_repaire_type != '无隐患' && row.f_repaire_type != '已处理' && row.f_path" class="button_new-1 button_spacing" @click="$parent.$parent.$parent.showimg(row)">隐患图片</button>
60
+ <!-- <img-button v-if="row.f_repaire_type != '无隐患' && row.f_repaire_type != '已处理' && row.f_path" :src="'/rs/image/file/'+row.f_path" :value="'隐患图片'"></img-button>-->
61
+ <button v-if="row.f_repaire_type == '已处理'" class="button_new-1 button_spacing" @click="$parent.$parent.$parent.solveDefect( row, 'view')">处理详情</button>
62
+ <button v-if="row.f_repaire_type == '未处理' || !row.f_repaire_type" class="button_spacing button_search-1" @click="$parent.$parent.$parent.solveDefect( row, 'solve')">处理隐患</button>
63
+ </td>
64
+ </template>
65
+ </data-grid>
66
+ </criteria-paged>
67
+ </div>
68
+
69
+ <!-- <div style="overflow-y: scroll;height: 40%" v-if="needRepair">-->
70
+ <!-- <div class="form-horizontal auto">-->
71
+ <!-- <ul class="nav nav-tabs">-->
72
+ <!-- <li role="presentation" class="active"><a style=" color: #000 !important;font-size: 14px">转维修</a></li>-->
73
+ <!-- </ul>-->
74
+ <!-- <validator name='v' @valid="valid = true" @invalid="valid = false">-->
75
+ <!-- <div class="row">-->
76
+ <!-- <div class="col-sm-4" :class="[$v.dispatchtype.required ? 'select-error' : '']">-->
77
+ <!-- <label for="dispatchtype" class="font_normal_body">派发类型</label>-->
78
+ <!-- <input id="dispatchtype" type="text" v-show="false" v-model="$refs.dispatchtype.selectedItems" v-validate:dispatchtype='{required: true }'>-->
79
+ <!-- <v-select :value.sync="toRepairModal.preData.dispatchType" v-model="toRepairModal.preData.dispatchType"-->
80
+ <!-- :options='toRepairModal.preData.dispatchTypeOptions' placeholder='派发类型'-->
81
+ <!-- close-on-select v-ref:dispatchtype>-->
82
+ <!-- </v-select>-->
83
+ <!-- </div>-->
84
+ <!-- <div class="col-sm-4 " v-if="toRepairModal.preData.dispatchType == '派发给站点'">-->
85
+ <!-- <label class="font_normal_body">站&nbsp;&nbsp;点</label>-->
86
+ <!-- <right-tree-->
87
+ <!-- islist-->
88
+ <!-- :userid="$login.f.id"-->
89
+ <!-- :source="'dep=this.getParentByType($organization$).getSpecialResByType($department$),tool.getFullTree(dep.where(row.hasSpecialRole($派单员$)))'"-->
90
+ <!-- @re-res="getSiteRes">-->
91
+ <!-- </right-tree>-->
92
+ <!-- </div>-->
93
+ <!-- <div class="col-sm-4 " v-if="toRepairModal.preData.dispatchType == '派发给维修员'" :class="[$v.f_repairman.required ? 'select-error' : '']">-->
94
+ <!-- <input type="text" v-show="false" v-model="toRepairModal.preData.f_repairman" v-validate:f_repairman='{required: true }'>-->
95
+ <!-- <label class="font_normal_body">维修员</label>-->
96
+ <!-- <v-select-->
97
+ <!-- :value.sync="toRepairModal.preData.f_repairman"-->
98
+ <!-- :value-single="true"-->
99
+ <!-- :options='toRepairModal.preData.repairers'-->
100
+ <!-- placeholder='请选择维修员'-->
101
+ <!-- close-on-select></v-select>-->
102
+ <!-- </div>-->
103
+ <!-- <div class="col-sm-4" :class="[$v.f_repairtype.required ? 'select-error' : '']">-->
104
+ <!-- <input type="text" v-show="false" v-model="toRepairModal.preData.f_repairtype" v-validate:f_repairtype='{required: true }'>-->
105
+ <!-- <label class="font_normal_body">报修类型</label>-->
106
+ <!-- <v-select :value.sync="toRepairModal.preData.f_repairtype" style="width:60%"-->
107
+ <!-- class="select select_list"-->
108
+ <!-- :value-single="true"-->
109
+ <!-- :options='toRepairModal.preData.repairTypeOptions'-->
110
+ <!-- close-on-select>-->
111
+ <!-- </v-select>-->
112
+ <!-- </div>-->
113
+ <!-- </div>-->
114
+ <!-- <div class="row">-->
115
+ <!-- <div class="col-sm-8 form-group">-->
116
+ <!-- <label class="font_normal_body" >备&emsp;&emsp;注</label>-->
117
+ <!-- <input class="input_search" style="width: 60%" type="text" v-model="toRepairModal.preData.f_remarks" placeholder="备注">-->
118
+
119
+ <!-- </div>-->
120
+ <!-- <div class="col-sm-4" style="margin-top: 1%">-->
121
+ <!-- <button class="button_search" :disabled="!valid" @click="confirm">转维修</button>-->
122
+ <!-- </div>-->
123
+ <!-- </div>-->
124
+ <!-- </validator>-->
125
+ <!-- </div>-->
126
+ <!-- </div>-->
127
+ <modal :show.sync="showSolveModal" v-ref:solveModal>
128
+ <div slot="modal-header" class="modal-header">
129
+ <h4 class="modal-title">
130
+ {{solveModal.preData.type == 'view'?'处理详情':'处理隐患'}}
131
+ </h4>
132
+ </div>
133
+ <div slot="modal-body" class="modal-body">
134
+ <div style="width: 100%;height: 36px;background-color: #f1f8ff;float: left">
135
+ <div style="width: 8px;height: 100%;background-color: #6aa6e2;margin-right: 20px;float: left"></div>
136
+ <div style="width: auto;height:100%;float: left;"><p class="title-font" style="margin-top: 5px">处理前</p></div>
137
+ </div>
138
+
139
+ <div class="col-sm-6" style="margin-top: 10px">
140
+ <label class="font_normal_body">安&nbsp;检&nbsp;员</label>
141
+ <input class="input_search" style="width: 60%" type="text" disabled="true" v-model="check.f_checker_name" placeholder="安检员">
142
+ </div>
143
+ <div class="col-sm-6" style="margin-top: 10px">
144
+ <label class="font_normal_body">安检时间</label>
145
+ <input class="input_search" style="width: 60%" type="text" disabled="true" v-model="check.f_offsite_time" placeholder="安检时间">
146
+ </div>
147
+ <div class="col-sm-12" style="margin-bottom: 10px" v-show="solveModal.preData.defectImg">
148
+ <label class="font_normal_body">隐患图片</label>
149
+ <img-self :width="200" :height="200" :src="solveModal.preData.defectImg"></img-self>
150
+ </div>
151
+ <div class="col-sm-12" style="margin-bottom: 10px" v-show="solveModal.preData.defectImg1">
152
+ <label class="font_normal_body">隐患图片</label>
153
+ <img-self :width="200" :height="200" :src="solveModal.preData.defectImg1"></img-self>
154
+ </div>
155
+ <div class="col-sm-12" style="margin-bottom: 10px" v-show="solveModal.preData.defectImg2">
156
+ <label class="font_normal_body">隐患图片</label>
157
+ <img-self :width="200" :height="200" :src="solveModal.preData.defectImg2"></img-self>
158
+ </div>
159
+ <div class="col-sm-12" style="margin-bottom: 10px" v-show="solveModal.preData.defectImg3">
160
+ <label class="font_normal_body">隐患图片</label>
161
+ <img-self :width="200" :height="200" :src="solveModal.preData.defectImg3"></img-self>
162
+ </div>
163
+
164
+ <div style="width: 100%;height: 36px;background-color: #f1f8ff;float: left">
165
+ <div style="width: 8px;height: 100%;background-color: #6aa6e2;margin-right: 20px;float: left"></div>
166
+ <div style="width: auto;height:100%;float: left;"><p class="title-font" style="margin-top: 5px">处理后</p></div>
167
+ </div>
168
+ <div class="col-sm-6" style="margin-top: 10px">
169
+ <label class="font_normal_body">处&nbsp;理&nbsp;人</label>
170
+ <input v-if="solveModal.preData.type != 'solve'" class="input_search" style="width: 60%" disabled="true" type="text" v-model="solveModal.uploadData.f_repairman" placeholder="处理人">
171
+ <v-select
172
+ v-if="solveModal.preData.type == 'solve'"
173
+ :value.sync="solveModal.uploadData.f_repairman"
174
+ :value-single="true"
175
+ :options='toRepairModal.preData.repairers'
176
+ placeholder='请选择维修员'
177
+ close-on-select></v-select>
178
+ </div>
179
+ <div class="col-sm-6" style="margin-top: 10px">
180
+ <label class="font_normal_body">处理时间</label>
181
+ <datepicker
182
+ :disabled="solveModal.preData.type == 'view'"
183
+ placeholder='处理时间' style="width:60%"
184
+ :disabled-days-of-week="[]"
185
+ :format="'yyyy-MM-dd'"
186
+ :show-rest-button="reset"
187
+ :value.sync="solveModal.uploadData.f_repair_date">
188
+ </datepicker>
189
+ </div>
190
+ <div v-if="solveModal.preData.type == 'solve'" class="col-sm-12" style="margin-bottom: 10px">
191
+ <label class="font_normal_body">处理后图片</label>
192
+ <avatar-upload :width="200" :height="200" :img-src.sync="solveModal.uploadData.imgSrc" :filename.sync="solveModal.uploadData.filename" v-ref:imginfo></avatar-upload>
193
+ </div>
194
+ <div v-if="solveModal.preData.type == 'view'" v-show="solveModal.preData.repairedImg" class="col-sm-12" style="margin-bottom: 10px">
195
+ <label class="font_normal_body">处理后图片</label>
196
+ <img-self :width="200" :height="200" :src="solveModal.preData.repairedImg"></img-self>
197
+ </div>
198
+ <div v-if="solveModal.preData.type == 'view'" v-show="solveModal.preData.repairedImg2" class="col-sm-12" style="margin-bottom: 10px">
199
+ <label class="font_normal_body">处理后图片</label>
200
+ <img-self :width="200" :height="200" :src="solveModal.preData.repairedImg2"></img-self>
201
+ </div>
202
+ <div v-if="solveModal.preData.type == 'view'" v-show="solveModal.preData.repairedImg3" class="col-sm-12" style="margin-bottom: 10px">
203
+ <label class="font_normal_body">处理后图片</label>
204
+ <img-self :width="200" :height="200" :src="solveModal.preData.repairedImg3"></img-self>
205
+ </div>
206
+ <div v-if="solveModal.preData.type == 'view'" v-show="solveModal.preData.repairedImg4" class="col-sm-12" style="margin-bottom: 10px">
207
+ <label class="font_normal_body">处理后图片</label>
208
+ <img-self :width="200" :height="200" :src="solveModal.preData.repairedImg4"></img-self>
209
+ </div>
210
+ </div>
211
+ <div slot="modal-footer" class="modal-footer" style="text-align: center">
212
+ <!-- <button class="button_search" @click="auditsure('通过')" v-if="solveModal.preData.type == 'view' && !solveModal.f_audit_results">审核通过</button>-->
213
+ <!-- <button class="button_search" @click="auditsure('不通过')" v-if="solveModal.preData.type == 'view' && !solveModal.f_audit_results">审核不通过</button>-->
214
+ <button class="button_search" v-if="solveModal.preData.type == 'solve'" @click="ok">确认</button>
215
+ <button class="button_search" @click="cancel">取消</button>
216
+ </div>
217
+ </modal>
218
+ <modal :show.sync="imgshow" v-ref:modal backdrop="true">
219
+ <header slot="modal-header" class="modal-header">
220
+ 隐患图片
221
+ </header>
222
+ <article slot="modal-body" class="modal-body">
223
+ <div class="from-group">
224
+ <div class="row">
225
+ <div class="col-md-6">
226
+ <img-self-plus v-if="imgs.defectImg" :src="imgs.defectImg" width="240" height="300"></img-self-plus>
227
+ </div>
228
+ <div class="col-md-6">
229
+ <img-self-plus v-if="imgs.defectImg1" :src="imgs.defectImg1" width="240" height="300"></img-self-plus>
230
+ </div>
231
+ <div class="col-md-6">
232
+ <img-self-plus v-if="imgs.defectImg2" :src="imgs.defectImg2" width="240" height="300"></img-self-plus>
233
+ </div>
234
+ <div class="col-md-6">
235
+ <img-self-plus v-if="imgs.defectImg3" :src="imgs.defectImg3" width="240" height="300"></img-self-plus>
236
+ </div>
237
+ </div>
238
+ </div>
239
+ </article>
240
+ <footer slot="modal-footer" class="modal-footer" v-show="false">
241
+ </footer>
242
+ </modal>
243
+
244
+ </div>
245
+ </template>
246
+
247
+ <script>
248
+ import {PagedList, HttpResetClass} from 'vue-client'
249
+ import * as Util from '../../../components/Util'
250
+ import co from 'co'
251
+
252
+ const upSolveDefect = function * (self) {
253
+ let uploadData = self.solveModal.uploadData
254
+ //tag)
255
+ self.$resetpost('/rs/logic/pcRepairDefectNew', self.solveModal.uploadData, {resolveMsg: null, rejectMsg: null})
256
+ .then(res => {
257
+ if (res.data.code === 200) {
258
+ self.$showMessage('隐患已处理。')
259
+ self.showSolveModal = false
260
+ self.model.search(`(f_repaire_type != '无隐患' or f_repaire_type is null)`, {})
261
+ }
262
+ })
263
+ }
264
+
265
+ const sendRepair = function* (self) {
266
+ let preData = self.toRepairModal.preData
267
+ let uploadData = self.toRepairModal.uploadData
268
+
269
+ if (preData.dispatchType == '派发给站点') {
270
+ uploadData.model.serviceacitivity[0].f_meetunit = preData.f_meetunit
271
+ uploadData.model.serviceacitivity[0].f_reciever = preData.f_reciever
272
+ uploadData.model.f_meetunit = preData.f_meetunit
273
+ uploadData.model.f_orgstr = preData.f_reciever
274
+ uploadData.model.f_outlets = preData.f_outlets
275
+ } else if (preData.dispatchType == '派发给维修员') {
276
+ uploadData.model.serviceacitivity[0].f_reciever = preData.f_repairman
277
+ // uploadData.model.f_meetunit = self.$login.f.orgpathnames
278
+ // uploadData.model.f_orgstr = self.$login.f.orgpathstr
279
+ // uploadData.model.f_outlets = self.$login.f.f_parentname
280
+ uploadData.model.f_meetunit = self.$login.f.deps
281
+ uploadData.model.f_orgid = self.$login.f.orgid
282
+ uploadData.model.f_filiale = self.$login.f.org
283
+ uploadData.model.f_outlets = self.$login.f.deps
284
+ uploadData.model.f_filiale_id = self.$login.f.orgid
285
+ uploadData.toRepair = '一级派单'
286
+ }
287
+ let res = yield self.$resetpost('/rs/sql/GetUserForRepaireNew2', {data: {f_userinfo_id: self.check.f_userinfo_id}})
288
+ preData.userInfo = res.data[0]
289
+ uploadData.model = Object.assign(uploadData.model, preData.userInfo)
290
+ uploadData.user.f_userinfo_id = preData.userInfo.f_userinfo_id
291
+ uploadData.model.f_repair_date = Util.getNowDate()
292
+ uploadData.model.f_repairtype = preData.f_repairtype
293
+ uploadData.model.f_remarks = preData.f_remarks
294
+ // 拼接failure
295
+ let failure = []
296
+ self.model.rows.forEach(row => {
297
+ if (row.f_repaire_type == '未处理') {
298
+ failure.push({
299
+ f_failure_type: row.f_item_name,
300
+ failurecase: row.f_item_value?row.f_item_value.split(','):''
301
+ })
302
+ }
303
+ })
304
+ uploadData.model.failure = failure
305
+ // 拼接repairitems
306
+ let rows = JSON.parse(JSON.stringify(self.model.rows))
307
+ let repairitems = {
308
+ data: []
309
+ }
310
+ let safecheckOptions = [{"data": "已处理"}, {"data": "未处理"}]
311
+ // 取未处理的
312
+ rows = rows.filter(row => row.f_repaire_type == '未处理')
313
+ //tag)
314
+ // 开始拼接
315
+ rows.forEach(row => {
316
+ let existIndex = -1
317
+ // 判断该设备是否已经存在
318
+ for (let i = 0; i < repairitems.data.length; i++) {
319
+ if (repairitems.data[i].f_type == row.f_device_type) {
320
+ existIndex = i
321
+ break
322
+ }
323
+ }
324
+ if (existIndex == -1) {
325
+ // 不存在则新建
326
+ let newItem = {
327
+ f_type: row.f_device_type,
328
+ details: [{
329
+ f_defect_id: row.id,
330
+ f_project: `${row.f_item_name}:${row.f_item_value}`,
331
+ type: 'selector',
332
+ options: safecheckOptions
333
+ }]
334
+ }
335
+ repairitems.data.push(newItem)
336
+ } else {
337
+ // 存在则追加
338
+ repairitems.data[existIndex].details.push({
339
+ f_defect_id: row.id,
340
+ f_project: `${row.f_item_name}:${row.f_item_value}`,
341
+ type: 'selector',
342
+ options: safecheckOptions
343
+ })
344
+ }
345
+ })
346
+ uploadData.model.f_repairitems = repairitems
347
+ //tag)
348
+ // 调工单接口
349
+ let result = yield self.$resetpost('/rs/logic/callerSend', uploadData)
350
+ //tag)
351
+ if (result.data.f_service_id) {
352
+ const data = {
353
+ f_paper_id: rows[0].f_paper_id,
354
+ f_service_id: result.data.f_service_id,
355
+ itemsId: self.$login.convertToIn(rows.map(row => row.id))
356
+ }
357
+ //tag
358
+ let updateRes = yield self.$resetpost('/rs/logic/updateDefectStateNew', data)
359
+ if (updateRes.data.code == 200) {
360
+ self.$showMessage('隐患已转维修。')
361
+ self.model.search(`(f_repaire_type != '无隐患' or f_repaire_type is null)`, {})
362
+ }
363
+ }
364
+ }
365
+
366
+ export default {
367
+ title: '隐患项列表',
368
+ props: ['check'],
369
+ data() {
370
+ return {
371
+ model: new PagedList('rs/sql/GetDefectByPaperIdNew2', 100, {
372
+ f_paper_id: 'this.f_paper_id', f_item_value: 'this.f_item_value'
373
+ }),
374
+ imgshow: false,
375
+ imgs: {
376
+ defectImg: '',
377
+ defectImg1: '',
378
+ defectImg2: '',
379
+ defectImg3: '',
380
+ },
381
+ showSolveModal: false,
382
+ showToRepairModal: false,
383
+ showDefectModal: false,
384
+ valid: false,
385
+ needRepair: true,
386
+ solveModal: {
387
+ uploadData:{},
388
+ preData: {
389
+ type: 'view',
390
+ defectImg: '',
391
+ defectImg1: '',
392
+ defectImg2: '',
393
+ defectImg3: '',
394
+ repairedImg: '',
395
+ repairedImg2: '',
396
+ repairedImg3: '',
397
+ repairedImg4: '',
398
+
399
+ uploadData: {
400
+ id: '',
401
+ f_repairman: this.$login.f.name,
402
+ f_repair_date: Util.getNowDate().substr(0, 10),
403
+ f_repair_path: '',
404
+ imgSrc: '',
405
+ filename: ''
406
+ }
407
+ },
408
+ toRepairModal: {
409
+ preData: {
410
+ dispatchTypeOptions: [{label: '派发给站点', value: '派发给站点'}, {
411
+ label: '派发给维修员',
412
+ value: '派发给维修员'
413
+ }],
414
+ repairTypeOptions: this.$appdata.getParam('报修类型'),
415
+ dispatchType: '',
416
+ f_repairman: '',
417
+ f_repairtype: '',
418
+ f_remarks: '',
419
+ f_meetunit: '',
420
+ f_reciever: '',
421
+ f_outlets: '',
422
+ userInfo: {},
423
+ repairers: []
424
+ },
425
+ uploadData: {
426
+ id:'',
427
+ model: {
428
+ serviceacitivity: [{
429
+ f_service_acitivity_type: '派单'
430
+ }],
431
+ f_repairitems: {},
432
+ failure: '',
433
+ f_source: '安检',
434
+ f_service_id: '',
435
+ f_contact_phone: '',
436
+ f_meetunit: '',
437
+ f_phone: '',
438
+ f_user_name: '',
439
+ f_address: '',
440
+ f_repair_date: '',
441
+ f_reciever: '',
442
+ f_remarks: '',
443
+ f_user_type: '',
444
+ f_area: '',
445
+ f_unit_name: '',
446
+ f_street: '',
447
+ f_residential_area: '',
448
+ f_building: '',
449
+ f_unit: '',
450
+ f_floor: '',
451
+ f_room: '',
452
+ aState: '',
453
+ f_repairtype: '',
454
+ f_userinfo_id: '',
455
+ f_userinfo_code: '',
456
+ f_orgstr: '',
457
+ f_outlets: '',
458
+ f_attendant: this.$login.f.name
459
+ },
460
+ loginUser: {
461
+ name: this.$login.f.name,
462
+ ename: this.$login.f.ename
463
+ },
464
+ user: {
465
+ f_userinfo_id: ''
466
+ },
467
+ callObj: null
468
+ }
469
+ }
470
+ }
471
+ }
472
+ },
473
+ ready() {
474
+ this.model.f_item_value = `(SELECT stuff(( SELECT ',' + f_item_value FROM t_devices_items_lists WHERE ( f_is_defect = 'true' OR di.f_is_defect = 'true') AND f_item_id = di.id FOR xml path ( '' ) ),1,1,'' ) )`
475
+ if (this.check) {
476
+ this.model.f_paper_id = this.check.id
477
+ this.model.search(`(f_repaire_type != '无隐患' or f_repaire_type is null)`, {})
478
+ }
479
+ this.getEmp()
480
+ },
481
+ methods: {
482
+ showimg(val){
483
+ this.imgs.defectImg = val.f_path?'/rs/image/file/' + val.f_path:''
484
+ this.imgs.defectImg1 = val.f_p1_path?'/rs/image/file/' + val.f_p1_path:''
485
+ this.imgs.defectImg2 = val.f_p2_path?'/rs/image/file/' + val.f_p2_path:''
486
+ this.imgs.defectImg3 = val.f_p3_path?'/rs/image/file/' + val.f_p3_path:''
487
+ this.imgshow = true
488
+ },
489
+ //审核通过
490
+ auditsure(info){
491
+ // 拿到t_devices_items 的ID,给f_audit_results中存入通过 如果未通过,需要可以再次派单,对隐患进行处理
492
+ var data = {
493
+ id: this.solveModal.uploadData.id,
494
+ info:info
495
+ }
496
+ let http = new HttpResetClass()
497
+ http.load('POST', 'rs/logic/DefectAuditUpdate', data, {resolveMsg: null, rejectMsg: null}).then((res) => {
498
+ if(res.data.code == 200){
499
+ this.model.search(`(f_repaire_type != '无隐患' or f_repaire_type is null)`, {})
500
+ this.showSolveModal = false
501
+ this.showToRepairModal = false
502
+ this.$showMessage('提交成功')
503
+ }else{
504
+ this.$showMessage('提交失败,请重试')
505
+ }
506
+ })
507
+ },
508
+ solveDefect(row, type) {
509
+ this.solveModal.preData.defectImg = row.f_path?'/rs/image/file/' + row.f_path:''
510
+ this.solveModal.preData.defectImg1 = row.f_p1_path?'/rs/image/file/' + row.f_p1_path:''
511
+ this.solveModal.preData.defectImg2 = row.f_p2_path?'/rs/image/file/' + row.f_p2_path:''
512
+ this.solveModal.preData.defectImg3 = row.f_p3_path?'/rs/image/file/' + row.f_p3_path:''
513
+ this.solveModal.preData.repairedImg = '/rs/image/file/' + row.f_repair_path
514
+ this.solveModal.preData.repairedImg2 = row.f_repair2_path ? ('/rs/image/file/' + row.f_repair2_path) : ''
515
+ this.solveModal.preData.repairedImg3 = row.f_repair3_path ? ('/rs/image/file/' + row.f_repair3_path) : ''
516
+ this.solveModal.preData.repairedImg4 = row.f_repair4_path ? ('/rs/image/file/' + row.f_repair4_path) : ''
517
+ this.solveModal.uploadData.id = row.id
518
+ this.solveModal.preData.type = type
519
+ if (type == 'view') {
520
+ this.solveModal.preData.f_repair_path = '/rs/image/file/' + row.f_repair_path
521
+ this.solveModal.uploadData.f_repairman = row.f_repairman
522
+ this.solveModal.uploadData.f_repair_date = row.f_repair_date
523
+ this.$set('solveModal.f_audit_results',row.f_audit_results)
524
+ } else {
525
+ this.solveModal.uploadData.f_repairman = this.$login.f.name
526
+ this.solveModal.uploadData.f_repair_date = Util.getNowDate().substr(0, 10)
527
+ }
528
+ this.showSolveModal = !this.showSolveModal
529
+ },
530
+ ok() {
531
+ if (!(this.solveModal.uploadData.filename && this.solveModal.uploadData.filename.length > 0)) {
532
+ this.$showMessage('请录入处理后照片')
533
+ return
534
+ }
535
+ co(upSolveDefect(this))
536
+ },
537
+ cancel() {
538
+ this.showSolveModal = false
539
+ this.showToRepairModal = false
540
+ },
541
+ toRepair() {
542
+ this.showToRepairModal = !this.showToRepairModal
543
+ },
544
+ getSiteRes(obj) {
545
+ //tag
546
+ //tag
547
+ if(obj.resids[0]){
548
+ this.toRepairModal.preData.f_meetunit = obj.res.join('.')
549
+ this.toRepairModal.preData.f_reciever = obj.resids.join('.')
550
+ }else {
551
+ this.toRepairModal.preData.f_meetunit = ''
552
+ this.toRepairModal.preData.f_reciever = ''
553
+ this.toRepairModal.preData.f_outlets = ''
554
+ }
555
+ },
556
+ // 获取维修员
557
+ getEmp() {
558
+ let val = {source: 'this.getParentByType($organization$).getChildByName($维修员$).getUsers()', userid: `${this.$login.f.id}`}
559
+ let http = new HttpResetClass()
560
+ http.load('POST', '/rs/search', {data: val}, {resolveMsg: null, rejectMsg: null}).then((res) => {
561
+ res.data.forEach((item) => {
562
+ this.toRepairModal.preData.repairers.push({label: item.name, value: item.name})
563
+ })
564
+ })
565
+ },
566
+ confirm() {
567
+ if (this.toRepairModal.preData.dispatchType == '派发给站点' && !this.toRepairModal.preData.f_meetunit) {
568
+ this.$showMessage('请选择站点。')
569
+ return
570
+ }
571
+ co(sendRepair(this))
572
+ }
573
+ },
574
+ watch: {
575
+ 'check'() {
576
+ this.model.f_paper_id = this.check.id
577
+ this.model.search(`(f_repaire_type != '无隐患' or f_repaire_type is null)`, {})
578
+ },
579
+ 'model.rows'() {
580
+ if (this.model.rows.length > 0) {
581
+ if (this.model.rows[0].f_repaire_type == '未处理') {
582
+ this.needRepair = true
583
+ return
584
+ }
585
+ }
586
+ this.needRepair = false
587
+ }
588
+ }
589
+ }
590
+ </script>
591
+ <style lang="less" scoped>
592
+ .select-error {
593
+ button {
594
+ border-bottom: 1px solid #a94442 !important;
595
+ }
596
+ }
597
+ </style>
@@ -0,0 +1,63 @@
1
+ <template>
2
+ <div id="unit" class="flex-row" :class="{'binary':showItem}">
3
+ <div :class="{'basic-main':!showItem,'binary-left':showItem}">
4
+ <defect-paper-new @select-changed="selected" :style="style" :style2="style2" v-ref:check></defect-paper-new>
5
+ </div>
6
+ <div class="binary-right" v-show="showItem">
7
+ <div class="flex">
8
+ <defect-list-new v-if='$refs.check && $refs.check.selected' :check='$refs.check.selected'
9
+ v-ref:detail></defect-list-new>
10
+ </div>
11
+ </div>
12
+ </div>
13
+ </template>
14
+
15
+ <script>
16
+ import DefectPaperNew from './DefectPaperNew'
17
+ import DefectListNew from './DefectListNew'
18
+
19
+ export default {
20
+ title: '隐患查看',
21
+ props: ['f'],
22
+ components: {DefectPaperNew, DefectListNew},
23
+ data() {
24
+ return {
25
+ showItem: false,
26
+ style: 'col-sm-2 form-group',
27
+ style2: 'col-sm-4 form-group'
28
+ }
29
+ },
30
+ methods: {
31
+ selected(row) {
32
+ this.showItem = true
33
+ }
34
+ },
35
+ watch: {
36
+ 'showItem'(val) {
37
+ //tag
38
+ //tag
39
+ if (val) {
40
+ this.style = 'col-sm-3 form-group'
41
+ this.style2 = 'col-sm-6 form-group'
42
+ } else {
43
+ this.style = 'col-sm-2 form-group'
44
+ this.style2 = 'col-sm-4 form-group'
45
+ }
46
+ }
47
+ }
48
+ }
49
+ </script>
50
+ <style>
51
+ .form-input-group label {
52
+ text-align: right;
53
+ width: auto;
54
+ }
55
+
56
+ .datapanel {
57
+ color: #333;
58
+ background-color: white;
59
+ box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px;
60
+ padding: 5px 7px 5px 7px;
61
+ border-radius: 10px;
62
+ }
63
+ </style>