apply-clients 3.0.4 → 3.0.5-4

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 (64) hide show
  1. package/index.html +1 -1
  2. package/package.json +4 -3
  3. package/src/App.vue +126 -15
  4. package/src/apply.js +152 -134
  5. package/src/bootstrap/fonts/PingFangSC-Regular.ttf +0 -0
  6. package/src/bootstrap/less/bootstrap.less +1 -2
  7. package/src/bootstrap/less/standard.less +208 -0
  8. package/src/components/Util.js +4 -0
  9. package/src/components/app_apply/FieldExploration.vue +2 -2
  10. package/src/components/app_apply/Ventilation.vue +2 -2
  11. package/src/components/image/doc.jpg +0 -0
  12. package/src/components/image/excel.jpg +0 -0
  13. package/src/components/image/pdf.jpg +0 -0
  14. package/src/components/image//345/233/276/345/261/20212.png +0 -0
  15. package/src/components/image//345/233/276/345/261/20213.png +0 -0
  16. package/src/components/image//345/233/276/345/261/20216.png +0 -0
  17. package/src/components/image//345/244/232/350/276/271/345/275/2422.png +0 -0
  18. package/src/components/image//345/244/232/350/276/271/345/275/2422/346/213/267/350/264/235.png +0 -0
  19. package/src/components/image//346/244/255/345/234/2062.png +0 -0
  20. package/src/components/image//346/244/255/345/234/2065.png +0 -0
  21. package/src/components/image//346/244/255/345/234/2065/346/213/267/350/264/235.png +0 -0
  22. package/src/components/image//346/244/255/345/234/2065/346/213/267/350/264/2352.png +0 -0
  23. package/src/components/image//346/244/255/345/234/2065/346/213/267/350/264/2353.png +0 -0
  24. package/src/components/image//347/273/2044.png +0 -0
  25. package/src/components/image//347/273/2045.png +0 -0
  26. package/src/components/image//347/273/2046.png +0 -0
  27. package/src/components/image//350/257/235/345/212/241/347/273/237/350/256/241/346/225/260/346/215/256/345/261/225/347/244/272.png +0 -0
  28. package/src/components/product/Function/InstallFunction.vue +9 -5
  29. package/src/components/product/Function/InstallInfoSelect.vue +98 -69
  30. package/src/components/product/Function/Service/FunctionServiceControl.vue +47 -4
  31. package/src/components/product/Function/functions/AddContract.vue +161 -139
  32. package/src/components/product/Function/functions/BuyerMessage.vue +285 -137
  33. package/src/components/product/Function/functions/InstallFee.vue +1117 -912
  34. package/src/components/product/MaterialBatchList.vue +109 -0
  35. package/src/components/product/MaterialBatchManage.vue +34 -0
  36. package/src/components/product/Procedures/ProceduresDataGrid.vue +1022 -0
  37. package/src/components/product/Process/ExplorationSelect.vue +213 -73
  38. package/src/components/product/Process/ExplorationUser.vue +94 -39
  39. package/src/components/product/Process/MaterialUseList.vue +159 -0
  40. package/src/components/product/Process/ModifyUserFiles.vue +15 -5
  41. package/src/components/product/Process/ProcessInfo/history_control.vue +35 -6
  42. package/src/components/product/Process/Processes/ApplyUpload.vue +287 -0
  43. package/src/components/product/Process/Processes/CustomerCostPlan.vue +214 -0
  44. package/src/components/product/Process/Processes/CustomerMaterialMessage.vue +499 -210
  45. package/src/components/product/Process/Processes/CustomerRecordMessage.vue +949 -753
  46. package/src/components/product/Process/Processes/ProjectSettlement.vue +535 -24
  47. package/src/components/product/Process/Processes/ReceiveBatch.vue +301 -121
  48. package/src/components/product/Process/Processes/Service/ApplyChangeHistory.vue +105 -0
  49. package/src/components/product/Process/Processes/Service/ApplyChargeSearch.vue +27 -14
  50. package/src/components/product/Process/Processes/Service/ServiceControl.vue +2561 -1104
  51. package/src/components/product/Process/Processes/Upload.vue +532 -0
  52. package/src/components/product/Process/ShowBackReason.vue +1 -1
  53. package/src/components/product/ServiceView.vue +825 -583
  54. package/src/components/product/Statistics/ApplyStatisticsROOT.vue +27 -0
  55. package/src/components/product/Supervisory/Service/SupervisoryServiceControl.vue +212 -23
  56. package/src/components/product/Supervisory/SupervisoryControl.vue +79 -26
  57. package/src/components/product/Supervisory/SupervisoryList.vue +182 -41
  58. package/src/components/product/Supervisory/SupervisoryhCart.vue +4 -2
  59. package/src/components/product/VueUtils/Tree.vue +330 -0
  60. package/src/components/product/VueUtils/rightview/InstallCardList2.vue +29 -38
  61. package/src/stores/ApplyLoadParams.js +1 -1
  62. package/src/stores/PagedListLogic.js +173 -0
  63. package/.npmignore +0 -12
  64. package/yarn.lock +0 -9008
