safecheck-client 4.0.2-62 → 4.0.2-64

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 (28) hide show
  1. package/package.json +1 -1
  2. package/src/components/android/PhoneUpUserinfo.vue +1249 -1249
  3. package/src/components/android/SafeRightTree.vue +218 -218
  4. package/src/components/android/SafecheckDevices.vue +1340 -1340
  5. package/src/components/android/week/CheckResultSimple.vue +258 -251
  6. package/src/components/android/week/FirstWeekCheck.vue +301 -275
  7. package/src/components/android/week/StepHeaderBar.vue +485 -457
  8. package/src/components/android/week/WeekCheck.vue +267 -209
  9. package/src/components/android/week/WeekCheckPaper.vue +274 -219
  10. package/src/components/android/week/WeekCheckPlan.vue +145 -145
  11. package/src/components/android/week/WeekCheckUserInfo.vue +99 -0
  12. package/src/components/pc/CheckBookArea.vue +146 -146
  13. package/src/components/pc/CheckBookCompany.vue +144 -144
  14. package/src/components/pc/CheckBookDetails.vue +161 -161
  15. package/src/components/pc/CheckBookEntry.vue +60 -60
  16. package/src/components/pc/CheckBookSearchArea.vue +560 -560
  17. package/src/components/pc/CheckBookSearchUnit.vue +229 -229
  18. package/src/components/pc/CheckBookSearchUser.vue +659 -659
  19. package/src/components/pc/CheckBookSearchUserList.vue +674 -674
  20. package/src/filiale/jinhong/android/AddPlanItem.vue +481 -481
  21. package/src/filiale/jinhong/android/CurrentCreate.vue +1355 -1355
  22. package/src/filiale/jinhong/android.js +15 -15
  23. package/src/filiale/jinhong/pc/checkUserList.vue +806 -806
  24. package/src/filiale/meihekou/android/CheckPlanList.vue +198 -198
  25. package/src/filiale/meihekou/android/CheckPlanListArea.vue +190 -190
  26. package/src/filiale/meihekou/android/SafecheckDevices.vue +1343 -1343
  27. package/src/filiale/meihekou/android.js +22 -22
  28. package/src/filiale/taiyuan/pc/NewCheckpaper.vue +22 -0
