safecheck-client 3.0.39-13 → 3.0.39-15

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 (42) hide show
  1. package/.project +1 -1
  2. package/package.json +134 -134
  3. package/src/App.vue +31 -26
  4. package/src/components/pc/RoleSelector.vue +172 -172
  5. package/src/components/pc/SafeCheckOrder/SafeCheckOrderList.vue +34 -0
  6. package/src/components/rongcheng/AddPlanItem.vue +344 -344
  7. package/src/components/rongcheng/CheckCurrentCreate.vue +1081 -1081
  8. package/src/components/rongcheng/PaperDefectMain.vue +828 -828
  9. package/src/filiale/BFshiye/pc/checkUserList.vue +772 -772
  10. package/src/filiale/dexin/pc/PaperList.vue +840 -840
  11. package/src/filiale/qingjian/android/PhoneUpUserinfo.vue +1336 -1270
  12. package/src/filiale/qingjian/android/SafecheckOrderV.vue +2918 -2918
  13. package/src/filiale/qingjian/android/SafecheckUserInfo.vue +823 -800
  14. package/src/filiale/qingjian/pc/NewCheckpaper.vue +1919 -1919
  15. package/src/filiale/tongchuan/pc/AMapTrailShowZk.vue +226 -0
  16. package/src/filiale/tongchuan/pc/CheckSearchUser.vue +47 -1
  17. package/src/filiale/tongchuan/pc/DefectPaperWeiXiu.vue +46 -0
  18. package/src/filiale/tongchuan/pc/NoCheckplanSafecheck.vue +34 -0
  19. package/src/filiale/tongchuan/pc/PaperDefectMain.vue +34 -0
  20. package/src/filiale/tongchuan/pc/PaperList.vue +44 -10
  21. package/src/filiale/tongchuan/pc/PersonTrack.vue +269 -0
  22. package/src/filiale/tongchuan/pc/SelectCheckPlan.vue +42 -2
  23. package/src/filiale/tongchuan/pc.js +2 -0
  24. package/src/filiale/wensu/android/SafecheckOrderV.vue +2444 -2444
  25. package/src/filiale/wensu/android/SafecheckUserInfo.vue +712 -712
  26. package/src/filiale/wensu/pc/CheckSearchUser.vue +1251 -1251
  27. package/src/filiale/yangchunboneng/android/CurrentCreate.vue +1191 -1191
  28. package/src/filiale/yangchunboneng/android/SafecheckUserInfo.vue +913 -913
  29. package/src/filiale/yangchunboneng/android.js +21 -21
  30. package/src/filiale/yangchunboneng/pc/CheckBookList.vue +353 -353
  31. package/src/filiale/yangchunboneng/pc/CheckPlanAreaList.vue +677 -677
  32. package/src/filiale/yangchunboneng/pc/CheckSearchUser.vue +1197 -1197
  33. package/src/filiale/yangchunboneng/pc/HiddenSituation.vue +171 -171
  34. package/src/filiale/yangchunboneng/pc/PaperDefectMain.vue +1112 -1112
  35. package/src/filiale/yangchunboneng/pc/PaperList.vue +757 -757
  36. package/src/filiale/yangchunboneng/pc/SelectCheckPlan.vue +331 -331
  37. package/src/filiale/yangchunboneng/pc.js +29 -29
  38. package/src/main.js +33 -33
  39. package/src/rongcheng.js +319 -319
  40. package/.trae/.ignore +0 -0
  41. package/.vscode/settings.json +0 -3
  42. package/yarn-error.log +0 -140
