Browse Source

未出库车辆已认款项列表

master
God 2 years ago
parent
commit
fa3ad3733a
  1. 6
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleout/BaseVehicleOutDto.java
  2. 44
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finselectedreceivablesdetailed/FinSelectReceivablesDetailedWCKCLRKVo.java
  3. 4
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedFeign.java
  4. 5
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedFeignFallback.java
  5. 42
      anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finselectedreceivablesdetailed/FinSelectedReceivablesPaymentDetailsWCKCLRKQuery.java
  6. 7
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedMapper.java
  7. 33
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedMapper.xml
  8. 8
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedRest.java
  9. 104
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedService.java

6
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleout/BaseVehicleOutDto.java

@ -75,7 +75,7 @@ public class BaseVehicleOutDto implements Dto {
@ApiModelProperty("中介人2编码")
private String middleCodeTwo;
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
private String createOrgSid;
@ApiModelProperty("上装/挂车物料分组code")
private String trailerOrInstallMGroupCode;
@ -95,10 +95,10 @@ public class BaseVehicleOutDto implements Dto {
private String totalDealPrice;
@ApiModelProperty("单据编号")
private String billNo; // 单据编号
private String billNo;
@ApiModelProperty("是否要修改客户")
private String isUpdateOrInsertCrm; // 是否要修改客户
private String isUpdateOrInsertCrm;
@ApiModelProperty("财务中客户编码")
private String cwCustomerNo;

44
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finselectedreceivablesdetailed/FinSelectReceivablesDetailedWCKCLRKVo.java

@ -0,0 +1,44 @@
package com.yxt.anrui.fin.api.finselectedreceivablesdetailed;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @description: 已认款项列表
* @author: dimengzhe
* @date: 2023/6/29
**/
@Data
public class FinSelectReceivablesDetailedWCKCLRKVo implements Vo {
@ApiModelProperty("当前行sid")
private String sid;
@ApiModelProperty("分公司sid")
private String useOrgSid;
@ApiModelProperty("分公司名称")
private String useOrgName;
@ApiModelProperty("销售专员部门名称")
private String staffDeptName;
@ApiModelProperty("销售专员名称")
private String staffName;
@ApiModelProperty("合同编号")
private String contractNo;
@ApiModelProperty("全款贷款")
private String payType;
@ApiModelProperty("客户名称")
private String customerName;
@ApiModelProperty("联系电话")
private String customerPhone;
@ApiModelProperty("车架号")
private String vinNo;
@ApiModelProperty("应收项目名称")
private String receivablesName;
@ApiModelProperty("认款日期")
private String auditDate;
@ApiModelProperty("认款金额")
private String subscriptionMoney;
@ApiModelProperty("剩余金额")
private String reveivableMoney;
}

4
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedFeign.java

@ -83,4 +83,8 @@ public interface FinSelectedReceivablesDetailedFeign {
@ApiOperation("选择已认款项")
@PostMapping("/selectPageList")
ResultBean<PagerVo<FinSelectReceivablesDetailedVo>> selectPageList(@RequestBody PagerQuery<FinSelectedReceivablesPaymentDetailsQuery> pagerQuery);
@ApiOperation("未出库车辆已认款项列表")
@PostMapping("/noOutVehRecPageList")
ResultBean<PagerVo<FinSelectReceivablesDetailedWCKCLRKVo>> noOutVehRecPageList(@RequestBody PagerQuery<FinSelectedReceivablesPaymentDetailsWCKCLRKQuery> pagerQuery);
}

5
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedFeignFallback.java

@ -83,4 +83,9 @@ public class FinSelectedReceivablesDetailedFeignFallback implements FinSelectedR
return null;
}
@Override
public ResultBean<PagerVo<FinSelectReceivablesDetailedWCKCLRKVo>> noOutVehRecPageList(PagerQuery<FinSelectedReceivablesPaymentDetailsWCKCLRKQuery> pagerQuery) {
return null;
}
}

42
anrui-fin/anrui-fin-api/src/main/java/com/yxt/anrui/fin/api/finselectedreceivablesdetailed/FinSelectedReceivablesPaymentDetailsWCKCLRKQuery.java

