Browse Source

完善反结算申请

master
yunuo970428 6 months ago
parent
commit
4a20bb1ba5
  1. 9
      yxt-as-ui/src/api/operation/workslrsettlement.js
  2. 195
      yxt-as-ui/src/views/operation/workslrsettlement/relation/selectRepairbill.vue
  3. 14
      yxt-as-ui/src/views/operation/workslrsettlement/workslrsettlement.vue
  4. 113
      yxt-as-ui/src/views/operation/workslrsettlement/workslrsettlementAdd.vue
  5. 52
      yxt-as-ui/src/views/operation/workslrsettlement/workslrsettlementInfo.vue
  6. 195
      yxt-as-ui/src/views/workFlow/fanjiesuanFlow/relation/selectRepairbill.vue
  7. 49
      yxt-as-ui/src/views/workFlow/fanjiesuanFlow/workslrsettlementDaiBan.vue
  8. 90
      yxt-as-ui/src/views/workFlow/fanjiesuanFlow/workslrsettlementEdit.vue
  9. 47
      yxt-as-ui/src/views/workFlow/fanjiesuanFlow/workslrsettlementYiBan.vue

9
yxt-as-ui/src/api/operation/workslrsettlement.js

@ -18,6 +18,15 @@ export default {
headers: { 'Content-Type': 'application/json' }
})
},
// 查询维修单
pageList: function(params) {
return request({
url: '/as/v1/asbusrepairbillreversesettle/busrepairListPage',
method: 'post',
data: params,
headers: { 'Content-Type': 'application/json' }
})
},
reverseSettleInit: function(data) {
return request({
url: '/as/v1/asbusrepairbillreversesettle/reverseSettleInit',

195
yxt-as-ui/src/views/operation/workslrsettlement/relation/selectRepairbill.vue

@ -0,0 +1,195 @@
<template>
<div class="app-container">
<div>
<div class="tab-header webtop">
<div>选择维修单</div>
<div>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
<div class="main-content">
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow">{{ searchxianshitit }}</el-button>
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" class="tab-header">
<el-form-item label="维修单类型" class="searchlist">
<el-input v-model="listQuery.params.billType" placeholder="" clearable/>
</el-form-item>
<el-form-item label="维修单编号" class="searchlist">
<el-input v-model="listQuery.params.billNo" placeholder="" clearable/>
</el-form-item>
<el-form-item label="科目" class="searchlist">
<el-input v-model="listQuery.params.subject" placeholder="" clearable/>
</el-form-item>
<el-form-item label="客户名称" class="searchlist">
<el-input v-model="listQuery.params.customerName" placeholder="" clearable/>
</el-form-item>
<el-form-item label="车牌号" class="searchlist">
<el-input v-model="listQuery.params.vehMark" placeholder="" clearable />
</el-form-item>
<el-form-item label="进厂日期">
<el-date-picker v-model="listQuery.params.entryTimeStart" 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.entryTimeEnd" 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.settleTimeStart" 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.settleTimeEnd" 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;">
<el-button type="primary" icon="el-icon-search" @click="handleFilter" size="small">查询</el-button>
<el-button type="primary" icon="el-icon-refresh" @click="handleReset" size="small">重置</el-button>
</div>
</div>
</div>
<div class="listtop">
<div class="tit">商品列表</div>
</div>
<div class="">
<el-table :key="tableKey" ref="multipleTable" v-loading="listLoading" :data="list" border style="width: 100%">
<el-table-column width="80" label="序号" type="index" :index="indexMethod" align="center"/>
<el-table-column fixed label="操作" width="100" align="center">
<template slot-scope="scope">
<el-button type="primary" size="small" @click="handleAffirm(scope.row)">确认</el-button>
</template>
</el-table-column>
<el-table-column prop="billType" label="维修单类型" align="center" width="140" />
<el-table-column prop="billNo" label="维修单编号" align="center" width="170" />
<el-table-column prop="subject" label="科目" align="center" width="100" />
<el-table-column prop="isGoOut" label="是否外出" align="center" width="120" />
<el-table-column prop="customerName" label="客户名称" align="center" min-width="120" />
<el-table-column prop="mobile" label="联系电话" align="center" width="130" />
<el-table-column prop="vehMark" label="车牌号" align="center" width="130" />
<el-table-column prop="vinNo" label="车架号" align="center" width="130" />
<el-table-column prop="entryTime" label="进厂日期" align="center" width="120" />
<el-table-column prop="settleTime" label="结算日期" align="center" width="120" />
</el-table>
</div>
<div class="pages">
<div class="tit"/>
<!-- 翻页 -->
<Pagination v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
</div>
</div>
</div>
</template>
<script>
import Pagination from '@/components/pagination'
import req from '@/api/operation/workslrsettlement'
export default {
name: 'SelectRepairbill',
components: {
Pagination
},
data() {
return {
isSearchShow: false,
searchxianshitit: '隐藏查询条件',
tableKey: 0,
sids: [],
list: [],
number: '',
listLoading: false,
listQuery: {
current: 1,
size: 5,
params: {
billType: '',
billNo: '',
subject: '',
customerName: '',
vehMark: '',
entryTimeStart: '',
entryTimeEnd: '',
settleTimeStart: '',
settleTimeEnd: '',
deptSid: ''
},
total: 0
}
}
},
methods: {
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = '隐藏查询条件'
} else {
this.searchxianshitit = '显示查询条件'
}
},
indexMethod(index) {
var pagestart = (this.listQuery.current - 1) * this.listQuery.size
var pageindex = index + 1 + pagestart
return pageindex
},
//
getList() {
this.listLoading = true
req.pageList(this.listQuery).then((response) => {
this.listLoading = false
if (response.success) {
this.listQuery.total = response.data.total
this.list = response.data.records
} else {
this.listQuery.total = 0
this.list = []
}
})
},
//
handleFilter() {
this.listQuery.current = 1
this.getList()
},
//
handleReset() {
this.listQuery.current = 1
this.listQuery.size = 5
this.listQuery.total = 0
this.listQuery.params.billType = ''
this.listQuery.params.billNo = ''
this.listQuery.params.subject = ''
this.listQuery.params.customerName = ''
this.listQuery.params.vehMark = ''
this.listQuery.params.entryTimeStart = ''
this.listQuery.params.entryTimeEnd = ''
this.listQuery.params.settleTimeStart = ''
this.listQuery.params.settleTimeEnd = ''
this.getList()
},
showData(deptSid) {
// const aa = []
// if (value.length > 0) {
// for (var i = 0; i < value.length; i++) {
// aa.push(value[i].saleVehSid)
// }
// this.listQuery.params.saleVehSids = aa
// } else {
// this.listQuery.params.saleVehSids = []
// }``
this.listQuery.params.deptSid = deptSid
this.listQuery.current = 1
this.listQuery.size = 5
this.listQuery.total = 0
this.getList()
},
//
handleAffirm(row) {
this.$emit('backData', row)
},
//
handleReturn() {
this.$emit('doback')
}
}
}
</script>
<style scoped>
</style>

14
yxt-as-ui/src/views/operation/workslrsettlement/workslrsettlement.vue

@ -142,6 +142,13 @@ export default {
centerDialogVisible: false,
btndisabled: false,
btnList: [
{
type: 'primary',
size: 'small',
icon: 'plus',
btnKey: 'toAdd',
btnLabel: '新增'
},
{
type: 'danger',
size: 'small',
@ -251,6 +258,9 @@ export default {
btnHandle(btnKey) {
console.log('XXXXXXXXXXXXXXX ' + btnKey)
switch (btnKey) {
case 'toAdd':
this.toAdd()
break
case 'doDel':
this.doDel()
break
@ -325,6 +335,10 @@ export default {
}
this.getList()
},
toAdd() {
this.viewState = 2
this.$refs['divAdd'].showAdd()
},
toEdit(row) {
this.viewState = 3
this.$refs['divAdd'].showEdit(row)

113
yxt-as-ui/src/views/operation/workslrsettlement/workslrsettlementAdd.vue

@ -31,7 +31,10 @@
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.reason" clearable placeholder="" /></el-form-item>
</el-col>
</el-row>
<div class="title">维修单信息</div>
<div class="title titleOne">
<div>维修单信息</div>
<el-button type="primary" size="mini" class="btntopblueline" @click="handleSelect">选择维修单</el-button>
</div>
<el-row>
<el-col :span="8">
<div class="span-sty">维修单编号</div>
@ -56,8 +59,8 @@
<el-form-item><span class="addinputInfo">{{ formobj.subject }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">结算时间</div>
<el-form-item><span class="addinputInfo">{{ formobj.settleDate }}</span></el-form-item>
<div class="span-sty">是否外出</div>
<el-form-item><span class="addinputInfo">{{ formobj.isGoOut == '1' ? '是' : '否' }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
@ -76,13 +79,13 @@
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">合计金额</div>
<div class="span-sty">应收金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.receivableAmount }} = 工时费{{ formobj.hourAmount }} + 材料费{{ formobj.goodsAmount }} + 附加费{{ formobj.addAmount }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">应收金额</div>
<div class="span-sty">反结算金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.actualAmount }} = 合计金额{{ formobj.receivableAmount }} - 优惠{{ formobj.discountAmount }}</span></el-form-item>
</el-col>
</el-row>
@ -98,12 +101,10 @@
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="sitemSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="200" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">商品</div>
<div class="title">维修用料</div>
<el-table :key="tableKey" :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 prop="goodsID" label="商品ID" align="center" width="200" />
@ -115,14 +116,12 @@
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="goodsSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="goodsCost" label="成本小计" align="center" width="150" />
<el-table-column prop="goodsPrint" label="利润额" align="center" width="150" />
<el-table-column prop="partsSellers" label="配件销售人" align="center" min-width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">附加项目</div>
<el-row>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">外出费()</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -131,22 +130,22 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<el-input class="addinputInfo" style="width: 20%" @keyup.native="formobj.outCost = getNumber(formobj.outCost, 2)" v-model="formobj.outCost" clearable placeholder="" />
<el-input class="addinputInfo" style="width: 30%" @input="outPrintInput" @keyup.native="formobj.outCost = getNumber(formobj.outCost, 2)" v-model="formobj.outCost" clearable placeholder="" />
<span>利润额{{ formobj.outPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="12">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.outRemarks }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">厂家补助()</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -155,22 +154,22 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<el-input class="addinputInfo" style="width: 20%" @keyup.native="formobj.subsidyCost = getNumber(formobj.subsidyCost, 2)" v-model="formobj.subsidyCost" clearable placeholder="" />
<el-input class="addinputInfo" style="width: 30%" @input="subsidyPrintInput" @keyup.native="formobj.subsidyCost = getNumber(formobj.subsidyCost, 2)" v-model="formobj.subsidyCost" clearable placeholder="" />
<span>利润额{{ formobj.subsidyPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="12">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.subsidyRemarks }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">施救费()</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -179,20 +178,20 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<el-input class="addinputInfo" style="width: 20%" @keyup.native="formobj.rescueCost = getNumber(formobj.rescueCost, 2)" v-model="formobj.rescueCost" clearable placeholder="" />
<el-input class="addinputInfo" style="width: 30%" @input="rescuePrintInput" @keyup.native="formobj.rescueCost = getNumber(formobj.rescueCost, 2)" v-model="formobj.rescueCost" clearable placeholder="" />
<span>利润额{{ formobj.rescuePrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="4">
<el-col :span="6">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.rescueRemarks }}</span></el-form-item>
</el-col>
<el-col :span="4">
<el-col :span="6" class="tlineheightb">
<el-form-item>
<div style="display: flex;flex-direction: column;justify-content:flex-start;align-items: flex-start;">
<el-button type="text" v-for="(item, index) in formobj.fileName" :key="index" @click="handleOpen(item.url)">{{ item.name }}</el-button>
@ -204,21 +203,25 @@
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="aitemName" label="其它附加项目" align="center" width="200" />
<el-table-column prop="aitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="aitemCost" label="成本" align="center" width="150" />
<el-table-column prop="aitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
</el-form>
</div>
</div>
<!-- 选择维修单 -->
<selectRepairbill v-show="viewState == 2" ref="divSelect" @backData="backData" @doback="resetState" />
</div>
</template>
<script>
import req from '@/api/operation/workslrsettlement'
import selectRepairbill from './relation/selectRepairbill'
export default {
name: 'WorkSLRSettlementAdd',
components: {
selectRepairbill
},
data() {
return {
viewTitle: '',
@ -233,6 +236,7 @@ export default {
formobj: {
sid: '',
createByName: '',
createBySid: '',
billNo: '',
billType: '',
subject: '',
@ -258,7 +262,7 @@ export default {
coupon: '',
scoreDeduct: '',
sourceBillDate: '',
settleDate: '',
isGoOut: '',
taxRate: '',
taskId: '',
instanceId: '',
@ -307,12 +311,29 @@ export default {
}
return val
},
showAdd(sid) {
showAdd() {
this.viewTitle = '【新增】维修单反结算申请'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.reverseSettleInit({ sid: sid, userSid: window.sessionStorage.getItem('userSid'), orgPath: window.sessionStorage.getItem('defaultOrgPath') }).then((res) => {
},
showEdit(row) {
this.viewTitle = '【编辑】维修单反结算申请'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.fetchBySid(row.sid).then((res) => {
if (res.success) {
this.formobj = res.data
}
})
},
handleSelect() {
this.viewState = 2
this.$refs['divSelect'].showData(this.formobj.deptSid)
},
backData(val) {
req.reverseSettleInit({ sid: val.sid, userSid: window.sessionStorage.getItem('userSid'), orgPath: window.sessionStorage.getItem('defaultOrgPath') }).then((res) => {
if (res.success) {
this.formobj = res.data
if (this.formobj.sitemVos.length > 0) {
@ -325,16 +346,17 @@ export default {
}
})
},
showEdit(row) {
this.viewTitle = '【编辑】维修单反结算申请'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.fetchBySid(row.sid).then((res) => {
if (res.success) {
this.formobj = res.data
}
})
// -- -- = -
outPrintInput() {
this.formobj.outPrint = Math.round((parseFloat(this.formobj.outAmount !== '' ? this.formobj.outAmount : 0) - parseFloat(this.formobj.outCost !== '' ? this.formobj.outCost : 0)) * 100) / 100
},
// -- -- = -
subsidyPrintInput() {
this.formobj.subsidyPrint = Math.round((parseFloat(this.formobj.subsidyAmount !== '' ? this.formobj.subsidyAmount : 0) - parseFloat(this.formobj.subsidyCost !== '' ? this.formobj.subsidyCost : 0)) * 100) / 100
},
// -- -- = -
rescuePrintInput() {
this.formobj.rescuePrint = Math.round((parseFloat(this.formobj.rescueAmount !== '' ? this.formobj.rescueAmount : 0) - parseFloat(this.formobj.rescueCost !== '' ? this.formobj.rescueCost : 0)) * 100) / 100
},
handleOpen(value) {
window.open(value, '_blank')
@ -373,10 +395,14 @@ export default {
}
})
},
resetState() {
this.viewState = 1
},
handleReturn() {
this.formobj = {
sid: '',
createByName: '',
createBySid: '',
billNo: '',
billType: '',
subject: '',
@ -402,7 +428,7 @@ export default {
coupon: '',
scoreDeduct: '',
sourceBillDate: '',
settleDate: '',
isGoOut: '',
taxRate: '',
taskId: '',
instanceId: '',
@ -429,6 +455,8 @@ export default {
rescueRemarks: '',
fileName: []
}
this.submitdisabled = false
this.$refs['form_obj'].resetFields()
this.$emit('doback')
}
}
@ -442,4 +470,11 @@ export default {
.addinputInfo {
margin-left: 120px !important;
}
.titleOne {
padding: 7px;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
</style>

52
yxt-as-ui/src/views/operation/workslrsettlement/workslrsettlementInfo.vue

@ -54,8 +54,8 @@
<el-form-item><span class="addinputInfo">{{ formobj.subject }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">结算时间</div>
<el-form-item><span class="addinputInfo">{{ formobj.settleDate }}</span></el-form-item>
<div class="span-sty">是否外出</div>
<el-form-item><span class="addinputInfo">{{ formobj.isGoOut == '1' ? '是' : '否' }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
@ -74,13 +74,13 @@
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">合计金额</div>
<div class="span-sty">应收金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.receivableAmount }} = 工时费{{ formobj.hourAmount }} + 材料费{{ formobj.goodsAmount }} + 附加费{{ formobj.addAmount }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">应收金额</div>
<div class="span-sty">反结算金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.actualAmount }} = 合计金额{{ formobj.receivableAmount }} - 优惠{{ formobj.discountAmount }}</span></el-form-item>
</el-col>
</el-row>
@ -96,12 +96,12 @@
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="sitemSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column v-if="conceal" prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column v-if="conceal" prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="200" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">商品</div>
<div class="title">维修用料</div>
<el-table :key="tableKey" :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 prop="goodsID" label="商品ID" align="center" width="200" />
@ -113,14 +113,14 @@
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="goodsSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="goodsCost" label="成本小计" align="center" width="150" />
<el-table-column prop="goodsPrint" label="利润额" align="center" width="150" />
<el-table-column v-if="conceal" prop="goodsCost" label="成本小计" align="center" width="150" />
<el-table-column v-if="conceal" prop="goodsPrint" label="利润额" align="center" width="150" />
<el-table-column prop="partsSellers" label="配件销售人" align="center" min-width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">附加项目</div>
<el-row>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">外出费()</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -129,7 +129,7 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -138,13 +138,13 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="12">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.outRemarks }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">厂家补助()</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -153,7 +153,7 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -162,13 +162,13 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="12">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.subsidyRemarks }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">施救费()</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -177,7 +177,7 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -186,11 +186,11 @@
</div>
</el-form-item>
</el-col>
<el-col :span="4">
<el-col :span="6">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.rescueRemarks }}</span></el-form-item>
</el-col>
<el-col :span="4">
<el-col :span="6" class="tlineheightb">
<el-form-item>
<div style="display: flex;flex-direction: column;justify-content:flex-start;align-items: flex-start;">
<el-button type="text" v-for="(item, index) in formobj.fileName" :key="index" @click="handleOpen(item.url)">{{ item.name }}</el-button>
@ -202,8 +202,8 @@
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="aitemName" label="其它附加项目" align="center" width="200" />
<el-table-column prop="aitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="aitemCost" label="成本" align="center" width="150" />
<el-table-column prop="aitemPrint" label="利润额" align="center" width="150" />
<el-table-column v-if="conceal" prop="aitemCost" label="成本" align="center" width="150" />
<el-table-column v-if="conceal" prop="aitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
</el-form>
@ -222,6 +222,7 @@ export default {
viewTitle: '',
viewState: 1,
submitdisabled: false,
conceal: false,
tableKey: 0,
index: 0,
// service
@ -231,6 +232,7 @@ export default {
formobj: {
sid: '',
createByName: '',
createBySid: '',
billNo: '',
billType: '',
subject: '',
@ -256,7 +258,7 @@ export default {
coupon: '',
scoreDeduct: '',
sourceBillDate: '',
settleDate: '',
isGoOut: '',
taxRate: '',
taskId: '',
instanceId: '',
@ -295,6 +297,9 @@ export default {
req.fetchBySid(row.sid).then((res) => {
if (res.success) {
this.formobj = res.data
if (this.formobj.createBySid !== window.sessionStorage.getItem('userSid')) {
this.conceal = true
}
if (this.formobj.sitemVos.length > 0) {
this.formobj.sitemVos.forEach((e) => {
if (e.staffNameList.length > 0) {
@ -312,6 +317,7 @@ export default {
this.formobj = {
sid: '',
createByName: '',
createBySid: '',
billNo: '',
billType: '',
subject: '',
@ -337,7 +343,7 @@ export default {
coupon: '',
scoreDeduct: '',
sourceBillDate: '',
settleDate: '',
isGoOut: '',
taxRate: '',
taskId: '',
instanceId: '',

195
yxt-as-ui/src/views/workFlow/fanjiesuanFlow/relation/selectRepairbill.vue

@ -0,0 +1,195 @@
<template>
<div class="app-container">
<div>
<div class="tab-header webtop">
<div>选择维修单</div>
<div>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
<div class="">
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow">{{ searchxianshitit }}</el-button>
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" class="tab-header">
<el-form-item label="维修单类型" class="searchlist">
<el-input v-model="listQuery.params.billType" placeholder="" clearable/>
</el-form-item>
<el-form-item label="维修单编号" class="searchlist">
<el-input v-model="listQuery.params.billNo" placeholder="" clearable/>
</el-form-item>
<el-form-item label="科目" class="searchlist">
<el-input v-model="listQuery.params.subject" placeholder="" clearable/>
</el-form-item>
<el-form-item label="客户名称" class="searchlist">
<el-input v-model="listQuery.params.customerName" placeholder="" clearable/>
</el-form-item>
<el-form-item label="车牌号" class="searchlist">
<el-input v-model="listQuery.params.vehMark" placeholder="" clearable />
</el-form-item>
<el-form-item label="进厂日期">
<el-date-picker v-model="listQuery.params.entryTimeStart" 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.entryTimeEnd" 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.settleTimeStart" 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.settleTimeEnd" 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;">
<el-button type="primary" icon="el-icon-search" @click="handleFilter" size="small">查询</el-button>
<el-button type="primary" icon="el-icon-refresh" @click="handleReset" size="small">重置</el-button>
</div>
</div>
</div>
<div class="listtop">
<div class="tit">商品列表</div>
</div>
<div class="">
<el-table :key="tableKey" ref="multipleTable" v-loading="listLoading" :data="list" border style="width: 100%">
<el-table-column width="80" label="序号" type="index" :index="indexMethod" align="center"/>
<el-table-column fixed label="操作" width="100" align="center">
<template slot-scope="scope">
<el-button type="primary" size="small" @click="handleAffirm(scope.row)">确认</el-button>
</template>
</el-table-column>
<el-table-column prop="billType" label="维修单类型" align="center" width="140" />
<el-table-column prop="billNo" label="维修单编号" align="center" width="170" />
<el-table-column prop="subject" label="科目" align="center" width="100" />
<el-table-column prop="isGoOut" label="是否外出" align="center" width="120" />
<el-table-column prop="customerName" label="客户名称" align="center" min-width="120" />
<el-table-column prop="mobile" label="联系电话" align="center" width="130" />
<el-table-column prop="vehMark" label="车牌号" align="center" width="130" />
<el-table-column prop="vinNo" label="车架号" align="center" width="130" />
<el-table-column prop="entryTime" label="进厂日期" align="center" width="120" />
<el-table-column prop="settleTime" label="结算日期" align="center" width="120" />
</el-table>
</div>
<div class="pages">
<div class="tit"/>
<!-- 翻页 -->
<Pagination v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
</div>
</div>
</div>
</template>
<script>
import Pagination from '@/components/pagination'
import req from '@/api/operation/workslrsettlement'
export default {
name: 'SelectRepairbill',
components: {
Pagination
},
data() {
return {
isSearchShow: false,
searchxianshitit: '隐藏查询条件',
tableKey: 0,
sids: [],
list: [],
number: '',
listLoading: false,
listQuery: {
current: 1,
size: 5,
params: {
billType: '',
billNo: '',
subject: '',
customerName: '',
vehMark: '',
entryTimeStart: '',
entryTimeEnd: '',
settleTimeStart: '',
settleTimeEnd: '',
deptSid: ''
},
total: 0
}
}
},
methods: {
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = '隐藏查询条件'
} else {
this.searchxianshitit = '显示查询条件'
}
},
indexMethod(index) {
var pagestart = (this.listQuery.current - 1) * this.listQuery.size
var pageindex = index + 1 + pagestart
return pageindex
},
//
getList() {
this.listLoading = true
req.pageList(this.listQuery).then((response) => {
this.listLoading = false
if (response.success) {
this.listQuery.total = response.data.total
this.list = response.data.records
} else {
this.listQuery.total = 0
this.list = []
}
})
},
//
handleFilter() {
this.listQuery.current = 1
this.getList()
},
//
handleReset() {
this.listQuery.current = 1
this.listQuery.size = 5
this.listQuery.total = 0
this.listQuery.params.billType = ''
this.listQuery.params.billNo = ''
this.listQuery.params.subject = ''
this.listQuery.params.customerName = ''
this.listQuery.params.vehMark = ''
this.listQuery.params.entryTimeStart = ''
this.listQuery.params.entryTimeEnd = ''
this.listQuery.params.settleTimeStart = ''
this.listQuery.params.settleTimeEnd = ''
this.getList()
},
showData(deptSid) {
// const aa = []
// if (value.length > 0) {
// for (var i = 0; i < value.length; i++) {
// aa.push(value[i].saleVehSid)
// }
// this.listQuery.params.saleVehSids = aa
// } else {
// this.listQuery.params.saleVehSids = []
// }``
this.listQuery.params.deptSid = deptSid
this.listQuery.current = 1
this.listQuery.size = 5
this.listQuery.total = 0
this.getList()
},
//
handleAffirm(row) {
this.$emit('backData', row)
},
//
handleReturn() {
this.$emit('doback')
}
}
}
</script>
<style scoped>
</style>

49
yxt-as-ui/src/views/workFlow/fanjiesuanFlow/workslrsettlementDaiBan.vue

@ -57,8 +57,8 @@
<el-form-item><span class="addinputInfo">{{ formobj.subject }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">结算时间</div>
<el-form-item><span class="addinputInfo">{{ formobj.settleDate }}</span></el-form-item>
<div class="span-sty">是否外出</div>
<el-form-item><span class="addinputInfo">{{ formobj.isGoOut == '1' ? '是' : '否' }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
@ -77,13 +77,13 @@
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">合计金额</div>
<div class="span-sty">应收合计</div>
<el-form-item><span class="addinputInfo">{{ formobj.receivableAmount }} = 工时费{{ formobj.hourAmount }} + 材料费{{ formobj.goodsAmount }} + 附加费{{ formobj.addAmount }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">应收金额</div>
<div class="span-sty">反结算金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.actualAmount }} = 合计金额{{ formobj.receivableAmount }} - 优惠{{ formobj.discountAmount }}</span></el-form-item>
</el-col>
</el-row>
@ -99,12 +99,12 @@
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="sitemSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column v-if="conceal" prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column v-if="conceal" prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="200" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">商品</div>
<div class="title">维修用料</div>
<el-table :key="tableKey" :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 prop="goodsID" label="商品ID" align="center" width="200" />
@ -116,14 +116,14 @@
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="goodsSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="goodsCost" label="成本小计" align="center" width="150" />
<el-table-column prop="goodsPrint" label="利润额" align="center" width="150" />
<el-table-column v-if="conceal" prop="goodsCost" label="成本小计" align="center" width="150" />
<el-table-column v-if="conceal" prop="goodsPrint" label="利润额" align="center" width="150" />
<el-table-column prop="partsSellers" label="配件销售人" align="center" min-width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">附加项目</div>
<el-row>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">外出费()</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -132,7 +132,7 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -141,13 +141,13 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="12">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.outRemarks }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">厂家补助()</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -156,7 +156,7 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -165,13 +165,13 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="12">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.subsidyRemarks }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">施救费()</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -180,7 +180,7 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -189,11 +189,11 @@
</div>
</el-form-item>
</el-col>
<el-col :span="4">
<el-col :span="6">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.rescueRemarks }}</span></el-form-item>
</el-col>
<el-col :span="4">
<el-col :span="6" class="tlineheightb">
<el-form-item>
<div style="display: flex;flex-direction: column;justify-content:flex-start;align-items: flex-start;">
<el-button type="text" v-for="(item, index) in formobj.fileName" :key="index" @click="handleOpen(item.url)">{{ item.name }}</el-button>
@ -205,8 +205,8 @@
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="aitemName" label="其它附加项目" align="center" width="200" />
<el-table-column prop="aitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="aitemCost" label="成本" align="center" width="150" />
<el-table-column prop="aitemPrint" label="利润额" align="center" width="150" />
<el-table-column v-if="conceal" prop="aitemCost" label="成本" align="center" width="150" />
<el-table-column v-if="conceal" prop="aitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
</el-form>
@ -264,6 +264,7 @@ export default {
viewTitle: '',
viewState: 1,
submitdisabled: false,
conceal: false,
tableKey: 0,
index: 0,
// service
@ -273,6 +274,7 @@ export default {
formobj: {
sid: '',
createByName: '',
createBySid: '',
billNo: '',
billType: '',
subject: '',
@ -298,7 +300,7 @@ export default {
coupon: '',
scoreDeduct: '',
sourceBillDate: '',
settleDate: '',
isGoOut: '',
taxRate: '',
taskId: '',
instanceId: '',
@ -398,6 +400,9 @@ export default {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
if (this.formobj.createBySid !== window.sessionStorage.getItem('userSid')) {
this.conceal = true
}
req.fetchBySid(sid).then((res) => {
if (res.success) {
this.formobj = res.data

90
yxt-as-ui/src/views/workFlow/fanjiesuanFlow/workslrsettlementEdit.vue

@ -30,7 +30,10 @@
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.reason" clearable placeholder="" /></el-form-item>
</el-col>
</el-row>
<div class="title">维修单信息</div>
<div class="title titleOne">
<div>维修单信息</div>
<el-button type="primary" size="mini" class="btntopblueline" @click="handleSelect">选择维修单</el-button>
</div>
<el-row>
<el-col :span="8">
<div class="span-sty">维修单编号</div>
@ -55,8 +58,8 @@
<el-form-item><span class="addinputInfo">{{ formobj.subject }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">结算时间</div>
<el-form-item><span class="addinputInfo">{{ formobj.settleDate }}</span></el-form-item>
<div class="span-sty">是否外出</div>
<el-form-item><span class="addinputInfo">{{ formobj.isGoOut == '1' ? '是' : '否' }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
@ -75,13 +78,13 @@
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">合计金额</div>
<div class="span-sty">应收合计</div>
<el-form-item><span class="addinputInfo">{{ formobj.receivableAmount }} = 工时费{{ formobj.hourAmount }} + 材料费{{ formobj.goodsAmount }} + 附加费{{ formobj.addAmount }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">应收金额</div>
<div class="span-sty">反结算金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.actualAmount }} = 合计金额{{ formobj.receivableAmount }} - 优惠{{ formobj.discountAmount }}</span></el-form-item>
</el-col>
</el-row>
@ -97,8 +100,6 @@
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="sitemSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="200" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
@ -114,14 +115,12 @@
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="goodsSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="goodsCost" label="成本小计" align="center" width="150" />
<el-table-column prop="goodsPrint" label="利润额" align="center" width="150" />
<el-table-column prop="partsSellers" label="配件销售人" align="center" min-width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">附加项目</div>
<el-row>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">外出费()</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -130,22 +129,22 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<el-input class="addinputInfo" style="width: 20%" @keyup.native="formobj.outCost = getNumber(formobj.outCost, 2)" v-model="formobj.outCost" clearable placeholder="" />
<el-input class="addinputInfo" style="width: 30%" @input="outPrintInput" @keyup.native="formobj.outCost = getNumber(formobj.outCost, 2)" v-model="formobj.outCost" clearable placeholder="" />
<span>利润额{{ formobj.outPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="12">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.outRemarks }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">厂家补助()</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -154,22 +153,22 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<el-input class="addinputInfo" style="width: 20%" @keyup.native="formobj.subsidyCost = getNumber(formobj.subsidyCost, 2)" v-model="formobj.subsidyCost" clearable placeholder="" />
<el-input class="addinputInfo" style="width: 30%" @input="subsidyPrintInput" @keyup.native="formobj.subsidyCost = getNumber(formobj.subsidyCost, 2)" v-model="formobj.subsidyCost" clearable placeholder="" />
<span>利润额{{ formobj.subsidyPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="12">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.subsidyRemarks }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">施救费()</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -178,20 +177,20 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<el-input class="addinputInfo" style="width: 20%" @keyup.native="formobj.rescueCost = getNumber(formobj.rescueCost, 2)" v-model="formobj.rescueCost" clearable placeholder="" />
<el-input class="addinputInfo" style="width: 30%" @input="rescuePrintInput" @keyup.native="formobj.rescueCost = getNumber(formobj.rescueCost, 2)" v-model="formobj.rescueCost" clearable placeholder="" />
<span>利润额{{ formobj.rescuePrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="4">
<el-col :span="6">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.rescueRemarks }}</span></el-form-item>
</el-col>
<el-col :span="4">
<el-col :span="6" class="tlineheightb">
<el-form-item>
<div style="display: flex;flex-direction: column;justify-content:flex-start;align-items: flex-start;">
<el-button type="text" v-for="(item, index) in formobj.fileName" :key="index" @click="handleOpen(item.url)">{{ item.name }}</el-button>
@ -203,21 +202,25 @@
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="aitemName" label="其它附加项目" align="center" width="200" />
<el-table-column prop="aitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="aitemCost" label="成本" align="center" width="150" />
<el-table-column prop="aitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
</el-form>
</div>
</div>
<!-- 选择维修单 -->
<selectRepairbill v-show="viewState == 2" ref="divSelect" @backData="backData" @doback="resetState" />
</div>
</template>
<script>
import req from '@/api/operation/workslrsettlement'
import selectRepairbill from './relation/selectRepairbill'
export default {
name: 'WorkSLRSettlementEdit',
components: {
selectRepairbill
},
data() {
return {
viewTitle: '',
@ -257,7 +260,7 @@ export default {
coupon: '',
scoreDeduct: '',
sourceBillDate: '',
settleDate: '',
isGoOut: '',
taxRate: '',
taskId: '',
instanceId: '',
@ -316,6 +319,36 @@ export default {
}
})
},
handleSelect() {
this.viewState = 2
this.$refs['divSelect'].showData(this.formobj.deptSid)
},
backData(val) {
req.reverseSettleInit({ sid: val.sid, userSid: window.sessionStorage.getItem('userSid'), orgPath: this.formobj.orgPath }).then((res) => {
if (res.success) {
this.formobj = res.data
if (this.formobj.sitemVos.length > 0) {
this.formobj.sitemVos.forEach((e) => {
if (e.staffNameList.length > 0) {
e.repairerName = e.staffNameList.join(',')
}
})
}
}
})
},
// -- -- = -
outPrintInput() {
this.formobj.outPrint = Math.round((parseFloat(this.formobj.outAmount !== '' ? this.formobj.outAmount : 0) - parseFloat(this.formobj.outCost !== '' ? this.formobj.outCost : 0)) * 100) / 100
},
// -- -- = -
subsidyPrintInput() {
this.formobj.subsidyPrint = Math.round((parseFloat(this.formobj.subsidyAmount !== '' ? this.formobj.subsidyAmount : 0) - parseFloat(this.formobj.subsidyCost !== '' ? this.formobj.subsidyCost : 0)) * 100) / 100
},
// -- -- = -
rescuePrintInput() {
this.formobj.rescuePrint = Math.round((parseFloat(this.formobj.rescueAmount !== '' ? this.formobj.rescueAmount : 0) - parseFloat(this.formobj.rescueCost !== '' ? this.formobj.rescueCost : 0)) * 100) / 100
},
handleOpen(value) {
window.open(value, '_blank')
},
@ -378,4 +411,11 @@ export default {
.addinputInfo {
margin-left: 120px !important;
}
.titleOne {
padding: 7px;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
</style>

47
yxt-as-ui/src/views/workFlow/fanjiesuanFlow/workslrsettlementYiBan.vue

@ -54,8 +54,8 @@
<el-form-item><span class="addinputInfo">{{ formobj.subject }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">结算时间</div>
<el-form-item><span class="addinputInfo">{{ formobj.settleDate }}</span></el-form-item>
<div class="span-sty">是否外出</div>
<el-form-item><span class="addinputInfo">{{ formobj.isGoOut == '1' ? '是' : '否' }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
@ -74,13 +74,13 @@
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">合计金额</div>
<div class="span-sty">应收合计</div>
<el-form-item><span class="addinputInfo">{{ formobj.receivableAmount }} = 工时费{{ formobj.hourAmount }} + 材料费{{ formobj.goodsAmount }} + 附加费{{ formobj.addAmount }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">应收金额</div>
<div class="span-sty">反结算金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.actualAmount }} = 合计金额{{ formobj.receivableAmount }} - 优惠{{ formobj.discountAmount }}</span></el-form-item>
</el-col>
</el-row>
@ -96,8 +96,8 @@
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="sitemSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column v-if="conceal" prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column v-if="conceal" prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="200" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
@ -113,14 +113,14 @@
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="goodsSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="goodsCost" label="成本小计" align="center" width="150" />
<el-table-column prop="goodsPrint" label="利润额" align="center" width="150" />
<el-table-column v-if="conceal" prop="goodsCost" label="成本小计" align="center" width="150" />
<el-table-column v-if="conceal" prop="goodsPrint" label="利润额" align="center" width="150" />
<el-table-column prop="partsSellers" label="配件销售人" align="center" min-width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">附加项目</div>
<el-row>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">外出费()</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -129,7 +129,7 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -138,13 +138,13 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="12">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.outRemarks }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">厂家补助()</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -153,7 +153,7 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -162,13 +162,13 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="12">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.subsidyRemarks }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">施救费()</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -177,7 +177,7 @@
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="6">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
@ -186,11 +186,11 @@
</div>
</el-form-item>
</el-col>
<el-col :span="4">
<el-col :span="6">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.rescueRemarks }}</span></el-form-item>
</el-col>
<el-col :span="4">
<el-col :span="6" class="tlineheightb">
<el-form-item>
<div style="display: flex;flex-direction: column;justify-content:flex-start;align-items: flex-start;">
<el-button type="text" v-for="(item, index) in formobj.fileName" :key="index" @click="handleOpen(item.url)">{{ item.name }}</el-button>
@ -202,8 +202,8 @@
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="aitemName" label="其它附加项目" align="center" width="200" />
<el-table-column prop="aitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="aitemCost" label="成本" align="center" width="150" />
<el-table-column prop="aitemPrint" label="利润额" align="center" width="150" />
<el-table-column v-if="conceal" prop="aitemCost" label="成本" align="center" width="150" />
<el-table-column v-if="conceal" prop="aitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
</el-form>
@ -222,6 +222,7 @@ export default {
viewTitle: '',
viewState: 1,
submitdisabled: false,
conceal: false,
tableKey: 0,
index: 0,
// service
@ -231,6 +232,7 @@ export default {
formobj: {
sid: '',
createByName: '',
createBySid: '',
billNo: '',
billType: '',
subject: '',
@ -256,7 +258,7 @@ export default {
coupon: '',
scoreDeduct: '',
sourceBillDate: '',
settleDate: '',
isGoOut: '',
taxRate: '',
taskId: '',
instanceId: '',
@ -327,6 +329,9 @@ export default {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
if (this.formobj.createBySid !== window.sessionStorage.getItem('userSid')) {
this.conceal = true
}
req.fetchBySid(sid).then((res) => {
if (res.success) {
this.formobj = res.data

Loading…
Cancel
Save