Browse Source

优化销售订单相关

master
dimengzhe 1 year ago
parent
commit
0e97f95fc0
  1. 2
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordermodel/BusSalesOrderModelDetailsVo.java
  2. 5
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.java
  3. 12
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml
  4. 17
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java
  5. 10
      anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfinpolicy/LoanFinPolicyFeign.java
  6. 5
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinpolicy/LoanFinPolicyMapper.java
  7. 13
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinpolicy/LoanFinPolicyMapper.xml
  8. 5
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinpolicy/LoanFinPolicyRest.java
  9. 30
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinpolicy/LoanFinPolicyService.java
  10. 3
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/solutions/SolutionsFeign.java
  11. 4
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/solutions/SolutionsRest.java
  12. 4
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/solutions/SolutionsService.java

2
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bussalesordermodel/BusSalesOrderModelDetailsVo.java

@ -54,6 +54,8 @@ import java.util.List;
public class BusSalesOrderModelDetailsVo implements Vo {
private static final long serialVersionUID = -6137096646061858887L;
@ApiModelProperty("车型和配置的关联sid")
private String modelSidAndConfigSid;
@ApiModelProperty("车型sid")
private String modelSid;
@ApiModelProperty("配置sid")

5
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.java

@ -37,6 +37,7 @@ import com.yxt.anrui.buscenter.api.bussalesorder.app.model.AppModelInfoVo;
import com.yxt.anrui.buscenter.api.bussalesorder.app.order.*;
import com.yxt.anrui.buscenter.api.bussalesorder.contract.AppRovalContractPageVo;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTemp;
import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicing;
import com.yxt.anrui.riskcenter.api.loanpreloancreditapply.LoanPreloanCreditApply;
import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutions;
import org.apache.ibatis.annotations.Mapper;
@ -233,7 +234,9 @@ public interface BusSalesOrderMapper extends BaseMapper<BusSalesOrder> {
LoanSolutions seletByOrderSid(String sid);
BaseDistributor selectDis(String affiliatedOrgSid);
FinCompanyInvoicing selectDis(String affiliatedOrgSid);
CrmCustomerTemp selectCrm(String affiliatedOrgSid);
String selectByMcSid(@Param("modelSid") String modelSid, @Param("configSid") String configSid, @Param("useOrgSid") String useOrgSid);
}

12
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml

@ -620,11 +620,19 @@
select * from anrui_riskcenter.loan_solutions where salesOrderSid = #{sid}
</select>
<select id="selectDis" resultType="com.yxt.anrui.base.api.basedistributor.BaseDistributor">
<!-- <select id="selectDis" resultType="com.yxt.anrui.base.api.basedistributor.BaseDistributor">
select * from anrui_base.base_distributor where sid = #{affiliatedOrgSid}
</select>
</select>-->
<select id="selectCrm" resultType="com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTemp">
select * from anrui_crm.crm_customer_temp where sid = #{affiliatedOrgSid}
</select>
<select id="selectDis" resultType="com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicing">
select * from anrui_fin.fin_company_invoicing where sid = #{affiliatedOrgSid}
</select>
<select id="selectByMcSid" resultType="java.lang.String">
select sid from anrui_base.base_vehmodel_config where useOrgSid = #{useOrgSid} and modelSid = #{modelSid} and configurationItemsSid = #{configSid} order by id desc limit 1
</select>
</mapper>

17
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderService.java

@ -136,6 +136,7 @@ import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempVo;
import com.yxt.anrui.crm.api.crmvehicledemand.CrmOrderVo;
import com.yxt.anrui.crm.api.crmvehicledemand.CrmVehicleDemandOrderVo;
import com.yxt.anrui.crm.api.crmvehicledemand.CrmVehicledemandFeign;
import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicing;
import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingDetailsVo;
import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingFeign;
import com.yxt.anrui.fin.api.finuncollectedreceivablesdetailed.FinUncollectedReceivablesDetailed;
@ -486,6 +487,8 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
/*************************************************主车信息*****************************************************/
BusSalesOrderModelDetailsVo busSalesOrderModelDetailsVo = busSalesOrderModelService.details(entity.getSid());
if (busSalesOrderModelDetailsVo != null) {
String modelSidAndConfigSid = baseMapper.selectByMcSid(busSalesOrderModelDetailsVo.getModelSid(),busSalesOrderModelDetailsVo.getModelConfigSid(),vo.getUseOrgSid());
busSalesOrderModelDetailsVo.setModelSidAndConfigSid(modelSidAndConfigSid);
//查询现车车辆
if (BusSalesOrderConstantUtils.TypeEnum.EXISTING_CAR.getCode().equals(entity.getType())) {
if (StringUtils.isNotBlank(entity.getNowCarUnknownVinNum()) && !"0".equals(entity.getNowCarUnknownVinNum())) {
@ -2275,8 +2278,8 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
if ("1".equals(affiliatedType)) {
busSalesOrder.setAffiliatedCompany(dto.getAffiliatedOrgNameChoose());
busSalesOrder.setAffiliatedCompanySid(dto.getAffiliatedOrgSid());
BaseDistributor baseDistributor = baseMapper.selectDis(dto.getAffiliatedOrgSid());
if(baseDistributor == null){
FinCompanyInvoicing finCompanyInvoicing = baseMapper.selectDis(dto.getAffiliatedOrgSid());
if(finCompanyInvoicing == null){
CrmCustomerTemp crmCustomerTemp = baseMapper.selectCrm(dto.getAffiliatedOrgSid());
if(crmCustomerTemp != null){
busSalesOrder.setAffiliatedCompanyType(1);
@ -2361,8 +2364,8 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
if ("1".equals(affiliatedType)) {
busSalesOrder.setAffiliatedCompany(dto.getAffiliatedOrgNameChoose());
busSalesOrder.setAffiliatedCompanySid(dto.getAffiliatedOrgSid());
BaseDistributor baseDistributor = baseMapper.selectDis(dto.getAffiliatedOrgSid());
if(baseDistributor == null){
FinCompanyInvoicing finCompanyInvoicing = baseMapper.selectDis(dto.getAffiliatedOrgSid());
if(finCompanyInvoicing == null){
CrmCustomerTemp crmCustomerTemp = baseMapper.selectCrm(dto.getAffiliatedOrgSid());
if(crmCustomerTemp != null){
busSalesOrder.setAffiliatedCompanyType(1);
@ -2382,7 +2385,8 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
baseMapper.updateCompanySidBySid(dto.getSid());
}
//如果选择的为自有资金的,需要删除金融方案
if ("1".equals(busSalesOrder.getFinancePlan()) || isTrue) {
//补充:01担保、02非担保
if ("1".equals(busSalesOrder.getFinancePlan()) || isTrue || "01".equals(busSalesOrder.getFinancePlan()) || "02".equals(busSalesOrder.getFinancePlan())) {
//删除和该销售订单相关的金融方案
ResultBean deleteResultBean = loanSolutionsFeign.deleteByOrderSid(busSalesOrder.getSid());
}
@ -3279,6 +3283,9 @@ public class BusSalesOrderService extends MybatisBaseService<BusSalesOrderMapper
return rb.setMsg("此销售类型下金融方案不能为空");
}
}
if(StringUtils.isBlank(busSalesOrder.getFinancePlan())){
return rb.setMsg("单据信息中付款方式请选择");
}
return rb.success();
}

10
anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanfinpolicy/LoanFinPolicyFeign.java

@ -64,5 +64,15 @@ public interface LoanFinPolicyFeign {
@RequestParam(value = "modelSid", required = false) String modelSid,
@RequestParam(value = "policySid", required = false) String policySid);
@ApiOperation("已备案的产品政策(分公司,有效期内)")
@GetMapping("selectListss")
ResultBean<List<PolicyVo>> selectListss(@RequestParam("orgPath") String orgPath,
@RequestParam("userSid") String userSid,
@RequestParam("isPack") String isPack,
@RequestParam(value = "name", required = false) String name,
@RequestParam(value = "modelSid", required = false) String modelSid,
@RequestParam(value = "policySid", required = false) String policySid,
@RequestParam(value = "saleOrderSid", required = false) String saleOrderSid);
}

5
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinpolicy/LoanFinPolicyMapper.java

@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder;
import com.yxt.anrui.riskcenter.api.loanfinpolicy.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -28,10 +29,12 @@ public interface LoanFinPolicyMapper extends BaseMapper<LoanFinPolicy> {
AppPolicyDetailsVo getProductInfo(String sid);
List<PolicyVo> selectListOne(@Param("deptSid") String deptSid, @Param("isPack") String isPack, @Param("name") String name, @Param("vehTypeKey") String vehTypeKey, @Param("useOrgSid") String useOrgSid);
List<PolicyVo> selectListOne(@Param("deptSid") String deptSid, @Param("isPack") String isPack, @Param("name") String name, @Param("vehTypeKey") String vehTypeKey, @Param("useOrgSid") String useOrgSid,@Param("typeKeys") String typeKeys);
String selectVehType(String modelSid);
@Update("update loan_fin_policy set isDelete = 1 where sid =#{sid}")
int deleteOne(String sid);
BusSalesOrder selectByOrderSid(String saleOrderSid);
}

13
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinpolicy/LoanFinPolicyMapper.xml

@ -175,6 +175,9 @@
<if test="name != null and name != ''">
and lfp.policyName like concat('%', #{name}, '%')
</if>
<if test="typeKeys != null and typeKeys != ''">
and lfp.guaranteeTypeKey = #{typeKeys}
</if>
union all
select lfp.policyName name,
lfp.sid,
@ -209,7 +212,11 @@
and lfp.riskState = 0
<if test="name != null and name != ''">
and lfp.policyName like concat('%', #{name}, '%')
</if>) a order by a.id desc
</if>
<if test="typeKeys != null and typeKeys != ''">
and lfp.guaranteeTypeKey = #{typeKeys}
</if>
) a order by a.id desc
</select>
<select id="selectVehType" resultType="java.lang.String">
@ -217,4 +224,8 @@
from anrui_base.base_vehicle_model
where sid = #{modelSid}
</select>
<select id="selectByOrderSid" resultType="com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder">
select * from anrui_buscenter.bus_sales_order where sid = #{saleOrderSid}
</select>
</mapper>

5
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinpolicy/LoanFinPolicyRest.java

@ -72,4 +72,9 @@ public class LoanFinPolicyRest implements LoanFinPolicyFeign {
public ResultBean<List<PolicyVo>> selectList(String orgPath, String userSid, String isPack, String name,String modelSid,String policySid) {
return loanFinPolicyService.selectList(orgPath, userSid, isPack, name,modelSid,policySid);
}
@Override
public ResultBean<List<PolicyVo>> selectListss(String orgPath, String userSid, String isPack, String name, String modelSid, String policySid, String saleOrderSid) {
return loanFinPolicyService.selectListss(orgPath, userSid, isPack, name,modelSid,policySid,saleOrderSid);
}
}

30
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanfinpolicy/LoanFinPolicyService.java

@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
@ -710,7 +711,34 @@ public class LoanFinPolicyService extends MybatisBaseService<LoanFinPolicyMapper
String useOrgSid = sysStaffOrgFeign.getOrgSidByPath(orgPath).getData();
String vehTypeKey = baseMapper.selectVehType(modelSid);
String deptSid = Arrays.asList(orgPath.split("/")).get(Arrays.asList(orgPath.split("/")).size() - 1);
List<PolicyVo> list = baseMapper.selectListOne(deptSid, isPack, name, vehTypeKey, useOrgSid);
List<PolicyVo> list = baseMapper.selectListOne(deptSid, isPack, name, vehTypeKey, useOrgSid,"");
list.removeAll(Collections.singleton(null));
if (StringUtils.isNotBlank(policySid)) {
LoanFinPolicy finPolicy = fetchBySid(policySid);
if (null != finPolicy) {
if (StringUtils.isNotBlank(finPolicy.getBankShortName()) && StringUtils.isNotBlank(finPolicy.getGuaranteeTypeKey())) {
String bankShortName = finPolicy.getBankShortName();
String typeKey = finPolicy.getGuaranteeTypeKey();
list = list.stream().filter(obj -> obj.getBankShortName().equals(bankShortName) && obj.getGuaranteeTypeKey().equals(typeKey)).collect(Collectors.toList());
}
}
}
return rb.success().setData(list);
}
public ResultBean<List<PolicyVo>> selectListss(String orgPath, String userSid, String isPack, String name, String modelSid, String policySid,String saleOrderSid) {
ResultBean<List<PolicyVo>> rb = ResultBean.fireFail();
String useOrgSid = sysStaffOrgFeign.getOrgSidByPath(orgPath).getData();
String vehTypeKey = baseMapper.selectVehType(modelSid);
String deptSid = Arrays.asList(orgPath.split("/")).get(Arrays.asList(orgPath.split("/")).size() - 1);
String typeKeys = "";
BusSalesOrder busSalesOrder = baseMapper.selectByOrderSid(saleOrderSid);
if(busSalesOrder != null){
if("2".equals(busSalesOrder.getPayTypeKey())){
typeKeys = busSalesOrder.getFinancePlan();
}
}
List<PolicyVo> list = baseMapper.selectListOne(deptSid, isPack, name, vehTypeKey, useOrgSid,typeKeys);
list.removeAll(Collections.singleton(null));
if (StringUtils.isNotBlank(policySid)) {
LoanFinPolicy finPolicy = fetchBySid(policySid);

3
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/risk/solutions/SolutionsFeign.java

@ -44,7 +44,8 @@ public interface SolutionsFeign {
@RequestParam("isPack") String isPack,
@RequestParam(value = "name", required = false) String name,
@RequestParam(value = "modelSid", required = false) String modelSid,
@RequestParam(value = "policySid", required = false) String policySid);
@RequestParam(value = "policySid", required = false) String policySid,
@RequestParam(value = "saleOrderSid") String saleOrderSid);
@ApiOperation("获取分公司下其他融")
@GetMapping("/selectOtherList")

4
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/solutions/SolutionsRest.java

@ -39,8 +39,8 @@ public class SolutionsRest implements SolutionsFeign {
}
@Override
public ResultBean<List<PolicysVo>> selectList(String orgPath, String userSid, String isPack, String name,String modelSid,String policySid) {
return solutionsService.selectList(orgPath, userSid, isPack, name,modelSid,policySid);
public ResultBean<List<PolicysVo>> selectList(String orgPath, String userSid, String isPack, String name,String modelSid,String policySid,String saleOrderSid) {
return solutionsService.selectList(orgPath, userSid, isPack, name,modelSid,policySid,saleOrderSid);
}
@Override

4
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/risk/solutions/SolutionsService.java

@ -57,10 +57,10 @@ public class SolutionsService {
return rb.success().setData(appSolutionsDetailsVo).setCode(resultBean.getCode());
}
public ResultBean<List<PolicysVo>> selectList(String orgPath, String userSid, String isPack, String name, String modelSid, String policySid) {
public ResultBean<List<PolicysVo>> selectList(String orgPath, String userSid, String isPack, String name, String modelSid, String policySid,String saleOrderSid) {
ResultBean<List<PolicysVo>> rb = ResultBean.fireFail();
List<PolicysVo> listNew = new ArrayList<>();
ResultBean<List<PolicyVo>> resultBean = loanFinPolicyFeign.selectList(orgPath, userSid, isPack, name, modelSid, policySid);
ResultBean<List<PolicyVo>> resultBean = loanFinPolicyFeign.selectListss(orgPath, userSid, isPack, name, modelSid, policySid,saleOrderSid);
if (resultBean.getData() != null && !resultBean.getData().isEmpty()) {
List<PolicyVo> list = resultBean.getData();
list.removeAll(Collections.singleton(null));

Loading…
Cancel
Save