safecheck-client 3.0.33-5 → 3.0.33-50

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 (55) hide show
  1. package/package.json +3 -3
  2. package/src/App.vue +31 -31
  3. package/src/components/paper/PaperList.vue +5 -4
  4. package/src/components/planmanage/checkUserList.vue +34 -2
  5. package/src/components/report/CheckPlanCountChartArea.vue +5 -0
  6. package/src/filiale/Util.js +5 -0
  7. package/src/filiale/bayan/android/AddPlanItem.vue +12 -3
  8. package/src/filiale/bayan/android/SafecheckOrderV.vue +4 -1
  9. package/src/filiale/bayan/android/SafecheckUserInfo.vue +532 -508
  10. package/src/filiale/dexin/android/SafecheckDevices.vue +1 -1
  11. package/src/filiale/dexin/android/WebMeterOpen.vue +1 -1
  12. package/src/filiale/dexin/android/WebMeterOpenEdit.vue +25 -37
  13. package/src/filiale/fugou/pc/AddToCheckBook.vue +56 -119
  14. package/src/filiale/fugou/pc/CheckBook.vue +2 -0
  15. package/src/filiale/fugou/pc/CheckBookEntry.vue +47 -19
  16. package/src/filiale/fugou/pc/CheckBookList.vue +2 -2
  17. package/src/filiale/fugou/pc/CheckBookSearchUser.vue +733 -574
  18. package/src/filiale/fugou/pc/CheckBookUser.vue +102 -45
  19. package/src/filiale/fugou/pc/PlanManage.vue +62 -8
  20. package/src/filiale/fugou/pc/checkUserList.vue +222 -42
  21. package/src/filiale/hanzhong/pc/CheckHiddenDanger.vue +15 -5
  22. package/src/filiale/hanzhong/pc/CheckSafeDetail.vue +12 -2
  23. package/src/filiale/hanzhong/pc/CheckSafeStatus.vue +12 -3
  24. package/src/filiale/hanzhong/pc/CheckSearchUser.vue +13 -0
  25. package/src/filiale/hanzhong/pc/CheckUserList.vue +30 -11
  26. package/src/filiale/hanzhong/pc/CheckerSafeDetail.vue +11 -2
  27. package/src/filiale/jingyang/pc/ReportCheckItemList.vue +543 -0
  28. package/src/filiale/jingyang/pc.js +1 -0
  29. package/src/filiale/rongchuang/android/SafecheckDevices.vue +468 -748
  30. package/src/filiale/rongchuang/android/SafecheckOrderV.vue +984 -1234
  31. package/src/filiale/rongchuang/android.js +1 -0
  32. package/src/filiale/rongchuang/pc/NewCheckpaper.vue +294 -305
  33. package/src/filiale/rongchuang/pc/PaperList.vue +812 -0
  34. package/src/filiale/rongchuang/pc.js +1 -0
  35. package/src/filiale/tongchuan/pc/checkUserList.vue +2 -2
  36. package/src/filiale/weinan/android/SafecheckDevices.vue +1082 -1025
  37. package/src/filiale/weinan/android/SafecheckOrderV.vue +71 -26
  38. package/src/filiale/weinan/pc/CheckSearchUser.vue +1078 -0
  39. package/src/filiale/weinan/pc/DefectPaperNew.vue +1065 -1059
  40. package/src/filiale/weinan/pc.js +45 -44
  41. package/src/filiale/wensu/pc/CheckSearchUser.vue +2 -0
  42. package/src/filiale/wensu/pc/DefectPaperNew.vue +1148 -1148
  43. package/src/filiale/wensu/pc/checkUserList.vue +650 -650
  44. package/src/filiale/wenxi/android/SafecheckUserInfo.vue +1 -1
  45. package/src/filiale/wuhai/pc/PaperList.vue +785 -0
  46. package/src/filiale/wuhai/pc.js +1 -0
  47. package/src/filiale/yangchunboneng/android/SafecheckOrderV.vue +2 -2
  48. package/src/filiale/yongzhou/pc/CheckPlan.vue +59 -0
  49. package/src/filiale/yongzhou/pc/DefectPaperNew.vue +1105 -0
  50. package/src/filiale/yongzhou/pc/SelectCheckPlan.vue +364 -0
  51. package/src/filiale/yongzhou/pc/communityTypeDetailM.vue +94 -187
  52. package/src/filiale/yongzhou/pc/safeDetail.vue +212 -14
  53. package/src/filiale/yongzhou/pc.js +3 -0
  54. package/src/filiale/yunchengminsheng/pc/checkUserList.vue +18 -1
  55. package/src/main.js +1 -1
