safecheck-client 3.0.34-2 → 3.0.34-21

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 (80) hide show
  1. package/package.json +3 -3
  2. package/src/App.vue +31 -31
  3. package/src/components/android/AndroidDefectDeal.vue +1 -0
  4. package/src/components/android/AreaPlan.vue +1 -7
  5. package/src/components/android/ImgSelfAndroid.vue +181 -181
  6. package/src/components/android/PaperFeedback.vue +1 -1
  7. package/src/components/android/PaperFeedbackTemp.vue +1 -1
  8. package/src/components/android/SafePlanItem.vue +509 -509
  9. package/src/components/android/SafecheckDevices.vue +2 -2
  10. package/src/components/android/SafecheckDevicesTemp.vue +1 -1
  11. package/src/components/android/userinfo/SafecheckUserInfo.vue +1 -1
  12. package/src/components/safecheckNew/android/SafecheckOrderV.vue +2731 -2731
  13. package/src/filiale/baiyin/android/AndroidDefectDeal.vue +633 -633
  14. package/src/filiale/baiyin/android/SafecheckOrderV.vue +2798 -0
  15. package/src/filiale/baiyin/android.js +1 -0
  16. package/src/filiale/baiyin/pc/CheckPlanAreaList.vue +485 -485
  17. package/src/filiale/baiyin/pc/CheckSearchUser.vue +1067 -1067
  18. package/src/filiale/baiyin/pc/DefectListNew.vue +597 -597
  19. package/src/filiale/baiyin/pc/DefectMainNew.vue +63 -63
  20. package/src/filiale/baiyin/pc/DefectPaperNew.vue +1052 -1052
  21. package/src/filiale/baiyin/pc/PaperList.vue +790 -790
  22. package/src/filiale/baiyin/pc/PlanChooser.vue +167 -167
  23. package/src/filiale/baiyin/pc/PlanManage.vue +834 -834
  24. package/src/filiale/baiyin/pc/RightTreeSafe.vue +348 -348
  25. package/src/filiale/baiyin/pc/RoleSelector.vue +160 -160
  26. package/src/filiale/bayan/android/PaperFeedback.vue +1 -1
  27. package/src/filiale/bayan/android/SafecheckDevices.vue +1 -1
  28. package/src/filiale/bayan/android/SafecheckUserInfo.vue +1 -1
  29. package/src/filiale/dexin/android/SafecheckDevices.vue +1 -1
  30. package/src/filiale/hanzhong/android/PaperFeedback.vue +1 -1
  31. package/src/filiale/hanzhong/android/SafecheckDevices.vue +1 -1
  32. package/src/filiale/hanzhong/android/SafecheckUserInfo.vue +1 -1
  33. package/src/filiale/jiaxian/android/AddPlanItem.vue +447 -0
  34. package/src/filiale/jiaxian/android/SafecheckDevices.vue +1298 -1298
  35. package/src/filiale/jiaxian/android/SafecheckOrderV.vue +2811 -0
  36. package/src/filiale/jiaxian/android/SafecheckUserInfo.vue +784 -0
  37. package/src/filiale/jiaxian/android.js +13 -10
  38. package/src/filiale/jiaxian/pc.js +12 -12
  39. package/src/filiale/jingyang/android/PaperFeedback.vue +1 -1
  40. package/src/filiale/jingyang/android/SafecheckUserInfo.vue +1 -1
  41. package/src/filiale/kelai/pc/CheckPlanAreaList.vue +476 -468
  42. package/src/filiale/pingxiang/android/PaperFeedback.vue +1 -1
  43. package/src/filiale/qingjian/android/PhoneUpUserinfo.vue +1270 -1270
  44. package/src/filiale/qingjian/android/SafecheckDevices.vue +1 -1
  45. package/src/filiale/qingjian/android/SafecheckOrderV.vue +2844 -2844
  46. package/src/filiale/qingjian/android/SafecheckUserInfo.vue +1 -1
  47. package/src/filiale/rongchuang/android/SafecheckOrderV.vue +2696 -2696
  48. package/src/filiale/shiquan/android/SafecheckDevices.vue +1 -1
  49. package/src/filiale/siyang/android/SafecheckUserInfo.vue +1 -1
  50. package/src/filiale/siyang/pc/NewCheckpaper.vue +1938 -1938
  51. package/src/filiale/siyang/pc/checkUserList.vue +786 -786
  52. package/src/filiale/siyang/pc.js +16 -16
  53. package/src/filiale/weinan/android/SafecheckDevices.vue +1307 -1295
  54. package/src/filiale/weinan/android/SafecheckOrderV.vue +11 -1
  55. package/src/filiale/weinan/pc/DefectPaperNew.vue +31 -0
  56. package/src/filiale/wuan/android/SafecheckOrderV.vue +4 -1
  57. package/src/filiale/wuan/android/SafecheckUserInfo.vue +6 -5
  58. package/src/filiale/yangchunboneng/android/CurrentCreate.vue +8 -11
  59. package/src/filiale/yangchunboneng/android/DailyworkloadQuery.vue +8 -13
  60. package/src/filiale/yangchunboneng/android/NewCheckpaperAndroid.vue +1362 -1362
  61. package/src/filiale/yangchunboneng/android/PaperFeedback.vue +1 -1
  62. package/src/filiale/yangchunboneng/android/PhoneUpUserinfo.vue +1235 -1235
  63. package/src/filiale/yangchunboneng/android/SafecheckDevices.vue +2 -2
  64. package/src/filiale/yangchunboneng/android/SafecheckOrderV.vue +2845 -2845
  65. package/src/filiale/yangchunboneng/android/SafecheckUserInfo.vue +1 -1
  66. package/src/filiale/yangchunboneng/android/safeHistoryLook.vue +8 -13
  67. package/src/filiale/yangchunboneng/pc/CheckBookUser.vue +269 -269
  68. package/src/filiale/yangchunboneng/pc/CheckSearchUser.vue +1192 -1192
  69. package/src/filiale/yangchunboneng/pc/DefectPaperNew.vue +1128 -1128
  70. package/src/filiale/yangchunboneng/pc/PaperDefectMain.vue +972 -972
  71. package/src/filiale/yangchunboneng/pc/PaperList.vue +773 -773
  72. package/src/filiale/yongzhou/android/PaperFeedback.vue +1 -1
  73. package/src/filiale/yongzhou/android/SafecheckDevices.vue +1 -1
  74. package/src/filiale/yongzhou/android/SafecheckUserInfo.vue +1 -1
  75. package/src/filiale/yuansheng/android/SwitchValve.vue +322 -322
  76. package/src/filiale/yuansheng/android.js +17 -17
  77. package/src/filiale/yunchengminsheng/android/PaperFeedback.vue +1 -1
  78. package/src/filiale/yunchengminsheng/android/SafecheckDevices.vue +1 -1
  79. package/src/filiale/yunchengminsheng/android/SafecheckUserInfo.vue +1 -1
  80. package/src/main.js +1 -1