@ -0,0 +1,42 @@
package com.yxt.anrui.fin.api.finselectedreceivablesdetailed;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @description: 已认款查询
* @author: dimengzhe
* @date: 2023/6/29
**/
@Data
public class FinSelectedReceivablesPaymentDetailsWCKCLRKQuery implements Query {
@ApiModelProperty("销售专员部门名称")
private String staffDeptName;
@ApiModelProperty("销售专员名称")
private String staffName;
@ApiModelProperty("合同编号")
private String contractNo;
@ApiModelProperty("客户名称")
private String customerName;
@ApiModelProperty("联系电话")
private String mobile;
@ApiModelProperty("车架号")
private String vinNo;
@ApiModelProperty("可用最小金额")
private String balanceSmallMoney;
@ApiModelProperty("可用最大金额")
private String balanceBigMoney;
@ApiModelProperty("用户sid")
private String userSid;
@ApiModelProperty("机构sid")
private String orgPath;
private String menuUrl;
private String menuSid;
@ApiModelProperty("移动端查询条件")
private String name;
}

7
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedMapper.java

@ -33,10 +33,7 @@ import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.anrui.fin.api.fincollectionconfirmation.AppFinSelectedReceivablesPaymentDetailsQuery;
import com.yxt.anrui.fin.api.fincollectionconfirmation.AppFinSelectedReceivablesPaymentDetailsVo;
import com.yxt.anrui.fin.api.fincollectionconfirmation.app.AppBusArrearsCarryMoneyVo;
import com.yxt.anrui.fin.api.finselectedreceivablesdetailed.FinSelectReceivablesDetailedVo;
import com.yxt.anrui.fin.api.finselectedreceivablesdetailed.FinSelectedReceivablesDetailed;
import com.yxt.anrui.fin.api.finselectedreceivablesdetailed.FinSelectedReceivablesDetailedVo;
import com.yxt.anrui.fin.api.finselectedreceivablesdetailed.SelectCustomerVo;
import com.yxt.anrui.fin.api.finselectedreceivablesdetailed.*;
import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.AppFinUncollectedReceivablesDetailedVo;
import org.apache.ibatis.annotations.*;
@ -153,4 +150,6 @@ public interface FinSelectedReceivablesDetailedMapper extends BaseMapper<FinSele
List<String> selectUnSelectList(@Param("purchaseSystemSid") String purchaseSystemSid, @Param("userSid") String userSid, @Param("useOrgSid") String useOrgSid);
List<FinSelectReceivablesDetailedVo> selectPageList(@Param(Constants.WRAPPER) QueryWrapper<AppFinUncollectedReceivablesDetailedVo> qw, @Param("name") String name);
IPage<FinSelectReceivablesDetailedWCKCLRKVo> noOutVehRecPageList(IPage<FinSelectedReceivablesDetailed> page, @Param(Constants.WRAPPER)QueryWrapper<FinSelectReceivablesDetailedWCKCLRKVo> qw);
}

33
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedMapper.xml

@ -282,8 +282,12 @@
</select>
<select id="selectUnSelectList" resultType="java.lang.String">
select sid from fin_uncollected_receivables_detailed where currentReceivableMoney>0
and useOrgSid = #{useOrgSid} and createBySid = #{userSid} AND purchaseSystemSid = #{purchaseSystemSid}
select sid
from fin_uncollected_receivables_detailed
where currentReceivableMoney > 0
and useOrgSid = #{useOrgSid}
and createBySid = #{userSid}
AND purchaseSystemSid = #{purchaseSystemSid}
</select>
<select id="selectPageList"
@ -315,4 +319,29 @@
</if>
</where>
</select>
<select id="noOutVehRecPageList"
resultType="com.yxt.anrui.fin.api.finselectedreceivablesdetailed.FinSelectReceivablesDetailedWCKCLRKVo">
SELECT
fcc.`useOrgSid`,
fcc.`staffDeptName`,
fcc.`staffName`,
ferd.`contractNo`,
ferd.`payType`,
ferd.`customerName`,
ferd.`customerPhone`,
ferd.`VIN` AS vinNo,
ferd.`receivablesName`,
ferd.`auditDate`,
ferd.`subscriptionMoney`
FROM
fin_selected_receivables_detailed ferd
LEFT JOIN fin_collection_confirmation fcc
ON ferd.`collSid` = fcc.`sid`
LEFT JOIN anrui_base.`base_vehicle` bv
ON ferd.`VIN` = bv.`vinNo` AND fcc.`useOrgSid` = bv.`createOrgSid`
<where>
${ew.sqlSegment}
</where>
</select>
</mapper>

8
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedRest.java

