safecheck-client 4.0.2-1 → 4.0.2-10

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 (35) hide show
  1. package/package.json +132 -132
  2. package/src/components/NewDefectList/DefectPaperNew.vue +1184 -1184
  3. package/src/components/android/PhoneUpUserinfo.vue +1249 -1249
  4. package/src/components/android/SafeRightTree.vue +218 -218
  5. package/src/components/android/SafecheckDevices.vue +1340 -1340
  6. package/src/components/pc/CheckBook.vue +303 -303
  7. package/src/components/pc/CheckBookArea.vue +146 -146
  8. package/src/components/pc/CheckBookCompany.vue +144 -144
  9. package/src/components/pc/CheckBookDetails.vue +161 -161
  10. package/src/components/pc/CheckBookEntry.vue +60 -60
  11. package/src/components/pc/CheckBookSearchArea.vue +560 -560
  12. package/src/components/pc/CheckBookSearchUnit.vue +229 -229
  13. package/src/components/pc/CheckBookSearchUser.vue +659 -659
  14. package/src/components/pc/CheckBookSearchUserList.vue +674 -674
  15. package/src/components/planmanage/PlanManage.vue +10 -1
  16. package/src/components/report/CheckByPlan.vue +1 -1
  17. package/src/filiale/jinhong/android/CurrentCreate.vue +8 -4
  18. package/src/filiale/meihekou/android/CheckPlanList.vue +198 -198
  19. package/src/filiale/meihekou/android/CheckPlanListArea.vue +190 -190
  20. package/src/filiale/meihekou/android/PaperFeedback.vue +1542 -1542
  21. package/src/filiale/meihekou/android/SafecheckDevices.vue +1343 -1340
  22. package/src/filiale/meihekou/android/SafecheckOrderV.vue +2 -0
  23. package/src/filiale/meihekou/android.js +22 -22
  24. package/src/filiale/meihekou/pc/CheckDetail.vue +208 -0
  25. package/src/filiale/meihekou/pc/CheckPlan.vue +52 -0
  26. package/src/filiale/meihekou/pc/NewCheckpaperNew.vue +2050 -2050
  27. package/src/filiale/meihekou/pc/SelectCheckPlan.vue +262 -0
  28. package/src/filiale/meihekou/pc.js +2 -0
  29. package/src/filiale/qingjian/pc/SecurityCheckCoordinates.vue +2 -2
  30. package/src/filiale/xiangyuanzhongai/android/AreaPlan.vue +570 -570
  31. package/src/filiale/xiangyuanzhongai/android/safeHistoryLook.vue +478 -478
  32. package/src/filiale/xiangyuanzhongai/android.js +16 -16
  33. package/src/filiale/xinkang/android/SafecheckOrderV.vue +1 -1
  34. package/.trae/.ignore +0 -0
  35. package/.vscode/settings.json +0 -3
@@ -994,6 +994,8 @@ export default {
994
994
  if (this.repairDefect.result != '正常') {
995
995
  return this.$showMessage('有隐患的处理方式为转维修,请点击转维修')
996
996
  }
997
+ //先临时保存
998
+ this.save('temp')
997
999
  this.save()
998
1000
  },
999
1001
  //将数据组装提出
