Browse Source

完善销售退货

master
yunuo970428 10 months ago
parent
commit
76a2552c93
  1. 28
      yxt-as-ui/src/views/operation/merchandisereturn/merchandisereturn.vue
  2. 281
      yxt-as-ui/src/views/operation/merchandisereturn/merchandisereturnAdd.vue
  3. 102
      yxt-as-ui/src/views/operation/merchandisereturn/merchandisereturnInfo.vue
  4. 84
      yxt-as-ui/src/views/workFlow/shangpintuihuoFlow/merchandisereturnDaiBan.vue
  5. 259
      yxt-as-ui/src/views/workFlow/shangpintuihuoFlow/merchandisereturnEdit.vue
  6. 84
      yxt-as-ui/src/views/workFlow/shangpintuihuoFlow/merchandisereturnYiBan.vue

28
yxt-as-ui/src/views/operation/merchandisereturn/merchandisereturn.vue

@ -22,14 +22,14 @@
<el-input v-model="listQuery.params.billNo" placeholder="" clearable/>
</el-form-item>
<el-form-item label="申请日期">
<el-date-picker v-model="listQuery.params.createTimeStart" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<el-date-picker v-model="listQuery.params.startDate" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<span style="padding: 0 8px"></span>
<el-date-picker v-model="listQuery.params.createTimeEnd" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<el-date-picker v-model="listQuery.params.endDate" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
</el-form-item>
<el-form-item label="办结日期">
<el-date-picker v-model="listQuery.params.closeDateStart" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<el-date-picker v-model="listQuery.params.colesStartDate" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<span style="padding: 0 8px"></span>
<el-date-picker v-model="listQuery.params.closeDateEnd" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<el-date-picker v-model="listQuery.params.colesEndDate" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
@ -66,8 +66,8 @@
<el-table-column prop="createByName" label="申请人" align="center" width="120" />
<el-table-column prop="createTime" label="申请日期" align="center" width="120" />
<el-table-column prop="closeDate" label="办结日期" align="center" width="120" />
<el-table-column prop="invoiceName" label="合计金额" align="center" width="100" />
<el-table-column prop="invoiceValue" label="应付金额" align="center" width="100" />
<el-table-column prop="totalAmount" label="合计金额" align="center" width="100" />
<el-table-column prop="payableAmount" label="应付金额" align="center" width="100" />
</el-table>
</div>
<!--End 主页面主要部分-->
@ -155,10 +155,10 @@ export default {
deptName: '',
createByName: '',
billNo: '',
createTimeStart: '',
createTimeEnd: '',
closeDateStart: '',
closeDateEnd: '',
startDate: '',
endDate: '',
colesStartDate: '',
colesEndDate: '',
invoiceName: '',
invoiceValue: '',
createBySid: '',
@ -276,10 +276,10 @@ export default {
deptName: '',
createByName: '',
billNo: '',
createTimeStart: '',
createTimeEnd: '',
closeDateStart: '',
closeDateEnd: '',
startDate: '',
endDate: '',
colesStartDate: '',
colesEndDate: '',
invoiceName: '',
invoiceValue: '',
createBySid: '',

281
yxt-as-ui/src/views/operation/merchandisereturn/merchandisereturnAdd.vue

@ -26,6 +26,20 @@
<el-form-item><span class="addinputInfo">{{ formobj.createTime }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">收款账号</div>
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.accountNumber" clearable placeholder="" /></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">账户名称</div>
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.account" clearable placeholder="" /></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">开户行</div>
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.accountBank" clearable placeholder="" /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">备注</div>
@ -75,16 +89,10 @@
<el-form-item><span class="addinputInfo">{{ formobj.vehMark }}/{{ formobj.vinNo }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">客户单位</div>
<el-form-item><span class="addinputInfo">{{ formobj.customerOrg }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty" style="border-right: 0px">合计金额</div>
<el-form-item><span class="addinputInfo"> = 工时费 + 材料费 + 附加费 + 税额</span></el-form-item>
<el-form-item><span class="addinputInfo">{{ formobj.totalAmount }} = 工时费 + 材料费{{ formobj.goodsAmount }} + 附加费{{ formobj.addAmount }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
@ -94,20 +102,66 @@
</el-col>
</el-row>
<div v-show="formobj.type == '0'">
<div class="title titleOne">服务项目</div>
<div class="title titleOne">维修项目</div>
<el-table :key="sitemKey" :data="formobj.sitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column fixed label="操作" align="center" width="100">
<template>
<el-button type="primary" size="small">退</el-button>
<el-button type="primary" size="small" @click="sitemReturn(scope.row, scope.$index)">退</el-button>
</template>
</el-table-column>
<el-table-column prop="serviceItem" label="服务项目" align="center" width="300" />
<el-table-column prop="serviceItem" label="维修项目" align="center" width="300" />
<el-table-column prop="serviceType" label="工种" align="center" width="150" />
<el-table-column prop="manufacturerName" label="厂家" align="center" width="150" />
<el-table-column prop="subject" label="科目" align="center" width="100" />
<el-table-column prop="repairerName" label="维修人" align="center" width="100" />
<el-table-column prop="examineHourPrice" label="考核工时" align="center" width="100" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="100" />
<el-table-column prop="examineHourPrice" label="工时提成" align="center" width="100" />
<el-table-column prop="hourPrice" label="工时单价" align="center" width="100" />
<el-table-column prop="hours" label="工时数" align="center" width="140" />
<el-table-column prop="price" label="销售价" align="center" width="120" />
<el-table-column prop="discount" label="折扣" align="center" width="120" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="120" />
<el-table-column prop="amount" label="金额" align="center" width="100" />
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
</div>
<div v-show="formobj.type =='1'">
<div class="title">
<span v-show="formobj.type == '0'">维修领料</span>
<span v-show="formobj.type == '1'">商品列表</span>
</div>
<el-table :key="goodsKey" :data="formobj.goodsDetailsVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column fixed label="操作" align="center" width="100">
<template slot-scope="scope">
<el-button type="primary" size="small" @click="goodsReturn(scope.row, scope.$index)">退</el-button>
</template>
</el-table-column>
<el-table-column prop="goodsSpuName" label="商品名称" align="center" width="300" />
<el-table-column prop="goodsSkuCode" label="图号" align="center" width="150" />
<el-table-column prop="goodsSkuOwnSpec" label="规格" align="center" width="150" />
<el-table-column prop="unit" label="单位" align="center" width="100" />
<el-table-column prop="billObjName" label="供应商" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="100" />
<el-table-column prop="count" label="数量" align="center" width="100" />
<el-table-column prop="discount" label="折扣" align="center" width="120" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="120" />
<el-table-column prop="amount" label="金额" align="center" width="100" />
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
</div>
<div class="title">退货信息</div>
<div v-show="formobj.returnSitemVos.length > 0">
<div class="title">维修项目</div>
<el-table :key="sitemReturnKey" :data="formobj.returnSitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>`
<el-table-column fixed label="操作" align="center" width="80">
<template slot-scope="scope">
<el-button type="danger" size="mini" @click="sitemDelete(scope.$index)">删除</el-button>
</template>
</el-table-column>
<el-table-column prop="serviceItem" label="维修项目" align="center" width="300" />
<el-table-column prop="serviceType" label="工种" align="center" width="150" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="100" />
<el-table-column prop="examineHourPrice" label="工时提成" align="center" width="100" />
<el-table-column prop="hourPrice" label="工时单价" align="center" width="100" />
<el-table-column prop="hours" label="工时数" align="center" width="140" />
<el-table-column prop="price" label="销售价" align="center" width="120" />
@ -117,38 +171,27 @@
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
</div>
<div class="title">商品列表</div>
<el-table :key="goodsKey" :data="formobj.goodsDetailsVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column fixed label="操作" align="center" width="100">
<template slot-scope="scope">
<el-button type="primary" size="small" @click="goodsReturn(scope.row, scope.$index)">退</el-button>
</template>
</el-table-column>
<el-table-column prop="goodsSpuName" label="商品名称" align="center" width="300" />
<el-table-column prop="goodsSkuCode" label="图号" align="center" width="150" />
<el-table-column prop="goodsSkuOwnSpec" label="规格" align="center" width="150" />
<el-table-column prop="unit" label="单位" align="center" width="100" />
<el-table-column prop="manufacturerName" label="厂家" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="100" />
<el-table-column prop="count" label="数量" align="center" width="100" />
<el-table-column prop="amount" label="已出库" align="center" width="140" />
<el-table-column prop="discount" label="折扣" align="center" width="120" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="120" />
<el-table-column prop="amount" label="金额" align="center" width="100" />
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
<div v-show="formobj.returnGoods.length > 0">
<div class="title titleOne">
<div>退货商品列表</div>
<el-button type="primary" size="mini" class="btntopblueline" @click="fullyWithdraw">整单全退</el-button>
<div>
<span v-show="formobj.type == '0'">维修用料</span>
<span v-show="formobj.type == '1'">商品列表</span>
</div>
<el-button type="primary" size="mini" class="btntopblueline" @click="fullyWithdraw">全退</el-button>
</div>
<el-table :key="tableKey" :data="formobj.returnGoods" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column fixed label="操作" align="center" width="80">
<template slot-scope="scope">
<el-button type="danger" size="mini" @click="goodsDelete(scope.$index)">删除</el-button>
</template>
</el-table-column>
<el-table-column prop="goodsSpuName" label="商品名称" align="center" width="300" />
<el-table-column prop="goodsSkuCode" label="图号" align="center" width="150" />
<el-table-column prop="goodsSkuOwnSpec" label="规格" align="center" width="150" />
<el-table-column prop="unit" label="单位" align="center" width="100" />
<el-table-column prop="billObjName" label="供应商" align="center" width="100" />
<el-table-column prop="price" label="销售单价" align="center" width="100" />
<el-table-column prop="currentCount" label="总数量" align="center" width="100" />
<el-table-column prop="returnedCount" label="已退数量" align="center" width="140" />
<el-table-column label="退货价" align="center" min-width="140">
@ -166,20 +209,8 @@
</div>
<el-row>
<el-col :span="24">
<div class="span-sty" style="border-right: 0px">合计金额</div>
<el-form-item><span class="addinputInfo"> = 工时费 + 材料费 + 附加费 + 税额</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty" style="border-right: 0px">自费金额</div>
<el-form-item><span class="addinputInfo"> = 自费工时费 + 自费材料费 + 附加费 + 税额</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty" style="border-right: 0px">应付金额</div>
<el-form-item><span class="addinputInfo"> = 自费金额 + 退优惠 - 抵扣欠款</span></el-form-item>
<div class="span-sty" style="border-right: 0px">退款金额</div>
<el-form-item><span class="addinputInfo">{{ tkjeCount }} = 工时费{{ thgsfCount }} + 材料费{{ thclfCount }} + 附加费0</span></el-form-item>
</el-col>
</el-row>
</el-form>
@ -231,7 +262,8 @@ export default {
dialogVisible: false,
tableKey: 1,
sitemKey: 2,
goodsKey: 3,
sitemReturnKey: 3,
goodsKey: 4,
index: 0,
formobj: {
type: '',
@ -253,20 +285,60 @@ export default {
waitorName: '',
customerName: '',
mobile: '',
customerOrg: '',
vehMark: '',
vinNo: '',
taskId: '',
instanceId: '',
payableAmount: '',
totalAmount: '',
hourAmount: '',
goodsAmount: '',
addAmount: '',
payableAmount: '',
payableHoursAmount: '',
payableGoodsAmount: '',
accountBank: '',
account: '',
accountNumber: '',
sitemVos: [],
goodsDetailsVos: [],
returnGoods: []
returnGoods: [],
returnSitemVos: []
},
rules: {}
}
},
computed: {},
computed: {
// 退
thgsfCount() {
let gsf = '0'
if (this.formobj.returnSitemVos.length > 0) {
this.formobj.returnSitemVos.forEach((e) => {
if (e.serviceItem !== '') {
gsf = Math.round((parseFloat(gsf) + parseFloat(e.amount)) * 100) / 100
}
})
}
return gsf
},
// 退
thclfCount() {
let clf = '0'
if (this.formobj.returnGoods.length > 0) {
this.formobj.returnGoods.forEach((e) => {
if (e.goodsSpuName !== '') {
clf = Math.round((parseFloat(clf) + parseFloat(e.backAmount !== '' ? e.backAmount : '0')) * 100) / 100
}
})
}
return clf
},
// 退
tkjeCount() {
let tkje = '0'
tkje = Math.round((parseFloat(this.thgsfCount) + parseFloat(this.thclfCount)) * 100) / 100
return tkje
}
},
methods: {
showAdd() {
this.viewTitle = '【新增】商品退货申请'
@ -299,6 +371,7 @@ export default {
req.fetchDetailsBySid(row.sid).then((res) => {
if (res.success) {
this.formobj = res.data
this.formobj.totalAmount = Math.round(parseFloat(this.formobj.hourAmount !== '' ? this.formobj.hourAmount : '0') + (parseFloat(this.formobj.goodsAmount !== '' ? this.formobj.goodsAmount : '0') + parseFloat(this.formobj.addAmount !== '' ? this.formobj.addAmount : '0')) * 100) / 100
}
})
},
@ -360,8 +433,11 @@ export default {
this.formobj.mobile = res.data.mobile
this.formobj.vehMark = res.data.vehMark
this.formobj.vinNo = res.data.vinNo
this.formobj.customerOrg = res.data.customerOrg
this.formobj.hourAmount = res.data.hourAmount
this.formobj.goodsAmount = res.data.goodsAmount
this.formobj.addAmount = res.data.addAmount
this.formobj.sitemVos = res.data.sitemVos
this.formobj.totalAmount = Math.round(parseFloat(this.formobj.hourAmount !== '' ? this.formobj.hourAmount : '0') + (parseFloat(this.formobj.goodsAmount !== '' ? this.formobj.goodsAmount : '0') + parseFloat(this.formobj.addAmount !== '' ? this.formobj.addAmount : '0')) * 100) / 100
this.formobj.goodsDetailsVos = res.data.goodsDetailsVos
}
})
@ -381,7 +457,10 @@ export default {
this.formobj.mobile = res.data.mobile
this.formobj.vehMark = res.data.vehMark
this.formobj.vinNo = res.data.vinNo
this.formobj.customerOrg = res.data.customerOrg
this.formobj.hourAmount = '0'
this.formobj.goodsAmount = res.data.goodsAmount
this.formobj.addAmount = res.data.addAmount
this.formobj.totalAmount = Math.round(parseFloat(this.formobj.hourAmount !== '' ? this.formobj.hourAmount : '0') + (parseFloat(this.formobj.goodsAmount !== '' ? this.formobj.goodsAmount : '0') + parseFloat(this.formobj.addAmount !== '' ? this.formobj.addAmount : '0')) * 100) / 100
this.formobj.goodsDetailsVos = res.data.goodsDetailsVos
}
})
@ -390,7 +469,41 @@ export default {
resetState() {
this.viewState = 1
},
sitemReturn(row, index) {
if (this.formobj.returnSitemVos.length !== 0) {
for (var i = 0; i < this.formobj.returnSitemVos.length; i++) {
if (this.formobj.returnSitemVos[i].itemLinkSid === row.itemLinkSid) {
this.$message({ showClose: true, type: 'error', message: '该记录已在退货中,请勿重复退货' })
return
}
}
}
this.formobj.returnSitemVos.push({
serviceItemSid: row.serviceItemSid,
serviceItem: row.serviceItem,
serviceTypeSid: row.serviceTypeSid,
serviceType: row.serviceType,
examineHourPrice: row.examineHourPrice,
hourPrice: row.hourPrice,
hours: row.hours,
price: row.price,
discount: row.discount,
discountAmount: row.discountAmount,
amount: row.amount,
remarks: row.remarks,
repairerName: row.repairerName,
itemLinkSid: row.itemLinkSid
})
},
goodsReturn(row, index) {
if (this.formobj.returnGoods.length !== 0) {
for (var i = 0; i < this.formobj.returnGoods.length; i++) {
if (this.formobj.returnGoods[i].goodsLinkSid === row.goodsLinkSid) {
this.$message({ showClose: true, type: 'error', message: '该记录已在退货中,请勿重复退货' })
return
}
}
}
this.formobj.returnGoods.push({
goodsID: row.goodsID,
goodSpuSid: row.sid,
@ -402,11 +515,19 @@ export default {
goodsSkuOwnSpec: row.goodsSkuOwnSpec,
currentCount: row.count,
returnedCount: row.returnedCount,
billObjName: row.billObjName,
billObjSid: row.billObjSid,
manufacturerName: row.manufacturerName,
manufacturerSid: row.manufacturerSid,
price: row.price,
backCount: '',
backPrice: '',
backAmount: ''
backAmount: '',
goodsLinkSid: row.goodsLinkSid
})
this.formobj.goodsDetailsVos.splice(index, 1)
},
sitemDelete(index) {
this.formobj.returnSitemVos.splice(index, 1)
},
fullyWithdraw() {
if (this.formobj.returnGoods.length > 0) {
@ -420,6 +541,9 @@ export default {
})
}
},
goodsDelete(index) {
this.formobj.returnGoods.splice(index, 1)
},
// 退
backAmountInput(row) {
if (row.goodsSpuName !== '') {
@ -429,6 +553,13 @@ export default {
saveOrUpdate() {
this.$refs['form_obj'].validate((valid) => {
if (valid) {
this.formobj.payableHoursAmount = this.thgsfCount
this.formobj.payableGoodsAmount = this.thclfCount
this.formobj.payableAmount = this.tkjeCount
if (this.formobj.payableAmount === '0') {
this.$message({ showClose: true, type: 'error', message: '退款金额不能为零' })
return
}
this.submitdisabled = true
req.saveOrUpdate(this.formobj).then((res) => {
if (res.success) {
@ -446,6 +577,13 @@ export default {
submit() {
this.$refs['form_obj'].validate((valid) => {
if (valid) {
this.formobj.payableHoursAmount = this.thgsfCount
this.formobj.payableGoodsAmount = this.thclfCount
this.formobj.payableAmount = this.tkjeCount
if (this.formobj.payableAmount === '0') {
this.$message({ showClose: true, type: 'error', message: '退款金额不能为零' })
return
}
this.submitdisabled = true
req.submit(this.formobj).then((res) => {
if (res.success) {
@ -482,15 +620,24 @@ export default {
waitorName: '',
customerName: '',
mobile: '',
customerOrg: '',
vehMark: '',
vinNo: '',
taskId: '',
instanceId: '',
payableAmount: '',
totalAmount: '',
hourAmount: '',
goodsAmount: '',
addAmount: '',
payableAmount: '',
payableHoursAmount: '',
payableGoodsAmount: '',
accountBank: '',
account: '',
accountNumber: '',
sitemVos: [],
goodsDetailsVos: [],
returnGoods: []
returnGoods: [],
returnSitemVos: []
}
this.submitdisabled = false
this.$emit('doback')
@ -506,10 +653,6 @@ export default {
.addinputInfo {
margin-left: 120px !important;
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .addinputw {
margin-left: 120px !important;
width: calc(100% - 115px);
}
.titleOne {
padding: 7px;
display: flex;
@ -517,6 +660,10 @@ export default {
justify-content: space-between;
align-items: center;
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .addinputw {
margin-left: 120px !important;
width: calc(100% - 115px);
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .el-radio-group {
display: inline;
line-height: 1px;

102
yxt-as-ui/src/views/operation/merchandisereturn/merchandisereturnInfo.vue

@ -23,6 +23,20 @@
<el-form-item><span class="addinputInfo">{{ formobj.createTime }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">收款账号</div>
<el-form-item><span class="addinputInfo">{{ formobj.accountNumber }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">账户名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.account }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">开户行</div>
<el-form-item><span class="addinputInfo">{{ formobj.accountBank }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">备注</div>
@ -74,18 +88,47 @@
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">客户单位</div>
<el-form-item><span class="addinputInfo">{{ formobj.customerOrg }}</span></el-form-item>
<div class="span-sty" style="border-right: 0px">合计金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.totalAmount }} = 工时费{{ formobj.hourAmount }} + 材料费{{ formobj.goodsAmount }} + 附加费{{ formobj.addAmount }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty" style="border-right: 0px">应收金额</div>
<el-form-item><span class="addinputInfo"> = 合计优惠 + 已收金额 + 欠款 + 退款抵欠款</span></el-form-item>
</el-col>
</el-row>
<div class="title">退货信息</div>
<div v-show="formobj.returnSitemVos.length > 0">
<div class="title">维修项目</div>
<el-table :key="sitemReturnKey" :data="formobj.returnSitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>`
<el-table-column prop="serviceItem" label="维修项目" align="center" width="300" />
<el-table-column prop="serviceType" label="工种" align="center" width="150" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="100" />
<el-table-column prop="examineHourPrice" label="工时提成" align="center" width="100" />
<el-table-column prop="hourPrice" label="工时单价" align="center" width="100" />
<el-table-column prop="hours" label="工时数" align="center" width="140" />
<el-table-column prop="price" label="销售价" align="center" width="120" />
<el-table-column prop="discount" label="折扣" align="center" width="120" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="120" />
<el-table-column prop="amount" label="金额" align="center" width="100" />
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
</div>
<div v-show="formobj.returnGoods.length > 0">
<div class="title">退货商品列表</div>
<div class="title">
<span v-show="formobj.type == '0'">维修用料</span>
<span v-show="formobj.type == '1'">商品列表</span>
</div>
<el-table :key="tableKey" :data="formobj.returnGoods" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="goodsSpuName" label="商品名称" align="center" width="300" />
<el-table-column prop="goodsSkuCode" label="图号" align="center" width="150" />
<el-table-column prop="goodsSkuOwnSpec" label="规格" align="center" width="150" />
<el-table-column prop="unit" label="单位" align="center" width="100" />
<el-table-column prop="billObjName" label="供应商" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="100" />
<el-table-column prop="currentCount" label="总数量" align="center" width="100" />
<el-table-column prop="returnedCount" label="已退数量" align="center" width="140" />
<el-table-column prop="backPrice" label="退货价" align="center" min-width="140" />
@ -95,20 +138,8 @@
</div>
<el-row>
<el-col :span="24">
<div class="span-sty" style="border-right: 0px">合计金额</div>
<el-form-item><span class="addinputInfo"> = 工时费 + 材料费 + 附加费 + 税额</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty" style="border-right: 0px">自费金额</div>
<el-form-item><span class="addinputInfo"> = 自费工时费 + 自费材料费 + 附加费 + 税额</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty" style="border-right: 0px">应付金额</div>
<el-form-item><span class="addinputInfo"> = 自费金额 + 退优惠 - 抵扣欠款</span></el-form-item>
<div class="span-sty" style="border-right: 0px">退款金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.payableAmount }} = 工时费{{ formobj.payableHoursAmount }} + 材料费{{ formobj.payableGoodsAmount }} + 附加费0</span></el-form-item>
</el-col>
</el-row>
</el-form>
@ -127,8 +158,7 @@ export default {
viewTitle: '',
viewState: 1,
tableKey: 1,
sitemKey: 2,
goodsKey: 3,
sitemReturnKey: 2,
index: 0,
formobj: {
type: '',
@ -150,15 +180,24 @@ export default {
waitorName: '',
customerName: '',
mobile: '',
customerOrg: '',
vehMark: '',
vinNo: '',
taskId: '',
instanceId: '',
payableAmount: '',
totalAmount: '',
hourAmount: '',
goodsAmount: '',
addAmount: '',
payableAmount: '',
payableHoursAmount: '',
payableGoodsAmount: '',
accountBank: '',
account: '',
accountNumber: '',
sitemVos: [],
goodsDetailsVos: [],
returnGoods: []
returnGoods: [],
returnSitemVos: []
},
rules: {}
}
@ -173,11 +212,11 @@ export default {
req.fetchDetailsBySid(row.sid).then((res) => {
if (res.success) {
this.formobj = res.data
this.formobj.totalAmount = Math.round(parseFloat(this.formobj.hourAmount !== '' ? this.formobj.hourAmount : '0') + (parseFloat(this.formobj.goodsAmount !== '' ? this.formobj.goodsAmount : '0') + parseFloat(this.formobj.addAmount !== '' ? this.formobj.addAmount : '0')) * 100) / 100
}
})
},
handleReturn(isreload) {
if (isreload === 'true') this.$emit('reloadlist')
handleReturn() {
this.formobj = {
type: '',
sid: '',
@ -198,15 +237,24 @@ export default {
waitorName: '',
customerName: '',
mobile: '',
customerOrg: '',
vehMark: '',
vinNo: '',
taskId: '',
instanceId: '',
payableAmount: '',
totalAmount: '',
hourAmount: '',
goodsAmount: '',
addAmount: '',
payableAmount: '',
payableHoursAmount: '',
payableGoodsAmount: '',
accountBank: '',
account: '',
accountNumber: '',
sitemVos: [],
goodsDetailsVos: [],
returnGoods: []
returnGoods: [],
returnSitemVos: []
}
this.$emit('doback')
}

84
yxt-as-ui/src/views/workFlow/shangpintuihuoFlow/merchandisereturnDaiBan.vue

@ -26,6 +26,20 @@
<el-form-item><span class="addinputInfo">{{ formobj.createTime }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">收款账号</div>
<el-form-item><span class="addinputInfo">{{ formobj.accountNumber }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">账户名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.account }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">开户行</div>
<el-form-item><span class="addinputInfo">{{ formobj.accountBank }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">备注</div>
@ -77,18 +91,47 @@
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">客户单位</div>
<el-form-item><span class="addinputInfo">{{ formobj.customerOrg }}</span></el-form-item>
<div class="span-sty" style="border-right: 0px">合计金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.totalAmount }} = 工时费{{ formobj.hourAmount }} + 材料费{{ formobj.goodsAmount }} + 附加费{{ formobj.addAmount }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty" style="border-right: 0px">应收金额</div>
<el-form-item><span class="addinputInfo"> = 合计优惠 + 已收金额 + 欠款 + 退款抵欠款</span></el-form-item>
</el-col>
</el-row>
<div class="title">退货信息</div>
<div v-show="formobj.returnSitemVos.length > 0">
<div class="title">维修项目</div>
<el-table :key="sitemReturnKey" :data="formobj.returnSitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>`
<el-table-column prop="serviceItem" label="维修项目" align="center" width="300" />
<el-table-column prop="serviceType" label="工种" align="center" width="150" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="100" />
<el-table-column prop="examineHourPrice" label="工时提成" align="center" width="100" />
<el-table-column prop="hourPrice" label="工时单价" align="center" width="100" />
<el-table-column prop="hours" label="工时数" align="center" width="140" />
<el-table-column prop="price" label="销售价" align="center" width="120" />
<el-table-column prop="discount" label="折扣" align="center" width="120" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="120" />
<el-table-column prop="amount" label="金额" align="center" width="100" />
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
</div>
<div v-show="formobj.returnGoods.length > 0">
<div class="title">退货商品列表</div>
<div class="title">
<span v-show="formobj.type == '0'">维修用料</span>
<span v-show="formobj.type == '1'">商品列表</span>
</div>
<el-table :key="tableKey" :data="formobj.returnGoods" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="goodsSpuName" label="商品名称" align="center" width="300" />
<el-table-column prop="goodsSkuCode" label="图号" align="center" width="150" />
<el-table-column prop="goodsSkuOwnSpec" label="规格" align="center" width="150" />
<el-table-column prop="unit" label="单位" align="center" width="100" />
<el-table-column prop="billObjName" label="供应商" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="100" />
<el-table-column prop="currentCount" label="总数量" align="center" width="100" />
<el-table-column prop="returnedCount" label="已退数量" align="center" width="140" />
<el-table-column prop="backPrice" label="退货价" align="center" min-width="140" />
@ -98,20 +141,8 @@
</div>
<el-row>
<el-col :span="24">
<div class="span-sty" style="border-right: 0px">合计金额</div>
<el-form-item><span class="addinputInfo"> = 工时费 + 材料费 + 附加费 + 税额</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty" style="border-right: 0px">自费金额</div>
<el-form-item><span class="addinputInfo"> = 自费工时费 + 自费材料费 + 附加费 + 税额</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty" style="border-right: 0px">应付金额</div>
<el-form-item><span class="addinputInfo"> = 自费金额 + 退优惠 - 抵扣欠款</span></el-form-item>
<div class="span-sty" style="border-right: 0px">退款金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.payableAmount }} = 工时费{{ formobj.payableHoursAmount }} + 材料费{{ formobj.payableGoodsAmount }} + 附加费0</span></el-form-item>
</el-col>
</el-row>
</el-form>
@ -169,8 +200,7 @@ export default {
viewTitle: '',
viewState: 1,
tableKey: 1,
sitemKey: 2,
goodsKey: 3,
sitemReturnKey: 2,
index: 0,
formobj: {
type: '',
@ -192,15 +222,24 @@ export default {
waitorName: '',
customerName: '',
mobile: '',
customerOrg: '',
vehMark: '',
vinNo: '',
taskId: '',
instanceId: '',
payableAmount: '',
totalAmount: '',
hourAmount: '',
goodsAmount: '',
addAmount: '',
payableAmount: '',
payableHoursAmount: '',
payableGoodsAmount: '',
accountBank: '',
account: '',
accountNumber: '',
sitemVos: [],
goodsDetailsVos: [],
returnGoods: []
returnGoods: [],
returnSitemVos: []
},
rules: {},
options: [],
@ -279,6 +318,7 @@ export default {
req.fetchDetailsBySid(sid).then((res) => {
if (res.success) {
this.formobj = res.data
this.formobj.totalAmount = Math.round(parseFloat(this.formobj.hourAmount !== '' ? this.formobj.hourAmount : '0') + (parseFloat(this.formobj.goodsAmount !== '' ? this.formobj.goodsAmount : '0') + parseFloat(this.formobj.addAmount !== '' ? this.formobj.addAmount : '0')) * 100) / 100
}
})
selectStaffListss().then((res) => {

259
yxt-as-ui/src/views/workFlow/shangpintuihuoFlow/merchandisereturnEdit.vue

@ -25,6 +25,20 @@
<el-form-item><span class="addinputInfo">{{ formobj.createTime }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">收款账号</div>
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.accountNumber" clearable placeholder="" /></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">账户名称</div>
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.account" clearable placeholder="" /></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">开户行</div>
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.accountBank" clearable placeholder="" /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">备注</div>
@ -74,16 +88,10 @@
<el-form-item><span class="addinputInfo">{{ formobj.vehMark }}/{{ formobj.vinNo }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">客户单位</div>
<el-form-item><span class="addinputInfo">{{ formobj.customerOrg }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty" style="border-right: 0px">合计金额</div>
<el-form-item><span class="addinputInfo"> = 工时费 + 材料费 + 附加费 + 税额</span></el-form-item>
<el-form-item><span class="addinputInfo">{{ formobj.totalAmount }} = 工时费 + 材料费{{ formobj.goodsAmount }} + 附加费{{ formobj.addAmount }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
@ -93,20 +101,67 @@
</el-col>
</el-row>
<div v-show="formobj.type == '0'">
<div class="title titleOne">服务项目</div>
<div class="title titleOne">维修项目</div>
<el-table :key="sitemKey" :data="formobj.sitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column fixed label="操作" align="center" width="100">
<template>
<el-button type="primary" size="small">退</el-button>
<el-button type="primary" size="small" @click="sitemReturn(scope.row, scope.$index)">退</el-button>
</template>
</el-table-column>
<el-table-column prop="serviceItem" label="服务项目" align="center" width="300" />
<el-table-column prop="serviceItem" label="维修项目" align="center" width="300" />
<el-table-column prop="serviceType" label="工种" align="center" width="150" />
<el-table-column prop="manufacturerName" label="厂家" align="center" width="150" />
<el-table-column prop="subject" label="科目" align="center" width="100" />
<el-table-column prop="repairerName" label="维修人" align="center" width="100" />
<el-table-column prop="examineHourPrice" label="考核工时" align="center" width="100" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="100" />
<el-table-column prop="examineHourPrice" label="工时提成" align="center" width="100" />
<el-table-column prop="hourPrice" label="工时单价" align="center" width="100" />
<el-table-column prop="hours" label="工时数" align="center" width="140" />
<el-table-column prop="price" label="销售价" align="center" width="120" />
<el-table-column prop="discount" label="折扣" align="center" width="120" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="120" />
<el-table-column prop="amount" label="金额" align="center" width="100" />
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
</div>
<div v-show="formobj.type =='1'">
<div class="title">
<span v-show="formobj.type == '0'">维修领料</span>
<span v-show="formobj.type == '1'">商品列表</span>
</div>
<el-table :key="goodsKey" :data="formobj.goodsDetailsVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column fixed label="操作" align="center" width="100">
<template slot-scope="scope">
<el-button type="primary" size="small" @click="goodsReturn(scope.row, scope.$index)">退</el-button>
</template>
</el-table-column>
<el-table-column prop="goodsSpuName" label="商品名称" align="center" width="300" />
<el-table-column prop="goodsSkuCode" label="图号" align="center" width="150" />
<el-table-column prop="goodsSkuOwnSpec" label="规格" align="center" width="150" />
<el-table-column prop="unit" label="单位" align="center" width="100" />
<el-table-column prop="billObjName" label="供应商" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="100" />
<el-table-column prop="count" label="数量" align="center" width="100" />
<el-table-column prop="amount" label="已出库" align="center" width="140" />
<el-table-column prop="discount" label="折扣" align="center" width="120" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="120" />
<el-table-column prop="amount" label="金额" align="center" width="100" />
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
</div>
<div class="title">退货信息</div>
<div v-show="formobj.returnSitemVos.length > 0">
<div class="title">维修项目</div>
<el-table :key="sitemReturnKey" :data="formobj.returnSitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>`
<el-table-column fixed label="操作" align="center" width="80">
<template slot-scope="scope">
<el-button type="danger" size="mini" @click="sitemDelete(scope.$index)">删除</el-button>
</template>
</el-table-column>
<el-table-column prop="serviceItem" label="维修项目" align="center" width="300" />
<el-table-column prop="serviceType" label="工种" align="center" width="150" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="100" />
<el-table-column prop="examineHourPrice" label="工时提成" align="center" width="100" />
<el-table-column prop="hourPrice" label="工时单价" align="center" width="100" />
<el-table-column prop="hours" label="工时数" align="center" width="140" />
<el-table-column prop="price" label="销售价" align="center" width="120" />
@ -116,38 +171,27 @@
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
</div>
<div class="title">商品列表</div>
<el-table :key="goodsKey" :data="formobj.goodsDetailsVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column fixed label="操作" align="center" width="100">
<template slot-scope="scope">
<el-button type="primary" size="small" @click="goodsReturn(scope.row, scope.$index)">退</el-button>
</template>
</el-table-column>
<el-table-column prop="goodsSpuName" label="商品名称" align="center" width="300" />
<el-table-column prop="goodsSkuCode" label="图号" align="center" width="150" />
<el-table-column prop="goodsSkuOwnSpec" label="规格" align="center" width="150" />
<el-table-column prop="unit" label="单位" align="center" width="100" />
<el-table-column prop="manufacturerName" label="厂家" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="100" />
<el-table-column prop="count" label="数量" align="center" width="100" />
<el-table-column prop="amount" label="已出库" align="center" width="140" />
<el-table-column prop="discount" label="折扣" align="center" width="120" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="120" />
<el-table-column prop="amount" label="金额" align="center" width="100" />
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
<div v-show="formobj.returnGoods.length > 0">
<div class="title titleOne">
<div>退货商品列表</div>
<el-button type="primary" size="mini" class="btntopblueline" @click="fullyWithdraw">整单全退</el-button>
<div>
<span v-show="formobj.type == '0'">维修用料</span>
<span v-show="formobj.type == '1'">商品列表</span>
</div>
<el-button type="primary" size="mini" class="btntopblueline" @click="fullyWithdraw">全退</el-button>
</div>
<el-table :key="tableKey" :data="formobj.returnGoods" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column fixed label="操作" align="center" width="80">
<template slot-scope="scope">
<el-button type="danger" size="mini" @click="goodsDelete(scope.$index)">删除</el-button>
</template>
</el-table-column>
<el-table-column prop="goodsSpuName" label="商品名称" align="center" width="300" />
<el-table-column prop="goodsSkuCode" label="图号" align="center" width="150" />
<el-table-column prop="goodsSkuOwnSpec" label="规格" align="center" width="150" />
<el-table-column prop="unit" label="单位" align="center" width="100" />
<el-table-column prop="billObjName" label="供应商" align="center" width="100" />
<el-table-column prop="price" label="销售单价" align="center" width="100" />
<el-table-column prop="currentCount" label="总数量" align="center" width="100" />
<el-table-column prop="returnedCount" label="已退数量" align="center" width="140" />
<el-table-column label="退货价" align="center" min-width="140">
@ -165,20 +209,8 @@
</div>
<el-row>
<el-col :span="24">
<div class="span-sty" style="border-right: 0px">合计金额</div>
<el-form-item><span class="addinputInfo"> = 工时费 + 材料费 + 附加费 + 税额</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty" style="border-right: 0px">自费金额</div>
<el-form-item><span class="addinputInfo"> = 自费工时费 + 自费材料费 + 附加费 + 税额</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty" style="border-right: 0px">应付金额</div>
<el-form-item><span class="addinputInfo"> = 自费金额 + 退优惠 - 抵扣欠款</span></el-form-item>
<div class="span-sty" style="border-right: 0px">退款金额</div>
<el-form-item><span class="addinputInfo">{{ tkjeCount }} = 工时费{{ thgsfCount }} + 材料费{{ thclfCount }} + 附加费0</span></el-form-item>
</el-col>
</el-row>
</el-form>
@ -229,7 +261,8 @@ export default {
dialogVisible: false,
tableKey: 1,
sitemKey: 2,
goodsKey: 3,
sitemReturnKey: 3,
goodsKey: 4,
index: 0,
formobj: {
type: '',
@ -251,15 +284,24 @@ export default {
waitorName: '',
customerName: '',
mobile: '',
customerOrg: '',
vehMark: '',
vinNo: '',
taskId: '',
instanceId: '',
payableAmount: '',
totalAmount: '',
hourAmount: '',
goodsAmount: '',
addAmount: '',
payableAmount: '',
payableHoursAmount: '',
payableGoodsAmount: '',
accountBank: '',
account: '',
accountNumber: '',
sitemVos: [],
goodsDetailsVos: [],
returnGoods: []
returnGoods: [],
returnSitemVos: []
},
rules: {}
}
@ -281,7 +323,38 @@ export default {
}
}, '*')
},
computed: {},
computed: {
// 退
thgsfCount() {
let gsf = '0'
if (this.formobj.returnSitemVos.length > 0) {
this.formobj.returnSitemVos.forEach((e) => {
if (e.serviceItem !== '') {
gsf = Math.round((parseFloat(gsf) + parseFloat(e.amount)) * 100) / 100
}
})
}
return gsf
},
// 退
thclfCount() {
let clf = '0'
if (this.formobj.returnGoods.length > 0) {
this.formobj.returnGoods.forEach((e) => {
if (e.goodsSpuName !== '') {
clf = Math.round((parseFloat(clf) + parseFloat(e.backAmount !== '' ? e.backAmount : '0')) * 100) / 100
}
})
}
return clf
},
// 退
tkjeCount() {
let tkje = '0'
tkje = Math.round((parseFloat(this.thgsfCount) + parseFloat(this.thclfCount)) * 100) / 100
return tkje
}
},
methods: {
showInfo(sid) {
this.viewTitle = '【编辑】商品退货申请'
@ -291,6 +364,7 @@ export default {
req.fetchDetailsBySid(sid).then((res) => {
if (res.success) {
this.formobj = res.data
this.formobj.totalAmount = Math.round(parseFloat(this.formobj.hourAmount !== '' ? this.formobj.hourAmount : '0') + (parseFloat(this.formobj.goodsAmount !== '' ? this.formobj.goodsAmount : '0') + parseFloat(this.formobj.addAmount !== '' ? this.formobj.addAmount : '0')) * 100) / 100
}
})
},
@ -352,8 +426,11 @@ export default {
this.formobj.mobile = res.data.mobile
this.formobj.vehMark = res.data.vehMark
this.formobj.vinNo = res.data.vinNo
this.formobj.customerOrg = res.data.customerOrg
this.formobj.hourAmount = res.data.hourAmount
this.formobj.goodsAmount = res.data.goodsAmount
this.formobj.addAmount = res.data.addAmount
this.formobj.sitemVos = res.data.sitemVos
this.formobj.totalAmount = Math.round(parseFloat(this.formobj.hourAmount !== '' ? this.formobj.hourAmount : '0') + (parseFloat(this.formobj.goodsAmount !== '' ? this.formobj.goodsAmount : '0') + parseFloat(this.formobj.addAmount !== '' ? this.formobj.addAmount : '0')) * 100) / 100
this.formobj.goodsDetailsVos = res.data.goodsDetailsVos
}
})
@ -373,7 +450,10 @@ export default {
this.formobj.mobile = res.data.mobile
this.formobj.vehMark = res.data.vehMark
this.formobj.vinNo = res.data.vinNo
this.formobj.customerOrg = res.data.customerOrg
this.formobj.hourAmount = '0'
this.formobj.goodsAmount = res.data.goodsAmount
this.formobj.addAmount = res.data.addAmount
this.formobj.totalAmount = Math.round(parseFloat(this.formobj.hourAmount !== '' ? this.formobj.hourAmount : '0') + (parseFloat(this.formobj.goodsAmount !== '' ? this.formobj.goodsAmount : '0') + parseFloat(this.formobj.addAmount !== '' ? this.formobj.addAmount : '0')) * 100) / 100
this.formobj.goodsDetailsVos = res.data.goodsDetailsVos
}
})
@ -382,7 +462,41 @@ export default {
resetState() {
this.viewState = 1
},
sitemReturn(row, index) {
if (this.formobj.returnSitemVos.length !== 0) {
for (var i = 0; i < this.formobj.returnSitemVos.length; i++) {
if (this.formobj.returnSitemVos[i].itemLinkSid === row.itemLinkSid) {
this.$message({ showClose: true, type: 'error', message: '该记录已在退货中,请勿重复退货' })
return
}
}
}
this.formobj.returnSitemVos.push({
serviceItemSid: row.serviceItemSid,
serviceItem: row.serviceItem,
serviceTypeSid: row.serviceTypeSid,
serviceType: row.serviceType,
examineHourPrice: row.examineHourPrice,
hourPrice: row.hourPrice,
hours: row.hours,
price: row.price,
discount: row.discount,
discountAmount: row.discountAmount,
amount: row.amount,
remarks: row.remarks,
repairerName: row.repairerName,
itemLinkSid: row.itemLinkSid
})
},
goodsReturn(row, index) {
if (this.formobj.returnGoods.length !== 0) {
for (var i = 0; i < this.formobj.returnGoods.length; i++) {
if (this.formobj.returnGoods[i].goodsLinkSid === row.goodsLinkSid) {
this.$message({ showClose: true, type: 'error', message: '该记录已在退货中,请勿重复退货' })
return
}
}
}
this.formobj.returnGoods.push({
goodsID: row.goodsID,
goodSpuSid: row.sid,
@ -394,11 +508,19 @@ export default {
goodsSkuOwnSpec: row.goodsSkuOwnSpec,
currentCount: row.count,
returnedCount: row.returnedCount,
billObjName: row.billObjName,
billObjSid: row.billObjSid,
manufacturerName: row.manufacturerName,
manufacturerSid: row.manufacturerSid,
price: row.price,
backCount: '',
backPrice: '',
backAmount: ''
backAmount: '',
goodsLinkSid: row.goodsLinkSid
})
this.formobj.goodsDetailsVos.splice(index, 1)
},
sitemDelete(index) {
this.formobj.returnSitemVos.splice(index, 1)
},
fullyWithdraw() {
if (this.formobj.returnGoods.length > 0) {
@ -412,6 +534,9 @@ export default {
})
}
},
goodsDelete(index) {
this.formobj.returnGoods.splice(index, 1)
},
// 退
backAmountInput(row) {
if (row.goodsSpuName !== '') {
@ -421,6 +546,9 @@ export default {
saveOrUpdate() {
this.$refs['form_obj'].validate((valid) => {
if (valid) {
this.formobj.payableHoursAmount = this.thgsfCount
this.formobj.payableGoodsAmount = this.thclfCount
this.formobj.payableAmount = this.tkjeCount
this.submitdisabled = true
req.saveOrUpdate(this.formobj).then((res) => {
if (res.success) {
@ -445,6 +573,9 @@ export default {
submit() {
this.$refs['form_obj'].validate((valid) => {
if (valid) {
this.formobj.payableHoursAmount = this.thgsfCount
this.formobj.payableGoodsAmount = this.thclfCount
this.formobj.payableAmount = this.tkjeCount
this.submitdisabled = true
req.submit(this.formobj).then((res) => {
if (res.success) {
@ -477,10 +608,6 @@ export default {
.addinputInfo {
margin-left: 120px !important;
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .addinputw {
margin-left: 120px !important;
width: calc(100% - 115px);
}
.titleOne {
padding: 7px;
display: flex;
@ -488,6 +615,10 @@ export default {
justify-content: space-between;
align-items: center;
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .addinputw {
margin-left: 120px !important;
width: calc(100% - 115px);
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .el-radio-group {
display: inline;
line-height: 1px;

84
yxt-as-ui/src/views/workFlow/shangpintuihuoFlow/merchandisereturnYiBan.vue

@ -23,6 +23,20 @@
<el-form-item><span class="addinputInfo">{{ formobj.createTime }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">收款账号</div>
<el-form-item><span class="addinputInfo">{{ formobj.accountNumber }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">账户名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.account }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">开户行</div>
<el-form-item><span class="addinputInfo">{{ formobj.accountBank }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">备注</div>
@ -74,18 +88,47 @@
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">客户单位</div>
<el-form-item><span class="addinputInfo">{{ formobj.customerOrg }}</span></el-form-item>
<div class="span-sty" style="border-right: 0px">合计金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.totalAmount }} = 工时费{{ formobj.hourAmount }} + 材料费{{ formobj.goodsAmount }} + 附加费{{ formobj.addAmount }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty" style="border-right: 0px">应收金额</div>
<el-form-item><span class="addinputInfo"> = 合计优惠 + 已收金额 + 欠款 + 退款抵欠款</span></el-form-item>
</el-col>
</el-row>
<div class="title">退货信息</div>
<div v-show="formobj.returnSitemVos.length > 0">
<div class="title">维修项目</div>
<el-table :key="sitemReturnKey" :data="formobj.returnSitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>`
<el-table-column prop="serviceItem" label="维修项目" align="center" width="300" />
<el-table-column prop="serviceType" label="工种" align="center" width="150" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="100" />
<el-table-column prop="examineHourPrice" label="工时提成" align="center" width="100" />
<el-table-column prop="hourPrice" label="工时单价" align="center" width="100" />
<el-table-column prop="hours" label="工时数" align="center" width="140" />
<el-table-column prop="price" label="销售价" align="center" width="120" />
<el-table-column prop="discount" label="折扣" align="center" width="120" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="120" />
<el-table-column prop="amount" label="金额" align="center" width="100" />
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
</div>
<div v-show="formobj.returnGoods.length > 0">
<div class="title">退货商品列表</div>
<div class="title">
<span v-show="formobj.type == '0'">维修用料</span>
<span v-show="formobj.type == '1'">商品列表</span>
</div>
<el-table :key="tableKey" :data="formobj.returnGoods" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="goodsSpuName" label="商品名称" align="center" width="300" />
<el-table-column prop="goodsSkuCode" label="图号" align="center" width="150" />
<el-table-column prop="goodsSkuOwnSpec" label="规格" align="center" width="150" />
<el-table-column prop="unit" label="单位" align="center" width="100" />
<el-table-column prop="billObjName" label="供应商" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="100" />
<el-table-column prop="currentCount" label="总数量" align="center" width="100" />
<el-table-column prop="returnedCount" label="已退数量" align="center" width="140" />
<el-table-column prop="backPrice" label="退货价" align="center" min-width="140" />
@ -95,20 +138,8 @@
</div>
<el-row>
<el-col :span="24">
<div class="span-sty" style="border-right: 0px">合计金额</div>
<el-form-item><span class="addinputInfo"> = 工时费 + 材料费 + 附加费 + 税额</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty" style="border-right: 0px">自费金额</div>
<el-form-item><span class="addinputInfo"> = 自费工时费 + 自费材料费 + 附加费 + 税额</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty" style="border-right: 0px">应付金额</div>
<el-form-item><span class="addinputInfo"> = 自费金额 + 退优惠 - 抵扣欠款</span></el-form-item>
<div class="span-sty" style="border-right: 0px">退款金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.payableAmount }} = 工时费{{ formobj.payableHoursAmount }} + 材料费{{ formobj.payableGoodsAmount }} + 附加费0</span></el-form-item>
</el-col>
</el-row>
</el-form>
@ -127,8 +158,7 @@ export default {
viewTitle: '',
viewState: 1,
tableKey: 1,
sitemKey: 2,
goodsKey: 3,
sitemReturnKey: 2,
index: 0,
formobj: {
type: '',
@ -150,15 +180,24 @@ export default {
waitorName: '',
customerName: '',
mobile: '',
customerOrg: '',
vehMark: '',
vinNo: '',
taskId: '',
instanceId: '',
payableAmount: '',
totalAmount: '',
hourAmount: '',
goodsAmount: '',
addAmount: '',
payableAmount: '',
payableHoursAmount: '',
payableGoodsAmount: '',
accountBank: '',
account: '',
accountNumber: '',
sitemVos: [],
goodsDetailsVos: [],
returnGoods: []
returnGoods: [],
returnSitemVos: []
},
rules: {},
//
@ -208,6 +247,7 @@ export default {
req.fetchDetailsBySid(sid).then((res) => {
if (res.success) {
this.formobj = res.data
this.formobj.totalAmount = Math.round(parseFloat(this.formobj.hourAmount !== '' ? this.formobj.hourAmount : '0') + (parseFloat(this.formobj.goodsAmount !== '' ? this.formobj.goodsAmount : '0') + parseFloat(this.formobj.addAmount !== '' ? this.formobj.addAmount : '0')) * 100) / 100
}
})
},

Loading…
Cancel
Save