@@ -1,172 +1,172 @@
1
- <template>
2
- <div style="width: 100%;height: 100%">
3
- <div class="col-sm-6 form-group" style="margin-bottom: 0px">
4
- <label class="font_normal_body">公&emsp;&emsp;司</label>
5
- <right-tree-safe :width="leftWidth" @re-res="getRes" :resobjprop.sync="resobjprop"></right-tree-safe>
6
- </div>
7
- <div class="col-sm-6 form-group" style="margin-bottom: 0px">
8
- <label class="font_normal_body">{{ roleLable }}</label>
9
- <v-select :value="selVal" v-model='selVal'
10
- :value-single="!valueMultiple"
11
- class="select_list select"
12
- :options='users' :placeholder='roleName'
13
- :close-on-select = 'valueClose'
14
- :multiple="valueMultiple"
15
- :width="rightWidth"
16
- @change="valuechange">
17
- </v-select>
18
- </div>
19
- </div>
20
- </template>
21
-
22
- <script>
23
- import {HttpResetClass} from 'vue-client'
24
-
25
- export default {
26
- name: "RoleSelector",
27
- props: {
28
- valueMultiple: {
29
- type: Boolean,
30
- default: false
31
- },
32
- roleName: {
33
- type: String,
34
- default: '安检员'
35
- },
36
- roleLable: {
37
- type: String,
38
- default: '安检员'
39
- },
40
- leftWidth: {
41
- type: String,
42
- default: '60%'
43
- },
44
- rightWidth: {
45
- type: String,
46
- default: '60%'
47
- },
48
- value: {
49
- default: ''
50
- },
51
- resobjprop: {
52
- default: {}
53
- },
54
- valueClose: {
55
- type: Boolean,
56
- default: true
57
- }
58
- },
59
- data() {
60
- return {
61
- // source: `tool.getChildrenOfResName($${this.roleName}$)`,
62
- source: `root.getResourceById($${this.$login.f.orgid}$,$organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$).indexOf($${this.roleName}$) != -1)`,
63
- allUsers: [],
64
- users: [],
65
- selVal: '',
66
- organizationname:this.$login.f.organizationname,
67
- resids: [],
68
- changeval: ''
69
- }
70
- },
71
- watch: {
72
- 'value'(val) {
73
- console.log("969696", val)
74
- if (val) {
75
- if (this.valueMultiple) {
76
-
77
- } else {
78
- this.selVal = val
79
- }
80
-
81
- }
82
- }
83
- },
84
- async ready() {
85
- await this.search()
86
- await this.filterUser(this.resids)
87
- },
88
- methods: {
89
- async clear() {
90
- // 根据valueMultiple属性设置适当的空值
91
- const emptyValue = this.valueMultiple ? [] : '';
92
- // 设置内部状态
93
- this.selVal = emptyValue;
94
- // 调用valuechange方法,确保值同步
95
- this.valuechange(emptyValue);
96
- },
97
- async search() {
98
- let http = new HttpResetClass()
99
- const res = await http.load('POST', '/rs/search', {
100
- data: {
101
- source: this.source,
102
- userid: this.$login.f.id
103
- }
104
- }, {resolveMsg: null, rejectMsg: null})
105
- this.allUsers = res.data
106
- },
107
- valuechange(val) {
108
- console.log(`val instanceof Array======${!val instanceof Array}`)
109
- if ((typeof val === 'object' && !val instanceof Array) || (val instanceof Event)) {
110
- return
111
- }
112
- if (this.valueMultiple && Array.isArray(val)) {
113
- if (val && val.length > 0) {
114
- let valuesele = `(`
115
- for (let i = 0; i < val.length; i++) {
116
- valuesele += `'${val[i]}',`
117
- }
118
- this.value = valuesele.substring(0, valuesele.length - 1) + ')'
119
- } else {
120
- this.value = ''
121
- }
122
- } else {
123
- this.value = val
124
- }
125
- // this.changeval = val
126
- },
127
- getRes(obj) {
128
- this.resids = obj.resids
129
- this.organizationname = obj.res[0]
130
- this.filterUser(this.resids)
131
- this.$dispatch('re-res', obj)
132
- },
133
- async filterUser(resids) {
134
- // 处理第一次进入页面值异常问题
135
- if (resids.length > 0 && typeof resids[0] == "object") {
136
- resids = resids[0]
137
- }
138
- if (resids[0]) {
139
- this.source = `root.getResourceById($${resids[0]}$,$organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$).indexOf($${this.roleName}$) != -1)`
140
- await this.search()
141
- }
142
- this.users = []
143
- this.allUsers.forEach(user => {
144
- if ((this.organizationname == user.organizationname || !user.organizationname) && user.state == '在职') {
145
- this.users.push({label: user.name, value: user.name})
146
- }
147
- })
148
- if (!this.valueMultiple && this.users.length > 0) {
149
- this.users = [{label: '全部', value: ''}, ...this.users]
150
- }
151
- let temp = []
152
- this.users = this.users.filter(item => {
153
- if (!temp.includes(item.label)) {
154
- temp.push(item.label)
155
- return true
156
- }
157
- return false
158
- })
159
- let sort = this.$appdata.getSingleValue('数据排序') || '否'
160
- if (sort == '是'){
161
- this.users.sort((a,b)=>a.label.localeCompare(b.label, 'zh-Hans-CN'))
162
- }
163
- this.$emit('alluser', this.allUsers)
164
- //tag
165
- }
166
- }
167
- }
168
- </script>
169
-
170
- <style scoped>
171
-
172
- </style>
1
+ <template>
2
+ <div style="width: 100%;height: 100%">
3
+ <div class="col-sm-6 form-group" style="margin-bottom: 0px">
4
+ <label class="font_normal_body">公&emsp;&emsp;司</label>
5
+ <right-tree-safe :width="leftWidth" @re-res="getRes" :resobjprop.sync="resobjprop"></right-tree-safe>
6
+ </div>
7
+ <div class="col-sm-6 form-group" style="margin-bottom: 0px">
8
+ <label class="font_normal_body">{{ roleLable }}</label>
9
+ <v-select :value="selVal" v-model='selVal'
10
+ :value-single="!valueMultiple"
11
+ class="select_list select"
12
+ :options='users' :placeholder='roleName'
13
+ :close-on-select = 'valueClose'
14
+ :multiple="valueMultiple"
15
+ :width="rightWidth"
16
+ @change="valuechange">
17
+ </v-select>
18
+ </div>
19
+ </div>
20
+ </template>
21
+
22
+ <script>
23
+ import {HttpResetClass} from 'vue-client'
24
+
25
+ export default {
26
+ name: "RoleSelector",
27
+ props: {
28
+ valueMultiple: {
29
+ type: Boolean,
30
+ default: false
31
+ },
32
+ roleName: {
33
+ type: String,
34
+ default: '安检员'
35
+ },
36
+ roleLable: {
37
+ type: String,
38
+ default: '安检员'
39
+ },
40
+ leftWidth: {
41
+ type: String,
42
+ default: '60%'
43
+ },
44
+ rightWidth: {
45
+ type: String,
46
+ default: '60%'
47
+ },
48
+ value: {
49
+ default: ''
50
+ },
51
+ resobjprop: {
52
+ default: {}
53
+ },
54
+ valueClose: {
55
+ type: Boolean,
56
+ default: true
57
+ }
58
+ },
59
+ data() {
60
+ return {
61
+ // source: `tool.getChildrenOfResName($${this.roleName}$)`,
62
+ source: `root.getResourceById($${this.$login.f.orgid}$,$organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$).indexOf($${this.roleName}$) != -1)`,
63
+ allUsers: [],
64
+ users: [],
65
+ selVal: '',
66
+ organizationname:this.$login.f.organizationname,
67
+ resids: [],
68
+ changeval: ''
69
+ }
70
+ },
71
+ watch: {
72
+ 'value'(val) {
73
+ console.log("969696", val)
74
+ if (val) {
75
+ if (this.valueMultiple) {
76
+
77
+ } else {
78
+ this.selVal = val
79
+ }
80
+
81
+ }
82
+ }
83
+ },
84
+ async ready() {
85
+ await this.search()
86
+ await this.filterUser(this.resids)
87
+ },
88
+ methods: {
89
+ async clear() {
90
+ // 根据valueMultiple属性设置适当的空值
91
+ const emptyValue = this.valueMultiple ? [] : '';
92
+ // 设置内部状态
93
+ this.selVal = emptyValue;
94
+ // 调用valuechange方法,确保值同步
95
+ this.valuechange(emptyValue);
96
+ },
97
+ async search() {
98
+ let http = new HttpResetClass()
99
+ const res = await http.load('POST', '/rs/search', {
100
+ data: {
101
+ source: this.source,
102
+ userid: this.$login.f.id
103
+ }
104
+ }, {resolveMsg: null, rejectMsg: null})
105
+ this.allUsers = res.data
106
+ },
107
+ valuechange(val) {
108
+ console.log(`val instanceof Array======${!val instanceof Array}`)
109
+ if ((typeof val === 'object' && !val instanceof Array) || (val instanceof Event)) {
110
+ return
111
+ }
112
+ if (this.valueMultiple && Array.isArray(val)) {
113
+ if (val && val.length > 0) {
114
+ let valuesele = `(`
115
+ for (let i = 0; i < val.length; i++) {
116
+ valuesele += `'${val[i]}',`
117
+ }
118
+ this.value = valuesele.substring(0, valuesele.length - 1) + ')'
119
+ } else {
120
+ this.value = ''
121
+ }
122
+ } else {
123
+ this.value = val
124
+ }
125
+ // this.changeval = val
126
+ },
127
+ getRes(obj) {
128
+ this.resids = obj.resids
129
+ this.organizationname = obj.res[0]
130
+ this.filterUser(this.resids)
131
+ this.$dispatch('re-res', obj)
132
+ },
133
+ async filterUser(resids) {
134
+ // 处理第一次进入页面值异常问题
135
+ if (resids.length > 0 && typeof resids[0] == "object") {
136
+ resids = resids[0]
137
+ }
138
+ if (resids[0]) {
139
+ this.source = `root.getResourceById($${resids[0]}$,$organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$).indexOf($${this.roleName}$) != -1)`
140
+ await this.search()
141
+ }
142
+ this.users = []
143
+ this.allUsers.forEach(user => {
144
+ if ((this.organizationname == user.organizationname || !user.organizationname) && user.state == '在职') {
145
+ this.users.push({label: user.name, value: user.name})
146
+ }
147
+ })
148
+ if (!this.valueMultiple && this.users.length > 0) {
149
+ this.users = [{label: '全部', value: ''}, ...this.users]
150
+ }
151
+ let temp = []
152
+ this.users = this.users.filter(item => {
153
+ if (!temp.includes(item.label)) {
154
+ temp.push(item.label)
155
+ return true
156
+ }
157
+ return false
158
+ })
159
+ let sort = this.$appdata.getSingleValue('数据排序') || '否'
160
+ if (sort == '是'){
161
+ this.users.sort((a,b)=>a.label.localeCompare(b.label, 'zh-Hans-CN'))
162
+ }
163
+ this.$emit('alluser', this.allUsers)
164
+ //tag
165
+ }
166
+ }
167
+ }
168
+ </script>
169
+
170
+ <style scoped>
171
+
172
+ </style>
@@ -68,6 +68,18 @@
68
68
  condition="f_userinfo_code = '{}'"