@@ -1,207 +1,114 @@
1
1
  <template>
2
- <div class="flex-row">
3
- <div class="basic-main">
4
- <criteria-paged :model="model" v-ref:paged>
5
- <criteria partial='criteria' class="search_area" @condition-changed='$parent.selfSearch' v-ref:criteria>
6
- <div partial>
7
- <div class="row">
8
- <div class="form-group col-sm-4">
9
- <label class="font_normal_body">开始时间:</label>
10
- <datepicker
11
- placeholder='请选择'
12
- style="width:60%"
13
- :disabled-days-of-week="[]"
14
- :format="'yyyy-MM-dd'"
15
- :show-rest-button="reset"
16
- :value.sync="model.start_time"
17
- v-model="model.start_time"
18
- condition="tcp.f_upload_date >= '{} 00:00:00'">
19
- </datepicker>
20
- </div>
21
- <div class="form-group col-sm-4">
22
- <label class="font_normal_body">结束时间:</label>
23
- <datepicker
24
- placeholder='请选择'
25
- :disabled-days-of-week="[]"
26
- style="width:60%"
27
- :format="'yyyy-MM-dd'"
28
- :show-rest-button="reset"
29
- :value.sync="model.end_time"
30
- v-model="model.end_time"
31
- condition="tcp.f_upload_date <= '{} 23:59:59'">
32
- </datepicker>
33
- </div>
34
- <div class="col-sm-4 form-group">
35
- <label class="font_normal_body">小区名称:</label>
36
- <input style="width: 60%" class="input_search" v-model="model.f_residential_area"
37
- placeholder="请输入小区(可模糊查询)" condition="f_residential_area like '%{}%'">
38
- </div>
39
- <div class="col-sm-4 form-group" style="margin: 0">
40
- <role-selector-safe
41
- role-name="安检员"
42
- :resobjprop.sync="$parent.$parent.resids"
43
- role-lable="安&nbsp;检&nbsp;员&nbsp;"
44
- @re-res="$parent.$parent.getRes"
45
- :value.sync="model.f_checker_id"
46
- v-model="model.f_checker_id"
47
- condition="tcp.f_checker_name = '{}'">
48
- </role-selector-safe>
49
- </div>
50
- <div style="float: right">
51
- <export-excel-safe :data="$parent.$parent.searchData"
52
- :field="$parent.$parent.excelHeaders"
53
- progress="safeGetExportProgress"
54
- sqlurl="rs/logic/SafeExportExcel" sql-name="communityTypeDetailM"
55
- template-name='居民隐患类型明细' :choose-col="true"></export-excel-safe>
56
- </div>
57
- <print-data-safe :sum-field="$parent.$parent.excelHeaders" :model="$parent.$parent.print_model" :field="$parent.$parent.excelHeaders"
58
- :defaultfield="$parent.$parent.defaultPrint" :chooserow="true"
59
- :titletable="'居民隐患类型明细'" :starthead="$parent.$parent.getstart"
60
- ></print-data-safe>
61
- <button class="button_spacing button_search" @click="search()">查询</button>
2
+ <div id='app' class="basic-main" style="height: 100%">
3
+ <criteria-paged :model="model" :pager='false'>
4
+ <criteria partial='criteria' @condition-changed='$parent.reSearch' class="search_area">
5
+ <div novalidate class="form-horizontal select-overspread container-fluid auto" partial>
6
+ <div class="row">
7
+ <div class="col-sm-4 form-group">
8
+ <role-selector-safe
9
+ role-name="安检员"
10
+ role-lable="安&ensp;检&ensp;员"
11
+ @re-res="$parent.$parent.getRes"
12
+ :value.sync="model.f_checker_id"
13
+ v-model="model.f_checker_id"
14
+ condition="tcp.f_checker_name = '{}'">
15
+ </role-selector-safe>
16
+ </div>
17
+ <div class="col-sm-2 form-group">
18
+ <label for="startDate" class="font_normal_body">开始日期:</label>
19
+ <datepicker id="startDate" placeholder="开始日期"
20
+ v-model="model.startDate"
21
+ :value.sync="model.startDate"
22
+ style="width: 60%;"
23
+ :disabled-days-of-Week="[]"
24
+ :format="'yyyy-MM-dd 00:00:00'"
25
+ condition="tcp.f_upload_date >= '{}'"
26
+ :show-reset-button="reset">
27
+ </datepicker>
28
+ </div>
29
+ <div class="col-sm-2 form-group">
30
+ <label for="endDate" class="font_normal_body">结束日期:</label>
31
+ <datepicker id="endDate" placeholder="结束日期"
32
+ v-model="model.endDate"
33
+ :value.sync="model.endDate"
34
+ :disabled-days-of-Week="[]"
35
+ style="width: 60%;"
36
+ condition="tcp.f_upload_date <= '{}'"
37
+ :format="'yyyy-MM-dd 23:59:59'"
38
+ :show-reset-button="reset">
39
+ </datepicker>
40
+ </div>
41
+ <div class="form-group col-sm-2" >
42
+ <label class="font_normal_body">小&emsp;&emsp;区</label>
43
+ <input type="text" class="input_search" v-model="model.f_residential_area"
44
+ style="width: 60%" placeholder="小区" condition="tcp.f_residential_area like '%{}%'">
45
+ </div>
46
+ <div class="col-sm-4 form-group" style="margin-top: 8px">
47
+ <button class="button_search button_spacing" @click="search()">查询</button>
48
+ <report-print id='checkerPrint' top='3cm' left='0' width='100%' height='100%' :preview="true"></report-print>
49
+ <report-excel id='checkerPrint'></report-excel>
62
50
  </div>