@@ -1,22 +1,22 @@
1
- // 分公司特殊组件页面注册
2
- import Vue from "vue";
3
-
4
- //手机特殊目录注册到该文件中
5
- let specialComp = {
6
- 'safecheck-order-v': (resolve) => { require(['./android/SafecheckOrderV'], resolve) },
7
- 'safecheck-devices': (resolve) => { require(['./android/SafecheckDevices'], resolve) },
8
- 'paper-feedback' : (resolve) => { require(['./android/PaperFeedback'], resolve) },
9
- 'safecheck-userinfo': (resolve) => { require(['./android/SafecheckUserInfo'], resolve) },
10
- 'PhoneUpUserinfo': (resolve) => { require(['./android/PhoneUpUserinfo.vue'], resolve) },
11
- 'area-plan': (resolve) => { require(['./android/AreaPlan.vue'], resolve) },
12
- 'check-plan-list': (resolve) => { require(['./android/CheckPlanList.vue'], resolve) },
13
- 'phone-insurance-purchase-detail': (resolve) => { require(['./android/PhoneInsurancePurchaseDetail'], resolve) },
14
- 'check-plan-list-area': (resolve) => { require(['./android/CheckPlanListArea.vue'], resolve) },
15
- 'current-create': (resolve) => { require(['./android/CurrentCreate.vue'], resolve) },
16
-
17
- }
18
- exports.specialComp = specialComp
19
-
20
-
21
-
22
-
1
+ // 分公司特殊组件页面注册
2
+ import Vue from "vue";
3
+
4
+ //手机特殊目录注册到该文件中
5
+ let specialComp = {
6
+ 'safecheck-order-v': (resolve) => { require(['./android/SafecheckOrderV'], resolve) },
7
+ 'safecheck-devices': (resolve) => { require(['./android/SafecheckDevices'], resolve) },
8
+ 'paper-feedback' : (resolve) => { require(['./android/PaperFeedback'], resolve) },
9
+ 'safecheck-userinfo': (resolve) => { require(['./android/SafecheckUserInfo'], resolve) },
10
+ 'PhoneUpUserinfo': (resolve) => { require(['./android/PhoneUpUserinfo.vue'], resolve) },
11
+ 'area-plan': (resolve) => { require(['./android/AreaPlan.vue'], resolve) },
12
+ 'check-plan-list': (resolve) => { require(['./android/CheckPlanList.vue'], resolve) },
13
+ 'phone-insurance-purchase-detail': (resolve) => { require(['./android/PhoneInsurancePurchaseDetail'], resolve) },
14
+ 'check-plan-list-area': (resolve) => { require(['./android/CheckPlanListArea.vue'], resolve) },
15
+ 'current-create': (resolve) => { require(['./android/CurrentCreate.vue'], resolve) },
16
+
17
+ }
18
+ exports.specialComp = specialComp
19
+
20
+
21
+
22
+
@@ -0,0 +1,208 @@
1
+ <template>
2
+ <div>
3
+ <criteria-paged :model="model" v-ref:paged>
4
+ <criteria partial='criteria' @condition-changed='$parent.selfSearch' v-ref:criteria>
5
+ <div partial>
6
+ <ul class="nav nav-tabs">
7
+ <li role="presentation" class="active"><a style=" color: #5ac0d9 !important;">安检计划项明细</a></li>
8
+ </ul>
9
+ <div class="row">
10
+ <div class="form-group col-sm-4" >
11
+ <label class="font_normal_body">安检状态</label>
12
+ <v-select style="width:60% "
13
+ class="select select_list"
14
+ :value.sync="$parent.$parent.f_state"
15
+ v-model="$parent.$parent.f_state"
16
+ :options='$parent.$parent.checkState'
17
+ placeholder='安检状态'
18
+ close-on-select
19
+ value-single
20
+ >
21
+ </v-select>
22
+ </div>
23
+ <div class="form-group col-sm-4" v-if="$parent.$parent.f_state=='未入户'" >
24
+ <v-select style="width:60% "
25
+ class="select select_list"
26
+ :value.sync="$parent.$parent.f_noruhu"
27
+ v-model="$parent.$parent.f_noruhu"
28
+ :options='$parent.$parent.noChecks'
29
+ placeholder='请选择状态'
30
+ :multiple="true"
31
+ >
32
+ </v-select>
33
+ </div>
34
+ <div class="form-group col-sm-4" >
35
+ <label class="font_normal_body">小区</label>
36
+ <input type="text" class="input_search"
37
+ v-model="$parent.$parent.f_residential_area"
38
+ style="width: 60%" placeholder="小区"
39
+ condition="f_residential_area like '%{}%'">
40
+ </div>
41
+ <div class="form-group col-sm-4" >
42
+ <label class="font_normal_body">楼号</label>
43
+ <input type="text" class="input_search"
44
+ v-model="$parent.$parent.f_building"
45
+ style="width: 60%" placeholder="楼号"
46
+ condition="f_building like '%{}%'">
47
+ </div>
48
+ <div class="form-group col-sm-4 button-range" >
49
+ <button class="button_search" style="margin-right: 10px" @click="search()">查询</button>
50
+ <export-excel :data="$parent.$parent.exportParameter"
51
+ :field="$parent.$parent.excelHeaders"
52
+ sqlurl="api/af-safecheck/logic/exportfile" sql-name="planItem"
53
+ template-name='安检计划明细' :choose-col="true">
54
+ </export-excel>
55
+ <!--<export-excel-->
56
+ <!--:data="{condition: $parent.$parent.condition}"-->
57
+ <!--:field="$parent.$parent.getfield"-->
58
+ <!--sqlurl="api/af-safecheck/logic/saleExport" sql-name="getGasUser" :template-name="$parent.$parent.pricename+'气价使用人'"-->
59
+ <!--:choose-col="true"></export-excel>-->
60
+
61
+ </div>
62
+ </div>
63
+ </div>
64
+ </criteria>
65
+ <data-grid :model="model" partial='list' class="table_sy">
66
+
67
+ <template partial='head'>
68
+ <tr>
69
+ <th><nobr>计划名称</nobr></th>
70
+ <th><nobr>用户编号</nobr></th>
71
+ <th><nobr>用户名称</nobr></th>
72
+ <th><nobr>小区名称</nobr></th>
73
+ <th><nobr>地址</nobr></th>
74
+ <th><nobr>安检状态</nobr></th>
75
+ <th><nobr>是否安检</nobr></th>
76
+ </tr>
77
+ </template>
78
+ <template partial='body'>
79
+ <td style="text-align: center"><nobr>{{row.f_plan_name}}</nobr></td>
80
+ <td style="text-align: center"><nobr>{{row.f_userinfo_code}}</nobr></td>
81
+ <td style="text-align: center"><nobr>{{row.f_user_name}}</nobr></td>
82
+ <td style="text-align: center"><nobr>{{row.f_residential_area}}</nobr></td>
83
+ <td style="text-align: center"><nobr>{{row.f_address}}</nobr></td>
84
+ <td style="text-align: center"><nobr>{{row.f_last_check_state}}</nobr></td>
85
+ <td style="text-align: center"><nobr>{{row.f_state}}</nobr></td>
86
+ </template>
87
+ </data-grid>
88
+ </criteria-paged>
89
+ </div>
90
+ </template>
91
+
92
+ <script>
93
+ import { PagedList } from 'vue-client'
94
+
95
+ export default {
96
+ title: '安检计划项列表',
97
+ data () {
98
+ return {
99
+ model: new PagedList('api/af-safecheck/sql/planItem', 20),
100
+ checkState:[{label:'全部',value:''},{label:'入户',value:'入户'},{label:'未入户',value:'未入户'}],
101
+ noChecks:[{label:'未检',value:'未检'},{label:'到访不遇',value:'到访不遇'},{label:'拒检',value:'拒检'}],
102
+ excelHeaders: {
103
+ //用户编号 用户名称 用户电话 安检次数 用户类型 小区名称 地址 安检日期 安检状态 安检结果
104
+
105
+ 'f_userinfo_code': '用户编号',
106
+ 'f_user_name': '用户名称',
107
+ 'f_user_phone': '用户电话',
108
+ //'count_item':'安检次数',
109
+ 'f_user_type': '用户类型',
110
+ 'f_residential_area': '小区名称',
111
+ 'f_address':'地址',
112
+ 'f_last_check_date':'安检日期',
113
+ 'f_last_check_state': '安检状态',
114
+ 'f_state':'是否已检',
115
+ 'f_last_check_result':'安检结果'
116
+ },
117
+ area:[{label:'全部',value:''}],
118
+ f_state:'',
119
+ f_noruhu:'',
120
+ f_residential_area:'',
121
+ f_building:'',
122
+ }
123
+ },
124
+ props: [ 'check','checkstatus','checkstart','checkend' ],
125
+ watch: {
126
+ 'check' (val) {
127
+ debugger
128
+ let condition
129
+ condition = `f_checker='${this.check.f_checker}'`
130
+ if(this.checkstart){
131
+ condition+= `and f_last_check_date>='${this.checkstart}'`
132
+ }
133
+ if (this.checkend){
134
+ condition += `and f_last_check_date<='${this.f_endcheckend_time}'`
135
+ }
136
+ this.f_noruhu=[]
137
+ this.f_state=''
138
+ this.model.search(condition, {})
139
+
140
+ }
141
+ },
142
+
143
+ ready () {
144
+ if (this.check) {
145
+ let condition
146
+ condition = `f_checker='${this.check.f_checker}'`
147
+ if(this.checkstart){
148
+ condition += `and f_last_check_date>='${this.checkstart}'`
149
+ }
150
+ if (this.checkend){
151
+ condition += ` and f_last_check_date<='${this.f_end_tcheckendime}'`
152
+ }
153
+ this.model.search(condition, {})
154
+ }
155
+ },
156
+ methods:{
157
+ selfSearch(args){
158
+ if (this.check) {
159
+ args.condition = `f_checker='${this.check.f_checker}'`
160
+ if(this.checkstart){
161
+ args.condition+= `and f_last_check_date>='${this.checkstart}'`
162
+ }
163
+ if (this.checkend){
164
+ args.condition += `and f_last_check_date<='${this.checkend}'`
165
+ }
166
+ if( this.f_state){
167
+ if(this.f_state=='入户'){
168
+ args.condition=args.condition+" and i.f_state='已检' and f_last_check_state='入户'"
169
+ }else if(this.f_state=='未入户'){
170
+ if(this.f_noruhu && this.f_noruhu.length==1){
171
+ args.condition += this.f_noruhu[0]=='未检'?" and i.f_state='未检'":` and i.f_state='已检' and f_last_check_state='${this.f_noruhu[0]}'`
172
+ }else if(this.f_noruhu && this.f_noruhu.length==2){
173
+ if(this.f_noruhu.indexOf('未检')!=-1){
174
+ if(this.f_noruhu.indexOf('到访不遇')!=-1){
175
+ args.condition=args.condition+" and (i.f_state='未检' or (i.f_state='已检' and f_last_check_state='到访不遇'))"
176
+ }else{
177
+ args.condition=args.condition+" and (i.f_state='未检' or (i.f_state='已检' and f_last_check_state='拒检'))"
178
+ }
179
+ }else{
180
+ args.condition=args.condition+" and (i.f_state='已检' and (f_last_check_state='到访不遇' or f_last_check_state='拒检'))"
181
+ }
182
+ }else{
183
+ args.condition=args.condition+" and (i.f_state='未检' or (i.f_state='已检' and (f_last_check_state='到访不遇' or f_last_check_state='拒检')))"
184
+ }
185
+
186
+ }
187
+
188
+ }
189
+ if (this.f_residential_area){
190
+ args.condition += ` and i.f_residential_area like'%${this.f_residential_area}%'`
191
+ }
192
+ if (this.f_building){
193
+ args.condition += ` and i.f_building='${this.f_building}'`
194
+ }
195
+ this.model.search(args.condition, args.model)
196
+ }
197
+ }
198
+ },
199
+ computed: {
200
+ // 导出到Excel的条件构造
201
+ exportParameter() {
202
+ return {
203
+ condition: this.$refs.paged.model.condition
204
+ }
205
+ }
206
+ },
207
+ }
208
+ </script>
@@ -0,0 +1,52 @@
1
+ <template>
2
+ <div id="unit" class="flex-row" :class="{'binary':showItem}">
3
+ <div :class="{'basic-main':!showItem,'binary-left':showItem}" >
4
+ <select-check-plan-new @select-changed="selected" :style="style" :style2="style2" v-ref:check></select-check-plan-new>
5
+ </div>
6
+ <div class="binary-right" v-show="showItem">
7
+ <div class="flex">
8
+ <check-detail v-if='$refs.check && $refs.check.selected' :check='$refs.check.selected' :checkstart="$refs.check.f_start_time" :checkend="$refs.check.f_end_time"
9
+ v-ref:detail></check-detail>
10
+ </div>
11
+ </div>
12
+ </div>
13
+ </template>
14
+ <script>
15
+ import SelectCheckPlanNew from '../pc/SelectCheckPlan.vue'
16
+ import CheckDetail from '../pc/CheckDetail.vue'
17
+ export default {
18
+ title: '安检员考核',
19
+ props: ['f'],
20
+ components: {SelectCheckPlanNew, CheckDetail},
21
+ data() {
22
+ return {
23
+ showItem: false,
24
+ checkstatus: null,
25
+ style:'col-sm-2 form-group',
26
+ style2:'col-sm-4 form-group'
27
+ }
28
+ },
29
+ methods: {
30
+ selected(row) {
31
+ this.showItem = true
32
+ },
33
+ checkstatusChange(val){
34
+ this.checkstatus = val
35
+ }
36
+ }
37
+ }
38
+ </script>
39
+ <style>
40
+ .form-input-group label {
41
+ text-align: right;
42
+ width: auto;
43
+ }
44
+
45
+ .datapanel {
46
+ color: #333;
47
+ background-color: white;
48
+ box-shadow: darkgrey 0.5px 0.5px 0.5px 0.5px;
49
+ padding: 5px 7px 5px 7px;
50
+ border-radius: 10px;
51
+ }
52
+ </style>