69
69
  placeholder="用户编号"/>
70
70
  </div>
71
+ <div class="col-sm-2 form-group">
72
+ <label class="font_normal_body">网&ensp;格&ensp;员</label>
73
+ <v-select class="select_list select"
74
+ placeholder='请选择' style="width: 60%"
75
+ :value.sync="model.f_book_checker" v-model="model.f_book_checker"
76
+ :options='$parent.$parent.users'
77
+ filer-key="name"
78
+ close-on-select clear-button
79
+ condition="f_book_checker like '%{}%' and f_checker_name = '{}'"
80
+ :value-single="true">
81
+ </v-select>
82
+ </div>
71
83
  </div>
72
84
  </div>
73
85
  </div>
@@ -145,6 +157,7 @@ import {HttpResetClass, PagedList} from 'vue-client'
145
157
  // f_orgids: '1522.255', //测试使用
146
158
  suggetsShow: false,
147
159
  f_suggest: '',
160
+ users:[{label: '全部', value: ''}],
148
161
 
149
162
  curorgid: [this.$login.f.orgid],
150
163
  f_orgid: '',
@@ -155,8 +168,29 @@ import {HttpResetClass, PagedList} from 'vue-client'
155
168
  ready(){
156
169
  // 默认查询待处理状态预约
157
170
  this.search()
171
+ this.initBookChecker()
158
172
  },
159
173
  methods: {
174
+ initBookChecker(){
175
+ new HttpResetClass().load('POST', '/rs/search', {
176
+ data: {
177
+ source: `root.getResourceById($${this.$login.f.orgid}$,$organization$).getSpecialResByType($user$).where(row.getAttributes().get($rolestr$).indexOf($网格员$) != -1)`,
178
+ userid: this.$login.f.id
179
+ }
180
+ }, {resolveMsg: null, rejectMsg: null}).then(res=>{
181
+ let data = res.data
182
+ const addedNames = new Set()
183
+ this.users = []
184
+ data.forEach(user => {
185
+ if (user.state === '在职') {
186
+ if (!addedNames.has(user.name)) {
187
+ this.users.push({ label: user.name, value: user.name })
188
+ addedNames.add(user.name)
189
+ }
190
+ }
191
+ });
192
+ })
193
+ },
160
194
  getPcds(val) {
161
195
  this.pcds = [{label: '全部', value: ''}]
162
196
  new HttpResetClass().load("POST", `/rs/sql/safe_singleTable_OrderBy`,