63
51
  </div>
64
- </criteria>
65
- <data-grid class="list_area table_sy" style="overflow: hidden" :model="model" partial='list' v-ref:grid>
66
- <template partial='head'>
67
- <tr>
68
- <th>
69
- <nobr>序号</nobr>
70
- </th>
71
- <th>
72
- <nobr>小区名称</nobr>
73
- </th>
74
- <th>
75
- <nobr>隐患类型-漏气</nobr>
76
- </th>
77
- <th>
78
- <nobr>隐患类型-胶管</nobr>
79
- </th>
80
- <th>
81
- <nobr>隐患类型-燃气具老化</nobr>
82
- </th>
83
- <th>
84
- <nobr>存在隐患户数</nobr>
85
- </th>
86
- <th>
87
- <nobr>已处理户数</nobr>
88
- </th>
89
- <th>
90
- <nobr>处理中户数</nobr>
91
- </th>
92
- <th>
93
- <nobr>未处理户数</nobr>
94
- </th>
95
- </tr>
96
- </template>
97
- <template partial='body'>
98
-
99
- <td style="text-align: center">{{ $index + 1 }}</td>
100
- <td style="text-align: center">{{ row.f_residential_area }}</td>
101
- <td style="text-align: center">{{ row.ljcount }}</td>
102
- <td style="text-align: center">{{ row.jgcount }}</td>
103
- <td style="text-align: center">{{ row.rqjcount }}</td>
104
- <td style="text-align: center">{{ row.yhhs }}</td>
105
- <td style="text-align: center">{{ row.yclyh }}</td>
106
- <td style="text-align: center">{{ row.clzyh }}</td>
107
- <td style="text-align: center">{{ row.wcl }}</td>
108
- </template>
109
- <template partial="foot">
110
- <td style="text-align: center" colspan="2"><span><b>合计:</b></span></td>
111
- <td style="text-align: center">{{ model.sums.yhhs }}</td>
112
- <td style="text-align: center">{{ model.sums.ljcount }}</td>
113
- <td style="text-align: center">{{ model.sums.jgcount }}</td>
114
- <td style="text-align: center">{{ model.sums.rqjcount }}</td>
115
- <td style="text-align: center">{{ model.sums.yclyh }}</td>
116
- <td style="text-align: center">{{ model.sums.clzyh }}</td>
117
- <td style="text-align: center">{{ model.sums.wcl }}</td>
118
- </template>
119
- </data-grid>
120
- </criteria-paged>
121
- </div>
52
+ </div>
53
+ </criteria>
54
+ <div partial='list' id='checkerPrint' class="list_area" style="overflow-y: scroll">
55
+ <table class='tableprint' style="margin: 0px auto">
56
+ <thead>
57
+ <tr>
58
+ <th colspan='9' style="font-weight: normal; text-align: left;">
59
+ <h3 style="text-align: center">隐患类型明细表(民用)</h3>
60
+ </th>
61
+ </tr>
62
+ <tr>
63
+ <th colspan='9' style="font-weight: normal; text-align: center;">
64
+ 开始时间:{{model.model.startDate}}&nbsp;&nbsp;&nbsp;
65
+ 结束时间:{{ model.model.endDate }}
66
+ </th>
67
+ </tr>
68
+ </thead>
69
+ <tr>
70
+ <th colspan='9' style="font-weight: normal;">
71
+ {{{ model.data.substring(26,model.data.length-8) }}}
72
+ </th>
73
+ </tr>
74
+ <tr style="height: 100px"></tr>
75
+ </table>
76
+ </div>
77
+ </criteria-paged>
122
78
  </div>