@@ -0,0 +1,208 @@
1
+
2
+ /*=========================通用样式表=========================*/
3
+ @font-face {
4
+ font-family: PingFang;
5
+ src:url('../fonts/PingFangSC-Regular.ttf');
6
+ }
7
+
8
+
9
+ /********************字体*****************/
10
+ /*字体标题_粗体*/
11
+ .font_bold_title{font-weight: bold; color: #333333;text-align: right;vertical-align: middle;}
12
+ /*字体正文_粗体*/
13
+ .font_bold_body{ font-family: PingFang; font-weight: bold;color: #666666;text-align: right;vertical-align: middle; }
14
+ /*字体_粗体*/
15
+ .font_bold_title1{ font-family: PingFang; font-weight: bold;color: #999999;text-align: right;vertical-align: middle;}
16
+ /*字体按钮_粗体*/
17
+ .font_bold_button{ font-family: PingFang; font-weight: bold;color: #ffffff;text-align: right;vertical-align: middle;}
18
+ /*字体蓝色_粗体*/
19
+ .font_bold_blue{ font-family: PingFang; font-weight: bold;color: #6aa6e2;text-align: right;vertical-align: middle;}
20
+
21
+ /*字体标题_正常*/
22
+ .font_normal_title{ font-family: PingFang; font-weight: normal;color: #333333!important;text-align: right;vertical-align: middle;}
23
+ /*字体正文_正常*/
24
+ .font_normal_body{ font-family: PingFang; font-weight: normal !important;color: #666666!important;text-align: right;vertical-align: middle;}
25
+ /*字体_正常*/
26
+ .font_normal_title1{ font-family: PingFang;font-weight: normal;color: #999999!important;text-align: right;vertical-align: middle;}
27
+ /*字体按钮_正常*/
28
+ .font_normal_button{ font-family: PingFang;font-weight: normal;color: #ffffff!important;text-align: right;vertical-align: middle;}
29
+ /*字体蓝色_正常*/
30
+ .font_normal_blue{ font-family: PingFang;font-weight: normal;color: #6aa6e2!important;text-align: right;vertical-align: middle;}
31
+
32
+ .search_area{background-color: #ffffff; border-radius: 10px;margin-bottom: 20px;padding: 20px}
33
+ .list_area{background-color: #ffffff; border-radius: 10px;padding: 20px}
34
+
35
+
36
+ /********************表格*****************/
37
+ .table_sy{margin-top: 6px}
38
+ /*表格表头*/
39
+ .table_sy thead tr th{background-color: #eaf5ff!important;color: #666666 !important;font-family: PingFang !important;font-weight: normal!important;}
40
+ /*表格主体_奇数行*/
41
+ .table_sy tbody tr:nth-child(odd){background-color: #ffffff !important;border: solid 1px #f0f4fa !important;color: #666666!important;font-size: 15px!important;font-family: PingFang!important;}
42
+ /*表格主体_偶数行*/
43
+ .table_sy tbody tr:nth-child(even){background-color: #f6fbff !important;border: solid 1px #f0f4fa !important;color: #666666!important;font-size: 15px!important;font-family: PingFang!important;}
44
+ /*表格主体_移动行*/
45
+ .table_sy tbody tr:hover{ background-color: #ecf6ff!important;border: solid 1px #f0f4fa !important;color: #666666!important;font-size: 15px!important;font-family: PingFang!important;}
46
+ /*表格底部*/
47
+ .pager{background-color: #eaf5ff !important;}
48
+ /*表格主体_点击行*/
49
+ .success td{background-color: #ecf6ff !important;}
50
+
51
+ .foot{font-family: PingFang !important;}
52
+
53
+ /*下拉列表滑动变色*/
54
+ .select_list li a:hover{background-color: #eaf5ff !important;border-radius: 2px;border: solid 1px #eaeaea;}
55
+
56
+ /*弹窗*/
57
+ .pop_windows{background-color: #d9e9f8;border-radius: 16px 16px 0px 0px;}
58
+ /*标签*/
59
+ .tab_color{border-bottom: 1px solid #6aa6e2; color: #6aa6e2; font-family: PingFang;}
60
+
61
+ /*按钮间隔*/
62
+ .button_spacing{margin: 0px 0px 0px 10px;}
63
+
64
+
65
+ //报表样式
66
+ //报表头部
67
+ .report-head{ background-color: #b3dff7;border: solid 1px #999999;}
68
+ //头部字体
69
+ .head-font{color: #333333;font-size: 18px; }
70
+ //报表左侧
71
+ .report-left{background-color: #dff0f9;border: solid 1px #999999;}
72
+ //报表主体
73
+ .report-main {background-color: #ffffff; border: solid 1px #999999;}
74
+ //报表主体字体
75
+ .main-font{font-size: 18px;color: #1b1b1b; }
76
+
77
+
78
+ /*=========================特殊样式表=========================*/
79
+
80
+ /*分辨率@1920*1080*/
81
+ @media screen and (max-width: 1920px) {
82
+
83
+ /********************按钮*****************/
84
+
85
+ .font_normal_body{font-size: 16px!important; line-height: 42px;}
86
+ .font_bold_body{font-size: 16px!important; line-height: 42px;}
87
+ .font_bold_title{font-size: 16px!important; line-height: 42px;}
88
+ .table_sy thead tr th{font-size: 16px !important;}
89
+ .foot .pager{ font-size: 16px!important; color: #666666!important;font-weight: normal!important;}
90
+ .foot .pager a{ font-size: 16px!important; color: #666666!important;font-weight: normal!important;}
91
+ .foot .pager li{ font-size: 16px!important; color: #666666!important;font-weight: normal!important;}
92
+
93
+
94
+ /*按钮查询*/
95
+ .button_search{width: 75px; height: 40px; background-color: #6aa6e2; border-radius: 4px; border:none; font-family: PingFang; font-size: 16px; color: #ffffff;}
96
+ .button_search:hover{ background-color: #3592ef;}
97
+
98
+ /*按钮清空*/
99
+ .button_clear{width: 75px; height: 40px; background-color: #5ac0d9; border-radius: 4px;border:none; font-family: PingFang; font-size: 16px; color: #ffffff;}
100
+ .button_clear:hover{ background-color: #27c4eb;}
101
+
102
+ /*按钮新建*/
103
+ .button_new{width: 75px; height: 40px; background-color: #ffffff;border-radius: 4px;border: solid 1px #6aa6e2; font-family: PingFang; font-size: 16px; color: #6aa6e2;}
104
+ .button_new:hover{background-color: #f0f8ff;}
105
+
106
+ /*按钮导出*/
107
+ .button_export {width: 110px; height: 40px; background-color: #ffffff;border-radius: 4px;border: solid 1px #6aa6e2; font-family: PingFang; font-size: 16px; color: #6aa6e2;}
108
+ .button_export:hover{background-color: #f0f8ff;}
109
+ .button_export button{width: 110px; height: 40px; background-color: #ffffff;border-radius: 4px;border: solid 1px #6aa6e2; font-family: PingFang; font-size: 16px; color: #6aa6e2;}
110
+ .button_export button:hover{background-color: #f0f8ff;}
111
+
112
+ /*查询输入框*/
113
+ .input_search{ width: 270px;height: 40px;background-color: #ffffff;border-radius: 2px;border: solid 1px #c7c7c7;color: #333333; font-size: 16px;font-family: PingFang;}
114
+ .input_search .datepicker .datepicker-input input{ width: 270px!important;height: 42px!important;background-color: #ffffff!important;border-radius: 2px;border: solid 1px #c7c7c7 !important;color: #333333; font-size: 16px;font-family: PingFang;}
115
+ .input_search::-webkit-input-placeholder{color: #999999; font-size: 16px;padding-left:15px;font-family: PingFang;}
116
+ .input_search:focus{ border: solid 1px #6aa6e2;}
117
+
118
+
119
+ /*下拉框*/
120
+ .select button{width: 270px!important;height: 40px!important;background-color: #ffffff!important;border-radius: 2px!important;border: solid 1px #c7c7c7!important;color: #666666; font-size: 16px;font-family: PingFang;font-weight: normal!important;}
121
+ .select button:focus{ border: solid 1px #6aa6e2!important;}
122
+
123
+ }
124
+
125
+ /*分辨率@1600*900*/
126
+ @media screen and (max-width: 1600px) {
127
+
128
+ /********************按钮*****************/
129
+ /*按钮间隔*/
130
+ /*.button_spacing{margin: 0px 0px 0px 20px;}*/
131
+ .font_normal_body{font-size: 15px!important; line-height: 38px; }
132
+ .font_bold_body{font-size: 15px!important; line-height: 38px; }
133
+ .font_bold_title{font-size: 15px!important; line-height: 38px; }
134
+ .table_sy thead tr th{font-size: 15px !important;}
135
+ .foot .pager{ font-size: 15px!important; color: #666666!important;font-weight: normal!important;}
136
+ .foot .pager a{ font-size: 15px!important; color: #666666!important;font-weight: normal!important;}
137
+ .foot .pager li{ font-size: 15px!important; color: #666666!important;font-weight: normal!important;}
138
+
139
+ /*按钮查询*/
140
+ .button_search{width: 70px; height: 36px; background-color: #6aa6e2; border-radius: 4px; border:none; font-family: PingFang; font-size: 15px; color: #ffffff;}
141
+ .button_search:hover{ background-color: #3592ef;}
142
+
143
+ /*按钮清空*/
144
+ .button_clear{width: 70px; height: 36px; background-color: #5ac0d9; border-radius: 4px;border:none; font-family: PingFang; font-size: 15px; color: #ffffff;}
145
+ .button_clear:hover{ background-color: #27c4eb;}
146
+
147
+ /*按钮新建*/
148
+ .button_new{width: 70px; height: 36px; background-color: #ffffff;border-radius: 4px;border: solid 1px #6aa6e2; font-family: PingFang; font-size: 15px; color: #6aa6e2;}
149
+ .button_new:hover{background-color: #f0f8ff;}
150
+
151
+ /*按钮导出*/
152
+ .button_export {width: 110px; height: 36px; background-color: #ffffff;border-radius: 4px;border: solid 1px #6aa6e2; font-family: PingFang; font-size: 15px; color: #6aa6e2;}
153
+ .button_export:hover{background-color: #f0f8ff;}
154
+ .button_export button{width: 120px; height: 32px; background-color: #ffffff;border-radius: 4px;border: solid 1px #6aa6e2; font-family: PingFang; font-size: 15px; color: #6aa6e2;}
155
+ .button_export button:hover{background-color: #f0f8ff;}
156
+
157
+ /*查询输入框*/
158
+ .input_search{ width: 200px;height: 36px;background-color: #ffffff;border-radius: 2px;border: solid 1px #c7c7c7!important;color: #333333!important; font-size: 15px!important;font-family: PingFang;}
159
+ .input_search::-webkit-input-placeholder{color: #999999; font-size: 14px;padding-left:15px;font-family: PingFang;}
160
+ .input_search:focus{ border: solid 1px #6aa6e2;}
161
+
162
+ /*下拉框*/
163
+ .select button{width: 200px!important;height: 36px!important;background-color: #ffffff!important;border-radius: 2px!important;border: solid 1px #c7c7c7!important;color: #666666!important; font-size: 15px!important;font-family: PingFang;font-weight: normal!important;}
164
+ .select button:focus{ border: solid 1px #6aa6e2!important;}
165
+ }
166
+
167
+ /*分辨率@1366*768*/
168
+ @media screen and (max-width: 1366px) {
169
+
170
+ /********************按钮*****************/
171
+ /*按钮间隔*/
172
+ /*.button_spacing{margin: 0px 0px 0px 20px;}*/
173
+ .font_normal_body{font-size: 14px!important; line-height: 36px; }
174
+ .font_bold_body{font-size: 14px!important; line-height: 36px; }
175
+ .font_bold_title{font-size: 14px!important; line-height: 36px; }
176
+ .table_sy thead tr th{font-size: 14px !important;}
177
+ .foot .pager{ font-size: 14px!important; color: #666666!important;font-weight: normal!important;}
178
+ .foot .pager a{ font-size: 14px!important; color: #666666!important;font-weight: normal!important;}
179
+ .foot .pager li{ font-size: 14px!important; color: #666666!important;font-weight: normal!important;}
180
+
181
+ /*按钮查询*/
182
+ .button_search{width: 60px; height: 34px; background-color: #6aa6e2; border-radius: 4px; border:none; font-family: PingFang; font-size: 14px; color: #ffffff;}
183
+ .button_search:hover{ background-color: #3592ef;}
184
+
185
+ /*按钮清空*/
186
+ .button_clear{width: 60px; height: 34px; background-color: #5ac0d9; border-radius: 4px;border:none; font-family: PingFang; font-size: 14px; color: #ffffff;}
187
+ .button_clear:hover{ background-color: #27c4eb;}
188
+
189
+ /*按钮新建*/
190
+ .button_new{width: 60px; height: 34px; background-color: #ffffff;border-radius: 4px;border: solid 1px #6aa6e2; font-family: PingFang; font-size: 14px; color: #6aa6e2;}
191
+ .button_new:hover{background-color: #f0f8ff;}
192
+
193
+ /*按钮导出*/
194
+ .button_export {width: 110px; height: 34px; background-color: #ffffff;border-radius: 4px;border: solid 1px #6aa6e2; font-family: PingFang; font-size: 14px; color: #6aa6e2;}
195
+ .button_export:hover{background-color: #f0f8ff;}
196
+ .button_export button{width: 110px !important; height: 34px!important; background-color: #ffffff!important;border-radius: 4px!important;border: solid 1px #6aa6e2!important; font-family: PingFang; font-size: 14px!important; color: #6aa6e2!important;}
197
+ .button_export button:hover{background-color: #f0f8ff;}
198
+
199
+ /*查询输入框*/
200
+ .input_search{ width: 180px;height: 34px;background-color: #ffffff;border-radius: 2px;border: solid 1px #c7c7c7;color: #333333; font-size: 14px;font-family: PingFang;}
201
+ .input_search::-webkit-input-placeholder{color: #999999; font-size: 14px;padding-left:15px;font-family: PingFang;}
202
+ .input_search:focus{ border: solid 1px #6aa6e2;}
203
+
204
+ /*下拉框*/
205
+ .select button{width: 180px!important;height: 34px!important;background-color: #ffffff!important;border-radius: 2px!important;border: solid 1px #c7c7c7!important;color: #666666!important; font-size: 14px!important;font-family: PingFang;font-weight: normal!important;}
206
+ .select button:focus{ border: solid 1px #6aa6e2!important;}
207
+
208
+ }
@@ -21,6 +21,10 @@ export function getAttendanceState (item, timeToWork, timeToGo) {
21
21
  }
22
22
  }
23
23
 
24
+ export function isEmpty (str) {
25
+ return str === undefined || str === null || str.toString().trim() === ''
26
+ }
27
+
24
28
  export function toStandardYearMonth () {
25
29
  let dt = new Date()
26
30
  let month = dt.getMonth() + 1
@@ -5,11 +5,11 @@
5
5
  <div class="row auto">
6
6
  <div class="col-xs-12 col-sm-6 col-md-6 form-input-group mg8">
7
7
  <label class="text-justify lb-left" for="f_install_num">实际可安装用户:</label>
8
- <input type="text" class="form-control" id="f_install_num" v-model="model.f_install_num" >
8
+ <input type="number" class="form-control" id="f_install_num" v-model="model.f_install_num" >
9
9
  </div>
10
10
  <div class="col-xs-12 col-sm-6 col-md-6 form-input-group" >
11
11
  <label class="text-justify lb-left" for="costmatter">缴费户数:</label>
12
- <input type="text" class="form-control" id="costmatter" v-model="model.f_payfee_num" >
12
+ <input type="number" class="form-control" id="costmatter" v-model="model.f_payfee_num" >
13
13
  </div>
14
14
  <div class="col-xs-12 col-sm-6 col-md-6 form-input-group">
15
15
  <label class="text-justify lb-left" >用气类型:</label>
@@ -9,11 +9,11 @@
9
9
  </div>
10
10
  <div class="col-xs-12 col-sm-6 col-md-6 form-input-group" :class="[$v.f_gas_number.pattern ? 'has-error' : '']">
11
11
  <label class="text-justify lb-left" for="f_gas_number">通气户数:</label>
12
- <input type="text" class="form-control" id="f_gas_number" v-model="model.f_gas_number" v-validate:f_gas_number="{pattern:'/^[+]{0,1}(\\d+)$|^[+]{0,1}(\\d+\\.\\d+)$/'}">
12
+ <input type="number" class="form-control" id="f_gas_number" v-model="model.f_gas_number" v-validate:f_gas_number="{pattern:'/^[+]{0,1}(\\d+)$|^[+]{0,1}(\\d+\\.\\d+)$/'}">
13
13
  </div>
14
14
  <div class="col-xs-12 col-sm-6 col-md-6 form-input-group" :class="[$v.f_notgas_number.pattern ? 'has-error' : '']">
15
15
  <label class="text-justify lb-left" for="f_notgas_number">未通气户数:</label>
16
- <input type="text" class="form-control" id="f_notgas_number" v-model="model.f_notgas_number" v-validate:f_notgas_number="{pattern:'/^[+]{0,1}(\\d+)$|^[+]{0,1}(\\d+\\.\\d+)$/'}">
16
+ <input type="number" class="form-control" id="f_notgas_number" v-model="model.f_notgas_number" v-validate:f_notgas_number="{pattern:'/^[+]{0,1}(\\d+)$|^[+]{0,1}(\\d+\\.\\d+)$/'}">
17
17
  </div>
18
18
  <div class="col-xs-12 col-sm-6 col-md-6 form-input-group" :class="$v.f_regulatoruser.required ? 'has-error' : ''">
19
19
  <label class="text-justify lb-left" for="f_regulatoruser">调压人员:</label>
Binary file
Binary file
Binary file
@@ -1,7 +1,7 @@
1
1
  <template>
2
- <div class="full">
2
+ <div class="full" style="background-color: #f6f6f6;">
3
3
  <div class="flex-row">
4
- <div class="flex" style="flex: 1" :style="{height: totalheight}">
4
+ <div class="flex" style="flex: 1" :style="{height: totalheight,width:'80%'}">
5
5
  <div class="flex col-sm-12" :style="{height: leftheight}">
6
6
  <installinfoselect v-ref:installselect></installinfoselect>
7
7
  </div>
@@ -21,7 +21,7 @@
21
21
  <route v-ref:route></route>
22
22
  </div>
23
23
  </div>
24
- <div style="width: 350px;padding:0px 0px 10px 0px;margin-left: 20px">
24
+ <div style="width: 20%;padding:0px 0px 0px 0px;margin-left: 0px">
25
25
  <install-apply-cardlist :btns="operatebtn" :userinfoid="row ? row.f_userinfo_id : ''" @list-select-oper="recordCancel"
26
26
  v-ref:card></install-apply-cardlist>
27
27
  </div>
@@ -50,7 +50,11 @@
50
50
  },
51
51
  created(){
52
52
  let http = new HttpResetClass()
53
- http.load('POST','rs/logic/ApplyGetConfigs', {data:this.$login.f}, {resolveMsg: null, rejectMsg: null}
53
+ let xmldata = {
54
+ data: this.$login.f,
55
+ workname: '工商业报建流程'
56
+ }
57
+ http.load('POST','rs/logic/ApplyGetConfigs', {data: xmldata}, {resolveMsg: null, rejectMsg: null}
54
58
  ).then((res)=>{
55
59
  if(res.data.code && res.data.code == 200){
56
60
  Vue.function_vue = Vue.prototype.$function_vue = res.data.function_vue
@@ -91,7 +95,7 @@
91
95
  // this.show = true
92
96
  this.showallbtn = true
93
97
  this.leftheight = '25%'
94
- this.totalheight = '80%'
98
+ this.totalheight = '100%'
95
99
  },
96
100
  'hiddenbtn'() {
97
101
  this.showallbtn = false
@@ -1,75 +1,60 @@
1
1
  <template>
2
2
  <div class="d1 flex">
3
- <div class="left col-sm-12">
3
+ <div class="left col-sm-12" v-if="refreshed">
4
4
  <criteria-paged :model="model" v-ref:cp>
5
- <criteria partial='criteria' @condition-changed='search' v-ref:cri>
5
+ <criteria partial='criteria' @condition-changed='search' v-ref:cri style="padding: 20px;background-color: #f6f6f6;">
6
6
  <form novalidate class="" partial>
7
- <div class="col-sm-10">
8
- <div class="col-sm-2">
9
- <div class="col-sm-11">
10
- <input type="text" class="form-control" v-model="model.f_user_name" v-on:keyup.enter="search"
11
- condition="f_user_name like '{}%'" placeholder="用户姓名">
7
+ <div class="col-sm-12">
8
+ <div class="form-group col-sm-4">
9
+ <label class=" col-sm-6" style="padding-top: 8px">联系人/项目名称/用户名称:</label>
10
+ <div class="col-sm-6">
11
+ <input type="text" class="form-control" v-model="model.f_user_name"
12
+ condition=" (f_user_name like '%{}%' or f_entry_name like '%{}%' or f_company_name like '%{}%') " placeholder='三选一输入'>
12
13
  </div>
13
14
  </div>
14
- <div class="col-sm-2">
15
- <div class="col-sm-11">
16
- <input type="text" class="form-control" v-model="model.f_apply_num" v-on:keyup.enter="search"
17
- condition="f_apply_num like '{}%'" placeholder="报建编号">
15
+ <div class="col-sm-1">
16
+ <!--<label class="col-sm-6">合同编号</label>-->
17
+ <div class="col-sm-12">
18
+ <input type="text" class="form-control" placeholder='合同编号' v-model="model.f_contract_number"
19
+ v-on:keyup.enter="search"
20
+ condition="f_contract_number like '%{}%'">
18
21
  </div>
19
22
  </div>
20
- <!-- <div class="col-sm-2">
21
- <label for="f_user_name" class="col-sm-6"><nobr> 地址:</nobr></label>
22
- <div class="col-sm-6">
23
- <input type="text" class="form-control" v-model="model.f_address" v-on:keyup.enter="search"
24
- condition="f_address like '{}%'" >
25
- </div>
26
- </div> -->
27
- <div class="col-sm-2">
28
- <!--<label for="f_user_name" class="col-sm-6"><nobr> 小区:</nobr></label>-->
29
- <div class="col-sm-11">
30
- <input type="text" class="form-control" v-model="model.f_residential_area" v-on:keyup.enter="search"
31
- condition="f_residential_area like '{}%'" placeholder="小区">
23
+ <div class="col-sm-1">
24
+ <!--<label class="col-sm-6">用户地址</label>-->
25
+ <div class="col-sm-12">
26
+ <input type="text" class="form-control" placeholder='用户地址' v-model="model.f_address"
27
+ v-on:keyup.enter="search"
28
+ condition="f_address like '%{}%'">
32
29
  </div>
33
30
  </div>
34
- <div class="col-sm-2">
35
- <!--<label for="f_user_name" class="col-sm-6"><nobr> 用户类型:</nobr></label>-->
36
- <div class="col-sm-11" v-if="this.$login.f.f_fengongsi.includes('中燃')">
37
- <v-select :options="$parent.$parent.fapplytype" placeholder='用户类型' condition="f_user_type like '{}%'"
31
+ <div class="col-sm-1">
32
+ <!--<label class="col-sm-6"> 报建类型:</label>-->
33
+ <div class="col-sm-12" v-if="!this.$login.f.f_fengongsi.includes('中燃')">
34
+ <v-select :width ="'100%'" style="width: 100%" :options="$parent.$parent.applytype" placeholder='报建类型' condition="f_apply_type like '%{}%'"
38
35
  v-model="model.f_apply_type" :value.sync="model.f_apply_type" close-on-select>
39
36
  </v-select>
40
37
  </div>
41
- <div class="col-sm-11" v-else>
42
- <v-select :options="$parent.$parent.usertype" placeholder='用户类型' condition="f_user_type like '{}%'"
43
- v-model="model.f_user_type" :value.sync="model.f_user_type" close-on-select>
44
- </v-select>
45
- </div>
46
38
  </div>
47
39
  <div class="col-sm-2">
48
- <!--<label for="f_user_type" class="col-sm-6"><nobr> 流程状态:</nobr></label>-->
49
- <div class="col-sm-12">
50
- <v-select :options="$parent.$parent.defnameType" placeholder='流程状态'
51
- condition="act.defname like '%{}%'"
40
+ <label class="col-sm-6">办理环节:</label>
41
+ <div class="col-sm-6">
42
+ <v-select :width ="'90%'" @change="$dispatch('setQueryCondition',model)" :options="$parent.$parent.defnames"
43
+ condition="defname = '{}'" placeholder='办理环节'
52
44
  v-model="model.defname" :value.sync="model.defname" close-on-select>
53
45
  </v-select>
54
46
  </div>
55
47
  </div>
56
- <div class="col-sm-2">
57
- <!--<label for="f_user_name" class="col-sm-6"><nobr> 报建类型:</nobr></label>-->
58
- <div class="col-sm-12" v-if="!this.$login.f.f_fengongsi.includes('中燃')">
59
- <v-select :options="$parent.$parent.applytype" placeholder='报建类型' condition="f_apply_type like '{}%'"
60
- v-model="model.f_apply_type" :value.sync="model.f_apply_type" close-on-select>
61
- </v-select>
62
- </div>
48
+ <div class="col-sm-1">
49
+ <input type="text" class="form-control" placeholder='经办人' v-model="model.f_survey_name"
50
+ v-on:keyup.enter="search"
51
+ condition=" (f_apply_kefu_employee like '%{}%' or f_survey_name like '%{}%') ">
52
+ </div>
53
+ <div class="col-sm-1">
54
+ <button class="btn btn-primary btn-sm" type="button" @click="search(),$parent.$parent.showpager()">
55
+ <span class="glyphicon glyphicon-search"></span>查询
56
+ </button>
63
57
  </div>
64
- </div>
65
-
66
- <div class="col-sm-2">
67
- <center>
68
- <div class="col-sm-10 pull-right">
69
- <button class="btn btn-primary btn-sm" type="button" @click="search(),$parent.$parent.showpager()">
70
- <span class="glyphicon glyphicon-search"></span>查询</button>
71
- </div>
72
- </center>
73
58
  </div>
74
59
  </form>
75
60
  </criteria>
@@ -80,26 +65,30 @@
80
65
  <nobr>序号</nobr>
81
66
  </th>
82
67
  <th>
83
- <nobr>当前状态</nobr>
68
+ <nobr>当前环节</nobr>
84
69
  </th>
70
+ <th><nobr>联系人/项目名称/用户名称</nobr></th>
85
71
  <th>
86
- <nobr>用户姓名</nobr>
72
+ <nobr>合同编号</nobr>
87
73
  </th>
88
74
  <th>
89
- <nobr>小区</nobr>
75
+ <nobr>电话</nobr>
76
+ </th>
77
+ <th>
78
+ <nobr>地址</nobr>
90
79
  </th>
91
80
  <th v-if="!this.$login.f.f_fengongsi.includes('中燃')">
92
81
  <nobr>用户类型</nobr>
93
82
  </th>
94
83
  <th>
95
- <nobr>流程状态</nobr>
84
+ <nobr>报建类型</nobr>
96
85
  </th>
97
86
  <th>
98
87
  <nobr>报建日期</nobr>
99
88
  </th>
100
- <th>
101
- <nobr>申请户数</nobr>
102
- </th>
89
+ <!--<th>-->
90
+ <!--<nobr>申请户数</nobr>-->
91
+ <!--</th>-->
103
92
  <th>
104
93
  <nobr>操作</nobr>
105
94
  </th>
@@ -114,30 +103,36 @@
114
103
  <nobr>{{row.defname}}</nobr>
115
104
  </td>
116
105
  <td style="text-align: center;">
117
- <nobr>{{row.f_user_name}}</nobr>
106
+ <nobr>{{row.f_user_name}}/{{row.f_entry_name}}/{{row.f_company_name}}</nobr>
107
+ </td>
108
+ <td style="text-align: center;">
109
+ <nobr>{{row.f_contract_number}}</nobr>
110
+ </td>
111
+ <td style="text-align: center;">
112
+ <nobr>{{row.f_phone}}</nobr>
118
113
  </td>
119
114
  <td style="text-align: center;">
120
- <nobr>{{row.f_residential_area}}</nobr>
115
+ <nobr>{{row.f_address}}</nobr>
121
116
  </td>
122
117
  <td style="text-align: center;" v-if="!this.$login.f.f_fengongsi.includes('中燃')">
123
118
  <nobr>{{row.f_user_type}}</nobr>
124
119
  </td>
125
120
  <td style="text-align: center;">
126
- <nobr>{{row.defname}}</nobr>
121
+ <nobr>{{row.f_apply_type}}</nobr>
127
122
  </td>
128
123
  <td style="text-align: center;">
129
124
  <nobr>{{row.f_apply_date}}</nobr>
130
125
  </td>
126
+ <!--<td style="text-align: center;">-->
127
+ <!--<nobr>{{row.f_apply_count}}</nobr>-->
128
+ <!--</td>-->
131
129
  <td style="text-align: center;">
132
- <nobr>{{row.f_apply_count}}</nobr>
133
- </td>
134
- <td style="text-align: center;">
135
- <dropdown v-if="row.defname != '完工'">
136
- <button type="button" data-toggle="dropdown" style="border: 0px;background: none;">
130
+ <dropdown v-if="row.defname != '完工'" >
131
+ <button @click="$dispatch('checkfuncs',row)" type="button" data-toggle="dropdown" style="border: 0px;background: none;">
137
132
  <span class="glyphicon glyphicon-th-list" style="position: inherit;"></span>
138
133
  </button>
139
134
  <ul slot="dropdown-menu" class="dropdown-menu dropdown-menu-right">
140
- <li v-for="(index,func) in $function_vue.functions">
135
+ <li v-for="(index,func) in $parent.$parent.$parent.funcs">
141
136
  <a href="#" @click="$dispatch('func',func,row)">{{func.title}}</a>
142
137
  </li>
143
138
  </ul>
@@ -151,6 +146,7 @@
151
146
  </div>
152
147
  </template>
153
148
  <script>
149
+ import {HttpResetClass} from 'vue-client'
154
150
  import {
155
151
  PagedList
156
152
  } from 'vue-client'
@@ -159,13 +155,16 @@
159
155
  title: '报建业务信息',
160
156
  data() {
161
157
  return {
158
+ refreshed:true,
162
159
  usertype: this.$appdata.getParam('用户类型'),
163
160
  defnameType: this.$appdata.getParam('流程状态'),
164
161
  applytype: this.$appdata.getParam('报建类型'),
165
162
  //中燃 专用
166
163
  fapplytype: this.$appdata.getParam('用户类型'),
164
+ funcs:[],
165
+ defnames:[],
167
166
  showbtn: false,
168
- model: new PagedList('rs/sql/checkuser', 20, {
167
+ model: new PagedList('rs/sql/checkuserfunction', 20, {
169
168
  data: {
170
169
  id: this.$login.f.id,
171
170
  fengongsi: this.$login.f.f_fengongsi
@@ -176,8 +175,38 @@
176
175
  },
177
176
  ready() {
178
177
  this.$refs.cp.$refs.cri.search()
178
+ let http = new HttpResetClass()
179
+ http.load('POST', 'rs/sql/getDefnamesForActivityins', {data:{}}, {
180
+ resolveMsg: null,
181
+ rejectMsg: null
182
+ }).then((res)=>{
183
+ // 先获取所有流程环节
184
+ this.defnames = [{label: '全部', value: ''}]
185
+ for(let i=0;i<res.data.length;i++){
186
+ this.defnames.push({label:res.data[i].defname,value:res.data[i].defname})
187
+ }
188
+ })
189
+ },
190
+ events:{
191
+ async checkfuncs(row){
192
+ if(row.defname =='报装申请'||row.defname =='任务分配'||row.defname =='勘察初设'||row.defname =='合同信息'||row.defname =='合同审核'){
193
+ let temp = JSON.parse(JSON.stringify(this.$function_vue.functions))
194
+ delete temp[0]
195
+ this.funcs = temp // test.splice(1, 1);
196
+ // this.update()
197
+ }else {
198
+ this.funcs = this.$function_vue.functions
199
+ // this.update()z
200
+ }
201
+ }
179
202
  },
180
203
  methods: {
204
+ update(){
205
+ this.refreshed = false
206
+ this.$nextTick(()=>{
207
+ this.refreshed = true
208
+ })
209
+ },
181
210
  clifun(row) {
182
211
  this.$refs.cp.$refs.grid.model.rows = [row]
183
212
  this.$refs.cp.pager = false