Browse Source

开票管理优化款项查看

master
fanzongzhe 2 years ago
parent
commit
40d1fcec99
  1. 66
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java
  2. 32
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinDeliveredFinVo.java
  3. 36
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinSelectInvoiceVo.java
  4. 5
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceFeign.java
  5. 5
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceFeignFallback.java
  6. 41
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVinInvoiceVo.java
  7. 2
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceMapper.java
  8. 19
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceMapper.xml
  9. 5
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceRest.java
  10. 72
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceService.java

66
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java

@ -913,7 +913,7 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
}*/
//更改申请的状态为待审核2
baseMapper.updateStateBySid(2, bv.getBusinessSid());
}else{
} else {
try {
ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
.setNameFormat("demo-pool-%d").build();
@ -998,14 +998,14 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
appBusHandoverPrepareVehicleDto.setSubscription(busDelivered.getSubscription());
appBusHandoverPrepareVehicleDto.setSubscriptionKey(busDelivered.getSubscriptionKey());*/
BaseVehicleState baseVehicleState = baseMapper.selectByBusVinSid(busSalesOrderVehicle.getSid());
if(baseVehicleState != null){
if(StringUtils.isNotBlank(baseVehicleState.getCarryVehicleState()) && "1".equals(baseVehicleState.getCarryVehicleState())){
if (baseVehicleState != null) {
if (StringUtils.isNotBlank(baseVehicleState.getCarryVehicleState()) && "1".equals(baseVehicleState.getCarryVehicleState())) {
//欠款提车
appBusHandoverPrepareVehicleDto.setSubscription("欠款提车");
appBusHandoverPrepareVehicleDto.setSubscriptionKey("0001");
}else{
if(StringUtils.isNotBlank(baseVehicleState.getFinState()) && "1".equals(baseVehicleState.getFinState())){
} else {
if (StringUtils.isNotBlank(baseVehicleState.getFinState()) && "1".equals(baseVehicleState.getFinState())) {
appBusHandoverPrepareVehicleDto.setSubscription("正常交款");
appBusHandoverPrepareVehicleDto.setSubscriptionKey("0002");
@ -1930,7 +1930,7 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
busDeliveredApplyDetails.setVinSid(appCarListVo.getVinSid());
busDeliveredApplyDetails.setApplySid(busDeliveredApply.getSid());
//根据合同编号和车架号查询busVinSId
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleService.selectByNoAndVinSid(busDeliveredApply.getContractNo(),appCarListVo.getVinSid());
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleService.selectByNoAndVinSid(busDeliveredApply.getContractNo(), appCarListVo.getVinSid());
busDeliveredApplyDetails.setBusVinSid(busSalesOrderVehicle.getSid());
BusDeliveredUseMessagesVo busDeliveredUseMessagesVo = appCarListVo.getRealBuyer();
busDeliveredApplyDetails.setVinNo(busDeliveredUseMessagesVo.getVin());
@ -2109,7 +2109,7 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
BusDeliveredUseMessagesVo busDeliveredUseMessagesVo = appCarListVo.getRealBuyer();
busDeliveredApplyDetails.setVinNo(busDeliveredUseMessagesVo.getVin());
//根据合同编号和车架号查询busVinSId
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleService.selectByNoAndVinSid(busDeliveredApply.getContractNo(),appCarListVo.getVinSid());
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleService.selectByNoAndVinSid(busDeliveredApply.getContractNo(), appCarListVo.getVinSid());
busDeliveredApplyDetails.setBusVinSid(busSalesOrderVehicle.getSid());
//赠送套餐
BigDecimal discountAll = BigDecimal.ZERO;
@ -2268,13 +2268,13 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
appCarListVo.setVinSid(busDeliveredApplyDetails.getVinSid());
//查询该车辆是否有挂车
ResultBean<TraliveredVo> trailerList = baseTrailerFeign.trailerList(busDeliveredApplyDetails.getVinSid(), busDeliveredApply.getContractNo());
if(trailerList.getData() != null){
if (trailerList.getData() != null) {
if (trailerList.getData().getList().isEmpty()) {
appCarListVo.setShowHandCarBtn(false);
} else {
appCarListVo.setShowHandCarBtn(true);
}
}else{
} else {
appCarListVo.setShowHandCarBtn(false);
}
@ -2318,14 +2318,14 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
List<AppCarListVo> carList = dto.getCarList();
if (!carList.isEmpty()) {
List<String> vinNoLists = new ArrayList<>();
List<String> vinSidLists = baseMapper.selectSid(dto.getContractId(),dto.getSid());
List<String> vinSidLists = baseMapper.selectSid(dto.getContractId(), dto.getSid());
//判断合同编号是否一致
for (int a = 0; a < carList.size(); a++) {
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleService.selectByNoAndVinSid(dto.getContractId(), carList.get(a).getVinSid());
if (busSalesOrderVehicle == null) {
return rb.setMsg("所选车辆与合同编号不匹配");
}
if(vinSidLists.contains(carList.get(a).getVinSid())){
if (vinSidLists.contains(carList.get(a).getVinSid())) {
vinNoLists.add(carList.get(a).getVinSid());
}
}
@ -2335,9 +2335,9 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
if (!vinNoList.isEmpty()) {
return rb.setMsg(String.join(",", vinNoList) + "已提交或已出库");
}
if(!vinNoLists.isEmpty()){
vinNoLists = baseMapper.selectBySid(dto.getContractId(),vinNoLists);
if(!vinNoLists.isEmpty()){
if (!vinNoLists.isEmpty()) {
vinNoLists = baseMapper.selectBySid(dto.getContractId(), vinNoLists);
if (!vinNoLists.isEmpty()) {
return rb.setMsg(String.join(",", vinNoLists) + "已发起过出库流程");
}
}
@ -2352,7 +2352,7 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
//根据discountSid查询已通过或已提交的申请的赠送套餐的数量
int count = busDeliveredDetailsDiscountService.selectGiveNumBySid(busDeliveredDetailsDiscountsVo.getDiscountSid());
int giveNum = count + busDeliveredDetailsDiscountsVo.getDiscountNum();
giveNumBySid = giveNumBySid+busDeliveredDetailsDiscountsVo.getDiscountNum();
giveNumBySid = giveNumBySid + busDeliveredDetailsDiscountsVo.getDiscountNum();
if (busSalesOrderDiscount.getNum() < giveNum) {
return rb.setMsg("车辆赠送的优惠包已超出");
}
@ -2377,7 +2377,7 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
if (isTrue) {
//是否存在未赠送的套餐,如果存在则不允许提交
int num = baseMapper.selectNumByContractNo(dto.getContractId());
num = num+giveNumBySid;
num = num + giveNumBySid;
int orderNum = busSalesOrderDiscountService.selectByContractNo(dto.getContractId());
if (orderNum > num) {
return rb.setMsg("本次出库为该订单最后一批出库,还存在未赠送的套餐,不允许提交");
@ -2602,7 +2602,7 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
AppOrderDetailsVo appOrderDetailsVo = resultBean.getData();
//根据合同号和车辆sid查询车辆
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleService.selectByNoAndVinSid(contractNo, vinSid);
if(busSalesOrderVehicle != null){
if (busSalesOrderVehicle != null) {
deliveredFinVo.setVinNo(busSalesOrderVehicle.getLinkNo());
deliveredFinVo.setPaymentMethod(appOrderDetailsVo.getPayType());
deliveredFinVo.setContractNo(contractNo);
@ -2613,37 +2613,7 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
if (receiveInvoiceVoResultBean.getData() != null) {
List<ReceiveSeleteVo> receiveSeleteVoList = receiveInvoiceVoResultBean.getData().getReceiveSeleteVoList();
List<FinSelectVo> voList = Optional.ofNullable(receiveSeleteVoList).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), FinSelectVo.class)).collect(Collectors.toList());
voList.removeAll(Collections.singleton(null));
List<FinSelectVo> finSelectVos = new ArrayList<>();
if (!voList.isEmpty()) {
for (FinSelectVo finSelectVo : voList) {
String receivablesSid = finSelectVo.getReceivablesSid();
FinSelectedReceivablesDetailed data = finSelectedReceivablesDetailedFeign.fetchByReceivablesSidLimt(receivablesSid).getData();
if (data != null) {
String collSid = data.getCollSid();
if (StringUtils.isNotBlank(data.getSubscriptionDate())) {
finSelectVo.setSubscriptionDate(data.getSubscriptionDate());
}
FinCollectionConfirmationDetailsVo confirmationDetailsVo = finCollectionConfirmationFeign.fetchBySid(collSid).getData();
if (null != confirmationDetailsVo) {
if (StringUtils.isNotBlank(confirmationDetailsVo.getCollectionBank())) {
finSelectVo.setCollectionBank(confirmationDetailsVo.getCollectionBank());
}
if (StringUtils.isNotBlank(confirmationDetailsVo.getReceivingName())) {
finSelectVo.setReceivingName(confirmationDetailsVo.getReceivingName());
}
if (StringUtils.isNotBlank(confirmationDetailsVo.getPayerName())) {
finSelectVo.setPayerName(confirmationDetailsVo.getPayerName());
}
if (StringUtils.isNotBlank(confirmationDetailsVo.getCollectionDate())) {
finSelectVo.setCollectionDate(confirmationDetailsVo.getCollectionDate());
}
}
}
finSelectVos.add(finSelectVo);
}
}
deliveredFinVo.setFinSelectVoList(finSelectVos);
deliveredFinVo.setFinSelectVoList(voList);
InvoiceVo invoiceVo = receiveInvoiceVoResultBean.getData().getInvoiceVo();
if (invoiceVo != null) {
VinInvoiceVo vinInvoiceVo = new VinInvoiceVo();

32
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinDeliveredFinVo.java

@ -0,0 +1,32 @@
package com.yxt.anrui.fin.api.finvehicleinvoice;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* @author Administrator
* @description
* @date 2023/8/10 13:34
*/
@Data
public class FinDeliveredFinVo {
@ApiModelProperty("车架号")
private String vinNo;
@ApiModelProperty("销售类型")
private String paymentMethod;
@ApiModelProperty("合同编号")
private String contractNo;
@ApiModelProperty("客户名称")
private String customerName;
@ApiModelProperty("车型")
private String modelName;
@ApiModelProperty("款项情况")
private List<FinSelectInvoiceVo> finSelectVoList = new ArrayList<>();
@ApiModelProperty("发票情况")
private FinVinInvoiceVo vinInvoiceVo = new FinVinInvoiceVo();
}

36
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinSelectInvoiceVo.java

@ -0,0 +1,36 @@
package com.yxt.anrui.fin.api.finvehicleinvoice;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author Administrator
* @description
* @date 2023/8/10 13:35
*/
@Data
public class FinSelectInvoiceVo {
@ApiModelProperty("款项名称")
private String receivablesName;
@ApiModelProperty("付款方式")
private String collectionTypeValue;
@ApiModelProperty("已收金额")
private String subscriptionMoneyAll;
@ApiModelProperty("备注")
private String remarks;
@ApiModelProperty("付款时间")
private String subscriptionDate;
@ApiModelProperty("收款账号")
private String collectionBankNum;
@ApiModelProperty("收款账户")
private String receivingName;
@ApiModelProperty("付款人")
private String payerName;
@ApiModelProperty("收款时间")
private String collectionDate;
// @ApiModelProperty("应收金额")
// private String reveivableMoney;
// @ApiModelProperty("未收金额")
// private String notSubscriptionMoney;
}

5
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceFeign.java

@ -118,5 +118,10 @@ public interface FinVehicleInvoiceFeign {
@ResponseBody
ResultBean<FinVehicleInvoice> selectByVinAndContractNo(@RequestParam("vinSid") String vinSid, @RequestParam("contractNo") String contractNo);
@ApiOperation("查看车辆的款票情况")
@GetMapping("/deliveredFinSelect")
@ResponseBody
ResultBean<FinDeliveredFinVo> deliveredFinSelect(@RequestParam("contractNo") String contractNo, @RequestParam("vinSid") String vinSid);
}

5
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVehicleInvoiceFeignFallback.java

@ -129,4 +129,9 @@ public class FinVehicleInvoiceFeignFallback implements FinVehicleInvoiceFeign {
return null;
}
@Override
public ResultBean<FinDeliveredFinVo> deliveredFinSelect(String contractNo, String vinSid) {
return null;
}
}

41
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finvehicleinvoice/FinVinInvoiceVo.java

@ -0,0 +1,41 @@
package com.yxt.anrui.fin.api.finvehicleinvoice;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author Administrator
* @description
* @date 2023/8/10 13:34
*/
@Data
public class FinVinInvoiceVo {
//开票名称
private String invoicingName;
//税号
private String invoiceNo;
//开票单位
private String invoiceTitle;
//开票类型
private String invoiceType;
//开票状态
private String billingState;
//开票金额
private String invoiceAmount;
//开票日期
private String invoiceDate;
//移交状态
private String transferState;
@ApiModelProperty("地址")
private String address;
@ApiModelProperty("联系电话")
private String telPhone;
@ApiModelProperty("开户行")
private String openingBank;
@ApiModelProperty("银行账号")
private String bankNum;
@ApiModelProperty("接收人")
private String recipient;
@ApiModelProperty("移交日期")
private String transferTime;
}

2
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceMapper.java

@ -68,4 +68,6 @@ public interface FinVehicleInvoiceMapper extends BaseMapper<FinVehicleInvoice> {
@Update("update fin_vehicle_invoice set isTakeTicket = '是' where sid = #{sid}")
void updateIsLPBySid(String sid);
List<FinSelectInvoiceVo> getFinSelectInvoiceVoListByBusVinSid(String busVinSid);
}

19
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceMapper.xml

@ -260,4 +260,23 @@
where vehicleSid = #{vinSid}
and contractNo = #{contractNo}
</select>
<select id="getFinSelectInvoiceVoListByBusVinSid"
resultType="com.yxt.anrui.fin.api.finvehicleinvoice.FinSelectInvoiceVo">
select fu.busVinSid,
fu.receivablesName,
co.collectionTypeValue,
fs.subscriptionMoney as subscriptionMoneyAll,
co.remarks,
fs.subscriptionDate,
co.collectionBankNum,
co.receivingName,
co.payerName,
co.confirmDate as collectionDate
FROM fin_uncollected_receivables_detailed as fu
LEFT JOIN fin_selected_receivables_detailed as fs ON fu.sid = fs.receivablesSid
LEFT JOIN fin_collection_confirmation as co ON fs.collSid = co.sid
WHERE fu.busVinSid = #{busVinSid}
and fs.auditState = '3'
ORDER BY co.createTime DESC
</select>
</mapper>

5
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceRest.java

@ -249,4 +249,9 @@ public class FinVehicleInvoiceRest implements FinVehicleInvoiceFeign {
return finVehicleInvoiceService.selectByVinAndContractNo(vinSid, contractNo);
}
@Override
public ResultBean<FinDeliveredFinVo> deliveredFinSelect(String contractNo, String vinSid) {
return finVehicleInvoiceService.deliveredFinSelect(contractNo,vinSid);
}
}

72
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finvehicleinvoice/FinVehicleInvoiceService.java

@ -1,6 +1,7 @@
package com.yxt.anrui.fin.biz.finvehicleinvoice;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.base.api.basetrailer.BaseTrailerDetailsVo;
@ -11,14 +12,27 @@ import com.yxt.anrui.base.api.basevehiclecertificate.BaseVehicleCertificateVo;
import com.yxt.anrui.base.api.commonappendix.CommonAppendixFeign;
import com.yxt.anrui.base.api.commonappendix.CommonAppendixVo;
import com.yxt.anrui.base.common.enums.CertificState;
import com.yxt.anrui.buscenter.api.busdeliveredapply.DeliveredFinVo;
import com.yxt.anrui.buscenter.api.busdeliveredapply.FinSelectVo;
import com.yxt.anrui.buscenter.api.busdeliveredapply.VinInvoiceVo;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign;
import com.yxt.anrui.buscenter.api.bussalesorder.app.order.AppOrderDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign;
import com.yxt.anrui.buscenter.api.bustransferrecords.BusTransferRecordEnum;
import com.yxt.anrui.buscenter.api.bustransferrecords.BusTransferRecordsDto;
import com.yxt.anrui.buscenter.api.bustransferrecords.BusTransferRecordsFeign;
import com.yxt.anrui.fin.api.finbillfile.FinBillFileVo;
import com.yxt.anrui.fin.api.fincollectionconfirmation.FinCollectionConfirmationDetailsVo;
import com.yxt.anrui.fin.api.finselectedreceivablesdetailed.FinSelectedReceivablesDetailed;
import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.ReceiveInvoiceVo;
import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.ReceiveSeleteVo;
import com.yxt.anrui.fin.api.finvehicleinvoice.*;
import com.yxt.anrui.fin.biz.finbillfile.FinBillFileService;
import com.yxt.anrui.fin.biz.fincollectionconfirmation.FinCollectionConfirmationService;
import com.yxt.anrui.fin.biz.finselectedreceivablesdetailed.FinSelectedReceivablesDetailedService;
import com.yxt.anrui.fin.biz.finuncollectedreceivablesdetailed.FinUncollectedReceivablesDetailedService;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgByUserVo;
@ -40,6 +54,7 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.*;
import java.util.stream.Collectors;
/**
* Project: anrui-fin(财务管理) <br/>
@ -82,6 +97,15 @@ public class FinVehicleInvoiceService extends MybatisBaseService<FinVehicleInvoi
private SysStaffOrgFeign sysStaffOrgFeign;
@Autowired
private SysUserRoleFeign sysUserRoleFeign;
@Autowired
private FinUncollectedReceivablesDetailedService finUncollectedReceivablesDetailedService;
@Autowired
private FinSelectedReceivablesDetailedService finSelectedReceivablesDetailedService;
@Autowired
private FinCollectionConfirmationService finCollectionConfirmationService;
@Autowired
private BusSalesOrderVehicleFeign busSalesOrderVehicleFeign;
public PagerVo<FinVehicleInvoice> listPage(PagerQuery<FinVehicleInvoiceQuery> pq) {
FinVehicleInvoiceQuery query = pq.getParams();
@ -406,7 +430,7 @@ public class FinVehicleInvoiceService extends MybatisBaseService<FinVehicleInvoi
public ResultBean<VehicleInvoiceVo> selectByVinSids(String vinSid) {
ResultBean<VehicleInvoiceVo> rb = ResultBean.fireFail();
VehicleInvoiceVo vehicleInvoiceVo = baseMapper.selectByVinSids(vinSid);
if(StringUtils.isNotBlank(vehicleInvoiceVo.getFilePath())){
if (StringUtils.isNotBlank(vehicleInvoiceVo.getFilePath())) {
List<String> filePathList = Arrays.asList(vehicleInvoiceVo.getFilePath().split(","));
vehicleInvoiceVo.setInvoiceImages(filePathList);
}
@ -434,11 +458,11 @@ public class FinVehicleInvoiceService extends MybatisBaseService<FinVehicleInvoi
SysOrganizationVo sysOrganizationVo = sysOrganizationFeign.selectByOrgSidPath(orgPath).getData();
for (String sid : sids) {
FinVehicleInvoice finVehicleInvoice = fetchBySid(sid);
if (CertificState.TransferState.TRANSTATE_WJS.getCode().equals(finVehicleInvoice.getTransferStateKey()) && "002".equals(finVehicleInvoice.getBillingStateKey()) && "是".equals(finVehicleInvoice.getIsTakeTicket())){
if (CertificState.TransferState.TRANSTATE_WJS.getCode().equals(finVehicleInvoice.getTransferStateKey()) && "002".equals(finVehicleInvoice.getBillingStateKey()) && "是".equals(finVehicleInvoice.getIsTakeTicket())) {
String vehicleSid = "";
if ("主车".equals(finVehicleInvoice.getVehicleType())){
if ("主车".equals(finVehicleInvoice.getVehicleType())) {
vehicleSid = finVehicleInvoice.getVehicleSid();
}else if ("挂车".equals(finVehicleInvoice.getVehicleType())){
} else if ("挂车".equals(finVehicleInvoice.getVehicleType())) {
String gcSid = finVehicleInvoice.getVehicleSid();
BaseTrailerDetailsVo baseTrailerDetailsVo = baseTrailerFeign.fetchBySid(gcSid).getData();
vehicleSid = baseTrailerDetailsVo.getVehSid();
@ -568,4 +592,44 @@ public class FinVehicleInvoiceService extends MybatisBaseService<FinVehicleInvoi
baseMapper.updateIsLPBySid(sid);
return rb.success();
}
/**
* 查看款票详情
*
* @param contractNo
* @param vinSid
* @return
*/
public ResultBean<FinDeliveredFinVo> deliveredFinSelect(String contractNo, String vinSid) {
ResultBean<FinDeliveredFinVo> rb = ResultBean.fireFail();
FinDeliveredFinVo deliveredFinVo = new FinDeliveredFinVo();
//查询销售订单
ResultBean<AppOrderDetailsVo> resultBean = busSalesOrderFeign.getSaleOrderDetailsByContractNo(contractNo);
AppOrderDetailsVo appOrderDetailsVo = resultBean.getData();
//根据合同号和车辆sid查询车辆
BusSalesOrderVehicle busSalesOrderVehicle = busSalesOrderVehicleFeign.selectByNoAndVinSid(contractNo, vinSid).getData();
if (busSalesOrderVehicle != null) {
deliveredFinVo.setVinNo(busSalesOrderVehicle.getLinkNo());
deliveredFinVo.setPaymentMethod(appOrderDetailsVo.getPayType());
deliveredFinVo.setContractNo(contractNo);
deliveredFinVo.setCustomerName(appOrderDetailsVo.getName());
deliveredFinVo.setModelName(appOrderDetailsVo.getModelInfo().getModelName());
//根据销售订单车辆查询款项情况
ResultBean<ReceiveInvoiceVo> receiveInvoiceVoResultBean = finUncollectedReceivablesDetailedService.receivedSelect(busSalesOrderVehicle.getSid(), busSalesOrderVehicle.getLinkSid());
if (receiveInvoiceVoResultBean.getData() != null) {
List<FinSelectInvoiceVo> finSelectVoList = baseMapper.getFinSelectInvoiceVoListByBusVinSid(busSalesOrderVehicle.getSid());
finSelectVoList.removeAll(Collections.singleton(null));
if (!finSelectVoList.isEmpty()) {
deliveredFinVo.setFinSelectVoList(finSelectVoList);
}
InvoiceVo invoiceVo = receiveInvoiceVoResultBean.getData().getInvoiceVo();
if (invoiceVo != null) {
FinVinInvoiceVo vinInvoiceVo = new FinVinInvoiceVo();
BeanUtil.copyProperties(invoiceVo, vinInvoiceVo);
deliveredFinVo.setVinInvoiceVo(vinInvoiceVo);
}
}
}
return rb.success().setData(deliveredFinVo);
}
}
Loading…
Cancel
Save