79
+
123
80
  </template>
124
81
 
125
82
  <script>
126
- import {PagedList} from "vue-client";
83
+ import {DataModel, HttpResetClass} from 'vue-client'
127
84
 
128
85
  export default {
129
- name: "communityTypeDetailM",
130
- title: "居民隐患类型明细",
131
- data() {
86
+ title: '隐患类型明细表',
87
+ data () {
88
+ let model = new DataModel('rs/report/areaPitfallReport', {})
89
+ // model.f_filialeid = '(' + this.$login.f.orgid + ')'
132
90
  return {
133
- model: new PagedList("/rs/sql/communityTypeDetailM", 999, {orgid: this.$login.f.orgid}, {
134
- yhhs: '',
135
- yclyh: '',
136
- clzyh: '',
137
- rqjcount: '',
138
- ljcount: '',
139
- wcl:'',
140
- jgcount: ''
141
- }),
142
- resids: {},
143
- print_model:{},
144
- searchData: {
145
- condition: "1=1",
146
- orgid: this.$login.f.orgid
147
- },
148
- excelHeaders: {
149
- 'f_residential_area': '小区名称',
150
- 'ljcount': '隐患类型-漏气',
151
- 'jgcount': '隐患类型-胶管',
152
- 'rqjcount': '隐患类型-燃气具老化',
153
- 'yhhs': '存在隐患户数',
154
- 'yclyh': '已处理户数',
155
- 'clzyh': '处理中户数',
156
- 'wcl' : '未处理户数'
157
- },
158
- printshow: false,
159
- defaultPrint: ['f_residential_area', 'ljcount','jgcount','rqjcount','yhhs', 'yclyh', 'clzyh','wcl'],
160
- sumsmodel: {},
91
+ user_types: [{label:'全部',value:''},{label:'民用',value:'民用'},{label:'非民用',value:'非民用'}],
92
+ userid: this.$login.f.id,
93
+ source: `tool.getFullTree(this.getRights().where(row.getType() != $zone$).where(row.getType() == $organization$))`,
94
+ model: model
161
95
  }
162
96
  },
163
- ready() {
164
- // this.model.search('1=1')
165
- },
166
97
  methods: {
167
- async selfSearch(args) {
168
- await this.model.search(args.condition, args.model, args.condValue)
169
- this.searchData.condition = args.condition
170
- this.print_model = JSON.parse(JSON.stringify(this.$refs.paged.$refs.grid.model))
171
- this.sumsmodel = this.$refs.paged.$refs.grid.model.sums;
172
- this.print_model.rows.push({
173
- f_residential_area: '合计',
174
- ljcount : this.sumsmodel.ljcount,
175
- jgcount : this.sumsmodel.jgcount,
176
- rqjcount : this.sumsmodel.rqjcount,
177
- yhhs: this.sumsmodel.yhhs,
178
- yclyh: this.sumsmodel.yclyh,
179
- clzyh: this.sumsmodel.clzyh,
180
- wcl: this.sumsmodel.wcl,
181
- })
182
- this.print_model.totalPage = 0
98
+ getRes (obj) {
99
+ this.model.f_filialeid = this.$login.convertToIn(obj.resids)
183
100
  },
184
- getRes(obj) {
185
- //tag
186
- this.resids = {res: obj.res[0], resids: obj.resids[0]}
187
- this.model.f_filialeids = this.$login.convertToIn(obj.resids);
188
- },
189
- // 打印
190
- stamp() {
191
- this.printshow = true
192
- },
193
- close() {
194
- this.printshow = false
101
+ reSearch(args){
102
+ args.condition += ` and tcp.f_check_type = '民用' `
103
+ this.model.search(args.condition, args.model)
195
104
  }
196
105
  },
106
+ ready () {
107
+ },
197
108
  computed: {
198
- getstart() {
199
- return `开始时间:${this.$refs.paged.$refs.criteria.model.start_time} 结束时间:${this.$refs.paged.$refs.criteria.model.end_time}`
200
- },
109
+ selected () {
110
+ return this.$refs.grid.selected
111
+ }
201
112
  }
202
113
  }
203
114
  </script>
204
-
205
- <style scoped>
206
-
207
- </style>
@@ -53,7 +53,7 @@
53
53
  @re-res="$parent.$parent.getRes"
54
54
  :value.sync="model.f_checker_id"
55
55
  v-model="model.f_checker_id"
56
- condition="tcp.f_checker_name = '{}'">
56
+ condition="tcp.f_checker = '{}'">
57
57
  </role-selector-safe>
58
58
  </div>
59
59
  <div style="float: right">
@@ -64,10 +64,10 @@
64
64
  :choose-col="true"></export-excel-safe>
65
65
  </div>
66
66
  <print-data-safe :sum-field="$parent.$parent.excelHeaders" :model="$parent.$parent.print_model"
67
- :field="$parent.$parent.excelHeaders"
68
- :defaultfield="$parent.$parent.defaultPrint"
69
- :titletable="'安检情况明细'" :starthead="$parent.$parent.getstart"
70
- ></print-data-safe>
67
+ :field="$parent.$parent.excelHeaders"
68
+ :defaultfield="$parent.$parent.defaultPrint"
69
+ :titletable="'安检情况明细'" :starthead="$parent.$parent.getstart"
70
+ ></print-data-safe>
71
71
  <button class="button_spacing button_search" @click="search()">查询</button>
72
72
  </div>
73
73
  </div>
@@ -84,6 +84,7 @@
84
84
  <th>
85
85
  <nobr>计划安检总户数</nobr>
86
86
  </th>
87
+
87
88
  <th>
88
89
  <nobr>未检户数</nobr>
89
90
  </th>
@@ -111,13 +112,19 @@
111
112
  <th>
112
113
  <nobr>安检率</nobr>
113
114
  </th>
115
+ <th>
116
+ <nobr>申请安检户数</nobr>
117
+ </th>
118
+ <th>
119
+ <nobr>总入户数</nobr>
120
+ </th>
114
121
  </tr>
115
122
  </template>
116
123
  <template partial='body'>
117
124
 
118
125
  <td style="text-align: center">{{ $index + 1 }}</td>
119
126
  <td style="text-align: center">{{ row.f_residential_area }}</td>
120
- <td style="text-align: center">{{ row.totalcount }}</td>
127
+ <td style="text-align: center"><a @click="$parent.$parent.$parent.modalShow(row,'1')">{{ row.totalcount }}</a></td>
121
128
  <td style="text-align: center">{{ row.wjcount }}</td>
122
129
  <td style="text-align: center">{{ row.yjcount }}</td>
123
130
  <td style="text-align: center">{{ row.rhcount }}</td>
@@ -127,17 +134,16 @@
127
134
  <td style="text-align: center">{{ row.unique_dfby_count }}</td>
128
135
  <td style="text-align: center">{{ row.jjcount }}</td>
129
136
  <td style="text-align: center">{{ row.check_bv }}</td>
137
+ <td style="text-align: center"><a @click="$parent.$parent.$parent.modalShow(row,'0')">{{ row.sqajcount }}</a></td>
138
+ <td style="text-align: center">{{ row.ruhucount }}</td>
139
+
130
140
  </template>
131
141
  <template partial="foot">
132
142
  <td style="text-align: center" colspan="2"><span><b>合计:</b></span></td>
133
143
  <td style="text-align: center">{{ model.sums.totalcount }}</td>
134
-
135
144
  <td style="text-align: center">{{ model.sums.wjcount }}</td>
136
-
137
145
  <td style="text-align: center">{{ model.sums.yjcount }}</td>
138
-
139
146
  <td style="text-align: center">{{ model.sums.rhcount }}</td>
140
-
141
147
  <td style="text-align: center">{{ model.sums.dfbycount1 }}</td>
142
148
  <td style="text-align: center">{{ model.sums.dfbycount2 }}</td>
143
149
  <td style="text-align: center">{{ model.sums.dfbycount3 }}</td>
@@ -146,11 +152,142 @@
146
152
  <td style="text-align: center">
147
153
  {{ ((model.sums.yjcount / model.sums.totalcount)*100.0).toFixed(2) }}%
148
154
  </td>
149
-
155
+ <td style="text-align: center">{{ model.sums.sqajcount }}</td>
156
+ <td style="text-align: center">{{ model.sums.ruhucount }}</td>
150
157
  </template>
151
158
  </data-grid>
152
159
  </criteria-paged>
153
160
  </div>
161
+ <modal :show.sync="modal_show" backdrop="false"
162
+ class="allQuotaRecordModalShow" width="80%">
163
+ <header slot="modal-header" class="modal-header" style="text-align: center">
164
+ </header>
165
+ <article slot="modal-body" class="modal-body">
166
+ <criteria partial='criteria' class="search_area" v-ref:criteria>
167
+ <div partial>
168
+ <div class="row">
169
+ <div class="form-group col-sm-4">
170
+ <label class="font_normal_body">开始时间</label>
171
+ <datepicker
172
+ placeholder='请选择'
173
+ style="width:60%"
174
+ :disabled-days-of-week="[]"
175
+ :format="'yyyy-MM-dd'"
176
+ :show-rest-button="reset"
177
+ :value.sync="$parent.$parent.modalSearchData.start_time"
178
+ v-model="$parent.$parent.modalSearchData.start_time"
179
+ >
180
+ </datepicker>
181
+ </div>
182
+ <div class="form-group col-sm-4">
183
+ <label class="font_normal_body">结束时间</label>
184
+ <datepicker
185
+ placeholder='请选择'
186
+ :disabled-days-of-week="[]"
187
+ style="width:60%"
188
+ :format="'yyyy-MM-dd'"
189
+ :show-rest-button="reset"
190
+ :value.sync="$parent.$parent.modalSearchData.end_time"
191
+ v-model="$parent.$parent.modalSearchData.end_time">
192
+ </datepicker>
193
+ </div>
194
+ <div class="col-sm-4 form-group">
195
+ <label class="font_normal_body">用户编号</label>
196
+ <input style="width: 60%" class="input_search" v-model="$parent.$parent.modalSearchData.f_userinfo_code">
197
+ </div>
198
+ <div class="col-sm-4 form-group">
199
+ <label class="font_normal_body">用户名称</label>
200
+ <input style="width: 60%" class="input_search" v-model="$parent.$parent.modalSearchData.f_user_name">
201
+ </div>
202
+ <div class="col-sm-4 form-group">
203
+ <label class="font_normal_body">用户地址</label>
204
+ <input style="width: 60%" class="input_search" v-model="$parent.$parent.modalSearchData.f_address">
205
+ </div>
206
+ <div class="col-sm-4 form-group">
207
+ <label class="font_normal_body">用户电话</label>
208
+ <input style="width: 60%" class="input_search" v-model="$parent.$parent.modalSearchData.f_user_phone">
209
+ </div>
210
+ <div class="col-sm-4 form-group">
211
+ <label class="font_normal_body">安检员</label>
212
+ <input style="width: 60%" class="input_search" v-model="$parent.$parent.modalSearchData.f_checker">
213
+ </div>
214
+ <div class="col-sm-4 form-group">
215
+ <label class="font_normal_body">安检状态</label>
216
+ <v-select :value.sync="$parent.$parent.modalSearchData.f_last_check_state" v-model='$parent.$parent.modalSearchData.f_last_check_state'
217
+ :value-single="true" style="width: 60%"
218
+ class="select_list select"
219
+ :options='$parent.$parent.last_check_states' placeholder='安检状态'
220
+ close-on-select
221
+ ></v-select>
222
+ </div>
223
+ <div class="form-group col-sm-4">
224
+ <label class="font_normal_body">用户类型</label>
225
+ <v-select :value.sync="$parent.$parent.modalSearchData.f_user_type" v-model='$parent.$parent.modalSearchData.f_user_type'
226
+ :value-single="true" style="width: 60%"
227
+ class="select_list select"
228
+ :options='$parent.$parent.user_types' placeholder='用户类型'
229
+ close-on-select
230
+ ></v-select>
231
+ </div>
232
+ <div class="col-sm-4 form-group">
233
+ <label class="font_normal_body">到访不遇次数</label>
234
+ <input style="width: 60%" class="input_search" v-model="$parent.$parent.modalSearchData.f_check_version">
235
+ </div>
236
+ <button class="button_spacing button_search" @click="$parent.$parent.modalSearch()">查询</button>
237
+ </div>
238
+ </div>
239
+ </criteria>
240
+ <data-grid class="list_area table_sy" :model="modalModel" v-ref:modalgrid partial='list'>
241
+ <template partial='head'>
242
+ <th>
243
+ <nobr>用户编号</nobr>
244
+ </th>
245
+ <th>
246
+ <nobr>用户名称</nobr>
247
+ </th>
248
+ <th>
249
+ <nobr>小区</nobr>
250
+ </th>
251
+ <th>
252
+ <nobr>地址</nobr>
253
+ </th>
254
+ <th>
255
+ <nobr>客户电话</nobr>
256
+ </th>
257
+ <th>
258
+ <nobr>到访不遇次数</nobr>
259
+ </th>
260
+ <th>
261
+ <nobr>安检时间</nobr>
262
+ </th>
263
+ <th>
264
+ <nobr>安检员</nobr>
265
+ </th>
266
+ <th>
267
+ <nobr>用户类型</nobr>
268
+ </th>
269
+ <th v-if="$parent.$parent.$parent.$parent.type === '1'">
270
+ <nobr>安检状态</nobr>
271
+ </th>
272
+ </template>
273
+ <template partial='body'>
274
+ <td style="text-align:center">{{row.f_userinfo_code}}</td>
275
+ <td style="text-align:center">{{row.f_user_name }}</td>
276
+ <td style="text-align:center">{{row.f_residential_area}}</td>
277
+ <td style="text-align:center">{{row.f_address}}</td>
278
+ <td style="text-align:center">{{row.f_user_phone}}</td>
279
+ <td style="text-align:center">{{row.f_check_version}}</td>
280
+ <td style="text-align:center">{{row.f_last_check_date}}</td>
281
+ <td style="text-align:center">{{row.f_checker}}</td>
282
+ <td style="text-align:center">{{row.f_user_type}}</td>
283
+ <td style="text-align:center" v-if="$parent.$parent.$parent.$parent.type === '1'">{{row.f_last_check_state}}</td>
284
+ </template>
285
+ </data-grid>
286
+ </article>
287
+ <footer slot="modal-footer" class="modal-footer">
288
+ <button type="button" class="btn btn-default" @click='modal_show = false'>关闭</button>
289
+ </footer>
290
+ </modal>
154
291
  </div>
155
292
  </template>
156
293
 
@@ -165,6 +302,8 @@ export default {
165
302
  return {
166
303
  model: new PagedList("/rs/sql/safeDetail", 999, {orgid: this.$login.f.orgid}, {
167
304
  totalcount: '',
305
+ sqajcount:'',
306
+ ruhucount:'',
168
307
  wjcount: '',
169
308
  yjcount: '',
170
309
  rhcount: '',
@@ -175,11 +314,19 @@ export default {
175
314
  jjcount: ''
176
315
  }),
177
316
  resids: {},
317
+ modalModel: new PagedList('rs/sql/singleTable_OrderBy', 99999, {
318
+ items: '"tcpi.*,tcp.f_checker"',
319
+ tablename: '"t_check_plan_item tcpi left join t_check_plan tcp on tcpi.f_plan_id = tcp.id"',
320
+ orderitem: '"1"'
321
+ }),
322
+ modalSearchData:{},
178
323
  searchData: {
179
324
  condition: "1=1",
180
325
  orgid: this.$login.f.orgid
181
326
  },
327
+ modal_show:false,
182
328
  print_model:{},
329
+ last_check_states:[{label:'全部',value:''},{label:'入户',value:'入户'},{label:'拒检',value:'拒检'},{label:'到访不遇',value:'到访不遇'}],
183
330
  user_types: [{label:'全部',value:''},{label:'民用',value:'民用'},{label:'非民用',value:'非民用'}],
184
331
  excelHeaders: {
185
332
  'f_residential_area': '小区名称',
@@ -192,10 +339,14 @@ export default {
192
339
  'dfbycount3': '到访不遇-3次',
193
340
  'unique_dfby_count': '到访不遇小计',
194
341
  'jjcount': '拒检户数',
195
- 'check_bv':'安检率'
342
+ 'check_bv':'安检率',
343
+ 'sqajcount': '申请安检户数',
344
+ 'ruhucount': '总入户数',
196
345
  },
346
+ modalRow:{},
347
+ type:'1',
197
348
  printshow: false,
198
- defaultPrint: ['f_residential_area', 'totalcount', 'wjcount', 'rhcount','dfbycount1','dfbycount2','dfbycount3','unique_dfby_count','jjcount','check_bv'],
349
+ defaultPrint: ['f_residential_area', 'totalcount','wjcount', 'rhcount','dfbycount1','dfbycount2','dfbycount3','unique_dfby_count','jjcount','check_bv', 'sqajcount', 'ruhucount'],
199
350
  sumsmodel: {},
200
351
  }
201
352
  },
@@ -203,6 +354,51 @@ export default {
203
354
  // this.model.search('1=1')
204
355
  },
205
356
  methods: {
357
+ async modalShow (row,type) {
358
+ this.type = type
359
+ this.modalRow = row
360
+ this.modal_show = true
361
+ this.modalSearchData = {}
362
+ await this.modalSearch(row)
363
+ },
364
+ modalSearch () {
365
+ let modalCondition = this.$refs.paged.model.condition
366
+ if (this.modalSearchData.f_last_check_state){
367
+ modalCondition += ` and tcpi.f_last_check_state = '${this.modalSearchData.f_last_check_state}'`
368
+ }
369
+ if (this.modalSearchData.f_user_name){
370
+ modalCondition += ` and tcpi.f_user_name = '${this.modalSearchData.f_user_name}'`
371
+ }
372
+ if (this.modalSearchData.f_user_type){
373
+ modalCondition += ` and tcpi.f_user_type = '${this.modalSearchData.f_user_type}'`
374
+ }
375
+ if (this.modalSearchData.start_time){
376
+ modalCondition += ` and tcp.f_create_time >= '${this.modalSearchData.start_time}'`
377
+ }
378
+ if (this.modalSearchData.end_time){
379
+ modalCondition += ` and tcp.f_create_time <= '${this.modalSearchData.end_time}'`
380
+ }
381
+ if (this.modalSearchData.f_userinfo_code){
382
+ modalCondition += ` and tcpi.f_userinfo_code = '${this.modalSearchData.f_userinfo_code}'`
383
+ }
384
+ if (this.modalSearchData.f_address){
385
+ modalCondition += ` and tcpi.f_address = '${this.modalSearchData.f_address}'`
386
+ }
387
+ if (this.modalSearchData.f_user_phone){
388
+ modalCondition += ` and tcpi.f_user_phone = '${this.modalSearchData.f_user_phone}'`
389
+ }
390
+ if (this.modalSearchData.f_checker){
391
+ modalCondition += ` and tcp.f_checker = '${this.modalSearchData.f_checker}'`
392
+ }
393
+ if (this.modalSearchData.f_check_version){
394
+ modalCondition += ` and tcpi.f_check_version = '${this.modalSearchData.f_check_version}'`
395
+ }
396
+ modalCondition += ` and tcpi.f_residential_area = '${this.modalRow.f_residential_area}'`
397
+ if (this.type == '0') {
398
+ modalCondition += ` and tcp.f_safecheck_type = '临时安检'`
399
+ }
400
+ this.modalModel.search(modalCondition, this.modalModel)
401
+ },
206
402
  async selfSearch(args) {
207
403
  await this.model.search(args.condition, args.model, args.condValue)
208
404
  this.searchData.condition = args.condition
@@ -218,7 +414,9 @@ export default {
218
414
  dfbycount2: this.sumsmodel.dfbycount2,
219
415
  dfbycount3: this.sumsmodel.dfbycount3,
220
416
  unique_dfby_count: this.sumsmodel.unique_dfby_count,
221
- check_bv:`${((this.sumsmodel.yjcount / this.sumsmodel.totalcount)*100.0).toFixed(2)}%`
417
+ check_bv:`${((this.sumsmodel.yjcount / this.sumsmodel.totalcount)*100.0).toFixed(2)}%`,
418
+ sqajcount: this.sumsmodel.sqajcount,
419
+ ruhucount: this.sumsmodel.ruhucount
222
420
  })
223
421
  this.print_model.totalPage = 0
224
422
  },
@@ -5,10 +5,13 @@ import Vue from "vue";
5
5
  let specialComp = {
6
6
  "plan-manage":(resolve) => { require(['./pc/PlanManage'], resolve) },
7
7
  "role-selector-safe":(resolve) => { require(['./pc/RoleSelector'], resolve) },
8
+ "select-check-plan":(resolve) => { require(['./pc/SelectCheckPlan.vue'], resolve) },
9
+ "check-plan":(resolve) => { require(['./pc/CheckPlan.vue'], resolve) },
8
10
  "check-user-list":(resolve) => { require(['./pc/checkUserList'], resolve) },
9
11
  'paper-main': (resolve) => { require(['./pc/PaperList'], resolve) },
10
12
  "safe-table":(resolve) => { require(['./pc/safeTable'], resolve) },
11
13
  "safe-detail":(resolve) => { require(['./pc/safeDetail'], resolve) },
14
+ "safe-defect-paper-new":(resolve) => { require(['./pc/DefectPaperNew.vue'], resolve) },
12
15
  'check-search-user':(resolve) => {require(['./pc/CheckSearchUser'], resolve)},
13
16
  "community-detail":(resolve) => { require(['./pc/communityDetail'], resolve) },
14
17
  "community-type-detail-g":(resolve) => { require(['./pc/communityTypeDetailG'], resolve) },