apply-clients 3.2.41 → 3.2.50
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 +1 -1
- package/src/App.vue +20 -20
- package/src/apply.js +185 -175
- package/src/components/app_apply/Process/AppExplorationUser.vue +1 -1
- package/src/components/app_apply/ProgressReport/ProgressReportList.vue +209 -208
- package/src/components/app_apply/Supervisory/AppProcessSupervisory.vue +183 -183
- package/src/components/image/tubiao.png +0 -0
- package/src/components/product/Ledger/ContractManagement/OtherContract/OtherContractInformation.vue +429 -429
- package/src/components/product/Ledger/ContractManagement/OtherContract/OtherContractList.vue +267 -267
- package/src/components/product/Ledger/ContractManagement/PurchaseContract/PurchaseContractInformation.vue +715 -682
- package/src/components/product/Ledger/ContractManagement/PurchaseContract/PurchaseContractList.vue +304 -304
- package/src/components/product/Ledger/ContractManagement/RepairContract/RepairContractInformation.vue +286 -286
- package/src/components/product/Ledger/ContractManagement/RepairContract/RepairContractList.vue +258 -258
- package/src/components/product/Ledger/FacilityManagement/FacilityInventory/FacilityInventory.vue +31 -0
- package/src/components/product/Ledger/FacilityManagement/FacilityInventory/FacilityInventoryList.vue +5 -0
- package/src/components/product/Ledger/FacilityManagement/FacilityInventory/addoldFacilityInformation.vue +326 -0
- package/src/components/product/Ledger/FileDownload/FileDownload.vue +42 -0
- package/src/components/product/Ledger/Function/InstallInfoSelect.vue +4 -1
- package/src/components/product/Ledger/ImportApply/ImportApply.vue +68 -0
- package/src/components/product/Ledger/MaterialManagement/DeliveryRecord/DeliveryRecordList.vue +39 -3
- package/src/components/product/Ledger/MaterialManagement/InventoryInformation/InventoryInformationList.vue +32 -2
- package/src/components/product/Ledger/MaterialManagement/InventoryInformation/MaterialInformation.vue +1 -1
- package/src/components/product/Ledger/MaterialManagement/InventoryInformation/MaterialOutStock.vue +438 -430
- package/src/components/product/Ledger/MaterialManagement/InventoryInformation/MaterialOutboundOrder.vue +457 -449
- package/src/components/product/Ledger/MaterialManagement/InventoryInformation/PurchaseMaterial.vue +10 -2
- package/src/components/product/Ledger/MaterialManagement/InventoryInformation/PurchaseOrder.vue +10 -2
- package/src/components/product/Ledger/MaterialManagement/InventoryInformation/ReturnMaterial.vue +10 -2
- package/src/components/product/Ledger/MaterialManagement/OutboundOrder/OutboundOrderInformation.vue +3 -1
- package/src/components/product/Ledger/MaterialManagement/OutboundOrder/OutboundOrderList.vue +31 -2
- package/src/components/product/Ledger/MaterialManagement/OutboundOrder/PrintMaterialBill.vue +2 -2
- package/src/components/product/Ledger/MaterialManagement/PurchaseRecords/PrintPurchaseOrder.vue +5 -4
- package/src/components/product/Ledger/MaterialManagement/PurchaseRecords/PurchaseRecordsInformation.vue +5 -1
- package/src/components/product/Ledger/MaterialManagement/PurchaseRecords/PurchaseRecordsList.vue +33 -7
- package/src/components/product/Ledger/MaterialManagement/WarehousingRecord/WarehousingRecordList.vue +45 -3
- package/src/components/product/Ledger/Process/ProcessSelect.vue +3 -5
- package/src/components/product/Ledger/Process/Service/ServiceControl.vue +42 -5
- package/src/components/product/Ledger/QinhuaMaterial/PickingRecord/PickingInformation.vue +24 -3
- package/src/components/product/Ledger/QinhuaMaterial/SeasoningRecord/SeasoningRecordList.vue +14 -2
- package/src/components/product/Ledger/Supervisory/Service/RenWuDan.vue +78 -0
- package/src/components/product/Ledger/Supervisory/Service/SupervisoryServiceControl.vue +38 -2
- package/src/components/product/Ledger/Supervisory/SupervisoryList.vue +182 -7
- package/src/components/product/ServiceView.vue +761 -850
- package/static/images/lefticon//346/226/207/344/273/266/346/250/241/345/235/227.png +0 -0
|
@@ -0,0 +1,326 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="select-overspread" style="background-color: #ffffff;padding: 20px;overflow: scroll">
|
|
3
|
+
<form class="form-horizontal">
|
|
4
|
+
<div class="form-group">
|
|
5
|
+
<!-- 添加设备 -->
|
|
6
|
+
<validator name="v">
|
|
7
|
+
<div class="col-sm-12">
|
|
8
|
+
<data-grid :model="model" partial='list' v-ref:grid style="overflow: auto" class="list_area table_sy">
|
|
9
|
+
<template partial='head'>
|
|
10
|
+
<tr>
|
|
11
|
+
<th style="white-space: nowrap;">序号</th>
|
|
12
|
+
<th style="white-space: nowrap;">设备编码</th>
|
|
13
|
+
<th style="white-space: nowrap;">设备名称</th>
|
|
14
|
+
<th style="white-space: nowrap;">设备型号</th>
|
|
15
|
+
<th style="white-space: nowrap;">设备规格</th>
|
|
16
|
+
<th style="white-space: nowrap;">设备金额</th>
|
|
17
|
+
<th style="white-space: nowrap;">购买日期</th>
|
|
18
|
+
<th style="white-space: nowrap;">质保期(月)</th>
|
|
19
|
+
<th style="white-space: nowrap;">备注</th>
|
|
20
|
+
<th style="white-space: nowrap;">
|
|
21
|
+
<button @click="$parent.$parent.openModal()" type="button" class="btn btn-info">
|
|
22
|
+
<span class="glyphicon glyphicon-plus" aria-hidden="true"></span>
|
|
23
|
+
</button>
|
|
24
|
+
</th>
|
|
25
|
+
</tr>
|
|
26
|
+
</template>
|
|
27
|
+
<template partial='body'>
|
|
28
|
+
<tr>
|
|
29
|
+
<td style="text-align: center;">{{$index+1}}</td>
|
|
30
|
+
<td style="text-align: center;">{{row.f_facility_number}}</td>
|
|
31
|
+
<td style="text-align: center;">{{row.f_facility_name}}</td>
|
|
32
|
+
<td style="text-align: center;">{{row.f_facility_model}}</td>
|
|
33
|
+
<td style="text-align: center;">{{row.f_facility_norm}}</td>
|
|
34
|
+
<td style="text-align: center;">{{row.f_facility_money}}</td>
|
|
35
|
+
<td style="text-align: center;">{{row.f_purchase_date}}</td>
|
|
36
|
+
<td style="text-align: center;">{{row.f_warranty}}</td>
|
|
37
|
+
<td style="text-align: center;">{{row.f_remarks}}</td>
|
|
38
|
+
<td style="text-align: center;">
|
|
39
|
+
<button type="button" name="button" class="btn btn-link" @click="$parent.$parent.openUpdateFacility($index,row)">修改</button>
|
|
40
|
+
<button type="button" name="button" class="btn btn-link" @click="$parent.$parent.deleteFacility($index)">删除</button>
|
|
41
|
+
</td>
|
|
42
|
+
</tr>
|
|
43
|
+
</template>
|
|
44
|
+
</data-grid>
|
|
45
|
+
</div>
|
|
46
|
+
<div class="col-sm-12 form-group" style="text-align: center">
|
|
47
|
+
<button class="btn btn-primary" :disabled='!($v.valid && model.data.length > 0)' @click.prevent="addoldFacility()">保存</button>
|
|
48
|
+
</div>
|
|
49
|
+
</validator>
|
|
50
|
+
|
|
51
|
+
<validator name="mv">
|
|
52
|
+
<modal v-if="showFacility" :show.sync="showFacility" backdrop="false" large>
|
|
53
|
+
<header slot="modal-header" class="modal-header">
|
|
54
|
+
<button type="button" class="close" @click="closeModal()"><span>×</span></button>
|
|
55
|
+
<span class="modal-title"><font size="3">添加材料</font></span>
|
|
56
|
+
</header>
|
|
57
|
+
<article slot="modal-body" class="form-horizontal modal-body clearfix">
|
|
58
|
+
<div class="col-sm-12 form-group" :class="[$mv.f_facility_name.required ? 'has-error' : '']">
|
|
59
|
+
<label class="control-label col-sm-2">设备名称</label>
|
|
60
|
+
<div class="col-sm-9">
|
|
61
|
+
<input class="form-control" type="text" v-model="facility.f_facility_name" :value="facility.f_facility_name"/>
|
|
62
|
+
</div>
|
|
63
|
+
</div>
|
|
64
|
+
<div class="col-sm-12 form-group" :class="[$mv.f_facility_model.required ? 'has-error' : '']">
|
|
65
|
+
<label class="control-label col-sm-2">设备型号</label>
|
|
66
|
+
<div class="col-sm-9">
|
|
67
|
+
<input class="form-control" type="text" v-model="facility.f_facility_model" :value="facility.f_facility_model"/>
|
|
68
|
+
</div>
|
|
69
|
+
</div>
|
|
70
|
+
<div class="col-sm-12 form-group" :class="[$mv.f_facility_norm.required ? 'has-error' : '']">
|
|
71
|
+
<label class="control-label col-sm-2">设备规格</label>
|
|
72
|
+
<div class="col-sm-9">
|
|
73
|
+
<input class="form-control" type="text" v-model="facility.f_facility_norm" :value="facility.f_facility_norm"/>
|
|
74
|
+
</div>
|
|
75
|
+
</div>
|
|
76
|
+
<div class="col-sm-12 form-group" :class="[$mv.f_facility_money.required ? 'has-error' : '']">
|
|
77
|
+
<label class="control-label col-sm-2">设备金额</label>
|
|
78
|
+
<div class="col-sm-9">
|
|
79
|
+
<input class="form-control" type="number" v-model="facility.f_facility_money" :value="facility.f_facility_money"/>
|
|
80
|
+
</div>
|
|
81
|
+
</div>
|
|
82
|
+
<div class="col-sm-12 form-group" :class="[$mv.f_facility_number.required ? 'has-error' : '']">
|
|
83
|
+
<label class="control-label col-sm-2">设备编码</label>
|
|
84
|
+
<div class="col-sm-9">
|
|
85
|
+
<input class="form-control" type="text" @change="changFacilityNumber()" v-model="facility.f_facility_number" :value="facility.f_facility_number"/>
|
|
86
|
+
</div>
|
|
87
|
+
</div>
|
|
88
|
+
<div class="col-sm-12 form-group" :class="[$mv.f_purchase_date.required ? 'has-error' : '']">
|
|
89
|
+
<label class="control-label col-sm-2">购买日期</label>
|
|
90
|
+
<div class="col-sm-9">
|
|
91
|
+
<input v-show="false" type="text" v-model="facility.f_purchase_date" />
|
|
92
|
+
<datepicker
|
|
93
|
+
format="yyyy-MM-dd"
|
|
94
|
+
|
|
95
|
+
:value.sync="facility.f_purchase_date"
|
|
96
|
+
v-model="facility.f_purchase_date">
|
|
97
|
+
</datepicker>
|
|
98
|
+
</div>
|
|
99
|
+
</div>
|
|
100
|
+
<div class="col-sm-12 form-group" :class="[$mv.f_warranty.required ? 'has-error' : '']">
|
|
101
|
+
<label class="control-label col-sm-2">质保期(月)</label>
|
|
102
|
+
<div class="col-sm-9">
|
|
103
|
+
<input class="form-control" type="number" v-model="facility.f_warranty" :value="facility.f_warranty"/>
|
|
104
|
+
</div>
|
|
105
|
+
</div>
|
|
106
|
+
<div class="col-sm-12 form-group">
|
|
107
|
+
<label class="control-label col-sm-2">备  注</label>
|
|
108
|
+
<div class="col-sm-9">
|
|
109
|
+
<textarea
|
|
110
|
+
class="form-control input_view"
|
|
111
|
+
style="width: 100%;height: 100%"
|
|
112
|
+
rows="2"
|
|
113
|
+
v-model="facility.f_remarks"
|
|
114
|
+
:value="facility.f_remarks"
|
|
115
|
+
>
|
|
116
|
+
</textarea>
|
|
117
|
+
</div>
|
|
118
|
+
</div>
|
|
119
|
+
</article>
|
|
120
|
+
<footer slot="modal-footer" class="modal-footer">
|
|
121
|
+
<button class="btn btn-primary" type="button" @click.prevent="saveOrUpdateFacility()" :disabled='!$mv.valid'>确认</button>
|
|
122
|
+
</footer>
|
|
123
|
+
</modal>
|
|
124
|
+
</validator>
|
|
125
|
+
</div>
|
|
126
|
+
</form>
|
|
127
|
+
</div>
|
|
128
|
+
</template>
|
|
129
|
+
|
|
130
|
+
<script>
|
|
131
|
+
import {HttpResetClass} from 'vue-client'
|
|
132
|
+
import {isEmpty} from '../../../../Util'
|
|
133
|
+
export default {
|
|
134
|
+
title: '设备信息',
|
|
135
|
+
data () {
|
|
136
|
+
return {
|
|
137
|
+
contractList: [],
|
|
138
|
+
contract: {},
|
|
139
|
+
contractFacility: [],
|
|
140
|
+
model: {
|
|
141
|
+
data: []
|
|
142
|
+
},
|
|
143
|
+
showFacility: false,
|
|
144
|
+
facility: {},
|
|
145
|
+
index: null
|
|
146
|
+
}
|
|
147
|
+
},
|
|
148
|
+
ready () {
|
|
149
|
+
},
|
|
150
|
+
methods: {
|
|
151
|
+
// 添加设备
|
|
152
|
+
addoldFacility () {
|
|
153
|
+
let data = {
|
|
154
|
+
contract: this.contract,
|
|
155
|
+
data: this.model.data
|
|
156
|
+
}
|
|
157
|
+
this.$dispatch('addoldFacility', data)
|
|
158
|
+
},
|
|
159
|
+
// 检查设备编号
|
|
160
|
+
async changFacilityNumber () {
|
|
161
|
+
let http = new HttpResetClass()
|
|
162
|
+
|
|
163
|
+
if (isEmpty(this.facility)) {
|
|
164
|
+
return
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
let data = {
|
|
168
|
+
tablename: 't_facility',
|
|
169
|
+
condition: `f_facility_number = '${this.facility.f_facility_number}'`
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
let res = await http.load(
|
|
173
|
+
'POST',
|
|
174
|
+
`rs/sql/singleTable`,
|
|
175
|
+
{data: data},
|
|
176
|
+
{resolveMsg: null, rejectMsg: '设备编码查询失败!!!'}
|
|
177
|
+
)
|
|
178
|
+
|
|
179
|
+
if (res.data.length > 0) {
|
|
180
|
+
this.facility.f_facility_number = null
|
|
181
|
+
this.$showAlert('该设备编码已存在!!!', 'warning', 3000)
|
|
182
|
+
return
|
|
183
|
+
}
|
|
184
|
+
let flag = this.model.data.some(item => {
|
|
185
|
+
if (item.f_facility_number === this.facility.f_facility_number) {
|
|
186
|
+
return true
|
|
187
|
+
}
|
|
188
|
+
return false
|
|
189
|
+
})
|
|
190
|
+
if (flag) {
|
|
191
|
+
this.facility.f_facility_number = null
|
|
192
|
+
this.$showAlert('该设备编码已存在!!!', 'warning', 3000)
|
|
193
|
+
return
|
|
194
|
+
}
|
|
195
|
+
},
|
|
196
|
+
// 打开修改
|
|
197
|
+
async openUpdateFacility (index, facility) {
|
|
198
|
+
await this.getContractFacility()
|
|
199
|
+
|
|
200
|
+
this.index = index
|
|
201
|
+
this.facility = JSON.parse(JSON.stringify(facility))
|
|
202
|
+
|
|
203
|
+
this.showFacility = true
|
|
204
|
+
},
|
|
205
|
+
// 删除
|
|
206
|
+
async deleteFacility (index) {
|
|
207
|
+
this.index = index
|
|
208
|
+
await this.$showMessage('您确定要删除这条记录吗?').then((res) => {
|
|
209
|
+
if (res === 'confirm') {
|
|
210
|
+
this.model.data.splice(this.index, 1)
|
|
211
|
+
}
|
|
212
|
+
})
|
|
213
|
+
this.closeModal()
|
|
214
|
+
},
|
|
215
|
+
// 添加或修改
|
|
216
|
+
saveOrUpdateFacility () {
|
|
217
|
+
if (isEmpty(this.index)) {
|
|
218
|
+
this.model.data.push(this.facility)
|
|
219
|
+
} else {
|
|
220
|
+
this.model.data.splice(this.index, 1, this.facility)
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
this.closeModal()
|
|
224
|
+
},
|
|
225
|
+
// 关闭
|
|
226
|
+
closeModal () {
|
|
227
|
+
this.showFacility = false
|
|
228
|
+
this.index = null
|
|
229
|
+
this.facility = null
|
|
230
|
+
this.contractFacility = []
|
|
231
|
+
},
|
|
232
|
+
async openModal () {
|
|
233
|
+
this.showFacility = true
|
|
234
|
+
},
|
|
235
|
+
async getContractFacility () {
|
|
236
|
+
let data = {
|
|
237
|
+
tablename: 't_contract_facility',
|
|
238
|
+
condition: `f_contract_id = ${this.contract.id}`
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
let res = await this.$resetpost(
|
|
242
|
+
`rs/sql/singleTable`,
|
|
243
|
+
{data: data},
|
|
244
|
+
{resolveMsg: null, rejectMsg: '合同采购设备查询失败!!!'}
|
|
245
|
+
)
|
|
246
|
+
|
|
247
|
+
res.data.forEach(item => {
|
|
248
|
+
this.contractFacility.push({
|
|
249
|
+
'label': `${item.f_facility_name}--${item.f_facility_model}--${item.f_facility_norm}--${item.f_facility_money}`,
|
|
250
|
+
'value': item
|
|
251
|
+
})
|
|
252
|
+
})
|
|
253
|
+
},
|
|
254
|
+
},
|
|
255
|
+
events: {
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
</script>
|
|
259
|
+
|
|
260
|
+
<style scoped>
|
|
261
|
+
.item{
|
|
262
|
+
height: 40px;
|
|
263
|
+
margin-bottom: 20px;
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
th{
|
|
267
|
+
font-size: 15px !important;
|
|
268
|
+
text-align: center !important;
|
|
269
|
+
background-color: #dfedfb!important;
|
|
270
|
+
color: #666666 !important;
|
|
271
|
+
font-family: PINGFANG-BOLD !important;
|
|
272
|
+
font-weight: normal!important;
|
|
273
|
+
}
|
|
274
|
+
/*清除model中的浮动*/
|
|
275
|
+
.clearfix:after,.clearfix:before{
|
|
276
|
+
display: table;
|
|
277
|
+
}
|
|
278
|
+
.clearfix:after{
|
|
279
|
+
clear: both;
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
.input_view{
|
|
283
|
+
padding: 8px;
|
|
284
|
+
background-color: #ffffff;
|
|
285
|
+
border-radius: 2px;
|
|
286
|
+
border: solid 1px #c7c7c7!important;
|
|
287
|
+
color: #333333!important;
|
|
288
|
+
font-size: 15px!important;
|
|
289
|
+
}
|
|
290
|
+
|
|
291
|
+
.input_view[readonly]{
|
|
292
|
+
border: 1px solid #DDD!important;
|
|
293
|
+
/*background-color: #F5F5F5;*/
|
|
294
|
+
color:#ACA899!important;
|
|
295
|
+
}
|
|
296
|
+
.input_view:disabled{
|
|
297
|
+
border: 1px solid #DDD!important;
|
|
298
|
+
/*background-color: #F5F5F5;*/
|
|
299
|
+
color:#ACA899!important;
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
.control-label-justify {
|
|
303
|
+
display: inline-block;
|
|
304
|
+
vertical-align: top;
|
|
305
|
+
width: 110px;
|
|
306
|
+
text-align: justify;
|
|
307
|
+
font-family: PingFang-SC-Bold;
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
.control-label-justify::after {
|
|
311
|
+
content: "";
|
|
312
|
+
display: inline-block;
|
|
313
|
+
width: 70px;
|
|
314
|
+
overflow: hidden;
|
|
315
|
+
height: 0;
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
input::-webkit-outer-spin-button,
|
|
319
|
+
input::-webkit-inner-spin-button {
|
|
320
|
+
-webkit-appearance: none;
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
input[type="number"] {
|
|
324
|
+
-moz-appearance: textfield;
|
|
325
|
+
}
|
|
326
|
+
</style>
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="flex-row">
|
|
3
|
+
<div class="basic-main">
|
|
4
|
+
<tabset v-ref:tabs :close="false">
|
|
5
|
+
<tab header='模板上传及下载' style="background-color :#ffffff!important;overflow: auto;">
|
|
6
|
+
<apply-upload :blodid="selectdata.blodid"
|
|
7
|
+
:isupload="true"
|
|
8
|
+
:isdelete="true"
|
|
9
|
+
:isusetype="true"
|
|
10
|
+
:isremark="true"
|
|
11
|
+
:issearch="true"
|
|
12
|
+
:takeimg="false">
|
|
13
|
+
|
|
14
|
+
</apply-upload>
|
|
15
|
+
</tab>
|
|
16
|
+
</tabset>
|
|
17
|
+
</div>
|
|
18
|
+
</div>
|
|
19
|
+
</template>
|
|
20
|
+
<script>
|
|
21
|
+
import Vue from 'vue'
|
|
22
|
+
import {HttpResetClass} from 'vue-client'
|
|
23
|
+
|
|
24
|
+
export default {
|
|
25
|
+
title: '文件模板',
|
|
26
|
+
data() {
|
|
27
|
+
return {
|
|
28
|
+
selectdata: {
|
|
29
|
+
blodid: '公共'
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
created() {
|
|
34
|
+
},
|
|
35
|
+
methods: {},
|
|
36
|
+
events: {},
|
|
37
|
+
watch: {},
|
|
38
|
+
ready() {
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
</script>
|
|
@@ -178,7 +178,7 @@
|
|
|
178
178
|
}
|
|
179
179
|
}),
|
|
180
180
|
applytype: [{label: '全部', value: ''}, ...this.$appdata.getParam('项目类型')],
|
|
181
|
-
projectTypes: [{label: '全部', value: ''}],
|
|
181
|
+
projectTypes: [{label: '全部', value: ''},...this.$appdata.getParam('工程类型')],
|
|
182
182
|
projectAreas: [{label: '全部', value: ''}, ...this.$appdata.getParam('项目区域')], // 所有报建类型
|
|
183
183
|
defnames: [{label: '全部', value: ''}], // 流程节点
|
|
184
184
|
funcs: [], // 功能列表
|
|
@@ -199,8 +199,11 @@
|
|
|
199
199
|
}, {resolveMsg: null, rejectMsg: null}).then((res) => {
|
|
200
200
|
this.defnames = [{label: '全部', value: ''}, ...res.data]
|
|
201
201
|
})
|
|
202
|
+
|
|
203
|
+
this.projectTypes = [{label: '全部', value: ''}, ...this.$appdata.getParam(`${this.$refs.cp.$refs.cri.model.f_apply_type}工程类型`)]
|
|
202
204
|
} else {
|
|
203
205
|
this.defnames = [{label: '全部', value: ''}]
|
|
206
|
+
this.projectTypes = [{label: '全部', value: ''}]
|
|
204
207
|
}
|
|
205
208
|
},
|
|
206
209
|
// 权限控制
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="auto p-10">
|
|
3
|
+
<div class="form-group col-sm-12 button-range">
|
|
4
|
+
<button class="button_clear button_spacing" @click="openImport('主体')">主体项目导入</button>
|
|
5
|
+
<button class="button_clear button_spacing" @click="openImport('客户')">客户项目导入</button>
|
|
6
|
+
</div>
|
|
7
|
+
|
|
8
|
+
<modal :show.sync="showFile" v-ref:modal backdrop="true" title="选择文件">
|
|
9
|
+
<header slot="modal-header" class="modal-header">
|
|
10
|
+
<button type="button" class="close" @click="closeFile"><span>×</span></button>
|
|
11
|
+
<h4 class="modal-title">选择文件</h4>
|
|
12
|
+
</header>
|
|
13
|
+
<article slot="modal-body" class="modal-body">
|
|
14
|
+
<div class="form-group">
|
|
15
|
+
<file-upload class="my-file-uploader" name="useraddressUploadFile" action="rs/file/uploadFile" tagname="确定" multiple v-ref:file></file-upload>
|
|
16
|
+
</div>
|
|
17
|
+
</article>
|
|
18
|
+
<footer slot="modal-footer" class="modal-footer"></footer>
|
|
19
|
+
</modal>
|
|
20
|
+
</div>
|
|
21
|
+
</template>
|
|
22
|
+
<script>
|
|
23
|
+
import Vue from 'vue'
|
|
24
|
+
import {HttpResetClass} from 'vue-client'
|
|
25
|
+
export default {
|
|
26
|
+
title: '导入',
|
|
27
|
+
data () {
|
|
28
|
+
return {
|
|
29
|
+
showFile: false,
|
|
30
|
+
type: null
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
created () {
|
|
34
|
+
},
|
|
35
|
+
methods: {
|
|
36
|
+
openImport (type) {
|
|
37
|
+
this.type = type
|
|
38
|
+
this.showFile = true
|
|
39
|
+
},
|
|
40
|
+
closeFile () {
|
|
41
|
+
this.showFile = false
|
|
42
|
+
// 将选的文件清空
|
|
43
|
+
this.$refs.file.$el.querySelector('input').value = ''
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
events: {
|
|
47
|
+
async 'onFileUpload'(file, result) {
|
|
48
|
+
console.log('文件上传成功!!!')
|
|
49
|
+
console.log(file)
|
|
50
|
+
console.log(result)
|
|
51
|
+
|
|
52
|
+
let data = {
|
|
53
|
+
type: this.type,
|
|
54
|
+
filepath: result.f_downloadpath,
|
|
55
|
+
user: this.$login.f
|
|
56
|
+
}
|
|
57
|
+
let res = await this.$resetpost(`rs/logic/importApply`, {data:data}, {resolveMsg: null, rejectMsg: '导入失败', silent: true}, 0)
|
|
58
|
+
|
|
59
|
+
console.log('===============================')
|
|
60
|
+
console.log(res.data)
|
|
61
|
+
|
|
62
|
+
this.closeFile()
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
watch: {
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
</script>
|
package/src/components/product/Ledger/MaterialManagement/DeliveryRecord/DeliveryRecordList.vue
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<template>
|
|
1
|
+
<template>
|
|
2
2
|
<criteria-paged :model="model" v-ref:cp>
|
|
3
3
|
<criteria partial='criteria' @condition-changed='search' v-ref:cri>
|
|
4
4
|
<div class="form-horizontal select-overspread container-fluid auto" partial>
|
|
@@ -19,6 +19,12 @@
|
|
|
19
19
|
v-on:keyup.enter="$parent.$parent.search()" condition="o.f_cea_number like '%{}%'" placeholder='CEA号'>
|
|
20
20
|
</div>
|
|
21
21
|
<div class="form-group col-sm-3 button-range">
|
|
22
|
+
<export-excel :data="$parent.$parent.getCondition"
|
|
23
|
+
:field="$parent.$parent.getfield"
|
|
24
|
+
sqlurl="rs/logic/exportfile"
|
|
25
|
+
sql-name="getMaterialDelivery"
|
|
26
|
+
template-name='出库记录'
|
|
27
|
+
:choose-col="true"></export-excel>
|
|
22
28
|
<button class="button_search button_spacing" @click="$parent.$parent.search()" v-el:cx>查询</button>
|
|
23
29
|
<button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
|
|
24
30
|
<div
|
|
@@ -116,7 +122,8 @@
|
|
|
116
122
|
<th style="white-space: nowrap;">材料名称</th>
|
|
117
123
|
<th style="white-space: nowrap;">材料型号</th>
|
|
118
124
|
<th style="white-space: nowrap;">材料规格</th>
|
|
119
|
-
<th style="white-space: nowrap;"
|
|
125
|
+
<th style="white-space: nowrap;">含税单价</th>
|
|
126
|
+
<th style="white-space: nowrap;">不含税单价</th>
|
|
120
127
|
<th style="white-space: nowrap;">单位</th>
|
|
121
128
|
<th style="white-space: nowrap;">合同号</th>
|
|
122
129
|
<th style="white-space: nowrap;">厂家</th>
|
|
@@ -150,6 +157,9 @@
|
|
|
150
157
|
<td style="text-align: center;">
|
|
151
158
|
<nobr><font>{{row.f_price}}</font></nobr>
|
|
152
159
|
</td>
|
|
160
|
+
<td style="text-align: center;">
|
|
161
|
+
<nobr><font>{{row.f_noprice}}</font></nobr>
|
|
162
|
+
</td>
|
|
153
163
|
<td style="text-align: center;">
|
|
154
164
|
<nobr><font>{{row.f_unit}}</font></nobr>
|
|
155
165
|
</td>
|
|
@@ -218,7 +228,25 @@ export default {
|
|
|
218
228
|
orgid: this.$login.f.orgid
|
|
219
229
|
}
|
|
220
230
|
}),
|
|
221
|
-
criteriaShow: false
|
|
231
|
+
criteriaShow: false,
|
|
232
|
+
getfield: {
|
|
233
|
+
'f_material_name': '材料名称',
|
|
234
|
+
'f_material_model': '材料型号',
|
|
235
|
+
'f_material_norm': '材料规格',
|
|
236
|
+
'f_price': '含税单价',
|
|
237
|
+
'f_noprice': '不含税单价',
|
|
238
|
+
'f_unit': '单位',
|
|
239
|
+
'f_contract_number': '合同号',
|
|
240
|
+
'f_supplier': '厂家',
|
|
241
|
+
'f_ticket_number': '出库票号',
|
|
242
|
+
'f_cea_number': 'CEA号',
|
|
243
|
+
'f_delivery_quantity': '出库数量',
|
|
244
|
+
'f_picking_unit': '领料单位',
|
|
245
|
+
'f_picking_site': '领料工地',
|
|
246
|
+
'f_delivery_date': '出库时间',
|
|
247
|
+
'f_delivery_operator': '操作人',
|
|
248
|
+
'f_delivery_remarks': '备注'
|
|
249
|
+
}
|
|
222
250
|
}
|
|
223
251
|
},
|
|
224
252
|
ready () {
|
|
@@ -237,6 +265,14 @@ export default {
|
|
|
237
265
|
}
|
|
238
266
|
},
|
|
239
267
|
computed: {
|
|
268
|
+
getCondition() {
|
|
269
|
+
return {
|
|
270
|
+
condition: this.$refs.cp.$refs.cri.condition,
|
|
271
|
+
data: {
|
|
272
|
+
orgid: this.$login.f.orgid
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
}
|
|
240
276
|
}
|
|
241
277
|
}
|
|
242
278
|
</script>
|
|
@@ -18,6 +18,12 @@
|
|
|
18
18
|
<div class="form-group col-sm-6 button-range">
|
|
19
19
|
<button class="button_search button_spacing" @click="$parent.$parent.search()" v-el:cx>查询</button>
|
|
20
20
|
<button class="button_clear button_spacing" @click="$parent.$parent.clear()">清空</button>
|
|
21
|
+
<export-excel :data="$parent.$parent.getCondition"
|
|
22
|
+
:field="$parent.$parent.getfield"
|
|
23
|
+
sqlurl="rs/logic/exportfile"
|
|
24
|
+
sql-name="getMaterial"
|
|
25
|
+
template-name='材料库存记录'
|
|
26
|
+
:choose-col="true"></export-excel>
|
|
21
27
|
<button class="button_new button_spacing" @click="$parent.$parent.openPurchaseOrder()">采购单</button>
|
|
22
28
|
<button class="button_new button_spacing" @click="$parent.$parent.openPurchaseMaterial()">采购入库</button>
|
|
23
29
|
<button class="button_new button_spacing" @click="$parent.$parent.openReturnMaterial()">还料入库</button>
|
|
@@ -71,7 +77,8 @@
|
|
|
71
77
|
<th style="white-space: nowrap;">材料名称</th>
|
|
72
78
|
<th style="white-space: nowrap;">材料型号</th>
|
|
73
79
|
<th style="white-space: nowrap;">材料规格</th>
|
|
74
|
-
<th style="white-space: nowrap;"
|
|
80
|
+
<th style="white-space: nowrap;">含税单价</th>
|
|
81
|
+
<th style="white-space: nowrap;">不含税单价</th>
|
|
75
82
|
<th style="white-space: nowrap;">单位</th>
|
|
76
83
|
<th style="white-space: nowrap;">合同号</th>
|
|
77
84
|
<th style="white-space: nowrap;">厂家</th>
|
|
@@ -97,6 +104,9 @@
|
|
|
97
104
|
<td :class="row.f_stock > 0 ? (row.iswarning === 'true' ? 'warning' : '') : 'danger'" style="text-align: center;" @click="$parent.$parent.$parent.view(row)">
|
|
98
105
|
<nobr><font>{{row.f_price}}</font></nobr>
|
|
99
106
|
</td>
|
|
107
|
+
<td :class="row.f_stock > 0 ? (row.iswarning === 'true' ? 'warning' : '') : 'danger'" style="text-align: center;" @click="$parent.$parent.$parent.view(row)">
|
|
108
|
+
<nobr><font>{{row.f_noprice}}</font></nobr>
|
|
109
|
+
</td>
|
|
100
110
|
<td :class="row.f_stock > 0 ? (row.iswarning === 'true' ? 'warning' : '') : 'danger'" style="text-align: center;" @click="$parent.$parent.$parent.view(row)">
|
|
101
111
|
<nobr><font>{{row.f_unit}}</font></nobr>
|
|
102
112
|
</td>
|
|
@@ -160,7 +170,19 @@ export default {
|
|
|
160
170
|
orgid: this.$login.f.orgid
|
|
161
171
|
}
|
|
162
172
|
}),
|
|
163
|
-
criteriaShow: false
|
|
173
|
+
criteriaShow: false,
|
|
174
|
+
getfield: {
|
|
175
|
+
'f_material_name': '材料名称',
|
|
176
|
+
'f_material_model': '材料型号',
|
|
177
|
+
'f_material_norm': '材料规格',
|
|
178
|
+
'f_price': '含税单价',
|
|
179
|
+
'f_noprice': '不含税单价',
|
|
180
|
+
'f_unit': '单位',
|
|
181
|
+
'f_contract_number': '合同号',
|
|
182
|
+
'f_supplier': '厂家',
|
|
183
|
+
'f_stock': '库存结余',
|
|
184
|
+
'f_prepare_quantity': '预出库'
|
|
185
|
+
}
|
|
164
186
|
}
|
|
165
187
|
},
|
|
166
188
|
ready () {
|
|
@@ -206,6 +228,14 @@ export default {
|
|
|
206
228
|
}
|
|
207
229
|
},
|
|
208
230
|
computed: {
|
|
231
|
+
getCondition() {
|
|
232
|
+
return {
|
|
233
|
+
condition: this.$refs.cp.$refs.cri.condition,
|
|
234
|
+
data: {
|
|
235
|
+
orgid: this.$login.f.orgid
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
}
|
|
209
239
|
}
|
|
210
240
|
}
|
|
211
241
|
</script>
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
</div>
|
|
35
35
|
</div>
|
|
36
36
|
<div class="col-sm-4 form-group item">
|
|
37
|
-
<label class="control-label-justify control-label col-sm-6"
|
|
37
|
+
<label class="control-label-justify control-label col-sm-6">含税单价</label>
|
|
38
38
|
<div class="col-sm-6">
|
|
39
39
|
<input class="form-control input_view" style=""
|
|
40
40
|
type="number"
|