|
|
|
|
@ -109,14 +109,16 @@ |
|
|
|
|
</el-radio-group> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="repairOption" align="center" label="维修方案" width="150" v-if="(viewType != 'view')|| (errorForm.repairStatus != 1 && errorForm.repairStatus != 101)"> |
|
|
|
|
<el-table-column prop="repairOption" align="center" label="维修方案" width="150" |
|
|
|
|
v-if="(viewType != 'view') || (errorForm.repairStatus != 1 && errorForm.repairStatus != 101)"> |
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
<el-input placeholder="请输入维修方案" |
|
|
|
|
:disabled="viewType == 'view' || (errorForm.repairStatus != 1 && errorForm.repairStatus != 101)" |
|
|
|
|
v-model="scope.row.repairOption" style="width: 98%;"></el-input> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="isNeed" align="center" label="是否需要物料" width="120" v-if="(viewType != 'view')|| (errorForm.repairStatus != 1 && errorForm.repairStatus != 101)"> |
|
|
|
|
<el-table-column prop="isNeed" align="center" label="是否需要物料" width="120" |
|
|
|
|
v-if="(viewType != 'view') || (errorForm.repairStatus != 1 && errorForm.repairStatus != 101)"> |
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
<el-radio-group v-model="scope.row.isNeed" fill="red"> |
|
|
|
|
<el-radio |
|
|
|
|
@ -128,7 +130,8 @@ |
|
|
|
|
</el-radio-group> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column align="center" label="物料配置" width="120" v-if="(viewType != 'view')|| (errorForm.repairStatus != 1 && errorForm.repairStatus != 101)"> |
|
|
|
|
<el-table-column align="center" label="物料配置" width="120" |
|
|
|
|
v-if="(viewType != 'view') || (errorForm.repairStatus != 1 && errorForm.repairStatus != 101)"> |
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
<el-button @click="setMaterial(scope.row)" :disabled="scope.row.isNeed == 0" |
|
|
|
|
size="mini">物料配置</el-button> |
|
|
|
|
@ -136,7 +139,7 @@ |
|
|
|
|
</el-table-column> |
|
|
|
|
<!-- 维修完成 --> |
|
|
|
|
<el-table-column align="center" label="维修完成图片" width="200" |
|
|
|
|
v-if="(viewType != 'view')&& (errorForm.repairStatus == 4||errorForm.repairStatus == 5 || errorForm.repairStatus == 6 || errorForm.repairStatus == 7 || errorForm.repairStatus == 8)"> |
|
|
|
|
v-if="(viewType != 'view') && (errorForm.repairStatus == 4 || errorForm.repairStatus == 5 || errorForm.repairStatus == 6 || errorForm.repairStatus == 7 || errorForm.repairStatus == 8)"> |
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
<div v-if="errorForm.repairStatus == 4"> |
|
|
|
|
<el-upload action="/api/blade-resource/oss/endpoint/put-file" list-type="picture-card" |
|
|
|
|
@ -156,18 +159,20 @@ |
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<el-form-item label="差旅费" v-if="(viewType != 'view')|| (errorForm.repairStatus != 1 && errorForm.repairStatus != 101)"> |
|
|
|
|
<el-form-item label="差旅费" |
|
|
|
|
v-if="(viewType != 'view') || (errorForm.repairStatus != 1 && errorForm.repairStatus != 101)"> |
|
|
|
|
<el-input placeholder="请输入差旅费" v-model="errorForm.travelExpense" style="width:98%;" |
|
|
|
|
:disabled="viewType == 'view' || (errorForm.repairStatus != 1 && errorForm.repairStatus != 101)" |
|
|
|
|
><template slot="append">元</template></el-input> |
|
|
|
|
:disabled="viewType == 'view' || (errorForm.repairStatus != 1 && errorForm.repairStatus != 101)"><template |
|
|
|
|
slot="append">元</template></el-input> |
|
|
|
|
</el-form-item> |
|
|
|
|
<el-form-item label="处理结果" v-if="(viewType != 'view')|| (errorForm.repairStatus != 1 && errorForm.repairStatus != 101)"> |
|
|
|
|
<el-form-item label="处理结果" |
|
|
|
|
v-if="(viewType != 'view') || (errorForm.repairStatus != 1 && errorForm.repairStatus != 101)"> |
|
|
|
|
<el-input placeholder="请输入处理结果" type="textarea" v-model="errorForm.processingResult" style="width:98%;" |
|
|
|
|
:disabled="viewType == 'view' || (errorForm.repairStatus != 1 && errorForm.repairStatus != 101)"></el-input> |
|
|
|
|
</el-form-item> |
|
|
|
|
|
|
|
|
|
<el-form-item label="维修总计" |
|
|
|
|
v-if="viewType != 'view' &&(errorForm.repairStatus == 2 || errorForm.repairStatus == 3 || errorForm.repairStatus == 4 || errorForm.repairStatus == 5 || errorForm.repairStatus == 6 || errorForm.repairStatus == 7 || errorForm.repairStatus == 8 || errorForm.repairStatus == 102)"> |
|
|
|
|
v-if="viewType != 'view' && (errorForm.repairStatus == 2 || errorForm.repairStatus == 3 || errorForm.repairStatus == 4 || errorForm.repairStatus == 5 || errorForm.repairStatus == 6 || errorForm.repairStatus == 7 || errorForm.repairStatus == 8 || errorForm.repairStatus == 102)"> |
|
|
|
|
<el-input placeholder="请输入" v-model="errorForm.actualAmount" style="width:98%;" |
|
|
|
|
:disabled="viewType == 'view' || (errorForm.repairStatus != 2 && errorForm.repairStatus != 102)"><template |
|
|
|
|
slot="append">元</template></el-input> |
|
|
|
|
@ -229,7 +234,7 @@ |
|
|
|
|
</div> |
|
|
|
|
<!-- 维修效果确认 --> |
|
|
|
|
<div |
|
|
|
|
v-show="viewType != 'view'&&( errorForm.repairStatus == 5 ||errorForm.repairStatus == 6 || errorForm.repairStatus == 7 || errorForm.repairStatus == 8)"> |
|
|
|
|
v-show="viewType != 'view' && (errorForm.repairStatus == 5 || errorForm.repairStatus == 6 || errorForm.repairStatus == 7 || errorForm.repairStatus == 8)"> |
|
|
|
|
<div style=" |
|
|
|
|
color: #101010; |
|
|
|
|
font-size: 20px; |
|
|
|
|
@ -330,7 +335,7 @@ |
|
|
|
|
<el-form-item label="意见" label-width="60px" |
|
|
|
|
v-show="(!errorForm.isOkQuality || !errorForm.isOkSecure || !errorForm.isOkValidity)"> |
|
|
|
|
<el-input type="textarea" v-model="errorForm.evaluationRemarks" placeholder="意见" style="width: 98%;" |
|
|
|
|
:disabled="dialogType == 'view'||(errorForm.repairStatus==6||errorForm.repairStatus==7||errorForm.repairStatus==8)"></el-input> |
|
|
|
|
:disabled="dialogType == 'view' || (errorForm.repairStatus == 6 || errorForm.repairStatus == 7 || errorForm.repairStatus == 8)"></el-input> |
|
|
|
|
</el-form-item> |
|
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
@ -383,7 +388,7 @@ |
|
|
|
|
width="70%" :key="Math.random()"> |
|
|
|
|
<el-table :data="materialData" border style="width: 98%"> |
|
|
|
|
<el-table-column width="50" align="center" v-if="viewType == 'submit'"> |
|
|
|
|
<template slot="header" slot-scope="scope"> |
|
|
|
|
<template slot="header" slot-scope="scope" > |
|
|
|
|
<div @click="addColumn()" |
|
|
|
|
style="width:30px;height: 30px;background: #409eff;border-radius: 50%;cursor: pointer;display: flex;align-items: center;justify-content: center;"> |
|
|
|
|
<i style="color:#fff;font-size: 20px;" class="el-icon-plus"></i> |
|
|
|
|
@ -396,7 +401,7 @@ |
|
|
|
|
</div> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="productId" align="center" label="物料名称"> |
|
|
|
|
<el-table-column prop="productId" align="center" label="物料名称" width="150"> |
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
<el-select @change="((val) => { changeProduct(val, scope.$index) })" |
|
|
|
|
@blur="((val) => { changeProduct(val, scope.$index) })" v-loadmore="loadmoreProduct" |
|
|
|
|
@ -406,31 +411,59 @@ |
|
|
|
|
</el-select> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="warehouseId" label="库存ID" align="center"> |
|
|
|
|
<el-table-column prop="warehouseId" label="库存ID" align="center" width="150"> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="rule" align="center" label="规格" width="80"> |
|
|
|
|
<el-table-column prop="rule" align="center" label="规格" width="150"> |
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
<el-input v-if="scope.row.goodsName == '其他'" v-model="scope.row.rule" placeholder="请输入规格" |
|
|
|
|
style="width:98%;" size="mini"></el-input> |
|
|
|
|
<span v-else>{{ scope.row.rule }}</span> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="xh" align="center" label="型号" width="80"> |
|
|
|
|
<!-- <template slot-scope="scope"> |
|
|
|
|
<el-input v-model="scope.row.model" placeholder="请输入型号" style="width:98%;"></el-input> |
|
|
|
|
</template> --> |
|
|
|
|
<el-table-column prop="xh" align="center" label="型号" width="150"> |
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
<el-input v-if="scope.row.goodsName == '其他'" v-model="scope.row.model" placeholder="请输入型号" |
|
|
|
|
style="width:98%;" size="mini"></el-input> |
|
|
|
|
<span v-else>{{ scope.row.model }}</span> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="number" align="center" label="数量"> |
|
|
|
|
<el-table-column prop="number" align="center" label="数量" width="200"> |
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
<el-input-number style="width: 100%;" @change="((val) => { changeNumber(val, scope.row) })" |
|
|
|
|
v-model="scope.row.number" placeholder="请输入数量" :min="1" |
|
|
|
|
:disabled="viewType != 'submit'"></el-input-number> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="unit" align="center" label="单位" width="80"> |
|
|
|
|
<el-table-column prop="unit" align="center" label="单位" width="150"> |
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
<el-input v-if="scope.row.goodsName == '其他'" v-model="scope.row.unit" placeholder="请输入单位" |
|
|
|
|
style="width:98%;" size="mini"></el-input> |
|
|
|
|
<span v-else>{{ scope.row.unit }}</span> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<el-table-column prop="price" align="center" label="价格" width="200"> |
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
<!-- <template slot-scope="scope"> |
|
|
|
|
<el-input v-model="scope.row.price" disabled placeholder="请输入价格" style="width:98%;"> |
|
|
|
|
<template slot="append">元</template> |
|
|
|
|
</el-input> |
|
|
|
|
</template> --> |
|
|
|
|
<template slot-scope="scope"> |
|
|
|
|
<el-input v-if="scope.row.goodsName == '其他'" v-model="scope.row.price" placeholder="请输入价格" |
|
|
|
|
style="width:98%;" size="mini"> |
|
|
|
|
<template slot="append">元</template> |
|
|
|
|
</el-input> |
|
|
|
|
<el-input v-else v-model="scope.row.price" disabled placeholder="请输入价格" style="width:98%;" size="mini"> |
|
|
|
|
<template slot="append">元</template> |
|
|
|
|
</el-input> |
|
|
|
|
</template> |
|
|
|
|
</el-table-column> |
|
|
|
|
<!-- <template slot="append" v-if="tableData.length != 0"> |
|
|
|
|
<tr> |
|
|
|
|
<td style="padding: 10px;padding-right: 0;font-size: 14px;color: #909399;font-weight: 600;">总计:</td> |
|
|
|
|
<td>{{Math.trunc(tableData.reduce((acc, obj) => acc + ((Number(obj.price)) || 0), 0) * 100) |
|
|
|
|
/ 100}} 元</td> |
|
|
|
|
</tr> |
|
|
|
|
</template> --> |
|
|
|
|
</el-table> |
|
|
|
|
<span slot="footer" class="dialog-footer"> |
|
|
|
|
<el-button @click="materialVisible = false">取 消</el-button> |
|
|
|
|
@ -630,13 +663,13 @@ export default { |
|
|
|
|
const value = Number(curr); |
|
|
|
|
|
|
|
|
|
if (!isNaN(value)) { |
|
|
|
|
return prev + curr; |
|
|
|
|
return Number(prev)+Number(curr); |
|
|
|
|
} else { |
|
|
|
|
return prev; |
|
|
|
|
return Number(prev); |
|
|
|
|
} |
|
|
|
|
}, 0); |
|
|
|
|
|
|
|
|
|
sums[columns.length - 1] = sums[columns.length - 1] > 0 ? sums[columns.length - 1].toFixed(2) : 0 |
|
|
|
|
sums[columns.length - 1] = sums[columns.length - 1] > 0 ?Math.round(sums[columns.length - 1] * 100) / 100 : 0 |
|
|
|
|
this.totalPrice = sums[columns.length - 1] |
|
|
|
|
sums[columns.length - 1] += ' 元'; |
|
|
|
|
} |
|
|
|
|
@ -1057,7 +1090,7 @@ export default { |
|
|
|
|
signaturePerson: this.errorForm.signaturePerson, |
|
|
|
|
signatureTime: this.errorForm.signatureTime, |
|
|
|
|
approveResult: this.errorForm.approveResult1, |
|
|
|
|
evaluationRemarks:this.errorForm.evaluationRemarks |
|
|
|
|
evaluationRemarks: this.errorForm.evaluationRemarks |
|
|
|
|
} |
|
|
|
|
customerConfirmFinish(query).then(res => { |
|
|
|
|
if (res.data.code == 200) { |
|
|
|
|
@ -1390,7 +1423,7 @@ export default { |
|
|
|
|
let data = this.checkDeepData(res.data.data.details) |
|
|
|
|
if (this.errorForm.repairStatus > 1) { |
|
|
|
|
data.forEach(item => { |
|
|
|
|
item.completeImgList =item.completeImgList==''?[]:JSON.parse(item.completeImgList) |
|
|
|
|
item.completeImgList = item.completeImgList == '' ? [] : JSON.parse(item.completeImgList) |
|
|
|
|
if (item.detailGoodsList.length > 0) { |
|
|
|
|
item.isNeed = '1' |
|
|
|
|
} else { |
|
|
|
|
@ -1497,7 +1530,7 @@ export default { |
|
|
|
|
getExpandedKeys(table) { |
|
|
|
|
this.expandedKeys = [] |
|
|
|
|
table.forEach(item => { |
|
|
|
|
if(item.detailGoodsList.length>0){ |
|
|
|
|
if (item.detailGoodsList.length > 0) { |
|
|
|
|
this.expandedKeys.push(item.id) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|