@ -26,6 +26,7 @@
package com.yxt.anrui.fin.biz.finselectedreceivablesdetailed;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.fin.api.fincollectionconfirmation.FinCollectionConfirmationJYDDKYDJVo;
import com.yxt.anrui.fin.api.finselectedreceivablesdetailed.*;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
@ -105,4 +106,11 @@ public class FinSelectedReceivablesDetailedRest implements FinSelectedReceivable
return new ResultBean<PagerVo<FinSelectReceivablesDetailedVo>>().success().setData(pagerVo);
}
@Override
public ResultBean<PagerVo<FinSelectReceivablesDetailedWCKCLRKVo>> noOutVehRecPageList(PagerQuery<FinSelectedReceivablesPaymentDetailsWCKCLRKQuery> pagerQuery) {
ResultBean rb = ResultBean.fireFail();
PagerVo<FinSelectReceivablesDetailedWCKCLRKVo> pv = finSelectedReceivablesDetailedService.noOutVehRecPageList(pagerQuery);
return rb.success().setData(pv);
}
}

104
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finselectedreceivablesdetailed/FinSelectedReceivablesDetailedService.java

@ -29,14 +29,20 @@ import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yxt.anrui.base.common.enums.VehicleState;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign;
import com.yxt.anrui.fin.api.fincollectionconfirmation.AppFinSelectedReceivablesPaymentDetailsQuery;
import com.yxt.anrui.fin.api.fincollectionconfirmation.AppFinSelectedReceivablesPaymentDetailsVo;
import com.yxt.anrui.fin.api.fincollectionconfirmation.FinCollectionConfirmation;
import com.yxt.anrui.fin.api.fincollectionconfirmation.FinCollectionConfirmationJYDDKYDJVo;
import com.yxt.anrui.fin.api.fincollectionconfirmation.app.AppBusArrearsCarryMoneyVo;
import com.yxt.anrui.fin.api.finselectedreceivablesdetailed.*;
import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.AppFinUncollectedReceivablesDetailedVo;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
@ -71,6 +77,10 @@ public class FinSelectedReceivablesDetailedService extends MybatisBaseService<Fi
private SysStaffOrgFeign sysStaffOrgFeign;
@Autowired
private BusSalesOrderVehicleFeign busSalesOrderVehicleFeign;
@Autowired
private SysUserFeign sysUserFeign;
@Autowired
private SysOrganizationFeign sysOrganizationFeign;
public PagerVo<FinSelectedReceivablesDetailed> listPage(PagerQuery<FinSelectedReceivablesDetailedQuery> pq) {
FinSelectedReceivablesDetailedQuery query = pq.getParams();
@ -362,13 +372,13 @@ public class FinSelectedReceivablesDetailedService extends MybatisBaseService<Fi
for (FinSelectReceivablesDetailedVo record : collList) {
BigDecimal currentMoney = new BigDecimal(record.getCurrentReceivableMoney());
BigDecimal subscriptionMoney = new BigDecimal(record.getSubscriptionMoney());
if(currentMoney.compareTo(BigDecimal.ZERO)<=0){
if (currentMoney.compareTo(BigDecimal.ZERO) <= 0) {
record.setReveivableMoney("0");
}else{
} else {
BigDecimal bigDecimal1 = currentMoney.subtract(subscriptionMoney);
if(bigDecimal1.compareTo(BigDecimal.ZERO)<=0){
if (bigDecimal1.compareTo(BigDecimal.ZERO) <= 0) {
record.setReveivableMoney("0");
}else{
} else {
record.setReveivableMoney(bigDecimal1.toString());
}
}
@ -398,13 +408,13 @@ public class FinSelectedReceivablesDetailedService extends MybatisBaseService<Fi
for (FinSelectReceivablesDetailedVo record : collList) {
BigDecimal currentMoney = new BigDecimal(record.getCurrentReceivableMoney());
BigDecimal subscriptionMoney = new BigDecimal(record.getSubscriptionMoney());
if(currentMoney.compareTo(BigDecimal.ZERO)<=0){
if (currentMoney.compareTo(BigDecimal.ZERO) <= 0) {
record.setReveivableMoney("0");
}else{
} else {
BigDecimal bigDecimal1 = currentMoney.subtract(subscriptionMoney);
if(bigDecimal1.compareTo(BigDecimal.ZERO)<=0){
if (bigDecimal1.compareTo(BigDecimal.ZERO) <= 0) {
record.setReveivableMoney("0");
}else{
} else {
record.setReveivableMoney(bigDecimal1.toString());
}
}
@ -446,4 +456,82 @@ public class FinSelectedReceivablesDetailedService extends MybatisBaseService<Fi
page1.setSize(pagerQuery.getSize());
return page1;
}
public PagerVo<FinSelectReceivablesDetailedWCKCLRKVo> noOutVehRecPageList(PagerQuery<FinSelectedReceivablesPaymentDetailsWCKCLRKQuery> pagerQuery) {
FinSelectedReceivablesPaymentDetailsWCKCLRKQuery query = pagerQuery.getParams();
QueryWrapper<FinSelectReceivablesDetailedWCKCLRKVo> qw = new QueryWrapper<>();
//========================================数据授权开始
if (StringUtils.isNotBlank(query.getMenuUrl()) || StringUtils.isNotBlank(query.getMenuSid())) {
//=======================
PrivilegeQuery privilegeQuery = new PrivilegeQuery();
privilegeQuery.setOrgPath(query.getOrgPath());
privilegeQuery.setMenuUrl(query.getMenuUrl());
privilegeQuery.setMenuSid(query.getMenuSid());
privilegeQuery.setUserSid(query.getUserSid());
ResultBean<String> defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery);
if (StringUtils.isNotBlank(defaultIdReltBean.getData())) {
//数据权限ID(1集团、2事业部、3分公司、4部门、5个人)
String orgSidPath = query.getOrgPath();
orgSidPath = orgSidPath + "/";
int i1 = orgSidPath.indexOf("/");
int i2 = orgSidPath.indexOf("/", i1 + 1);
int i3 = orgSidPath.indexOf("/", i2 + 1);
int i4 = orgSidPath.indexOf("/", i3 + 1);
String orgLevelKey = defaultIdReltBean.getData();
if ("1".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i1);
qw.like("fcc.orgSidPath", orgSidPath);
} else if ("2".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i2);
qw.like("fcc.orgSidPath", orgSidPath);
} else if ("3".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i3);
qw.like("fcc.orgSidPath", orgSidPath);
} else if ("4".equals(orgLevelKey)) {
orgSidPath = orgSidPath.substring(0, i4);
qw.like("fcc.orgSidPath", orgSidPath);
} else if ("5".equals(orgLevelKey)) {
qw.eq("fcc.createBySid", query.getUserSid());
} else {
PagerVo<FinSelectReceivablesDetailedWCKCLRKVo> p = new PagerVo<>();
return p;
}
} else {
PagerVo<FinSelectReceivablesDetailedWCKCLRKVo> p = new PagerVo<>();
return p;
}
}
qw.eq("ferd.auditState", 3);
qw.ne("bv.vehicleState", VehicleState.StockEnum.OUT_STOCK.getCode());
if (StringUtils.isNotBlank(query.getStaffDeptName())){
qw.like("fcc.staffDeptName",query.getStaffDeptName());
}
if (StringUtils.isNotBlank(query.getStaffName())){
qw.like("fcc.staffName",query.getStaffName());
}
if (StringUtils.isNotBlank(query.getContractNo())){
qw.like("ferd.contractNo",query.getContractNo());
}
if (StringUtils.isNotBlank(query.getCustomerName())){
qw.like("ferd.customerName",query.getCustomerName());
}
if (StringUtils.isNotBlank(query.getMobile())){
qw.like("ferd.customerPhone",query.getMobile());
}
if (StringUtils.isNotBlank(query.getVinNo())){
qw.like("ferd.VIN",query.getVinNo());
}
String balanceSmallMoney = query.getBalanceSmallMoney();
String balanceBigMoney = query.getBalanceBigMoney();
//TODO 缺少可用余额查询条件
IPage<FinSelectedReceivablesDetailed> page = PagerUtil.queryToPage(pagerQuery);
IPage<FinSelectReceivablesDetailedWCKCLRKVo> pagging = baseMapper.noOutVehRecPageList(page, qw);
for (FinSelectReceivablesDetailedWCKCLRKVo record : pagging.getRecords()) {
String useOrgSid = record.getUseOrgSid();
String useOrgName = sysOrganizationFeign.fetchBySid(useOrgSid).getData().getName();
record.setUseOrgName(useOrgName);
}
PagerVo<FinSelectReceivablesDetailedWCKCLRKVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
}
Loading…
Cancel
Save