@@ -1,468 +1,476 @@
1
- <template>
2
- <div class="flex">
3
- <criteria-paged :model="model" v-ref:paged :pager="true">
4
- <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
5
- <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
6
- <div class="row">
7
- <div :class="{'col-sm-6':$parent.$parent.$parent.isdetail,'col-sm-4':!$parent.$parent.$parent.isdetail}">
8
- <role-selector-safe
9
- role-name="安检员"
10
- role-lable="安&ensp;检&ensp;员"
11
- @re-res="$parent.$parent.getorg"
12
- :value.sync="model.f_checker_id"
13
- v-model="model.f_checker_id"
14
- condition="f_checker_name like '%{}%'">
15
- </role-selector-safe>
16
- </div>
17
- <div :class="{'form-group col-sm-3':$parent.$parent.$parent.isdetail,'form-group col-sm-2':!$parent.$parent.$parent.isdetail}">
18
- <label class="font_normal_body">小区名称</label>
19
- <input type="text" class="input_search" style="width:60%" v-model="model.f_residential_area" placeholder='小区名称'
20
- condition="f_residential_area like '%{}%'" v-next-el="cx" v-el:qjmc>
21
- </div>
22
- <div :class="{'form-group col-sm-3':$parent.$parent.$parent.isdetail,'form-group col-sm-2':!$parent.$parent.$parent.isdetail}">
23
- <label class="font_normal_body">计划名称</label>
24
- <v-select class="select_list select"
25
- placeholder='计划名称' style="width: 60%"
26
- :search="true"
27
- v-model="model.f_plan_name"
28
- :value.sync="model.f_plan_name"
29
- :options='$parent.$parent.planName'
30
- condition="f_plan_id = '{}'"
31
- :value-single="true"
32
- close-on-select clear-button></v-select>
33
-
34
- </div>
35
- <div class="form-group col-sm-2" v-if="!$parent.$parent.$parent.isdetail"></div>
36
- <div :class="{'form-group col-sm-3':$parent.$parent.$parent.isdetail,'form-group col-sm-2':!$parent.$parent.$parent.isdetail}" style="float:right; padding-right: 25px">
37
- <div class="span" style="float:right;">
38
- <div style="float: right;margin-left:10px" class="button_spacing"
39
- :class="{'button_shrink_left':!$parent.$parent.$parent.isdetail,'button_shrink_right':$parent.$parent.$parent.isdetail}"
40
- @click="$parent.$parent.hiddenr()"></div>
41
- <div class="button_spacing" style="float: right;margin-left:10px"
42
- :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
43
- @click="$parent.$parent.hidden()">
44
- </div>
45
- <button id="btnaaaa" style="float: right" class="button_search"
46
- @click="$parent.$parent.exportexcel()"
47
- v-el:cx>导出</button>
48
- <button id="btnaaa" style="float: right" class="button_search"
49
- @click="$parent.$parent.getGroupName1(),search(),$parent.$parent.getexportExcelField(),$parent.$parent.$parent.isdetail=false,$parent.$parent.listflag=false"
50
- v-el:cx>查询</button>
51
- </div>
52
- </div>
53
- <div :class="{'form-group col-sm-3':$parent.$parent.$parent.isdetail,'form-group col-sm-2':!$parent.$parent.$parent.isdetail}" v-if="$parent.$parent.criteriaShow">
54
- <label class="font_normal_body">起始时间</label>
55
- <datepicker
56
- :value.sync="$parent.$parent.f_check_start"
57
- placeholder='起始时间' style="width:60%"
58
- :disabled-days-of-week="[]"
59
- :format="'yyyy-MM'"
60
- :select-month="true"
61
- :show-rest-button="reset">
62
- </datepicker>
63
- </div>
64
- <div :class="{'form-group col-sm-3':$parent.$parent.$parent.isdetail,'form-group col-sm-2':!$parent.$parent.$parent.isdetail}" v-if="$parent.$parent.criteriaShow">
65
- <label class="font_normal_body">结束时间</label>
66
- <datepicker
67
- :value.sync="$parent.$parent.f_check_end"
68
- placeholder='结束时间' style="width:60%"
69
- :disabled-days-of-week="[]"
70
- :format="'yyyy-MM'"
71
- :select-month="true"
72
- :show-rest-button="reset">
73
- </datepicker>
74
- </div>
75
- <div :class="{'form-group col-sm-3':$parent.$parent.$parent.isdetail,'form-group col-sm-2':!$parent.$parent.$parent.isdetail}" v-if="$parent.$parent.criteriaShow">
76
- <label class="font_normal_body">安检起始</label>
77
- <datepicker
78
- :value.sync="$parent.$parent.f_start_time"
79
- placeholder='安检起始' style="width:60%"
80
- :format="'yyyy-MM-dd'"
81
- :show-rest-button="reset">
82
- </datepicker>
83
- </div>
84
- <div :class="{'form-group col-sm-3':$parent.$parent.$parent.isdetail,'form-group col-sm-2':!$parent.$parent.$parent.isdetail}" v-if="$parent.$parent.criteriaShow">
85
- <label class="font_normal_body">安检截止</label>
86
- <datepicker
87
- :value.sync="$parent.$parent.f_end_time"
88
- placeholder='安检截止' style="width:60%"
89
- :format="'yyyy-MM-dd'"
90
- :show-rest-button="reset">
91
- </datepicker>
92
- </div>
93
- </div>
94
- <div class="row">
95
- <div class="col-sm-12">
96
- <label class="control-label" style="color: #c7254e">汇 总 项</label>
97
- <input type="checkbox" id="f_plan_month" value="f_plan_month" v-model="$parent.$parent.nameForSql"/>
98
- <label for="f_plan_month">计划月份</label>
99
- <input type="checkbox" id="f_no_checkplan" value="f_no_checkplan" v-model="$parent.$parent.nameForSql"/>
100
- <label for="f_no_checkplan">计划类型</label>
101
- <input type="checkbox" id="f_residential_area" value="f_residential_area" v-model="$parent.$parent.nameForSql"/>
102
- <label for="f_residential_area">小区名称</label>
103
- <input type="checkbox" id="f_plan_name" value="f_plan_name" v-model="$parent.$parent.nameForSql"/>
104
- <label for="f_plan_name">计划名称</label>
105
- <input type="checkbox" id="f_checker_name" value="f_checker_name" v-model="$parent.$parent.nameForSql"/>
106
- <label for="f_checker_name">安检员</label>
107
- <input type="checkbox" id="f_user_number" value="f_user_number" v-model="$parent.$parent.nameForSql"/>
108
- <label for="f_checker_name">档案数量</label>
109
- </div>
110
- </div>
111
- </div>
112
-
113
- </criteria>
114
- <data-grid id="excelid" :model="model" partial='list' class="list_area table_sy excelid" v-ref:grid>
115
- <template partial='head'>
116
- <tr>
117
- <th>
118
- <nobr>序号</nobr>
119
- </th>
120
- <th v-if="$parent.$parent.$parent.nameForSql.includes('f_plan_month')"><nobr>计划月份</nobr></th>
121
- <th v-if="$parent.$parent.$parent.nameForSql.includes('f_no_checkplan')"><nobr>计划类型</nobr></th>
122
- <th v-if="$parent.$parent.$parent.nameForSql.includes('f_residential_area')"><nobr>小区名称</nobr></th>
123
- <th v-if="$parent.$parent.$parent.nameForSql.includes('f_plan_name')"><nobr>计划名称</nobr></th>
124
- <th v-if="$parent.$parent.$parent.nameForSql.includes('f_checker_name')"><nobr>安检员</nobr></th>
125
- <th v-if="$parent.$parent.$parent.nameForSql.includes('f_user_number')"><nobr>档案数量</nobr></th>
126
- <th>
127
- <nobr>计划总数</nobr>
128
- </th>
129
- <th>
130
- <nobr>未检</nobr>
131
- </th>
132
- <th>
133
- <nobr>已检</nobr>
134
- </th>
135
- <th>
136
- <nobr>入户</nobr>
137
- </th>
138
- <th>
139
- <nobr>到访不遇</nobr>
140
- </th>
141
- <th>
142
- <nobr>拒检</nobr>
143
- </th>
144
- <th>
145
- <nobr>安检率</nobr>
146
- </th>
147
- <!--<th>-->
148
- <!--<nobr>查看</nobr>-->
149
- <!--</th>-->
150
- </tr>
151
- </template>
152
- <template partial='body'>
153
- <tr>
154
- <td style="text-align:center;border-right: 1px solid ">{{$index + 1}}</td>
155
- <td style="text-align:center" :class="{'td-0':row.f_plan_month==undefined,'td-1':model.rows && model.rows.length!=($index+1)&&row.f_plan_month.indexOf('*&')==-1,'td-2':model.rows && model.rows.length!=($index+1)&&row.f_plan_month.indexOf('*&')!=-1,'td-3':model.rows && model.rows.length==($index+1)&&row.f_plan_month.indexOf('*&')!=-1,'td-4':model.rows && model.rows.length==($index+1)&&row.f_plan_month.indexOf('*&')==-1}" v-if="$parent.$parent.$parent.nameForSql.includes('f_plan_month')">{{row.f_plan_month.indexOf('*&')!=-1?'':row.f_plan_month}}</td>
156
- <td style="text-align:center" :class="{'td-0':row.f_no_checkplan==undefined,'td-1':model.rows && model.rows.length!=($index+1)&&row.f_no_checkplan.indexOf('*&')==-1,'td-2':model.rows && model.rows.length!=($index+1)&&row.f_no_checkplan.indexOf('*&')!=-1,'td-3':model.rows && model.rows.length==($index+1)&&row.f_no_checkplan.indexOf('*&')!=-1,'td-4':model.rows && model.rows.length==($index+1)&&row.f_no_checkplan.indexOf('*&')==-1}" v-if="$parent.$parent.$parent.nameForSql.includes('f_no_checkplan')">{{row.f_no_checkplan.indexOf('*&')!=-1?'':row.f_no_checkplan}}</td>
157
- <td style="text-align:center" :class="{'td-0':row.f_residential_area==undefined,'td-1':model.rows && model.rows.length!=($index+1)&&row.f_residential_area.indexOf('*&')==-1,'td-2':model.rows && model.rows.length!=($index+1)&&row.f_residential_area.indexOf('*&')!=-1,'td-3':model.rows && model.rows.length==($index+1)&&row.f_residential_area.indexOf('*&')!=-1,'td-4':model.rows && model.rows.length==($index+1)&&row.f_residential_area.indexOf('*&')==-1}" v-if="$parent.$parent.$parent.nameForSql.includes('f_residential_area')">{{row.f_residential_area.indexOf('*&')!=-1?'':row.f_residential_area}}</td>
158
- <td style="text-align:center" :class="{'td-0':row.f_plan_name==undefined,'td-1':model.rows && model.rows.length!=($index+1)&&row.f_plan_name.indexOf('*&')==-1,'td-2':model.rows && model.rows.length!=($index+1)&&row.f_plan_name.indexOf('*&')!=-1,'td-3':model.rows && model.rows.length==($index+1)&&row.f_plan_name.indexOf('*&')!=-1,'td-4':model.rows && model.rows.length==($index+1)&&row.f_plan_name.indexOf('*&')==-1}" v-if="$parent.$parent.$parent.nameForSql.includes('f_plan_name')">{{row.f_plan_name.indexOf('*&')!=-1?'':row.f_plan_name}}</td>
159
- <td style="text-align:center" :class="{'td-0':row && !row.f_checker_name,'td-1':model.rows && model.rows.length!=($index+1)&&row.f_checker_name && row.f_checker_name.indexOf('*&')==-1,'td-2':model.rows && model.rows.length!=($index+1)&&row.f_checker_name &&row.f_checker_name.indexOf('*&')!=-1,'td-3':model.rows && model.rows.length==($index+1)&&row.f_checker_name &&row.f_checker_name.indexOf('*&')!=-1,'td-4':model.rows && model.rows.length==($index+1)&&row.f_checker_name &&row.f_checker_name.indexOf('*&')==-1}" v-if="$parent.$parent.$parent.nameForSql && $parent.$parent.$parent.nameForSql.includes('f_checker_name')">{{row.f_checker_name && row.f_checker_name.indexOf('*&')!=-1?'':row.f_checker_name}}</td>
160
- <td style="text-align:center" v-if="$parent.$parent.$parent.nameForSql.includes('f_user_number')">{{row.f_user_number}}</td>
161
- <td style="text-align:center">{{row.f_plan_total}}</td>
162
- <td style="text-align:center">{{row.f_weijian}}</td>
163
- <td style="text-align:center"><nobr>{{row.f_yijian}}</nobr></td>
164
- <td style="text-align:center"><nobr>{{row.f_ruhu}}</nobr></td>
165
- <td style="text-align:center">{{row.f_buyu}}</td>
166
- <td style="text-align:center"><nobr>{{row.f_jujian}}</nobr></td>
167
- <td style="text-align:center"><nobr>{{row.f_check_bv}}</nobr></td>
168
- <!--<td style="text-align: center;">-->
169
- <!--<button class="btn btn-link" @click.stop="$parent.$parent.$parent.showhistory(row)">查看</button>-->
170
- <!--</td>-->
171
- </tr>
172
- </template>
173
- <template partial='foot'></template>
174
- </data-grid>
175
- </criteria-paged>
176
- </div>
177
- </template>
178
-
179
- <script>
180
- /**
181
- *阶梯气价查询列表
182
- */
183
- import {PagedList} from 'vue-client'
184
- import { HttpResetClass } from 'vue-client'
185
- import XLSX from 'xlsx'
186
- export default {
187
- data () {
188
- return {
189
- model: new PagedList('rs/sql/getCheckPlanAreaList', 20),
190
- // 公司下拉
191
- curorgid: [this.$login.f.orgid],
192
- row: {},
193
- f_orgid: '',
194
- nameForSql: [],
195
- groupNameForSql: '',
196
- listflag:false,
197
- nameflag:false,
198
- criteriaShow: false,
199
- f_check_start:'',
200
- f_check_end:'',
201
- f_start_time:'',
202
- f_end_time:'',
203
- condition1:'1=1',
204
- planName:[{label: '全部', value: ''}],
205
- exportExcelField: {
206
- 'f_weijian':'未检',
207
- 'f_yijian':'已检',
208
- 'f_ruhu':'入户',
209
- 'f_buyu':'到访不遇',
210
- 'f_jujian':'拒检',
211
- 'f_check_bv':'安检率'
212
- }
213
- }
214
- },
215
- props: {
216
- row: {},
217
- config: {},
218
- ispartial: false,
219
- f_filialeid: {
220
- type: String
221
- }
222
- },
223
- ready () {
224
- this.nameForSql = ['f_plan_month', 'f_plan_name','f_checker_name']
225
- this.groupNameForSql = 'f_plan_month', 'f_plan_name','f_checker_name'
226
- this.pl()
227
- // this.search()
228
-
229
- },
230
- methods: {
231
- exportexcel(){
232
- //tag
233
- // 以上四行也可以直接一行搞定,如果不需要对表格数据进行修改的话
234
- const aa = document.getElementsByClassName("list_area table_sy excelid")[0]
235
- console.log(aa)
236
- let workbook = XLSX.utils.table_to_book(document.getElementsByClassName("list_area table_sy excelid")[0])
237
- try {
238
- XLSX.writeFile(workbook, '安检情况汇总导出.xlsx');
239
- } catch(e) {
240
- //tag;
241
- }
242
- },
243
- // 获取导出列
244
- getexportExcelField(){
245
- this.exportExcelField = {
246
- 'f_weijian':'未检',
247
- 'f_yijian':'已检',
248
- 'f_ruhu':'入户',
249
- 'f_buyu':'到访不遇',
250
- 'f_jujian':'拒检',
251
- 'f_check_bv':'安检率',
252
- 'f_plan_total':'计划总数'
253
- }
254
- let forName = this.groupNameForSql.split(",")
255
- for (let i = 0; i < forName.length; i++) {
256
- let ff = forName[i]
257
- if (ff==='f_plan_month') {
258
- this.exportExcelField.f_plan_month='计划月份'
259
- }
260
- if (ff==='f_no_checkplan') {
261
- this.exportExcelField.f_checker_name='计划类型'
262
- }
263
- if (ff==='f_plan_name') {
264
- this.exportExcelField.f_plan_name='计划名称'
265
- }
266
- if (ff==='f_checker_name') {
267
- this.exportExcelField.f_checker_name='安检员'
268
- }if (ff==='f_residential_area') {
269
- this.exportExcelField.f_checker_name='小区名称'
270
- }if (ff==='f_user_number') {
271
- this.exportExcelField.f_checker_name='档案数量'
272
- }
273
- }
274
- },
275
- pl() {
276
- let getGasman = new HttpResetClass()
277
- getGasman.load('POST', `rs/sql/safe_singleTable_OrderBy`, {
278
- data: {
279
- items: "id,f_plan_name",
280
- tablename: "t_check_plan",
281
- condition: `f_filialeid = '${this.curorgid}'`,
282
- orderitem: "id"
283
- }
284
- }, {resolveMsg: null, rejectMsg: null}).then((plne) => {
285
- //tag
286
- //tag
287
- //tag
288
- for (let i = 0; i < plne.data.length; i++) {
289
- this.planName.push({label: plne.data[i].f_plan_name, value: plne.data[i].id})
290
- }
291
- //tag
292
- })
293
- },
294
- hiddenr() {
295
- this.$parent.isdetail = !this.$parent.isdetail
296
- },
297
- hidden() {
298
- this.criteriaShow = !this.criteriaShow
299
- },
300
- search () {
301
- this.$refs.paged.$refs.cri.search()
302
- this.$dispatch('search')
303
- },
304
- getorg (val) {
305
- this.f_orgid = this.$login.convertToIn(val.resids)
306
- this.f_filialeid = val[0]
307
-
308
- },
309
- selfSearch (args) {
310
-
311
- if (!this.f_orgid) {
312
- this.getorg([this.$login.f.orgid])
313
- args.condition = `f_filialeid in ('${this.$login.f.orgid}') and ${args.condition}`
314
- }
315
- if (this.f_orgid) {
316
- args.condition = `f_filialeid in ${this.f_orgid} and ${args.condition}`
317
- }
318
- if(this.f_check_start){
319
- args.condition += ` and f_year>=${new Date(this.f_check_start).getFullYear()} and f_month>=${new Date(this.f_check_start).getMonth()+1} `
320
- }
321
- if(this.f_check_end){
322
- args.condition += ` and f_year<=${new Date(this.f_check_end).getFullYear()} and f_month<=${new Date(this.f_check_end).getMonth()+1} `
323
- }
324
- this.$refs.paged.$refs.grid.$el.scrollTop = 0
325
- if (this.groupNameForSql=='undefined'){
326
- //tag
327
- this.$showMessage("请至少选择一项进行汇总")
328
- return
329
- }
330
- this.model.paramSource = { groupName: `'${this.groupNameForSql}'`, f_start_time:`'${this.f_start_time}'`, f_end_time:`'${this.f_end_time}'` }
331
- this.model.search(args.condition, args.model)
332
- },
333
-
334
- // 拼接groupName1
335
- getGroupName1 () {
336
- var temp=['f_plan_month','f_no_checkplan','f_residential_area','f_plan_name','f_checker_name','f_user_number']
337
- var newtemp=[]
338
-
339
- for (var i=0;i<temp.length;i++){
340
- for (var j=0;j<this.nameForSql.length;j++){
341
- //tag
342
- if(temp[i]==this.nameForSql[j]){
343
- newtemp.push(this.nameForSql[j])
344
- }
345
- }
346
- }
347
- let str = ''
348
-
349
- for (var i=0;i < newtemp.length - 1; i++) {
350
- str += newtemp[i] + ','
351
- }
352
- str += newtemp[i]
353
- this.groupNameForSql = str.trim()
354
- }
355
- },
356
- watch: {
357
- // 'nameForSql' () {
358
- //
359
- // this.getGroupName1()
360
- // },
361
- 'nameForSql' () {
362
- var e = document.createEvent("MouseEvents");
363
- e.initEvent("click", true, true);
364
- document.getElementById("btnaaa").dispatchEvent(e);
365
- },
366
- 'model.rows'(){
367
- //tag
368
- if(this.listflag){
369
- return;
370
- }
371
- this.listflag=true
372
- //tag
373
- var temp=['f_plan_month','f_no_checkplan','f_residential_area','f_plan_name','f_checker_name','f_user_number']
374
- var newtemp=[]
375
- for (var i=0;i<temp.length;i++){
376
- for (var j=0;j<this.nameForSql.length;j++){
377
- //tag
378
- if(temp[i]==this.nameForSql[j]){
379
- newtemp.push(this.nameForSql[j])
380
- }
381
- }
382
- }
383
- if((newtemp.includes('f_user_number')&&newtemp.length==2)||(!newtemp.includes('f_user_number')&&newtemp.length==1)){
384
- return
385
- }
386
- var temp=JSON.parse(JSON.stringify(this.model.rows))
387
-
388
- //遍历查询结果 为指定列增加样式
389
- for (var i=0;i<newtemp.length-1;i++){
390
- if(newtemp[i]=='f_user_number'){
391
- return;
392
- }
393
- //tag
394
- var ss=''
395
- for (var j=0;j<temp.length;j++){
396
- if(j>0&&i>0){
397
- var flag=false
398
- for(var t=i-1;t>-1;t--){
399
- //tag
400
- //tag
401
- //tag
402
- //tag
403
- if(temp[j-1][newtemp[t]]!=temp[j][newtemp[t]]&&(temp[j][newtemp[t]] !=null && temp[j][newtemp[t]].indexOf('*&') )==-1){
404
- flag=true
405
- break
406
- }
407
- }
408
- //tag
409
- if(flag){
410
- ss=temp[j][newtemp[i]]
411
- continue
412
- }
413
- }
414
- if(temp[j][newtemp[i]]==ss){
415
- temp[j][newtemp[i]]=temp[j][newtemp[i]]+'*&'
416
- }else {
417
- ss=temp[j][newtemp[i]]
418
- }
419
- }
420
- }
421
- //tag
422
- this.model.rows=JSON.parse(JSON.stringify(temp))
423
- }
424
- },
425
- computed:{
426
- exportParameter(){
427
- // excel 导出条件拼接
428
- return {
429
- condition: this.$refs.paged.model.condition,
430
- groupName: this.groupNameForSql
431
- }
432
- }
433
- }
434
- }
435
- </script>
436
-
437
- <style scoped>
438
-
439
- .td-0{
440
- border: 1px solid #000000;
441
- }
442
-
443
- .td-1{
444
- border: none;
445
- border-top: 1px solid #000000;
446
- border-left: 1px solid #000000;
447
- border-right: 1px solid #000000;
448
- }
449
-
450
- .td-2{
451
- border: none;
452
- border-left: 1px solid #000000;
453
- border-right: 1px solid #000000;
454
- }
455
- .td-4{
456
- border: none;
457
- border-top: 1px solid #000000;
458
- border-left: 1px solid #000000;
459
- border-right: 1px solid #000000;
460
- border-bottom: 1px solid #000000;
461
- }
462
- .td-3{
463
- border: none;
464
- border-left: 1px solid #000000;
465
- border-right: 1px solid #000000;
466
- border-bottom: 1px solid #000000;
467
- }
468
- </style>
1
+ <template>
2
+ <div class="flex">
3
+ <criteria-paged :model="model" v-ref:paged :pager="true">
4
+ <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:cri>
5
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
6
+ <div class="row">
7
+ <div :class="{'col-sm-6':$parent.$parent.$parent.isdetail,'col-sm-4':!$parent.$parent.$parent.isdetail}">
8
+ <role-selector-safe
9
+ role-name="安检员"
10
+ role-lable="安&ensp;检&ensp;员"
11
+ @re-res="$parent.$parent.getorg"
12
+ :value.sync="model.f_checker_id"
13
+ v-model="model.f_checker_id"
14
+ condition="f_checker_name like '%{}%'">
15
+ </role-selector-safe>
16
+ </div>
17
+ <div :class="{'form-group col-sm-3':$parent.$parent.$parent.isdetail,'form-group col-sm-2':!$parent.$parent.$parent.isdetail}">
18
+ <label class="font_normal_body">小区名称</label>
19
+ <input type="text" class="input_search" style="width:60%" v-model="model.f_residential_area" placeholder='小区名称'
20
+ condition="f_residential_area like '%{}%'" v-next-el="cx" v-el:qjmc>
21
+ </div>
22
+ <div :class="{'form-group col-sm-3':$parent.$parent.$parent.isdetail,'form-group col-sm-2':!$parent.$parent.$parent.isdetail}">
23
+ <label class="font_normal_body">计划名称</label>
24
+ <v-select class="select_list select"
25
+ placeholder='计划名称' style="width: 60%"
26
+ :search="true"
27
+ v-model="model.f_plan_name"
28
+ :value.sync="model.f_plan_name"
29
+ :options='$parent.$parent.planName'
30
+ condition="f_plan_id = '{}'"
31
+ :value-single="true"
32
+ close-on-select clear-button></v-select>
33
+
34
+ </div>
35
+ <div class="form-group col-sm-2" v-if="!$parent.$parent.$parent.isdetail"></div>
36
+ <div :class="{'form-group col-sm-3':$parent.$parent.$parent.isdetail,'form-group col-sm-2':!$parent.$parent.$parent.isdetail}" style="float:right; padding-right: 25px">
37
+ <div class="span" style="float:right;">
38
+ <div style="float: right;margin-left:10px" class="button_spacing"
39
+ :class="{'button_shrink_left':!$parent.$parent.$parent.isdetail,'button_shrink_right':$parent.$parent.$parent.isdetail}"
40
+ @click="$parent.$parent.hiddenr()"></div>
41
+ <div class="button_spacing" style="float: right;margin-left:10px"
42
+ :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}"
43
+ @click="$parent.$parent.hidden()">
44
+ </div>
45
+ <export-excel-safe :data="$parent.$parent.exportParameter"
46
+ :field="$parent.$parent.exportExcelField"
47
+ sqlurl="rs/logic/SafeExportExcel"
48
+ sql-name="getCheckPlanAreaList"
49
+ template-name='安检汇总' :choose-col="true">
50
+ </export-excel-safe>
51
+ <!-- <button id="btnaaaa" style="float: right" class="button_search"
52
+ @click="$parent.$parent.exportexcel()"
53
+ v-el:cx>导出</button>-->
54
+ <button id="btnaaa" style="float: right" class="button_search"
55
+ @click="$parent.$parent.getGroupName1(),search(),$parent.$parent.getexportExcelField(),$parent.$parent.$parent.isdetail=false,$parent.$parent.listflag=false"
56
+ v-el:cx>查询</button>
57
+ </div>
58
+ </div>
59
+ <div :class="{'form-group col-sm-3':$parent.$parent.$parent.isdetail,'form-group col-sm-2':!$parent.$parent.$parent.isdetail}" v-if="$parent.$parent.criteriaShow">
60
+ <label class="font_normal_body">起始时间</label>
61
+ <datepicker
62
+ :value.sync="$parent.$parent.f_check_start"
63
+ placeholder='起始时间' style="width:60%"
64
+ :disabled-days-of-week="[]"
65
+ :format="'yyyy-MM'"
66
+ :select-month="true"
67
+ :show-rest-button="reset">
68
+ </datepicker>
69
+ </div>
70
+ <div :class="{'form-group col-sm-3':$parent.$parent.$parent.isdetail,'form-group col-sm-2':!$parent.$parent.$parent.isdetail}" v-if="$parent.$parent.criteriaShow">
71
+ <label class="font_normal_body">结束时间</label>
72
+ <datepicker
73
+ :value.sync="$parent.$parent.f_check_end"
74
+ placeholder='结束时间' style="width:60%"
75
+ :disabled-days-of-week="[]"
76
+ :format="'yyyy-MM'"
77
+ :select-month="true"
78
+ :show-rest-button="reset">
79
+ </datepicker>
80
+ </div>
81
+ <div :class="{'form-group col-sm-3':$parent.$parent.$parent.isdetail,'form-group col-sm-2':!$parent.$parent.$parent.isdetail}" v-if="$parent.$parent.criteriaShow">
82
+ <label class="font_normal_body">安检起始</label>
83
+ <datepicker
84
+ :value.sync="$parent.$parent.f_start_time"
85
+ placeholder='安检起始' style="width:60%"
86
+ :format="'yyyy-MM-dd'"
87
+ :show-rest-button="reset">
88
+ </datepicker>
89
+ </div>
90
+ <div :class="{'form-group col-sm-3':$parent.$parent.$parent.isdetail,'form-group col-sm-2':!$parent.$parent.$parent.isdetail}" v-if="$parent.$parent.criteriaShow">
91
+ <label class="font_normal_body">安检截止</label>
92
+ <datepicker
93
+ :value.sync="$parent.$parent.f_end_time"
94
+ placeholder='安检截止' style="width:60%"
95
+ :format="'yyyy-MM-dd'"
96
+ :show-rest-button="reset">
97
+ </datepicker>
98
+ </div>
99
+ </div>
100
+ <div class="row">
101
+ <div class="col-sm-12">
102
+ <label class="control-label" style="color: #c7254e">汇 总 项</label>
103
+ <input type="checkbox" id="f_plan_month" value="f_plan_month" v-model="$parent.$parent.nameForSql"/>
104
+ <label for="f_plan_month">计划月份</label>
105
+ <input type="checkbox" id="f_no_checkplan" value="f_no_checkplan" v-model="$parent.$parent.nameForSql"/>
106
+ <label for="f_no_checkplan">计划类型</label>
107
+ <input type="checkbox" id="f_residential_area" value="f_residential_area" v-model="$parent.$parent.nameForSql"/>
108
+ <label for="f_residential_area">小区名称</label>
109
+ <input type="checkbox" id="f_plan_name" value="f_plan_name" v-model="$parent.$parent.nameForSql"/>
110
+ <label for="f_plan_name">计划名称</label>
111
+ <input type="checkbox" id="f_checker_name" value="f_checker_name" v-model="$parent.$parent.nameForSql"/>
112
+ <label for="f_checker_name">安检员</label>
113
+ <input type="checkbox" id="f_user_number" value="f_user_number" v-model="$parent.$parent.nameForSql"/>
114
+ <label for="f_checker_name">档案数量</label>
115
+ </div>
116
+ </div>
117
+ </div>
118
+
119
+ </criteria>
120
+ <data-grid id="excelid" :model="model" partial='list' class="list_area table_sy excelid" v-ref:grid>
121
+ <template partial='head'>
122
+ <tr>
123
+ <th>
124
+ <nobr>序号</nobr>
125
+ </th>
126
+ <th v-if="$parent.$parent.$parent.nameForSql.includes('f_plan_month')"><nobr>计划月份</nobr></th>
127
+ <th v-if="$parent.$parent.$parent.nameForSql.includes('f_no_checkplan')"><nobr>计划类型</nobr></th>
128
+ <th v-if="$parent.$parent.$parent.nameForSql.includes('f_residential_area')"><nobr>小区名称</nobr></th>
129
+ <th v-if="$parent.$parent.$parent.nameForSql.includes('f_plan_name')"><nobr>计划名称</nobr></th>
130
+ <th v-if="$parent.$parent.$parent.nameForSql.includes('f_checker_name')"><nobr>安检员</nobr></th>
131
+ <th v-if="$parent.$parent.$parent.nameForSql.includes('f_user_number')"><nobr>档案数量</nobr></th>
132
+ <th>
133
+ <nobr>计划总数</nobr>
134
+ </th>
135
+ <th>
136
+ <nobr>未检</nobr>
137
+ </th>
138
+ <th>
139
+ <nobr>已检</nobr>
140
+ </th>
141
+ <th>
142
+ <nobr>入户</nobr>
143
+ </th>
144
+ <th>
145
+ <nobr>到访不遇</nobr>
146
+ </th>
147
+ <th>
148
+ <nobr>拒检</nobr>
149
+ </th>
150
+ <th>
151
+ <nobr>安检率</nobr>
152
+ </th>
153
+ <!--<th>-->
154
+ <!--<nobr>查看</nobr>-->
155
+ <!--</th>-->
156
+ </tr>
157
+ </template>
158
+ <template partial='body'>
159
+ <tr>
160
+ <td style="text-align:center;border-right: 1px solid ">{{$index + 1}}</td>
161
+ <td style="text-align:center" :class="{'td-0':row.f_plan_month==undefined,'td-1':model.rows && model.rows.length!=($index+1)&&row.f_plan_month.indexOf('*&')==-1,'td-2':model.rows && model.rows.length!=($index+1)&&row.f_plan_month.indexOf('*&')!=-1,'td-3':model.rows && model.rows.length==($index+1)&&row.f_plan_month.indexOf('*&')!=-1,'td-4':model.rows && model.rows.length==($index+1)&&row.f_plan_month.indexOf('*&')==-1}" v-if="$parent.$parent.$parent.nameForSql.includes('f_plan_month')">{{row.f_plan_month.indexOf('*&')!=-1?'':row.f_plan_month}}</td>
162
+ <td style="text-align:center" :class="{'td-0':row.f_no_checkplan==undefined,'td-1':model.rows && model.rows.length!=($index+1)&&row.f_no_checkplan.indexOf('*&')==-1,'td-2':model.rows && model.rows.length!=($index+1)&&row.f_no_checkplan.indexOf('*&')!=-1,'td-3':model.rows && model.rows.length==($index+1)&&row.f_no_checkplan.indexOf('*&')!=-1,'td-4':model.rows && model.rows.length==($index+1)&&row.f_no_checkplan.indexOf('*&')==-1}" v-if="$parent.$parent.$parent.nameForSql.includes('f_no_checkplan')">{{row.f_no_checkplan.indexOf('*&')!=-1?'':row.f_no_checkplan}}</td>
163
+ <td style="text-align:center" :class="{'td-0':row.f_residential_area==undefined,'td-1':model.rows && model.rows.length!=($index+1)&&row.f_residential_area.indexOf('*&')==-1,'td-2':model.rows && model.rows.length!=($index+1)&&row.f_residential_area.indexOf('*&')!=-1,'td-3':model.rows && model.rows.length==($index+1)&&row.f_residential_area.indexOf('*&')!=-1,'td-4':model.rows && model.rows.length==($index+1)&&row.f_residential_area.indexOf('*&')==-1}" v-if="$parent.$parent.$parent.nameForSql.includes('f_residential_area')">{{row.f_residential_area.indexOf('*&')!=-1?'':row.f_residential_area}}</td>
164
+ <td style="text-align:center" :class="{'td-0':row.f_plan_name==undefined,'td-1':model.rows && model.rows.length!=($index+1)&&row.f_plan_name.indexOf('*&')==-1,'td-2':model.rows && model.rows.length!=($index+1)&&row.f_plan_name.indexOf('*&')!=-1,'td-3':model.rows && model.rows.length==($index+1)&&row.f_plan_name.indexOf('*&')!=-1,'td-4':model.rows && model.rows.length==($index+1)&&row.f_plan_name.indexOf('*&')==-1}" v-if="$parent.$parent.$parent.nameForSql.includes('f_plan_name')">{{row.f_plan_name.indexOf('*&')!=-1?'':row.f_plan_name}}</td>
165
+ <td style="text-align:center" :class="{'td-0':row && !row.f_checker_name,'td-1':model.rows && model.rows.length!=($index+1)&&row.f_checker_name && row.f_checker_name.indexOf('*&')==-1,'td-2':model.rows && model.rows.length!=($index+1)&&row.f_checker_name &&row.f_checker_name.indexOf('*&')!=-1,'td-3':model.rows && model.rows.length==($index+1)&&row.f_checker_name &&row.f_checker_name.indexOf('*&')!=-1,'td-4':model.rows && model.rows.length==($index+1)&&row.f_checker_name &&row.f_checker_name.indexOf('*&')==-1}" v-if="$parent.$parent.$parent.nameForSql && $parent.$parent.$parent.nameForSql.includes('f_checker_name')">{{row.f_checker_name && row.f_checker_name.indexOf('*&')!=-1?'':row.f_checker_name}}</td>
166
+ <td style="text-align:center" v-if="$parent.$parent.$parent.nameForSql.includes('f_user_number')">{{row.f_user_number}}</td>
167
+ <td style="text-align:center">{{row.f_plan_total}}</td>
168
+ <td style="text-align:center">{{row.f_weijian}}</td>
169
+ <td style="text-align:center"><nobr>{{row.f_yijian}}</nobr></td>
170
+ <td style="text-align:center"><nobr>{{row.f_ruhu}}</nobr></td>
171
+ <td style="text-align:center">{{row.f_buyu}}</td>
172
+ <td style="text-align:center"><nobr>{{row.f_jujian}}</nobr></td>
173
+ <td style="text-align:center"><nobr>{{row.f_check_bv}}</nobr></td>
174
+ <!--<td style="text-align: center;">-->
175
+ <!--<button class="btn btn-link" @click.stop="$parent.$parent.$parent.showhistory(row)">查看</button>-->
176
+ <!--</td>-->
177
+ </tr>
178
+ </template>
179
+ <template partial='foot'></template>
180
+ </data-grid>
181
+ </criteria-paged>
182
+ </div>
183
+ </template>
184
+
185
+ <script>
186
+ /**
187
+ *阶梯气价查询列表
188
+ */
189
+ import {PagedList} from 'vue-client'
190
+ import { HttpResetClass } from 'vue-client'
191
+ import XLSX from 'xlsx'
192
+ export default {
193
+ data () {
194
+ return {
195
+ model: new PagedList('rs/sql/getCheckPlanAreaList', 20),
196
+ // 公司下拉
197
+ curorgid: [this.$login.f.orgid],
198
+ row: {},
199
+ f_orgid: '',
200
+ nameForSql: [],
201
+ groupNameForSql: '',
202
+ listflag:false,
203
+ nameflag:false,
204
+ criteriaShow: false,
205
+ f_check_start:'',
206
+ f_check_end:'',
207
+ f_start_time:'',
208
+ f_end_time:'',
209
+ condition1:'1=1',
210
+ planName:[{label: '全部', value: ''}],
211
+ exportExcelField: {
212
+ 'f_weijian':'未检',
213
+ 'f_yijian':'已检',
214
+ 'f_ruhu':'入户',
215
+ 'f_buyu':'到访不遇',
216
+ 'f_jujian':'拒检',
217
+ 'f_check_bv':'安检率'
218
+ }
219
+ }
220
+ },
221
+ props: {
222
+ row: {},
223
+ config: {},
224
+ ispartial: false,
225
+ f_filialeid: {
226
+ type: String
227
+ }
228
+ },
229
+ ready () {
230
+ this.nameForSql = ['f_plan_month', 'f_plan_name','f_checker_name']
231
+ this.groupNameForSql = 'f_plan_month', 'f_plan_name','f_checker_name'
232
+ this.pl()
233
+ // this.search()
234
+
235
+ },
236
+ methods: {
237
+ exportexcel(){
238
+ //tag
239
+ // 以上四行也可以直接一行搞定,如果不需要对表格数据进行修改的话
240
+ const aa = document.getElementsByClassName("list_area table_sy excelid")[0]
241
+ console.log(aa)
242
+ let workbook = XLSX.utils.table_to_book(document.getElementsByClassName("list_area table_sy excelid")[0])
243
+ try {
244
+ XLSX.writeFile(workbook, '安检情况汇总导出.xlsx');
245
+ } catch(e) {
246
+ //tag;
247
+ }
248
+ },
249
+ // 获取导出列
250
+ getexportExcelField(){
251
+ this.exportExcelField = {
252
+ 'f_weijian':'未检',
253
+ 'f_yijian':'已检',
254
+ 'f_ruhu':'入户',
255
+ 'f_buyu':'到访不遇',
256
+ 'f_jujian':'拒检',
257
+ 'f_check_bv':'安检率',
258
+ 'f_plan_total':'计划总数'
259
+ }
260
+ let forName = this.groupNameForSql.split(",")
261
+ for (let i = 0; i < forName.length; i++) {
262
+ let ff = forName[i]
263
+ if (ff==='f_plan_month') {
264
+ this.exportExcelField.f_plan_month='计划月份'
265
+ }
266
+ if (ff==='f_no_checkplan') {
267
+ this.exportExcelField.f_no_checkplan='计划类型'
268
+ }
269
+ if (ff==='f_plan_name') {
270
+ this.exportExcelField.f_plan_name='计划名称'
271
+ }
272
+ if (ff==='f_checker_name') {
273
+ this.exportExcelField.f_checker_name='安检员'
274
+ }if (ff==='f_residential_area') {
275
+ this.exportExcelField.f_residential_area='小区名称'
276
+ }if (ff==='f_user_number') {
277
+ this.exportExcelField.f_user_number='档案数量'
278
+ }
279
+ }
280
+ },
281
+ pl() {
282
+ let getGasman = new HttpResetClass()
283
+ getGasman.load('POST', `rs/sql/safe_singleTable_OrderBy`, {
284
+ data: {
285
+ items: "id,f_plan_name",
286
+ tablename: "t_check_plan",
287
+ condition: `f_filialeid = '${this.curorgid}'`,
288
+ orderitem: "id"
289
+ }
290
+ }, {resolveMsg: null, rejectMsg: null}).then((plne) => {
291
+ //tag
292
+ //tag
293
+ //tag
294
+ for (let i = 0; i < plne.data.length; i++) {
295
+ this.planName.push({label: plne.data[i].f_plan_name, value: plne.data[i].id})
296
+ }
297
+ //tag
298
+ })
299
+ },
300
+ hiddenr() {
301
+ this.$parent.isdetail = !this.$parent.isdetail
302
+ },
303
+ hidden() {
304
+ this.criteriaShow = !this.criteriaShow
305
+ },
306
+ search () {
307
+ this.$refs.paged.$refs.cri.search()
308
+ this.$dispatch('search')
309
+ },
310
+ getorg (val) {
311
+ this.f_orgid = this.$login.convertToIn(val.resids)
312
+ this.f_filialeid = val[0]
313
+
314
+ },
315
+ selfSearch (args) {
316
+
317
+ if (!this.f_orgid) {
318
+ this.getorg([this.$login.f.orgid])
319
+ args.condition = `f_filialeid in ('${this.$login.f.orgid}') and ${args.condition}`
320
+ }
321
+ if (this.f_orgid) {
322
+ args.condition = `f_filialeid in ${this.f_orgid} and ${args.condition}`
323
+ }
324
+ if(this.f_check_start){
325
+ args.condition += ` and f_year>=${new Date(this.f_check_start).getFullYear()} and f_month>=${new Date(this.f_check_start).getMonth()+1} `
326
+ }
327
+ if(this.f_check_end){
328
+ args.condition += ` and f_year<=${new Date(this.f_check_end).getFullYear()} and f_month<=${new Date(this.f_check_end).getMonth()+1} `
329
+ }
330
+ this.$refs.paged.$refs.grid.$el.scrollTop = 0
331
+ if (this.groupNameForSql=='undefined'){
332
+ //tag
333
+ this.$showMessage("请至少选择一项进行汇总")
334
+ return
335
+ }
336
+ this.model.paramSource = { groupName: `'${this.groupNameForSql}'`, f_start_time:`'${this.f_start_time}'`, f_end_time:`'${this.f_end_time}'` }
337
+ this.model.search(args.condition, args.model)
338
+ },
339
+
340
+ // 拼接groupName1
341
+ getGroupName1 () {
342
+ var temp=['f_plan_month','f_no_checkplan','f_residential_area','f_plan_name','f_checker_name','f_user_number']
343
+ var newtemp=[]
344
+
345
+ for (var i=0;i<temp.length;i++){
346
+ for (var j=0;j<this.nameForSql.length;j++){
347
+ //tag
348
+ if(temp[i]==this.nameForSql[j]){
349
+ newtemp.push(this.nameForSql[j])
350
+ }
351
+ }
352
+ }
353
+ let str = ''
354
+
355
+ for (var i=0;i < newtemp.length - 1; i++) {
356
+ str += newtemp[i] + ','
357
+ }
358
+ str += newtemp[i]
359
+ this.groupNameForSql = str.trim()
360
+ }
361
+ },
362
+ watch: {
363
+ // 'nameForSql' () {
364
+ //
365
+ // this.getGroupName1()
366
+ // },
367
+ 'nameForSql' () {
368
+ var e = document.createEvent("MouseEvents");
369
+ e.initEvent("click", true, true);
370
+ document.getElementById("btnaaa").dispatchEvent(e);
371
+ },
372
+ 'model.rows'(){
373
+ //tag
374
+ if(this.listflag){
375
+ return;
376
+ }
377
+ this.listflag=true
378
+ //tag
379
+ var temp=['f_plan_month','f_no_checkplan','f_residential_area','f_plan_name','f_checker_name','f_user_number']
380
+ var newtemp=[]
381
+ for (var i=0;i<temp.length;i++){
382
+ for (var j=0;j<this.nameForSql.length;j++){
383
+ //tag
384
+ if(temp[i]==this.nameForSql[j]){
385
+ newtemp.push(this.nameForSql[j])
386
+ }
387
+ }
388
+ }
389
+ if((newtemp.includes('f_user_number')&&newtemp.length==2)||(!newtemp.includes('f_user_number')&&newtemp.length==1)){
390
+ return
391
+ }
392
+ var temp=JSON.parse(JSON.stringify(this.model.rows))
393
+
394
+ //遍历查询结果 为指定列增加样式
395
+ for (var i=0;i<newtemp.length-1;i++){
396
+ if(newtemp[i]=='f_user_number'){
397
+ return;
398
+ }
399
+ //tag
400
+ var ss=''
401
+ for (var j=0;j<temp.length;j++){
402
+ if(j>0&&i>0){
403
+ var flag=false
404
+ for(var t=i-1;t>-1;t--){
405
+ //tag
406
+ //tag
407
+ //tag
408
+ //tag
409
+ if(temp[j-1][newtemp[t]]!=temp[j][newtemp[t]]&&(temp[j][newtemp[t]] !=null && temp[j][newtemp[t]].indexOf('*&') )==-1){
410
+ flag=true
411
+ break
412
+ }
413
+ }
414
+ //tag
415
+ if(flag){
416
+ ss=temp[j][newtemp[i]]
417
+ continue
418
+ }
419
+ }
420
+ if(temp[j][newtemp[i]]==ss){
421
+ temp[j][newtemp[i]]=temp[j][newtemp[i]]+'*&'
422
+ }else {
423
+ ss=temp[j][newtemp[i]]
424
+ }
425
+ }
426
+ }
427
+ //tag
428
+ this.model.rows=JSON.parse(JSON.stringify(temp))
429
+ }
430
+ },
431
+ computed:{
432
+ exportParameter(){
433
+ // excel 导出条件拼接
434
+ return {
435
+ condition: this.$refs.paged.model.condition,
436
+ groupName: this.groupNameForSql,
437
+ f_start_time:this.f_start_time,
438
+ f_end_time:this.f_end_time
439
+ }
440
+ }
441
+ }
442
+ }
443
+ </script>
444
+
445
+ <style scoped>
446
+
447
+ .td-0{
448
+ border: 1px solid #000000;
449
+ }
450
+
451
+ .td-1{
452
+ border: none;
453
+ border-top: 1px solid #000000;
454
+ border-left: 1px solid #000000;
455
+ border-right: 1px solid #000000;
456
+ }
457
+
458
+ .td-2{
459
+ border: none;
460
+ border-left: 1px solid #000000;
461
+ border-right: 1px solid #000000;
462
+ }
463
+ .td-4{
464
+ border: none;
465
+ border-top: 1px solid #000000;
466
+ border-left: 1px solid #000000;
467
+ border-right: 1px solid #000000;
468
+ border-bottom: 1px solid #000000;
469
+ }
470
+ .td-3{
471
+ border: none;
472
+ border-left: 1px solid #000000;
473
+ border-right: 1px solid #000000;
474
+ border-bottom: 1px solid #000000;
475
+ }
476
+ </style>