@@ -1,251 +1,258 @@
1
- <template>
2
- <div class="select-overspread repair-bg auto" style="padding-bottom:5px;">
3
- <div class="panel panel-default auto repair-info-content">
4
- <div class="panel-body" style="padding: 0">
5
- <!-- 周检项内容 -->
6
- <div class="auto repair-info-content compatible" style="padding: 0">
7
- <div class="row auto" style="padding: 0">
8
- <div class="col-xs-12 col-sm-12 col-md-12 mg8" v-show="row.isshow" v-for="(idxs,row) in items" style="padding: 4px; border:1px solid #D4D4D4;border-bottom: 0" >
9
- <label v-if="row.type != 'radio' && row.type != 'text' && row.type != 'picture' && row.type != 'checkbox'" v-show="row.isshow" class="fivelabel">{{row.f_item_name}}</label>
10
- <label v-if="row.type == 'radio'" v-show="row.isshow" class="radiolabel">{{row.f_item_name}}</label>
11
- <label v-if="row.type == 'text'" v-show="row.isshow" class="textlabel1">{{row.f_item_name}}</label>
12
- <label v-if="row.type == 'picture' || row.type == 'checkbox'" v-show="row.isshow" class="textlabel">{{row.f_item_name}}</label>
13
- <div style="clear: both" v-if="row.type == 'picture'" class="form-group col-sm-12" >
14
- <div slot="modal-body" class="modal-body">
15
- <div class="auto" :class="style__">
16
- <div class="panel" style="padding: 10px 10px 5px 10px;">
17
- <div class="panel-body panel-self" style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
18
- <div class="row" style="height: 240px;overflow: scroll;top: 1px" >
19
- <div class="col-xs-4 col-sm-3 col-md-2" style="margin-bottom: 35px" v-for="(index,img) in row.images">
20
- <img-self v-if="row.state === '未检'" :src="img.f_path" :alt="row.f_item_name" :width="140" :height="170"></img-self>
21
- <img-self v-if="row.state === '已检'" :src="'/rs/image/file/'+img.filename" :alt="row.f_item_name" :width="140" :height="170"></img-self>
22
- <img v-if="!row.readonly" src="../../../assets/删除.png" @click="delfile(img.f_path,index,idxs)" style="width: 15px;margin-top: -80px" alt="">
23
- </div>
24
- </div>
25
- <div class="row text-right div-photo">
26
- <button v-if="!row.readonly" type="button" name="button" class="btn btn-photo" @click="takePic(row.f_item_name,idxs)">拍照</button>
27
- </div>
28
- </div>
29
- </div>
30
- </div>
31
- </div>
32
- </div>
33
-
34
- <div style="float: left;width:60%" class="form-group" v-if="row.type == 'string'" v-show="row.isshow">
35
- <input type="text" class="form-control" maxlength="100" v-model="row.f_item_value" :readonly="role == 'androidview' || row.readonly">
36
- </div>
37
- <div style="float: left;width:60%" class="form-group col-sm-12" v-if="row.type == 'date'" v-show="row.isshow">
38
- <datepicker id="f_making_date" :placeholder= row.f_item_name
39
- :value.sync="row.f_item_value"
40
- v-if="row.type == 'date'"
41
- v-show="row.isshow"
42
- :disabled-days-of-Week="[]"
43
- :format="'yyyy-MM-dd HH:mm:ss'"
44
- readonly
45
- >
46
- </datepicker>
47
- </div>
48
- <div style="float: left;width:60%" class="form-group" v-if="row.type == 'number'" v-show="row.isshow">
49
- <input type="text" class="form-control" maxlength="100" v-model="row.f_item_value" onkeyup="value=value.replace(/[^\d\.-]/g,'')" :readonly="row.readonly">
50
- </div>
51
- <v-select style="float: left" :value.sync="row.selected"
52
- v-model="row.selected"
53
- v-if="row.type == 'selector'"
54
- :search="false"
55
- v-show="row.isshow"
56
- placeholder='请选择'
57
- :options="row.options"
58
- :disabled="row.readonly"
59
- @change="changse"
60
- @click="transelation(idxs)"
61
- :multiple="row.multiple"
62
- :value-single="!row.multiple"
63
- :close-on-select="!row.multiple" clear-button></v-select>
64
- <div style="float: left;width: 30%" class="form-group" v-if="row.type == 'radio'">
65
- <div class="col-xs-6 col-sm-6 col-md-6" v-for="item in row.options">
66
- <input type="radio" :name="row.f_item_name" :value="item.value" :disabled="row.readonly" v-model="row.f_item_value" >
67
- <span>{{item.label}}</span>
68
- </div>
69
- </div>
70
- <div v-if="row.type == 'checkbox'" class="col-xs-12 col-sm-12 col-md-12" style="white-space: nowrap" >
71
- <div style="float: left" v-for="item in row.options">
72
- <input type="checkbox" :name="row.f_item_name" :value="item.value" :disabled="row.readonly" v-model="row.f_item_value">
73
- <span>{{item.label}}</span>
74
- </div>
75
- </div>
76
-
77
- </div>
78
- </div>
79
- </div>
80
- </div>
81
- </div>
82
- </div>
83
- </template>
84
- <script>
85
- import Vue from 'vue'
86
- import * as Util from '../../Util'
87
-
88
- export default {
89
- title: '周检列表信息',
90
- data() {
91
- return {
92
- selectindex: null
93
- }
94
- },
95
- props: ['itemname','items'],
96
- ready() {
97
- },
98
- methods: {
99
- delfile(fileName, index,idxs) {
100
- this.items[idxs].images.splice(index, 1)
101
- HostApp.delfile(fileName)
102
- },
103
- cameraCallBack(fileName,idxs) {
104
- let path = fileName
105
- HostApp.__this__.items[idxs].images.push({
106
- f_path: path
107
- })
108
- HostApp.__callback__ = null
109
- HostApp.__this__ = null
110
- },
111
- takePic(title, idxs) {
112
- HostApp.__callback__ = this.cameraCallBack
113
- HostApp.__this__ = this
114
- let fileName = Util.guid() + '-' + '.jpg'
115
- HostApp._open_a_page({
116
- type: 'boomerang',
117
- page: 'com.aofeng.hybrid.android.peripheral.CameraActivity',
118
- param: {
119
- file: fileName,
120
- requestCode: 111,
121
- callback: 'javascript:HostApp.__callback__( "%s","'+ idxs + '");',
122
- watermark: title + '\t时间:' + Util.toStandardTimeString() + '\t' + Vue.user.name
123
- }
124
- })
125
- },
126
- changse(val){
127
- if(val == undefined){
128
- return
129
- }
130
- if(this.selectindex != null) {
131
- if(this.items[this.selectindex].type == 'selector'){
132
- this.items[this.selectindex].f_item_value = val
133
- }
134
- }
135
- },
136
- transelation(val){
137
- this.selectindex = val
138
- },
139
- },
140
- computed:{
141
- },
142
- watch: {
143
- 'itemname'(){
144
- for (let item in this.items) {
145
- if (this.items[item].type === 'selector') {
146
- if (this.items[item].state === '未检'){
147
- let page = [
148
- {
149
- label: "请选择",
150
- value: ''
151
- }
152
- ]
153
-
154
- for (let i in this.items[item].options) {
155
- if (Util.isEmpty(this.items[item].f_item_value) && this.items[item].options[i].isdefault){
156
- this.$set(`items[${item}].f_item_value`, this.items[item].options[i].data)
157
- this.items[item].f_item_value = this.items[item].options[i].data
158
- }
159
- page.push({
160
- label: this.items[item].options[i].data,
161
- value: this.items[item].options[i].data
162
- })
163
- }
164
- this.items[item].options = page
165
- this.$set(`items[${item}].options`, page)
166
- }
167
- this.$set(`items[${item}].selected`, this.items[item].f_item_value)
168
- } else if (this.items[item].type === 'radio' || this.items[item].type === 'checkbox') {
169
- if (this.items[item].state === '未检'){
170
- let page = []
171
- for (let i in this.items[item].options) {
172
- page.push({
173
- label: this.items[item].options[i].data,
174
- value: this.items[item].options[i].data
175
- })
176
- if (Util.isEmpty(this.items[item].f_item_value) && this.items[item].options[i].isdefault){
177
- this.$set(`items[${item}].f_item_value`, this.items[item].options[i].data)
178
- this.items[item].f_item_value = this.items[item].options[i].data
179
- }
180
- }
181
- this.items[item].options = page
182
- this.$set(`items[${item}].options`, page)
183
- }
184
- }
185
- }
186
- }
187
- },
188
- }
189
- </script>
190
- <style lang="less" scoped>
191
- .class-erro {
192
- color: #a94442;
193
- }
194
- .fivelabel{
195
- border: none;
196
- float: left;
197
- width: 35%;
198
- margin-bottom: 3px;
199
- text-align: left;
200
- word-wrap: break-word;
201
- white-space: normal;
202
- }
203
- .radiolabel{
204
- border: none;
205
- float: left;
206
- width: 65%;
207
- margin-bottom: 3px;
208
- text-align: left;
209
- word-wrap: break-word;
210
- white-space: normal;
211
- }
212
-
213
- .textlabel {
214
- border: none;
215
- width: 100%;
216
- margin-bottom: 3px;
217
- text-align: left;
218
- word-wrap: break-word;
219
- white-space: normal;
220
- }
221
- .textlabel1 {
222
- border: none;
223
- width: 100%;
224
- margin-bottom: 3px;
225
- text-align: left;
226
- word-wrap: break-word;
227
- white-space: normal;
228
- }
229
- .spanrodio{
230
- margin-right: 10px;
231
- }
232
- .div-photo{
233
- width: auto;
234
- height: auto;
235
- position: absolute;
236
- bottom: 10px;
237
- right: 10px;
238
- }
239
- .panel-self{
240
- border-radius: 5px;
241
- border:1px solid #c5e1f7;
242
- }
243
- .btn-photo{
244
- border: 0;
245
- border-radius: 7px;
246
- background-color: #7dc1f4;
247
- font: 15px PingFang-SC-Bold;
248
- height: 20%;
249
- }
250
- </style>
251
-
1
+ <template>
2
+ <div class="select-overspread repair-bg auto simple">
3
+ <div class="panel panel-default auto repair-info-content">
4
+ <div class="panel-body" style="padding: 0">
5
+ <!-- 周检项内容 -->
6
+ <div class="auto repair-info-content compatible" style="padding: 0">
7
+ <div class="row auto" style="padding: 0">
8
+ <div class="col-xs-12 col-sm-12 col-md-12 mg8" v-show="row.isshow" v-for="(idxs,row) in items" style="padding: 4px; border:1px solid #D4D4D4;border-bottom: 0" >
9
+ <label v-if="row.type != 'radio' && row.type != 'text' && row.type != 'picture' && row.type != 'checkbox'" v-show="row.isshow" class="fivelabel">{{row.f_item_name}}</label>
10
+ <label v-if="row.type == 'radio'" v-show="row.isshow" class="radiolabel">{{row.f_item_name}}</label>
11
+ <label v-if="row.type == 'text'" v-show="row.isshow" class="textlabel1">{{row.f_item_name}}</label>
12
+ <label v-if="row.type == 'picture' || row.type == 'checkbox'" v-show="row.isshow" class="textlabel">{{row.f_item_name}}</label>
13
+ <div style="clear: both" v-if="row.type == 'picture'" class="form-group col-sm-12" >
14
+ <div slot="modal-body" class="modal-body">
15
+ <div class="auto" :class="style__">
16
+ <div class="panel" style="padding: 10px 10px 5px 10px;">
17
+ <div class="panel-body panel-self" style="background-color: #F8F8F8;width: 100%;height: 260px;position: relative">
18
+ <div class="row" style="height: 240px;overflow: scroll;top: 1px" >
19
+ <div class="col-xs-4 col-sm-3 col-md-2" style="margin-bottom: 35px" v-for="(index,img) in row.images">
20
+ <img-self v-if="row.state === '未检'" :src="img.f_path" :alt="row.f_item_name" :width="140" :height="170"></img-self>
21
+ <img-self v-if="row.state === '已检'" :src="`${url}/rs/image/file/`+img.filename" :alt="row.f_item_name" :width="140" :height="170"></img-self>
22
+ <img v-if="!row.readonly" src="../../../assets/删除.png" @click="delfile(img.f_path,index,idxs)" style="width: 15px;margin-top: -80px" alt="">
23
+ </div>
24
+ </div>
25
+ <div class="row text-right div-photo">
26
+ <button v-if="!row.readonly" type="button" name="button" class="btn btn-photo" @click="takePic(row.f_item_name,idxs)">拍照</button>
27
+ </div>
28
+ </div>
29
+ </div>
30
+ </div>
31
+ </div>
32
+ </div>
33
+
34
+ <div style="float: left;width:60%" class="form-group" v-if="row.type == 'string'" v-show="row.isshow">
35
+ <input type="text" class="form-control" maxlength="100" v-model="row.f_item_value" :readonly="role == 'androidview' || row.readonly">
36
+ </div>
37
+ <div style="float: left;width:60%" class="form-group col-sm-12" v-if="row.type == 'date'" v-show="row.isshow">
38
+ <datepicker id="f_making_date" :placeholder= row.f_item_name
39
+ :value.sync="row.f_item_value"
40
+ v-if="row.type == 'date'"
41
+ v-show="row.isshow"
42
+ :disabled-days-of-Week="[]"
43
+ :format="'yyyy-MM-dd HH:mm:ss'"
44
+ readonly
45
+ >
46
+ </datepicker>
47
+ </div>
48
+ <div style="float: left;width:60%" class="form-group" v-if="row.type == 'number'" v-show="row.isshow">
49
+ <input type="text" class="form-control" maxlength="100" v-model="row.f_item_value" onkeyup="value=value.replace(/[^\d\.-]/g,'')" :readonly="row.readonly">
50
+ </div>
51
+ <v-select style="float: left" :value.sync="row.selected"
52
+ v-model="row.selected"
53
+ v-if="row.type == 'selector'"
54
+ :search="false"
55
+ v-show="row.isshow"
56
+ placeholder='请选择'
57
+ :options="row.options"
58
+ :disabled="row.readonly"
59
+ @change="changse"
60
+ @click="transelation(idxs)"
61
+ :multiple="row.multiple"
62
+ :value-single="!row.multiple"
63
+ :close-on-select="!row.multiple" clear-button></v-select>
64
+ <div style="float: left;width: 30%" class="form-group" v-if="row.type == 'radio'">
65
+ <div class="col-xs-6 col-sm-6 col-md-6" v-for="item in row.options">
66
+ <input type="radio" :name="row.f_item_name" :value="item.value" :disabled="row.readonly" v-model="row.f_item_value" >
67
+ <span>{{item.label}}</span>
68
+ </div>
69
+ </div>
70
+ <div v-if="row.type == 'checkbox'" class="col-xs-12 col-sm-12 col-md-12" style="white-space: nowrap" >
71
+ <div style="float: left" v-for="item in row.options">
72
+ <input type="checkbox" :name="row.f_item_name" :value="item.value" :disabled="row.readonly" v-model="row.f_item_value">
73
+ <span>{{item.label}}</span>
74
+ </div>
75
+ </div>
76
+
77
+ </div>
78
+ </div>
79
+ </div>
80
+ </div>
81
+ </div>
82
+ </div>
83
+ </template>
84
+ <script>
85
+ import Vue from 'vue'
86
+ import * as Util from '../../Util'
87
+
88
+ export default {
89
+ title: '周检列表信息',
90
+ data() {
91
+ return {
92
+ selectindex: null,
93
+ url: this.$androidUtil.getProxyUrl()
94
+ }
95
+ },
96
+ props: ['itemname','items'],
97
+ ready() {
98
+ },
99
+ methods: {
100
+ delfile(fileName, index,idxs) {
101
+ this.items[idxs].images.splice(index, 1)
102
+ HostApp.delfile(fileName)
103
+ },
104
+ cameraCallBack(fileName,idxs) {
105
+ let path = fileName
106
+ HostApp.__this__.items[idxs].images.push({
107
+ f_path: path
108
+ })
109
+ HostApp.__callback__ = null
110
+ HostApp.__this__ = null
111
+ },
112
+ takePic(title, idxs) {
113
+ HostApp.__callback__ = this.cameraCallBack
114
+ HostApp.__this__ = this
115
+ let fileName = Util.guid() + '-' + '.jpg'
116
+ HostApp._open_a_page({
117
+ type: 'boomerang',
118
+ page: 'com.aofeng.hybrid.android.peripheral.CameraActivity',
119
+ param: {
120
+ file: fileName,
121
+ requestCode: 111,
122
+ callback: 'javascript:HostApp.__callback__( "%s","'+ idxs + '");',
123
+ watermark: title + '\t时间:' + Util.toStandardTimeString() + '\t' + Vue.user.name
124
+ }
125
+ })
126
+ },
127
+ changse(val){
128
+ if(val == undefined){
129
+ return
130
+ }
131
+ if(this.selectindex != null) {
132
+ if(this.items[this.selectindex].type == 'selector'){
133
+ this.items[this.selectindex].f_item_value = val
134
+ }
135
+ }
136
+ },
137
+ transelation(val){
138
+ this.selectindex = val
139
+ },
140
+ },
141
+ computed:{
142
+ },
143
+ watch: {
144
+ 'itemname'(){
145
+ for (let item in this.items) {
146
+ if (this.items[item].type === 'selector') {
147
+ if (this.items[item].state === '未检'){
148
+ let page = [
149
+ {
150
+ label: "请选择",
151
+ value: ''
152
+ }
153
+ ]
154
+
155
+ for (let i in this.items[item].options) {
156
+ if (Util.isEmpty(this.items[item].f_item_value) && this.items[item].options[i].isdefault){
157
+ this.$set(`items[${item}].f_item_value`, this.items[item].options[i].data)
158
+ this.items[item].f_item_value = this.items[item].options[i].data
159
+ }
160
+ page.push({
161
+ label: this.items[item].options[i].data,
162
+ value: this.items[item].options[i].data
163
+ })
164
+ }
165
+ this.items[item].options = page
166
+ this.$set(`items[${item}].options`, page)
167
+ }
168
+ this.$set(`items[${item}].selected`, this.items[item].f_item_value)
169
+ } else if (this.items[item].type === 'radio' || this.items[item].type === 'checkbox') {
170
+ if (this.items[item].state === '未检'){
171
+ let page = []
172
+ for (let i in this.items[item].options) {
173
+ page.push({
174
+ label: this.items[item].options[i].data,
175
+ value: this.items[item].options[i].data
176
+ })
177
+ if (Util.isEmpty(this.items[item].f_item_value) && this.items[item].options[i].isdefault){
178
+ this.$set(`items[${item}].f_item_value`, this.items[item].options[i].data)
179
+ this.items[item].f_item_value = this.items[item].options[i].data
180
+ }
181
+ }
182
+ this.items[item].options = page
183
+ this.$set(`items[${item}].options`, page)
184
+ }
185
+ }
186
+ }
187
+ }
188
+ },
189
+ }
190
+ </script>
191
+ <style lang="less" scoped>
192
+ .simple {
193
+ padding: 10px 10px 5px 10px;
194
+ margin-bottom: 0;
195
+ background-color: #fff;
196
+ border: 1px solid transparent;
197
+ }
198
+ .class-erro {
199
+ color: #a94442;
200
+ }
201
+ .fivelabel{
202
+ border: none;
203
+ float: left;
204
+ width: 35%;
205
+ margin-bottom: 3px;
206
+ text-align: left;
207
+ word-wrap: break-word;
208
+ white-space: normal;
209
+ }
210
+ .radiolabel{
211
+ border: none;
212
+ float: left;
213
+ width: 65%;
214
+ margin-bottom: 3px;
215
+ text-align: left;
216
+ word-wrap: break-word;
217
+ white-space: normal;
218
+ }
219
+
220
+ .textlabel {
221
+ border: none;
222
+ width: 100%;
223
+ margin-bottom: 3px;
224
+ text-align: left;
225
+ word-wrap: break-word;
226
+ white-space: normal;
227
+ }
228
+ .textlabel1 {
229
+ border: none;
230
+ width: 100%;
231
+ margin-bottom: 3px;
232
+ text-align: left;
233
+ word-wrap: break-word;
234
+ white-space: normal;
235
+ }
236
+ .spanrodio{
237
+ margin-right: 10px;
238
+ }
239
+ .div-photo{
240
+ width: auto;
241
+ height: auto;
242
+ position: absolute;
243
+ bottom: 10px;
244
+ right: 10px;
245
+ }
246
+ .panel-self{
247
+ border-radius: 5px;
248
+ border:1px solid #c5e1f7;
249
+ }
250
+ .btn-photo{
251
+ border: 0;
252
+ border-radius: 7px;
253
+ background-color: #7dc1f4;
254
+ font: 15px PingFang-SC-Bold;
255
+ height: 20%;
256
+ }
257
+ </style>
258
+