Browse Source

Merge remote-tracking branch 'origin/master'

master
ligaode 6 months ago
parent
commit
e34451d4b4
  1. 28
      anrui-buscenter/anrui-finmanage-ui/src/api/anruifinmanagement/paymentConfirmation.js
  2. 386
      anrui-buscenter/anrui-finmanage-ui/src/views/anruifinmanagement/paymentConfirmation/customerBillingSummary.vue
  3. 3
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finuncollectedreceivablesdetailed/CustomerBillSummaryQuery.java
  4. 2
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finuncollectedreceivablesdetailed/CustomerBillSummaryVo.java
  5. 35
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finuncollectedreceivablesdetailed/CustomerDetailsVo.java
  6. 19
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finuncollectedreceivablesdetailed/CustomerThreeListVo.java
  7. 25
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finuncollectedreceivablesdetailed/CustomerThreeVo.java
  8. 11
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finuncollectedreceivablesdetailed/FinUncollectedReceivablesDetailedFeign.java
  9. 12
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finuncollectedreceivablesdetailed/FinUncollectedReceivablesDetailedFeignFallback.java
  10. 8
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finuncollectedreceivablesdetailed/FinUncollectedReceivablesDetailedMapper.java
  11. 234
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finuncollectedreceivablesdetailed/FinUncollectedReceivablesDetailedMapper.xml
  12. 12
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finuncollectedreceivablesdetailed/FinUncollectedReceivablesDetailedRest.java
  13. 233
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finuncollectedreceivablesdetailed/FinUncollectedReceivablesDetailedService.java
  14. 8
      yxt-as-ui/src/api/operation/repairbill.js
  15. 4
      yxt-as-ui/src/views/operation/repairbill/repairbillBYLeaveFactory.vue
  16. 1
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillService.java
  17. 4
      yxt-sms-biz/src/main/java/com/yxt/sms/biz/smssalesbill/SmsSalesBillMapper.xml
  18. 2
      yxt-sms-biz/src/main/java/com/yxt/sms/biz/smssalesbill/SmsSalesBillService.java

28
anrui-buscenter/anrui-finmanage-ui/src/api/anruifinmanagement/paymentConfirmation.js

