apply-clients 4.1.45-weinan → 4.1.47-weinan

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "apply-clients",
3
- "version": "4.1.45-weinan",
3
+ "version": "4.1.47-weinan",
4
4
  "description": "报建前端模块",
5
5
  "main": "src/index.js",
6
6
  "directories": {
@@ -45,4 +45,8 @@ export default function () {
45
45
  Vue.component('app-installation-details', (resolve) => { require(['./components/app_apply/AppInstallationDetails'], resolve) })
46
46
  // 点火信息
47
47
  Vue.component('app-devices-details', (resolve) => { require(['./components/app_apply/AppdevicesDetails'], resolve) })
48
+ // 流程监控
49
+ Vue.component('app-process-supervisory', (resolve) => { require(['./components/app_apply/AppProcessSupervisory'], resolve) })
50
+ // 流程监控详细信息
51
+ Vue.component('app-supervisory-cart', (resolve) => { require(['./components/app_apply/AppSupervisoryCart'], resolve) })
48
52
  }
@@ -0,0 +1,251 @@
1
+ <template>
2
+ <div class="p-10">
3
+ <criteria-paged :model="model" v-ref:cp>
4
+ <criteria partial='criteria' @condition-changed='search' v-ref:cri>
5
+ <div partial class="auto">
6
+ <div class="row form-group app-input" v-if="$parent.$parent.criteriaShow">
7
+ <label class="">报建编号:</label>
8
+ <div class="col-xs-8" >
9
+ <input class="" v-model=model.f_apply_num condition="u.f_apply_num like '%{}%'" />
10
+ </div>
11
+ </div>
12
+ <div class="row form-group app-input" v-if="$parent.$parent.criteriaShow">
13
+ <label class="">合同编号:</label>
14
+ <div class="col-xs-8" >
15
+ <input class="" v-model=model.f_contract_number condition="u.f_contract_number like '%{}%'" />
16
+ </div>
17
+ </div>
18
+ <div class="row form-group app-input" v-if="$parent.$parent.criteriaShow">
19
+ <label class="">报建类型:</label>
20
+ <div class="col-xs-8" >
21
+ <v-select
22
+ width="100%"
23
+ v-model="model.f_apply_type"
24
+ placeholder='报建类型'
25
+ condition="u.f_apply_type = '{}'"
26
+ :value.sync="model.f_apply_type"
27
+ :options='$parent.$parent.applytype'
28
+ class="select select_list"
29
+ :value-single="true"
30
+ @change="$parent.$parent.applyTypeChange()"
31
+ close-on-select ></v-select>
32
+ </div>
33
+ </div>
34
+ <div class="row form-group app-input" v-if="$parent.$parent.criteriaShow">
35
+ <label class="">办理环节:</label>
36
+ <div class="col-xs-8" >
37
+ <v-select
38
+ width="100%"
39
+ v-model="model.defname"
40
+ placeholder='办理环节'
41
+ condition="defname = '{}'"
42
+ :value.sync="model.defname"
43
+ :options='$parent.$parent.defnames'
44
+ class="select select_list"
45
+ :value-single="true"
46
+ close-on-select ></v-select>
47
+ </div>
48
+ </div>
49
+ <div class="row form-group app-input" v-if="$parent.$parent.criteriaShow">
50
+ <label class="">开始时间:</label>
51
+ <div class="col-xs-8" >
52
+ <datepicker id="startDate" placeholder="开始日期"
53
+ style="width: 100%!important;"
54
+ v-model="model.startDate"
55
+ :value.sync="model.startDate"
56
+ :format="'yyyy-MM-dd 00:00:00'"
57
+ :show-reset-button="true"
58
+ condition="u.f_apply_date >= '{}'">
59
+ </datepicker>
60
+ </div>
61
+ </div>
62
+ <div class="row form-group app-input" v-if="$parent.$parent.criteriaShow">
63
+ <label class="">结束时间:</label>
64
+ <div class="col-xs-8" >
65
+ <datepicker id="endDate" placeholder="结束日期"
66
+ style="width: 100%!important;"
67
+ v-model="model.endDate"
68
+ :value.sync="model.endDate"
69
+ :format="'yyyy-MM-dd 23:59:59'"
70
+ :show-reset-button="true"
71
+ condition="f_apply_date <= '{}'">
72
+ </datepicker>
73
+ </div>
74
+ </div>
75
+ <div class="row form-group text-right" style="">
76
+ <button class="btn btn-primary" @click="$parent.$parent.search()">查询</button>
77
+ <button class="btn btn-info" @click="$parent.$parent.clear()">清空</button>
78
+ <button class="btn" :class="{'button_shrink_top':$parent.$parent.criteriaShow,'button_shrink_bottom':!$parent.$parent.criteriaShow}" @click="$parent.$parent.criteriaShow = !$parent.$parent.criteriaShow"></button>
79
+ </div>
80
+ </div>
81
+ </criteria>
82
+ <list :model="model" partial='list'>
83
+ <div partial class="auto app-text panel">
84
+ <div class="panel-body panel-self">
85
+ <div class="col-xs-12">
86
+ <p class="col-xs-3 text-left font"><b>工程编号:</b></p>
87
+ <p class="col-xs-9 text-left input-font">{{ row.f_apply_num }}</p>
88
+ </div>
89
+ <div class="col-xs-12">
90
+ <p class="col-xs-3 text-left font"><b>项目名称:</b></p>
91
+ <p class="col-xs-9 text-left input-font">{{ row.f_entry_name }}</p>
92
+ </div>
93
+ <div class="col-xs-12">
94
+ <p class="col-xs-3 text-left font"><b>报建类型:</b></p>
95
+ <p class="col-xs-9 text-left input-font">{{ row.f_apply_type }}</p>
96
+ </div>
97
+ <div class="col-xs-12">
98
+ <p class="col-xs-3 text-left font"><b>办理环节:</b></p>
99
+ <p class="col-xs-9 text-left input-font">{{ row.defname }}</p>
100
+ </div>
101
+ <div class="col-xs-12">
102
+ <p class="col-xs-3 text-left font"><b>用户类型:</b></p>
103
+ <p class="col-xs-9 text-left input-font">{{ row.f_user_type }}</p>
104
+ </div>
105
+ <div class="col-xs-12">
106
+ <p class="col-xs-3 text-left font"><b>流程状态:</b></p>
107
+ <p class="col-xs-9 text-left input-font">{{ row.f_sub_state }}</p>
108
+ </div>
109
+ <div class="col-xs-12">
110
+ <p class="col-xs-3 text-left font"><b>报建日期:</b></p>
111
+ <p class="col-xs-9 text-left input-font">{{ row.f_apply_date }}</p>
112
+ </div>
113
+
114
+
115
+ <div class="col-xs-12 text-right">
116
+ <button class="btn btn-info" @click="$parent.$parent.$parent.click(row)">查看</button>
117
+ </div>
118
+ </div>
119
+ </div>
120
+ </list>
121
+ </criteria-paged>
122
+ </div>
123
+ </template>
124
+ <script>
125
+ import Vue from 'vue'
126
+ import { PagedList, HttpResetClass } from 'vue-client'
127
+ import {isEmpty} from '../Util'
128
+ export default {
129
+ title: '报建流程',
130
+ data () {
131
+ return {
132
+ model: new PagedList(`${this.$androidUtil.getProxyUrl()}/rs/sql/supervisory`, 20, {
133
+ // model: new PagedList('rs/sql/supervisory', 20, {
134
+ data: {
135
+ id: Vue.user.id,
136
+ orgid: Vue.user.orgid
137
+ // id: '35814',
138
+ // orgid: '10101'
139
+ }
140
+ }),
141
+ criteriaShow: false,
142
+ // applytype: [{label: '全部', value: ''}, ...this.$appdata.getParam('报建类型')], // 所有报建类型
143
+ applytype: [{label: '全部', value: ''}, ...this.$appdata.getParam('报建类型') || [] ], // 所有报建类型
144
+ defnames: [{label: '全部', value: ''}],
145
+ applyNatures: [{label: '全部', value: ''}] // 报建性质
146
+ }
147
+ },
148
+ ready () {
149
+ this.search()
150
+ },
151
+ methods: {
152
+ dialNumber (phone) {
153
+ this.$showMessage(`是否拨打电话:${phone}`, ['confirm']).then((res) => {
154
+ if (res === 'confirm') {
155
+ this.$androidUtil.makeAPhoneCall(phone)
156
+ }
157
+ })
158
+ },
159
+ clear () {
160
+ Object.keys(this.$refs.cp.$refs.cri.model).forEach((key) => {
161
+ this.$refs.cp.$refs.cri.model[key] = null
162
+ })
163
+ },
164
+ // 查询
165
+ search () {
166
+ this.$refs.cp.$refs.cri.search()
167
+ },
168
+ click (row) {
169
+ let _this = this
170
+ this.$dispatch('gotoson', {
171
+ _this: _this,
172
+ title: '详情信息',
173
+ safe: true
174
+ })
175
+ this.$goto('app-supervisory-cart', {selectdata: row}, 'self', _this.search)
176
+ },
177
+ applyTypeChange () {
178
+ if (!isEmpty(this.$refs.cp.$refs.cri.model.f_apply_type)) {
179
+ let http = new HttpResetClass()
180
+ http.load('POST', `${this.$androidUtil.getProxyUrl()}/rs/logic/getDefnameByType`, {
181
+ f_apply_type: this.$refs.cp.$refs.cri.model.f_apply_type
182
+ }, {resolveMsg: null, rejectMsg: null}).then((res) => {
183
+ this.defnames = [{label: '全部', value: ''}, ...res.data]
184
+
185
+ this.applyNatures = isEmpty(this.$appdata.getParam(`${this.$refs.cp.$refs.cri.model.f_apply_type}性质`)) ? [{label: '全部', value: ''}] : [{label: '全部', value: ''}, ...this.$appdata.getParam(`${this.$refs.cp.$refs.cri.model.f_apply_type}性质`)]
186
+ })
187
+ } else {
188
+ this.defnames = [{label: '全部', value: ''}]
189
+
190
+ this.applyNatures = [{label: '全部', value: ''}]
191
+ }
192
+ }
193
+ },
194
+ events: {
195
+ },
196
+ watch: {
197
+ }
198
+ }
199
+ </script>
200
+ <style scoped>
201
+ .panel-self{
202
+ border-radius: 10px;
203
+ border:1px solid #499EDF;
204
+ background-color: #F8F8F8;
205
+ }
206
+ .font{
207
+ font: 15px PingFang-SC-Medium;
208
+ color: #666666;
209
+ }
210
+
211
+ .button_shrink_top {
212
+ width: 34px;
213
+ height: 34px;
214
+ border: solid 1px #6aa6e2;
215
+ background-size: 100%;
216
+ background-image: url("../../../static/newStyle/stretch_top.png")
217
+ }
218
+
219
+ .button_shrink_bottom {
220
+ width: 34px;
221
+ height: 34px;
222
+ border: solid 1px #6aa6e2;
223
+ background-size: 100%;
224
+ background-image: url("../../../static/newStyle/stretch_bottom.png")
225
+ }
226
+ </style>
227
+ <style lang="less">
228
+ .app-input {
229
+ label {
230
+ float: left;
231
+ }
232
+ .select {
233
+ button {
234
+ border: none;
235
+ outline: none;
236
+ text-align: left;
237
+ .btn-placeholder {
238
+ color: #ACA899
239
+ }
240
+ }
241
+ }
242
+ .datepicker {
243
+ .form-control:focus {
244
+ border: none!important;
245
+ outline: none!important;
246
+ -webkit-box-shadow: none;
247
+ box-shadow: none;
248
+ }
249
+ }
250
+ }
251
+ </style>
@@ -0,0 +1,119 @@
1
+ <template>
2
+ <div style="padding: 10px">
3
+ <div partial class="auto app-text panel" style="margin-bottom: 20px">
4
+ <div class="panel-body panel-self">
5
+ <div class="col-xs-12">
6
+ <p class="col-xs-3 text-left font"><b>工程编号:</b></p>
7
+ <p class="col-xs-9 text-left input-font">{{ selectdata.f_apply_num }}</p>
8
+ </div>
9
+ <div class="col-xs-12">
10
+ <p class="col-xs-3 text-left font"><b>项目名称:</b></p>
11
+ <p class="col-xs-9 text-left input-font">{{ selectdata.f_entry_name }}</p>
12
+ </div>
13
+ <div class="col-xs-12">
14
+ <p class="col-xs-3 text-left font"><b>报建类型:</b></p>
15
+ <p class="col-xs-9 text-left input-font">{{ selectdata.f_apply_type }}</p>
16
+ </div>
17
+ <div class="col-xs-12">
18
+ <p class="col-xs-3 text-left font"><b>办理环节:</b></p>
19
+ <p class="col-xs-9 text-left input-font">{{ selectdata.defname }}</p>
20
+ </div>
21
+ <div class="col-xs-12">
22
+ <p class="col-xs-3 text-left font"><b>用户类型:</b></p>
23
+ <p class="col-xs-9 text-left input-font">{{ selectdata.f_user_type }}</p>
24
+ </div>
25
+ <div class="col-xs-12">
26
+ <p class="col-xs-3 text-left font"><b>流程状态:</b></p>
27
+ <p class="col-xs-9 text-left input-font">{{ selectdata.f_sub_state }}</p>
28
+ </div>
29
+ <div class="col-xs-12">
30
+ <p class="col-xs-3 text-left font"><b>报建日期:</b></p>
31
+ <p class="col-xs-9 text-left input-font">{{ selectdata.f_apply_date }}</p>
32
+ </div>
33
+ </div>
34
+ </div>
35
+ <div class="row" v-for="(i,row) in defnames">
36
+ <div :class="row.id === selectdata.actid ? 'item selectIndex' : 'item'" @click="shouju(row)">
37
+ {{row.defname}}
38
+ <span v-if="row.state === '结束'">({{ row.person }})</span>
39
+ <span v-if="row.state !== '结束' && row.actorexpression !== null && row.actorexpression.indexOf('PI') === 0">
40
+ ({{ row.peruser }})
41
+ </span>
42
+ <br>
43
+ {{ row.finishtime ? row.finishtime : row.sendtime }}<br>
44
+ </div>
45
+ <div class="arrow glyphicon glyphicon-menu-down" v-if="i != defnames.length-1" aria-hidden="true"></div>
46
+ </div>
47
+ </div>
48
+ </template>
49
+
50
+ <script>
51
+ import {HttpResetClass} from 'vue-client'
52
+ export default {
53
+ title: '流程节点',
54
+ props: ['selectdata'],
55
+ data () {
56
+ return {
57
+ defnames: [],
58
+ flag:false
59
+ }
60
+ },
61
+ ready () {
62
+ this.initial()
63
+ },
64
+ methods: {
65
+ async shouju(row){
66
+ console.log("进入方法:",this.selectdata)
67
+ },
68
+ async initial() {
69
+ // 获取流程节点信息
70
+ let http = new HttpResetClass()
71
+ let data = {
72
+ processid: this.selectdata.f_process_id
73
+ }
74
+ let res = await http.load(
75
+ 'POST',
76
+ `${this.$androidUtil.getProxyUrl()}/rs/sql/getAllNode`,
77
+ // `rs/sql/getAllNode`,
78
+ {data: data},
79
+ {
80
+ resolveMsg:null,
81
+ rejectMsg:null
82
+ })
83
+ this.defnames = res.data
84
+ },
85
+ },
86
+ watch: {
87
+ }
88
+ }
89
+ </script>
90
+
91
+ <style scoped>
92
+ .app-text {
93
+ font-size: 12px;
94
+ }
95
+ .panel-self{
96
+ border-radius: 10px;
97
+ border:1px solid #499EDF;
98
+ background-color: #F8F8F8;
99
+ }
100
+ .row{
101
+ padding: 0 40px;
102
+ text-align: center;
103
+ height: auto;
104
+ }
105
+ .item{
106
+ border-radius: 2em;
107
+ border: 1px solid silver;
108
+ line-height: 25px;
109
+ }
110
+ .arrow{
111
+ width: 100%;
112
+ color: #5ac0d9;
113
+ font-weight: bold;
114
+ }
115
+ .selectIndex{
116
+ background-color: #5ac0d9;
117
+ color: #ffffff;
118
+ }
119
+ </style>
@@ -245,8 +245,8 @@
245
245
  <div class="col-sm-8">
246
246
  <input-select
247
247
  class="select select_list"
248
- :value.sync="item.f_state"
249
- v-model="item.f_state"
248
+ :value.sync="item.f_userinfodevices_state"
249
+ v-model="item.f_userinfodevices_state"
250
250
  :options="aroundmeters"
251
251
  :disable="mark === 1"
252
252
  :valueSingle="true"></input-select>
@@ -257,8 +257,8 @@
257
257
  <div class="col-sm-8">
258
258
  <input-select
259
259
  class="select select_list"
260
- :value.sync="item.WatchPurchase"
261
- v-model="item.WatchPurchase"
260
+ :value.sync="item.watchpurchase"
261
+ v-model="item.watchpurchase"
262
262
  :options="positions"
263
263
  :disable="mark === 1"
264
264
  :valueSingle="true"></input-select>
@@ -629,6 +629,7 @@ export default {
629
629
  userinfo: this.userinfo,
630
630
  selectdata: this.selectdata
631
631
  }
632
+ data.userinfo.devices[0].f_state = '有效'
632
633
  let res = await this.$resetpost(this.$androidUtil.getProxyUrl() +'/rs/logic/addInstallationDetailsDevices', {data:data}, {
633
634
  resolveMsg: null,
634
635
  rejectMsg: '设备添加失败!!!'
@@ -821,7 +822,7 @@ export default {
821
822
  },
822
823
  // 表向
823
824
  aroundmeters() {
824
- return this.$appdata.getParam('设备状态')
825
+ return this.$appdata.getParam('用户设备状态')
825
826
  },
826
827
  // 安装位置
827
828
  positions() {
@@ -243,8 +243,8 @@
243
243
  <div class="col-sm-8">
244
244
  <input-select
245
245
  class="select select_list"
246
- :value.sync="item.f_state"
247
- v-model="item.f_state"
246
+ :value.sync="item.f_userinfodevices_state"
247
+ v-model="item.f_userinfodevices_state"
248
248
  :options="aroundmeters"
249
249
  :disable="mark === 1"
250
250
  :valueSingle="true"></input-select>
@@ -255,8 +255,8 @@
255
255
  <div class="col-sm-8">
256
256
  <input-select
257
257
  class="select select_list"
258
- :value.sync="item.WatchPurchase"
259
- v-model="item.WatchPurchase"
258
+ :value.sync="item.watchpurchase"
259
+ v-model="item.watchpurchase"
260
260
  :options="positions"
261
261
  :disable="mark === 1"
262
262
  :valueSingle="true"></input-select>
@@ -629,6 +629,7 @@ export default {
629
629
  userinfo: this.userinfo,
630
630
  selectdata: this.selectdata
631
631
  }
632
+ data.userinfo.devices[0].f_state = '有效'
632
633
  let res = await this.$resetpost('rs/logic/addInstallationDetailsDevices', {data:data}, {
633
634
  resolveMsg: null,
634
635
  rejectMsg: '设备添加失败!!!'
@@ -800,7 +801,7 @@ export default {
800
801
  },
801
802
  // 表向
802
803
  aroundmeters() {
803
- return this.$appdata.getParam('设备状态')
804
+ return this.$appdata.getParam('用户设备状态')
804
805
  },
805
806
  // 安装位置
806
807
  positions() {