@ -100,7 +100,7 @@ export function recallConfirm(data) {
})
}
// 客户账单汇总
// 客户账单汇总 -- 一级列表
export function customerBillListPage(data) {
return request({
url: '/fin/finuncollectedreceivablesdetailed/customerBillListPage',
@ -112,6 +112,24 @@ export function customerBillListPage(data) {
})
}
// 客户账单汇总 -- 二级列表
export function customerBillDetailsList(data) {
return request({
url: '/fin/finuncollectedreceivablesdetailed/customerBillDetailsList',
method: 'post',
params: data
})
}
// 客户账单汇总 -- 三级列表
export function customerBillThreeDetails(data) {
return request({
url: '/fin/finuncollectedreceivablesdetailed/customerBillThreeDetails',
method: 'post',
params: data
})
}
// 客户账单明细
export function customerBillDetailedListPage(data) {
return request({
@ -124,14 +142,6 @@ export function customerBillDetailedListPage(data) {
})
}
// 数据字典
export function dataDictionary(data) {
return request({
url: '/portal/v1/dictcommons/typeValues',
method: 'get',
params: data
})
}
// 上传文件
export function upload(data) {
return request({

386
anrui-buscenter/anrui-finmanage-ui/src/views/anruifinmanagement/paymentConfirmation/customerBillingSummary.vue

@ -1,160 +1,186 @@
<template>
<div class="app-container">
<div>
<div class="tab-header webtop">
<div>客户账单汇总</div>
<div>
<el-button type="info" size="small">导表</el-button>
<el-button type="info" size="small">关闭</el-button>
</div>
</div>
<div class="webcon">
<div v-show="viewState == 1">
<button-bar view-title="客户账单汇总" ref="btnbar" :btndisabled="btndisabled" @btnhandle="btnHandle"/>
<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" label-width="100px" class="tab-header">
<el-row>
<el-form-item label="客户名称:">
<el-input v-model="listQuery.params.customerName" placeholder="" clearable class="addinputw"/>
</el-form-item>
<el-form-item label="合同编号:">
<el-input v-model="listQuery.params.contractNo" placeholder="" clearable class="addinputw"/>
</el-form-item>
<el-form-item label="款项类型:">
<el-select v-model="listQuery.params.paymentTypeKey" placeholder="请选择" filterable clearable>
<el-option v-for="item in paymentType_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
<el-form-item label="生成时间:">
<el-date-picker value-format="yyyy-MM-dd" v-model="listQuery.params.createStartTime" clearable style="width: 160px" type="date" placeholder="开始日期"/>
<div class="line"></div>
<el-date-picker value-format="yyyy-MM-dd" v-model="listQuery.params.createEndTime" clearable style="width: 160px" type="date" placeholder="结束日期"/>
</el-form-item>
</el-row>
<el-row>
<el-form-item label="款项名称:">
<el-input v-model="listQuery.params.receivablesName" placeholder="" clearable class="addinputw"/>
</el-form-item>
<el-form-item label="款项状态:">
<el-select v-model="listQuery.params.subscriptionState" placeholder="请选择" filterable clearable>
<el-option v-for="item in subscriptionState_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
</el-row>
<div class="searchbtns">
<el-button type="primary" @click="handleFilter">查询</el-button>
<el-button type="primary" @click="handReset">重置</el-button>
</div>
<el-form-item label="客户名称">
<el-input v-model="listQuery.params.customerName" placeholder="" clearable />
</el-form-item>
<el-form-item label="合同编号">
<el-input v-model="listQuery.params.contractNo" placeholder="" clearable />
</el-form-item>
<el-form-item label="未收金额">
<div style="display: flex;flex-direction: row;justify-content: flex-start;align-items: center">
<el-input v-model="listQuery.params.noSubscriptionMoneyStart" placeholder="" clearable />
<span style="padding: 0 8px"></span>
<el-input v-model="listQuery.params.noSubscriptionMoneyEnd" placeholder="" clearable />
</div>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
<el-button type="primary" icon="el-icon-search" size="small" @click="handleFilter">查询</el-button>
<el-button type="primary" icon="el-icon-refresh" size="small" @click="handReset">重置</el-button>
</div>
</div>
</div>
<div>
<div class="listtop">
<div class="tit">应收款项列表</div>
<div class="tit">客户账单汇总列表</div>
<pageye v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" border style="width: 100%">
<el-table-column width="80px" label="序号" type="index" :index="indexMethod" align="center"/>
<el-table-column label="客户名称" align="center">
<template slot-scope="scope">
<span>{{ scope.row.customerName }}</span>
</template>
</el-table-column>
<el-table-column label="合同编号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.contractNo }}</span>
</template>
</el-table-column>
<el-table-column label="款项类型" align="center">
<template slot-scope="scope">
<span>{{ scope.row.paymentTypeValue }}</span>
</template>
</el-table-column>
<el-table-column label="款项名称" align="center">
<template slot-scope="scope">
<span>{{ scope.row.receivablesName }}</span>
</template>
</el-table-column>
<el-table-column label="款项状态" align="center">
<template slot-scope="scope">
<span>{{ scope.row.subscriptionState }}</span>
</template>
</el-table-column>
<el-table-column label="应收金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.currentReceivableMoney }}</span>
</template>
</el-table-column>
<el-table-column label="实收金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.subscriptionMoney }}</span>
</template>
</el-table-column>
<el-table-column label="未收金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.noSubscriptionMoney }}</span>
</template>
</el-table-column>
<el-table-column label="生成时间" align="center" width="200">
<template slot-scope="scope">
<span>{{ scope.row.createTime }}</span>
</template>
</el-table-column>
<el-table-column label="最新处理时间" align="center" width="200">
<template slot-scope="scope">
<span>{{ scope.row.auditDate }}</span>
</template>
</el-table-column>
<el-table-column label="备注" align="center">
<el-table-column width="80" label="序号" type="index" :index="indexMethod" align="center"/>
<el-table-column label="操作" align="center" width="100">
<template slot-scope="scope">
<span>{{ scope.row.remarks }}</span>
<el-button type="primary" size="small" @click="handleLook(scope.row)">查看</el-button>
</template>
</el-table-column>
<el-table-column prop="customerName" label="客户名称" align="center" />
<el-table-column prop="contractNo" label="合同编号" align="center" />
<el-table-column prop="reveivableMoney" label="应收金额" align="center" />
<el-table-column prop="subscriptionMoney" label="实收金额" align="center" />
<el-table-column prop="noSubscriptionMoney" label="未收金额" align="center" />
</el-table>
</div>
<div class="pages">
<!-- 翻页 -->
<pagination v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
<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>
<el-dialog :visible.sync="outerVisible" width="60%">
<div>
<el-table :key="outerKey" :data="outerList" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center" />
<el-table-column label="操作" align="center" width="100">
<template slot-scope="scope">
<el-button type="primary" size="small" @click="lookInfo(scope.row)">查看</el-button>
</template>
</el-table-column>
<el-table-column prop="customerName" label="客户名称" align="center" width="100" />
<el-table-column prop="contractNo" label="合同编号" align="center" width="180" />
<el-table-column prop="vinNo" label="车架号" align="center" width="120" />
<el-table-column prop="receivablesName" label="款项名称" align="center" width="100" />
<el-table-column prop="kxState" label="应收款状态" align="center" width="120" />
<el-table-column prop="reveivableMoney" label="应收金额" align="center" width="100" />
<el-table-column prop="subscriptionMoney" label="实收金额" align="center" width="100" />
<el-table-column prop="noSubscriptionMoney" label="未收金额" align="center" width="100" />
<el-table-column prop="createTime" label="生成时间" align="center" width="170" />
</el-table>
</div>
<el-dialog :visible.sync="innerVisible" width="50%" append-to-body>
<el-form ref="form_obj" :model="formobj" class="formaddcopy02">
<el-row style="border-top: 1px solid #E0E3EB">
<el-col :span="8">
<div class="span-sty">客户名称</div>
<el-form-item><span class="addinputInfo">{{ formobj.customerName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">合同编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.contractNo }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">车架号</div>
<el-form-item><span class="addinputInfo">{{ formobj.vinNo }}</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.receivablesName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">应收金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.reveivableMoney }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">实收金额</div>
<el-form-item><span class="addinputInfo">{{ formobj.subscriptionMoney }}</span></el-form-item>
</el-col>
</el-row>
<el-table :key="innerKey" :data="formobj.list" :index="index" border style="width: 100%">
<el-table-column width="60" label="序号" type="index" :index="index + 1" align="center" />
<el-table-column prop="collectionDate" label="收款日期" align="center" />
<el-table-column prop="collectionMoney" label="收款金额" align="center" />
<el-table-column prop="payType" label="付款方式" align="center" />
<el-table-column prop="billNo" label="单据编号" align="center">
<template slot-scope="scope">
<span class="bluezi" @click="lookDetails(scope.row)">{{ scope.row.billNo }}</span>
</template>
</el-table-column>
</el-table>
</el-form>
</el-dialog>
</el-dialog>
<!---->
<acknowledgementReceiptInfo v-show="viewState == 2" ref="divSKD" @doback="resetState" />
<!-- 查看款项结转详情 -->
<moneycarriedforwardInfo v-show="viewState == 3" ref="divKXJZ" @doback="resetState" />
</div>
</template>
<script>
import { customerBillListPage, dataDictionary } from '@/api/anruifinmanagement/paymentConfirmation.js'
import { customerBillListPage, exportExcel, customerBillDetailsList, customerBillThreeDetails } from '@/api/anruifinmanagement/paymentConfirmation.js'
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import ButtonBar from '@/components/ButtonBar'
import acknowledgementReceiptInfo from './acknowledgementReceiptInfo'
import moneycarriedforwardInfo from '@/views/moneycarriedforward/moneycarriedforwardInfo'
export default {
name: 'kehuzhangdanhuizong',
components: {
Pagination,
pageye,
ButtonBar,
acknowledgementReceiptInfo,
moneycarriedforwardInfo
},
data() {
return {
isSearchShow: false,
searchxianshitit: '隐藏查询条件',
tableKey: 0,
list: [],
paymentType_list: [],
subscriptionState_list: [
{
dictKey: 1,
dictValue: '未认款'
},
outerVisible: false,
outerKey: 1,
outerList: [],
formobj: {
customerName: '',
contractNo: '',
vinNo: '',
receivablesName: '',
reveivableMoney: '',
subscriptionMoney: '',
list: []
},
index: 0,
innerVisible: false,
innerKey: 2,
viewState: 1,
btndisabled: false,
btnList: [
{
dictKey: 2,
dictValue: '部分认款'
type: 'success',
size: 'small',
icon: 'export',
btnKey: 'doExport',
btnLabel: '导出'
},
{
dictKey: 3,
dictValue: '已认款'
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
isSearchShow: false,
searchxianshitit: '隐藏查询条件',
tableKey: 0,
list: [],
listLoading: false,
listQuery: {
current: 1,
@ -162,12 +188,11 @@ export default {
params: {
customerName: '',
contractNo: '',
paymentTypeKey: '',
receivablesName: '',
createStartTime: '',
createEndTime: '',
subscriptionState: '',
createBySid: window.sessionStorage.getItem('staffSid')
userSid: '',
orgPath: '',
menuUrl: '',
noSubscriptionMoneyStart: '',
noSubscriptionMoneyEnd: ''
},
total: 0
}
@ -175,16 +200,11 @@ export default {
},
created() {
this.getList()
this.DataDictionary()
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
methods: {
DataDictionary() {
dataDictionary({ type: 'spaymentType' }).then((res) => {
if (res.code === '200') {
this.paymentType_list = res.data
}
})
},
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
@ -194,6 +214,19 @@ export default {
this.searchxianshitit = '显示查询条件'
}
},
btnHandle(btnKey) {
console.log('XXXXXXXXXXXXXXX ' + btnKey)
switch (btnKey) {
case 'doExport':
this.doExport()
break
case 'doClose':
this.doClose()
break
default:
break
}
},
// ------------------
//
indexMethod(index) {
@ -204,17 +237,23 @@ export default {
//
getList() {
this.listLoading = true
this.listQuery.params.orgPath = window.sessionStorage.getItem('defaultOrgPath')
this.listQuery.params.userSid = window.sessionStorage.getItem('userSid')
this.listQuery.params.menuUrl = this.$route.path
customerBillListPage(this.listQuery).then((response) => {
this.listLoading = false
if (response.code === '200') {
if (response.success) {
this.listQuery.total = response.data.total
this.list = response.data.records
} else {
this.listQuery.total = 0
this.list = []
}
})
},
//
handleFilter() {
console.log(this.listQuery, 999)
this.listQuery.current = 1
this.getList()
},
handReset() {
@ -224,36 +263,87 @@ export default {
params: {
customerName: '',
contractNo: '',
paymentTypeKey: '',
receivablesName: '',
createStartTime: '',
createEndTime: '',
subscriptionState: '',
createBySid: window.sessionStorage.getItem('staffSid')
userSid: '',
orgPath: '',
menuUrl: '',
noSubscriptionMoneyStart: '',
noSubscriptionMoneyEnd: ''
},
total: 0
}
this.getList()
},
handleLook(row) {
customerBillDetailsList({ contractNo: row.contractNo }).then((res) => {
if (res.success) {
this.outerVisible = true
this.outerList = res.data
}
})
},
lookInfo(row) {
customerBillThreeDetails({ receivablesSid: row.receivablesSid }).then((resp) => {
if (resp.success) {
this.innerVisible = true
this.formobj = resp.data
}
})
},
lookDetails(row) {
if (row.payType === '结转') {
this.viewState = 3
this.$refs['divKXJZ'].showInfo({ sid: row.sid })
} else {
this.viewState = 2
this.$refs['divSKD'].showInfo({ sid: row.sid })
}
this.outerVisible = false
this.innerVisible = false
},
doExport() {
this.$message({ showClose: true, type: 'warning', message: '导出功能完善中' })
// const loading = this.$loading({
// lock: true,
// text: 'Loading',
// spinner: 'el-icon-loading',
// background: 'rgba(0, 0, 0, 0.7)'
// })
// exportExcel(this.listQuery.params).then((resp) => {
// loading.close()
// const blob = new Blob([resp], {
// type: 'application/vnd.ms-excel'
// })
// const fileName = '' + '.xls'
// const elink = document.createElement('a')
// elink.download = fileName
// elink.style.display = 'nonde'
// elink.href = URL.createObjectURL(blob)
// document.body.appendChild(elink)
// elink.click()
// URL.revokeObjectURL(elink.href)
// document.body.removeChild(elink)
// }).catch(() => {
// loading.close()
// })
},
resetState() {
this.viewState = 1
this.outerVisible = true
this.innerVisible = true
},
doClose() {
this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1)
}
}
}
</script>
<style scoped>
.listtop {
display: flex;
justify-content: space-between;
align-items: center;
border: 1px solid #dfe4ed;
height: 40px;
}
.tit {
margin-bottom: -10px;
}
.pagination {
margin-bottom: -10px;
.span-sty {
width: 120px !important;
}
.line {
display: inline-block;
margin: 0px 15px;
.addinputInfo {
margin-left: 110px !important;
}
</style>

3
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finuncollectedreceivablesdetailed/CustomerBillSummaryQuery.java

@ -1,5 +1,6 @@
package com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ -9,7 +10,7 @@ import lombok.Data;
* @date 2024/11/5 16:12
*/
@Data
public class CustomerBillSummaryQuery {
public class CustomerBillSummaryQuery implements Query {
@ApiModelProperty("合同编号")
private String contractNo; // 合同编号

2
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finuncollectedreceivablesdetailed/CustomerBillSummaryVo.java

@ -47,7 +47,7 @@ public class CustomerBillSummaryVo implements Vo {
@ApiModelProperty("客户名称")
private String customerName; // 客户名称
@ApiModelProperty("应收金额")
private String receivableMoney; // 当前应收金额
private String reveivableMoney; // 当前应收金额
@ApiModelProperty("认款金额")
private String subscriptionMoney; // 认款金额
@ApiModelProperty("未认款金额")

35
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finuncollectedreceivablesdetailed/CustomerDetailsVo.java

@ -0,0 +1,35 @@
package com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author Fan
* @description
* @date 2024/11/6 10:16
*/
@Data
public class CustomerDetailsVo implements Vo {
@ApiModelProperty("应收sid")
private String receivablesSid; // 应收sid
@ApiModelProperty("客户名称")
private String customerName; // 客户名称
@ApiModelProperty("合同编号")
private String contractNo; // 合同编号
@ApiModelProperty("车架号")
private String vinNo; // 车架号
@ApiModelProperty("应收项目名称")
private String receivablesName; // 应收项目名称
@ApiModelProperty("应收款项状态 01正常,02作废")
private String kxState; // 应收款项状态 01正常,02作废
@ApiModelProperty("应收金额")
private String reveivableMoney; // 当前应收金额
@ApiModelProperty("认款金额")
private String subscriptionMoney; // 认款金额
@ApiModelProperty("未认款金额")
private String noSubscriptionMoney; // 未认款金额
@ApiModelProperty("生成时间")
private String createTime; // 生成时间
}

19
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finuncollectedreceivablesdetailed/CustomerThreeListVo.java

@ -0,0 +1,19 @@
package com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed;
import lombok.Data;
/**
* @author Fan
* @description
* @date 2024/11/6 10:31
*/
@Data
public class CustomerThreeListVo {
private String collectionDate;//收款日期
private String collectionMoney; //收款金额
private String payType; //付款方式
private String billNo;//单据编号
private String sid;
}

25
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finuncollectedreceivablesdetailed/CustomerThreeVo.java

@ -0,0 +1,25 @@
package com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* @author Fan
* @description
* @date 2024/11/6 10:31
*/
@Data
public class CustomerThreeVo {
private String customerName;
private String contractNo;
private String vinNo;
private String receivablesName;
private String reveivableMoney;
private String subscriptionMoney;
private List<CustomerThreeListVo> list = new ArrayList<>();
}

11
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finuncollectedreceivablesdetailed/FinUncollectedReceivablesDetailedFeign.java

@ -71,7 +71,16 @@ public interface FinUncollectedReceivablesDetailedFeign {
@ApiOperation("客户账单汇总分页列表")
@PostMapping("/customerBillListPage")
public ResultBean<PagerVo<CustomerBillSummaryVo>> customerBillListPage(@RequestBody PagerQuery<FinUncollectedReceivablesDetailedQuery> pq);
public ResultBean<PagerVo<CustomerBillSummaryVo>> customerBillListPage(@RequestBody PagerQuery<CustomerBillSummaryQuery> pq);
@ApiOperation("客户账单二级列表")
@PostMapping("/customerBillDetailsList")
public ResultBean<List<CustomerDetailsVo>> customerBillDetailsList(@RequestParam("contractNo") String contractNo);
@ApiOperation("客户账单三级列表")
@PostMapping("/customerBillThreeDetails")
public ResultBean<CustomerThreeVo> customerBillThreeDetails(@RequestParam("receivablesSid") String receivablesSid);
@ApiOperation("客户账单明细分页列表")
@PostMapping("/customerBillDetailedListPage")

12
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finuncollectedreceivablesdetailed/FinUncollectedReceivablesDetailedFeignFallback.java

@ -67,7 +67,17 @@ public class FinUncollectedReceivablesDetailedFeignFallback implements FinUncoll
}
@Override
public ResultBean<PagerVo<CustomerBillSummaryVo>> customerBillListPage(PagerQuery<FinUncollectedReceivablesDetailedQuery> pq) {
public ResultBean<PagerVo<CustomerBillSummaryVo>> customerBillListPage(PagerQuery<CustomerBillSummaryQuery> pq) {
return null;
}
@Override
public ResultBean<List<CustomerDetailsVo>> customerBillDetailsList(String contractNo) {
return null;
}
@Override
public ResultBean<CustomerThreeVo> customerBillThreeDetails(String receivablesSid) {
return null;
}

8
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finuncollectedreceivablesdetailed/FinUncollectedReceivablesDetailedMapper.java

@ -130,4 +130,12 @@ public interface FinUncollectedReceivablesDetailedMapper extends BaseMapper<FinU
@Select("SELECT IFNULL(SUM(reveivableMoney),0) FROM fin_uncollected_receivables_detailed WHERE contractSid = #{billSid}")
BigDecimal selYsByBillSid(String billSid);
IPage<CustomerBillSummaryVo> getCustomerSummaryList(IPage<FinUncollectedReceivablesDetailed> page, @Param(Constants.WRAPPER)QueryWrapper<FinUncollectedReceivablesDetailed> qw);
List<CustomerDetailsVo> customerBillDetailsList(@Param("contractNo") String contractNo);
CustomerThreeVo selCustomerThreeDetails(@Param("receivablesSid") String receivablesSid);
List<CustomerThreeListVo> selCustomerThreeListDetails(@Param("receivablesSid") String receivablesSid);
}

234
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finuncollectedreceivablesdetailed/FinUncollectedReceivablesDetailedMapper.xml

@ -646,4 +646,238 @@
AND sd.receivablesName = '订金'
AND sd.auditState = '3'
</select>
<select id="getCustomerSummaryList"
resultType="com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.CustomerBillSummaryVo">
SELECT
b.*,
( b.reveivableMoney - b.subscriptionMoney ) noSubscriptionMoney
FROM
(
SELECT
a.*,
(
SELECT
ifnull( sum( dbalance ), 0 ) AS subscriptionMoney
FROM
(
SELECT
d.receivablesSid,
d.contractNo,
cast((
d.`subscriptionMoney` - COALESCE ( SUM( f.`thisUseMoney` ), 0 )) AS DECIMAL ( 10, 2 )) AS dbalance
FROM
fin_selected_receivables_detailed d
LEFT JOIN (
SELECT
f.busSid,
f.thisUseMoney
FROM
fin_funds_carried_forward_veh f
LEFT JOIN `fin_funds_carried_forward_apply` fa ON f.mainSid = fa.sid
WHERE
fa.`nodeState` = '已办结'
) f ON f.`busSid` = d.`sid`
WHERE
d.auditState = 3
GROUP BY
d.`sid`
) d
WHERE
d.contractNo = a.contractNo
) AS subscriptionMoney
FROM
(
SELECT
orgSidPath,
contractSid,
customerName,
contractNo,
IFNULL( SUM( reveivableMoney ), 0 ) reveivableMoney
FROM
fin_uncollected_receivables_detailed AS f
WHERE
f.kxState = '01'
GROUP BY
f.contractSid
) AS a
) b
<where>
${ew.sqlSegment}
</where>
</select>
<select id="customerBillDetailsList"
resultType="com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.CustomerDetailsVo">
SELECT
*
FROM
(
SELECT
a.sid receivablesSid,
a.customerName,
a.contractNo,
a.linkNo as vinNo,
a.receivablesName,
a.kxState,
a.reveivableMoney,
a.subscriptionMoney,
( a.reveivableMoney - a.subscriptionMoney ) AS noSubscriptionMoney,
a.createTime
FROM
(
SELECT
u.sid,
u.useOrgSid,
u.busVinSid,
u.customerName,
u.contractNo,
RIGHT(v.linkNo,8) as linkNo,
u.receivablesName,
u.payType,
u.orgSidPath,
u.createBySid,
u.kxState,
u.reveivableMoney,
u.createTime,
u.remarks,
(
SELECT
ifnull( sum( dbalance ), 0 ) AS subscriptionMoney
FROM
(
SELECT
d.receivablesSid,
cast((
d.`subscriptionMoney` - COALESCE ( SUM( f.`thisUseMoney` ), 0 )) AS DECIMAL ( 10, 2 )) AS dbalance
FROM
fin_selected_receivables_detailed d
LEFT JOIN (
SELECT
f.busSid,
f.thisUseMoney
FROM
fin_funds_carried_forward_veh f
LEFT JOIN `fin_funds_carried_forward_apply` fa ON f.mainSid = fa.sid
WHERE
fa.`nodeState` = '已办结'
) f ON f.`busSid` = d.`sid`
WHERE
d.auditState = 3
GROUP BY
d.`sid`
) d
WHERE
d.receivablesSid = u.sid
) AS subscriptionMoney
FROM
fin_uncollected_receivables_detailed AS u
LEFT JOIN anrui_buscenter.bus_sales_order_vehicle AS v ON u.busVinSid = v.sid
WHERE u.contractNo = #{contractNo}
) a
) AS b
</select>
<select id="selCustomerThreeDetails"
resultType="com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.CustomerThreeVo">
SELECT
*
FROM
(
SELECT
a.customerName,
a.contractNo,
a.linkNo as vinNo,
a.receivablesName,
a.reveivableMoney,
a.subscriptionMoney
FROM
(
SELECT
u.customerName,
u.contractNo,
RIGHT(v.linkNo,8) as linkNo,
u.receivablesName,
u.reveivableMoney,
(
SELECT
ifnull( sum( dbalance ), 0 ) AS subscriptionMoney
FROM
(
SELECT
d.receivablesSid,
cast((
d.`subscriptionMoney` - COALESCE ( SUM( f.`thisUseMoney` ), 0 )) AS DECIMAL ( 10, 2 )) AS dbalance
FROM
fin_selected_receivables_detailed d
LEFT JOIN (
SELECT
f.busSid,
f.thisUseMoney
FROM
fin_funds_carried_forward_veh f
LEFT JOIN `fin_funds_carried_forward_apply` fa ON f.mainSid = fa.sid
WHERE
fa.`nodeState` = '已办结'
) f ON f.`busSid` = d.`sid`
WHERE
d.auditState = 3
GROUP BY
d.`sid`
) d
WHERE
d.receivablesSid = u.sid
) AS subscriptionMoney
FROM
fin_uncollected_receivables_detailed AS u
LEFT JOIN anrui_buscenter.bus_sales_order_vehicle AS v ON u.busVinSid = v.sid
WHERE u.sid = #{receivablesSid}
) a
) AS b
</select>
<select id="selCustomerThreeListDetails"
resultType="com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.CustomerThreeListVo">
SELECT
c.sid,
c.collectionDate,
d.`subscriptionMoney` AS collectionMoney,
'认款' payType,
c.billNo
FROM
fin_selected_receivables_detailed AS d
LEFT JOIN fin_collection_confirmation AS c ON c.sid = d.collSid
WHERE
d.receivablesSid = #{receivablesSid}
AND d.auditState = 3
UNION ALL
SELECT
*
FROM
(
SELECT
f.sid,
f.collectionDate,
- abs(
IFNULL( f.`thisUseMoney`, 0 )) collectionMoney,
'结转' payType,
f.billNo
FROM
fin_selected_receivables_detailed d
LEFT JOIN (
SELECT
fa.sid,
f.busSid,
f.thisUseMoney,
date_format ( fa.createTime, '%Y-%m-%d' ) AS collectionDate,
fa.billNo
FROM
fin_funds_carried_forward_veh f
LEFT JOIN `fin_funds_carried_forward_apply` fa ON f.mainSid = fa.sid
WHERE
fa.`nodeState` = '已办结'
) f ON f.`busSid` = d.`sid`
WHERE
d.auditState = 3
AND d.receivablesSid = #{receivablesSid}
) AS m
WHERE
m.collectionMoney != 0
</select>
</mapper>

12
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finuncollectedreceivablesdetailed/FinUncollectedReceivablesDetailedRest.java

@ -89,12 +89,22 @@ public class FinUncollectedReceivablesDetailedRest implements FinUncollectedRece
}
@Override
public ResultBean<PagerVo<CustomerBillSummaryVo>> customerBillListPage(PagerQuery<FinUncollectedReceivablesDetailedQuery> pq) {
public ResultBean<PagerVo<CustomerBillSummaryVo>> customerBillListPage(PagerQuery<CustomerBillSummaryQuery> pq) {
ResultBean rb = ResultBean.fireFail();
PagerVo<CustomerBillSummaryVo> pv = finUncollectedReceivablesDetailedService.listPageVo(pq);
return rb.success().setData(pv);
}
@Override
public ResultBean<List<CustomerDetailsVo>> customerBillDetailsList(String contractNo) {
return finUncollectedReceivablesDetailedService.customerBillDetailsList(contractNo);
}
@Override
public ResultBean<CustomerThreeVo> customerBillThreeDetails(String receivablesSid) {
return finUncollectedReceivablesDetailedService.customerBillThreeDetails(receivablesSid);
}
@Override
public ResultBean<PagerVo<FinUncollectedReceivablesDetailedVo>> customerBillDetailedListPage(PagerQuery<FinUncollectedReceivablesDetailedQuery> pq) {
ResultBean rb = ResultBean.fireFail();

233
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finuncollectedreceivablesdetailed/FinUncollectedReceivablesDetailedService.java

@ -278,83 +278,83 @@ public class FinUncollectedReceivablesDetailedService extends MybatisBaseService
baseMapper.updateCurRecMoneyBySid(curRecMoney, sid);
}
public PagerVo<CustomerBillSummaryVo> listPageVo(PagerQuery<FinUncollectedReceivablesDetailedQuery> pq) {
FinUncollectedReceivablesDetailedQuery params = pq.getParams();
String staffSid = params.getCreateBySid();
ResultBean<List<SysStaffOrgVo>> sysStaffOrgListByStaffSid = sysStaffOrgFeign.getSysStaffOrgListByStaffSid(staffSid);
List<SysStaffOrgVo> data2 = sysStaffOrgListByStaffSid.getData();
String orgSidPath = "";
for (SysStaffOrgVo datum : data2) {
orgSidPath = datum.getOrgSidPath();
String[] split = orgSidPath.split("/");
for (String s : split) {
ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(s);
SysOrganizationVo data1 = sysOrganizationVoResultBean.getData();
Integer isDept = data1.getIsDept();
String psid = data1.getPsid();
if (isDept == 0 && !psid.equals(0)) {
orgSidPath = s;
break;
}
}
}
params.setUseOrgSid(orgSidPath);
QueryWrapper<FinUncollectedReceivablesDetailed> qw = createQueryWrapper(params);
IPage<FinUncollectedReceivablesDetailed> page = PagerUtil.queryToPage(pq);
IPage<FinUncollectedReceivablesDetailedVo> pagging = baseMapper.selectPageVo(page, qw);
List<FinUncollectedReceivablesDetailedVo> records = pagging.getRecords();
for (FinUncollectedReceivablesDetailedVo record : records) {
BigDecimal totalDeposit = new BigDecimal(0);
BigDecimal totalPrice = new BigDecimal(0);
BigDecimal noSubscriptionMoney = new BigDecimal(0);
String sid = record.getContractSid();
String contractNo = record.getContractNo();
String receivablesName = record.getReceivablesName();
String paymentTypeValue = record.getPaymentTypeValue();
ResultBean<CommonContractVo> commonContractVoResultBean = commonContractFeign.fetchBySid(sid);
CommonContractVo data = commonContractVoResultBean.getData();
if (receivablesName.equals("订金")) {
BigDecimal oneDeposit = new BigDecimal(data.getOneDeposit());
BigDecimal num = new BigDecimal(data.getNum());
totalDeposit = oneDeposit.multiply(num);
record.setCurrentReceivableMoney(String.valueOf(totalDeposit));
} else if (receivablesName.equals("车款")) {
BigDecimal price = new BigDecimal(data.getPrice());
BigDecimal num = new BigDecimal(data.getNum());
totalPrice = price.multiply(num);
record.setCurrentReceivableMoney(String.valueOf(totalPrice));
}
List<FinSelectedReceivablesDetailedVo> finSelectedReceivablesDetailedVos = finSelectedReceivablesDetailedService.selectGroupConAndRecAndPay();
for (FinSelectedReceivablesDetailedVo finSelectedReceivablesDetailedVo : finSelectedReceivablesDetailedVos) {
String receivablesName1 = finSelectedReceivablesDetailedVo.getReceivablesName();
String subscriptionMoney = finSelectedReceivablesDetailedVo.getSubscriptionMoney();
if (receivablesName1.equals("订金")) {
record.setSubscriptionMoney(subscriptionMoney);
noSubscriptionMoney = totalDeposit.subtract(new BigDecimal(subscriptionMoney));
record.setNoSubscriptionMoney(String.valueOf(noSubscriptionMoney));
if (subscriptionMoney.equals(0)) {
record.setSubscriptionState("未认款");
} else if (subscriptionMoney.equals(totalDeposit)) {
record.setSubscriptionState("已认款");
} else {
record.setSubscriptionState("部分认款");
}
} else if (receivablesName1.equals("车款")) {
noSubscriptionMoney = totalPrice.subtract(new BigDecimal(subscriptionMoney));
record.setNoSubscriptionMoney(String.valueOf(noSubscriptionMoney));
if (subscriptionMoney.equals(0)) {
record.setSubscriptionState("未认款");
} else if (subscriptionMoney.equals(totalPrice)) {
record.setSubscriptionState("已认款");
} else {
record.setSubscriptionState("部分认款");
}
}
}
}
PagerVo<CustomerBillSummaryVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
// public PagerVo<CustomerBillSummaryVo> listPageVo(PagerQuery<CustomerBillSummaryQuery> pq) {
// FinUncollectedReceivablesDetailedQuery params = pq.getParams();
// String staffSid = params.getCreateBySid();
// ResultBean<List<SysStaffOrgVo>> sysStaffOrgListByStaffSid = sysStaffOrgFeign.getSysStaffOrgListByStaffSid(staffSid);
// List<SysStaffOrgVo> data2 = sysStaffOrgListByStaffSid.getData();
// String orgSidPath = "";
// for (SysStaffOrgVo datum : data2) {
// orgSidPath = datum.getOrgSidPath();
// String[] split = orgSidPath.split("/");
// for (String s : split) {
// ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(s);
// SysOrganizationVo data1 = sysOrganizationVoResultBean.getData();
// Integer isDept = data1.getIsDept();
// String psid = data1.getPsid();
// if (isDept == 0 && !psid.equals(0)) {
// orgSidPath = s;
// break;
// }
// }
// }
// params.setUseOrgSid(orgSidPath);
// QueryWrapper<FinUncollectedReceivablesDetailed> qw = createQueryWrapper(params);
// IPage<FinUncollectedReceivablesDetailed> page = PagerUtil.queryToPage(pq);
// IPage<FinUncollectedReceivablesDetailedVo> pagging = baseMapper.selectPageVo(page, qw);
// List<FinUncollectedReceivablesDetailedVo> records = pagging.getRecords();
// for (FinUncollectedReceivablesDetailedVo record : records) {
// BigDecimal totalDeposit = new BigDecimal(0);
// BigDecimal totalPrice = new BigDecimal(0);
// BigDecimal noSubscriptionMoney = new BigDecimal(0);
// String sid = record.getContractSid();
// String contractNo = record.getContractNo();
// String receivablesName = record.getReceivablesName();
// String paymentTypeValue = record.getPaymentTypeValue();
// ResultBean<CommonContractVo> commonContractVoResultBean = commonContractFeign.fetchBySid(sid);
// CommonContractVo data = commonContractVoResultBean.getData();
// if (receivablesName.equals("订金")) {
// BigDecimal oneDeposit = new BigDecimal(data.getOneDeposit());
// BigDecimal num = new BigDecimal(data.getNum());
// totalDeposit = oneDeposit.multiply(num);
// record.setCurrentReceivableMoney(String.valueOf(totalDeposit));
// } else if (receivablesName.equals("车款")) {
// BigDecimal price = new BigDecimal(data.getPrice());
// BigDecimal num = new BigDecimal(data.getNum());
// totalPrice = price.multiply(num);
// record.setCurrentReceivableMoney(String.valueOf(totalPrice));
// }
// List<FinSelectedReceivablesDetailedVo> finSelectedReceivablesDetailedVos = finSelectedReceivablesDetailedService.selectGroupConAndRecAndPay();
// for (FinSelectedReceivablesDetailedVo finSelectedReceivablesDetailedVo : finSelectedReceivablesDetailedVos) {
// String receivablesName1 = finSelectedReceivablesDetailedVo.getReceivablesName();
// String subscriptionMoney = finSelectedReceivablesDetailedVo.getSubscriptionMoney();
// if (receivablesName1.equals("订金")) {
// record.setSubscriptionMoney(subscriptionMoney);
// noSubscriptionMoney = totalDeposit.subtract(new BigDecimal(subscriptionMoney));
// record.setNoSubscriptionMoney(String.valueOf(noSubscriptionMoney));
// if (subscriptionMoney.equals(0)) {
// record.setSubscriptionState("未认款");
// } else if (subscriptionMoney.equals(totalDeposit)) {
// record.setSubscriptionState("已认款");
// } else {
// record.setSubscriptionState("部分认款");
// }
// } else if (receivablesName1.equals("车款")) {
// noSubscriptionMoney = totalPrice.subtract(new BigDecimal(subscriptionMoney));
// record.setNoSubscriptionMoney(String.valueOf(noSubscriptionMoney));
// if (subscriptionMoney.equals(0)) {
// record.setSubscriptionState("未认款");
// } else if (subscriptionMoney.equals(totalPrice)) {
// record.setSubscriptionState("已认款");
// } else {
// record.setSubscriptionState("部分认款");
// }
// }
// }
// }
// PagerVo<CustomerBillSummaryVo> p = PagerUtil.pageToVo(pagging, null);
// return p;
// }
private QueryWrapper<FinUncollectedReceivablesDetailed> myCreateQueryWrapper(FinUncollectedReceivablesDetailedQuery query) {
QueryWrapper<FinUncollectedReceivablesDetailed> qw = new QueryWrapper<>();
@ -1233,4 +1233,83 @@ public class FinUncollectedReceivablesDetailedService extends MybatisBaseService
BigDecimal ysMoney = baseMapper.selYsByBillSid(billSid);
return rb.success().setData(ysMoney);
}
public PagerVo<CustomerBillSummaryVo> listPageVo(PagerQuery<CustomerBillSummaryQuery> pq) {
QueryWrapper<FinUncollectedReceivablesDetailed> qw = new QueryWrapper<>();
CustomerBillSummaryQuery query = pq.getParams();
String orgPath = query.getOrgPath();
//授权
if (StringUtils.isNotBlank(query.getMenuUrl())) {
PrivilegeQuery privilegeQuery = new PrivilegeQuery();
privilegeQuery.setOrgPath(query.getOrgPath());
privilegeQuery.setMenuUrl(query.getMenuUrl());
privilegeQuery.setUserSid(query.getUserSid());
ResultBean<String> defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery);
if (StringUtils.isNotBlank(defaultIdReltBean.getData())) {
//数据权限ID(1集团、2事业部、3分公司、4部门、5个人)
orgPath = orgPath + "/";
int i1 = orgPath.indexOf("/");
int i2 = orgPath.indexOf("/", i1 + 1);
int i3 = orgPath.indexOf("/", i2 + 1);
int i4 = orgPath.indexOf("/", i3 + 1);
String orgLevelKey = defaultIdReltBean.getData();
if ("1".equals(orgLevelKey)) {
orgPath = orgPath.substring(0, i1);
qw.like("b.orgSidPath", orgPath);
} else if ("2".equals(orgLevelKey)) {
orgPath = orgPath.substring(0, i2);
qw.like("b.orgSidPath", orgPath);
} else if ("3".equals(orgLevelKey)) {
orgPath = orgPath.substring(0, i3);
qw.like("b.orgSidPath", orgPath);
} else if ("4".equals(orgLevelKey)) {
orgPath = orgPath.substring(0, i4);
qw.like("b.orgSidPath", orgPath);
} else if ("5".equals(orgLevelKey)) {
orgPath = orgPath.substring(0, i4);
qw.like("b.orgSidPath", orgPath);
} else {
PagerVo<CustomerBillSummaryVo> p = new PagerVo<>();
return p;
}
} else {
PagerVo<CustomerBillSummaryVo> p = new PagerVo<>();
return p;
}
}
if (StringUtils.isNotBlank(query.getNoSubscriptionMoneyStart())) {
qw.apply("( b.reveivableMoney - b.subscriptionMoney ) >=" + query.getNoSubscriptionMoneyStart());
}
if (StringUtils.isNotBlank(query.getNoSubscriptionMoneyEnd())) {
qw.apply("( b.reveivableMoney - b.subscriptionMoney ) <=" + query.getNoSubscriptionMoneyEnd());
}
if (StringUtils.isNotBlank(query.getContractNo())) {
qw.like("b.contractNo",query.getContractNo());
}
if (StringUtils.isNotBlank(query.getCustomerName())) {
qw.like("b.customerName",query.getCustomerName());
}
IPage<FinUncollectedReceivablesDetailed> page = PagerUtil.queryToPage(pq);
IPage<CustomerBillSummaryVo> pagging = baseMapper.getCustomerSummaryList(page, qw);
PagerVo<CustomerBillSummaryVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public ResultBean<List<CustomerDetailsVo>> customerBillDetailsList(String contractNo) {
ResultBean rb = ResultBean.fireFail();
List<CustomerDetailsVo> vos = baseMapper.customerBillDetailsList(contractNo);
return rb.success().setData(vos);
}
public ResultBean<CustomerThreeVo> customerBillThreeDetails(String receivablesSid) {
ResultBean rb = ResultBean.fireFail();
CustomerThreeVo vo = baseMapper.selCustomerThreeDetails(receivablesSid);
if (vo != null) {
List<CustomerThreeListVo> list = baseMapper.selCustomerThreeListDetails(receivablesSid);
if (!list.isEmpty()) {
vo.setList(list);
}
}
return rb.success().setData(vo);
}
}

8
yxt-as-ui/src/api/operation/repairbill.js

@ -20,9 +20,9 @@ export default {
})
},
// 查询分页列表 -- 维修单出厂 -- 出厂确认
carOutFactory: function(data) {
confirmOut: function(data) {
return request({
url: '/as/v1/AsBusrepairBill/carOutFactory',
url: '/as/v1/AsBusrepairBill/confirmOut',
method: 'post',
data: data,
headers: { 'Content-Type': 'application/json' }
@ -85,9 +85,9 @@ export default {
})
},
// 打印出门证
printCard: function(data) {
createPdf: function(data) {
return request({
url: '/as/v1/AsBusrepairBill/printCard',
url: '/as/v1/AsBusrepairBill/createPdf',
method: 'post',
params: data
})

4
yxt-as-ui/src/views/operation/repairbill/repairbillBYLeaveFactory.vue

@ -387,7 +387,7 @@ export default {
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.carOutFactory(this.sids).then((res) => {
req.confirmOut(this.sids).then((res) => {
if (res.success) {
this.$message({ showClose: true, type: 'success', message: '操作成功' })
this.getList()
@ -402,7 +402,7 @@ export default {
toPrint() {
if (this.sids.length === 1) {
if (this.multipleSelection[0].isOutFactory === '是') {
req.printCard({ sid: this.sids[0] }).then((res) => {
req.createPdf({ sid: this.sids[0] }).then((res) => {
if (res.success) {
var xhr = new XMLHttpRequest()
xhr.open('GET', process.env.VUE_APP_BASE_API + '/base/file/download?filePath=' + res.data + '&outFileName=' + '出门证', true)

1
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillService.java

@ -1452,6 +1452,7 @@ public class AsBusrepairBillService extends MybatisBaseService<AsBusrepairBillMa
}
asBusrepairBill.setMaterialConfirm(1);
asBusrepairBill.setOutDoorState("2");
asBusrepairBill.setIsOutFactory(1);
baseMapper.updateById(asBusrepairBill);
}
}

4
yxt-sms-biz/src/main/java/com/yxt/sms/biz/smssalesbill/SmsSalesBillMapper.xml

@ -123,8 +123,8 @@
i.manufacturerSid,
i.manufacturerName
FROM
sms_goods AS s
LEFT JOIN yxt_wms.wms_inventory as i ON s.goodsID = i.goodsID
yxt_wms.wms_inventory as i
LEFT JOIN sms_goods AS s ON s.goodsID = i.goodsID
LEFT JOIN yxt_wms.wms_warehouse_area as wa ON wa.warehouseSid = i.warehouseSid
<where>${ew.sqlSegment}</where>
</select>

2
yxt-sms-biz/src/main/java/com/yxt/sms/biz/smssalesbill/SmsSalesBillService.java

@ -424,7 +424,7 @@ public class SmsSalesBillService extends MybatisBaseService<SmsSalesBillMapper,
qw.and(wrapper -> wrapper.like("i.goodsSpuName", query.getGoodsName()).or().like("i.goodsSkuCode", query.getGoodsName()));
}
if (StringUtils.isNotBlank(query.getUseOrgSid())) {
qw.eq("s.useOrgSid", query.getUseOrgSid());
qw.eq("i.useOrgSid", query.getUseOrgSid());
}
qw.apply("i.count > 0");
IPage<SmsSalesBill> page = PagerUtil.queryToPage(pq);

Loading…
Cancel
Save