Browse Source

Merge remote-tracking branch 'origin/master'

master
yunuo970428 2 months ago
parent
commit
f0cbe3c194
  1. 29
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchase.java
  2. 1
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleoutapply/VehicleCustomerVo.java
  3. 49
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehmodelconfig/BaseVehmodelConfig.java
  4. 193
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseinternalpurchase/BaseInternalPurchaseRest.java
  5. 18
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseinternalpurchase/BaseInternalPurchaseService.java
  6. 2
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleMapper.xml
  7. 4
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleoutapply/BaseVehicleOutApplyMapper.xml
  8. 10
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdeliveredapply/BusDeliveredApplyService.java
  9. 7
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java
  10. 14
      anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentapply/FinPaymentapplyService.java
  11. 5
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loandiff/LoanDiffService.java
  12. 19
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanmonthlyaccrualapply/LoanMonthlyAccrualApplyService.java
  13. 279
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentschedule/LoanRepaymentScheduleService.java
  14. 9
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmapplyinbound/ScmApplyInboundService.java
  15. 6
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml
  16. 47
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleenterlibrary/ScmVehicleEnterlibraryService.java
  17. 3
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.xml
  18. 15
      yxt-base-biz/src/main/java/com/yxt/base/apiadmin/base/BaseGoodsSpuRest.java
  19. 281
      yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodsspu/BaseGoodsSpuService.java
  20. 22
      yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodsspu/ImportDataVo.java
  21. 14
      yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodsspu/ReturnImportMsg.java
  22. 2
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaForm.java

29
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchase.java

@ -31,36 +31,23 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: anrui-base(内申请管理) <br/>
* File: BaseInternalPurchase.java <br/>
* Class: com.yxt.anrui.base.api.baseinternalpurchase.BaseInternalPurchase <br/>
* Description: 内购表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-06-16 13:46:25 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Data
@ApiModel(value = "内购表", description = "内购表")
@TableName("base_internal_purchase")
public class BaseInternalPurchase extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("申请编号")
@ApiModelProperty("申请编号")
private String applyNo; // 申请编号
@ApiModelProperty("申请人姓名")
@ApiModelProperty("申请人姓名")
private String applyPeoName; // 申请人姓名
@ApiModelProperty("调入分公司sid")
@ApiModelProperty("调入分公司sid")
private String buyerOrgSid; // 调入分公司sid
@ApiModelProperty("调入分公司名称")
@ApiModelProperty("调入分公司名称")
private String buyerOrgName; // 调入分公司名称
@ApiModelProperty("调出分公司sid")
@ApiModelProperty("调出分公司sid")
private String sellerOrgSid; // 调出分公司sid
@ApiModelProperty("调出分公司名称")
@ApiModelProperty("调出分公司名称")
private String sellerOrgName; // 调出分公司名称
@ApiModelProperty("调车类型key")
private String shuntingTypeKey; // 调车类型key
@ -68,9 +55,9 @@ public class BaseInternalPurchase extends BaseEntity {
private String shuntingTypeValue; // 调车类型value
@ApiModelProperty("车辆数量")
private String num; // 车辆数量
@ApiModelProperty("使用组织sid")
@ApiModelProperty("使用组织sid")
private String useOrgSid; // 使用组织sid
@ApiModelProperty("创建组织sid")
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty("流程定义的id")
private String procDefId;

1
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleoutapply/VehicleCustomerVo.java

@ -8,5 +8,6 @@ public class VehicleCustomerVo {
private String customerSid;
private String saleDate;
private String useOrgName;
private String orderSid;
}

49
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehmodelconfig/BaseVehmodelConfig.java

@ -30,54 +30,31 @@ import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.math.BigDecimal;
/**
* Project: anrui-base(车型信息) <br/>
* File: BaseVehmodelConfig.java <br/>
* Class: com.yxt.anrui.base.api.basevehmodelconfig.BaseVehmodelConfig <br/>
* Description: 车型与简述配置关联表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-01-15 10:51:33 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@ApiModel(value = "车型与简述配置关联表", description = "车型与简述配置关联表")
@Data
@TableName("base_vehmodel_config")
public class BaseVehmodelConfig extends BaseEntity {
private static final long serialVersionUID = 1L;
@ApiModelProperty("车型sid")
@ApiModelProperty("车型sid")
private String modelSid; // 车型sid
@ApiModelProperty("简述配置sid")
@ApiModelProperty("简述配置sid")
private String configurationItemsSid; // 简述配置sid
@ApiModelProperty("厂家结算价")
@ApiModelProperty("厂家结算价")
private BigDecimal manufactorSettlementPrice; // 厂家结算价
@ApiModelProperty("销售参考价")
@ApiModelProperty("销售参考价")
private BigDecimal salesReferencePrice; // 销售参考价
@ApiModelProperty("价格有效期")
@ApiModelProperty("价格有效期")
private String priceValidity; // 价格有效期
@ApiModelProperty("销售指导价")
private BigDecimal guidedPrice; // 销售指导价
@ApiModelProperty(value = "是否常用车型")
private Integer isCommonModel;
@ApiModelProperty(value = "使用组织sid(分公司)")
private String useOrgSid;
@ApiModelProperty(value = "内部编码")
private String insideCode;
@ApiModelProperty("销售指导价")
private BigDecimal guidedPrice; // 销售指导价
@ApiModelProperty(value = "是否常用车型")
private Integer isCommonModel;
@ApiModelProperty(value = "使用组织sid(分公司)")
private String useOrgSid;
@ApiModelProperty(value = "内部编码")
private String insideCode;
}

193
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseinternalpurchase/BaseInternalPurchaseRest.java

@ -44,114 +44,101 @@ import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* Project: anrui-base(内申请管理) <br/>
* File: BaseInternalPurchaseFeignFallback.java <br/>
* Class: com.yxt.anrui.base.biz.baseinternalpurchase.BaseInternalPurchaseRest <br/>
* Description: 内购表. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-06-16 13:46:25 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Api(tags = "内购表")
@RestController("com.yxt.anrui.base.biz.baseinternalpurchase.BaseInternalPurchaseRest")
@RestController
@RequestMapping("v1/baseinternalpurchase")
public class BaseInternalPurchaseRest implements BaseInternalPurchaseFeign {
@Autowired
private BaseInternalPurchaseService baseInternalPurchaseService;
@Override
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<BaseInternalPurchaseVo>> listPage(@RequestBody PagerQuery<BaseInternalPurchaseQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<BaseInternalPurchaseVo> pv = baseInternalPurchaseService.listPageVo(pq);
return rb.success().setData(pv);
}
@Override
@ApiOperation("新增或修改")
@PostMapping("/save")
public ResultBean save(@RequestBody BaseInternalPurchaseDto dto){
return baseInternalPurchaseService.saveAll(dto);
}
@Override
@ApiOperation("根据sid批量删除")
@Autowired
private BaseInternalPurchaseService baseInternalPurchaseService;
@Override
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<BaseInternalPurchaseVo>> listPage(@RequestBody PagerQuery<BaseInternalPurchaseQuery> pq) {
ResultBean rb = ResultBean.fireFail();
PagerVo<BaseInternalPurchaseVo> pv = baseInternalPurchaseService.listPageVo(pq);
return rb.success().setData(pv);
}
@Override
@ApiOperation("新增或修改")
@PostMapping("/save")
public ResultBean save(@RequestBody BaseInternalPurchaseDto dto) {
return baseInternalPurchaseService.saveAll(dto);
}
@Override
@ApiOperation("根据sid批量删除")
@DeleteMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids){
return baseInternalPurchaseService.delAll(sids);
}
public ResultBean delBySids(@RequestBody String[] sids) {
return baseInternalPurchaseService.delAll(sids);
}
@Override
@ApiOperation("根据SID获取一条记录")
@Override
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchDetailsBySid/{sid}")
public ResultBean<BaseInternalPurchaseDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid){
return baseInternalPurchaseService.fetchDetailsVoBySid(sid);
}
@Override
public ResultBean submitBaseInternalPurchase(SubmitBaseInterNalPurchaseDto dto) {
return baseInternalPurchaseService.submitBaseInternalPurchase(dto);
}
@Override
public ResultBean complete(BaseInterNalPurchaseCompleteDto bvd) {
BusinessVariables bv=new BusinessVariables();
BeanUtil.copyProperties(bvd,bv);
//bv.setFormVariables(BeanUtil.beanToMap(bvd));
bv.setModelId(ProcDefEnum.BASEINTERNALPURCHASE.getProDefId());
return baseInternalPurchaseService.complete(bv);
}
@Override
public ResultBean InitiatorToAnswer(BaseInterNalPurchaseCompleteDto bvd) {
BusinessVariables bv=new BusinessVariables();
BeanUtil.copyProperties(bvd,bv);
bv.setModelId(ProcDefEnum.BASEINTERNALPURCHASE.getProDefId());
return baseInternalPurchaseService.InitiatorToAnswer(bv,bvd.getId());
}
@Override
public ResultBean companyToDivisionOperate(BaseInterNalPurchaseCompleteDto bvd) {
BusinessVariables bv=new BusinessVariables();
BeanUtil.copyProperties(bvd,bv);
bv.setModelId(ProcDefEnum.BASEINTERNALPURCHASE.getProDefId());
return baseInternalPurchaseService.companyToDivisionOperate(bv);
}
@Override
public ResultBean<List<GetNodeVo>> getNextNodesForSubmit(GetNextNodeDto gnnd) {
return baseInternalPurchaseService.getNextNodesForSubmit(gnnd);
}
@Override
public ResultBean<List<GetNodeVo>> getPreviousNodesForReject(GetNextNodeDto gnnd) {
return baseInternalPurchaseService.getPreviousNodesForReject(gnnd);
}
@Override
public ResultBean taskReject(BaseInterNalPurchaseTaskQuery query) {
return baseInternalPurchaseService.taskReject(query);
}
@Override
public ResultBean revokeProcess(BaseInterNalPurchaseTaskQuery query) {
return baseInternalPurchaseService.revokeProcess(query);
}
@Override
public ResultBean breakProcess(BaseInterNalPurchaseTaskQuery query) {
return baseInternalPurchaseService.breakProcess(query);
}
@Override
public ResultBean<AppCompanyShuntingVo> getCompanyShunting(String sid) {
return baseInternalPurchaseService.getCompanyShunting(sid);
}
public ResultBean<BaseInternalPurchaseDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid) {
return baseInternalPurchaseService.fetchDetailsVoBySid(sid);
}
@Override
public ResultBean submitBaseInternalPurchase(SubmitBaseInterNalPurchaseDto dto) {
return baseInternalPurchaseService.submitBaseInternalPurchase(dto);
}
@Override
public ResultBean complete(BaseInterNalPurchaseCompleteDto bvd) {
BusinessVariables bv = new BusinessVariables();
BeanUtil.copyProperties(bvd, bv);
//bv.setFormVariables(BeanUtil.beanToMap(bvd));
bv.setModelId(ProcDefEnum.BASEINTERNALPURCHASE.getProDefId());
return baseInternalPurchaseService.complete(bv);
}
@Override
public ResultBean InitiatorToAnswer(BaseInterNalPurchaseCompleteDto bvd) {
BusinessVariables bv = new BusinessVariables();
BeanUtil.copyProperties(bvd, bv);
bv.setModelId(ProcDefEnum.BASEINTERNALPURCHASE.getProDefId());
return baseInternalPurchaseService.InitiatorToAnswer(bv, bvd.getId());
}
@Override
public ResultBean companyToDivisionOperate(BaseInterNalPurchaseCompleteDto bvd) {
BusinessVariables bv = new BusinessVariables();
BeanUtil.copyProperties(bvd, bv);
bv.setModelId(ProcDefEnum.BASEINTERNALPURCHASE.getProDefId());
return baseInternalPurchaseService.companyToDivisionOperate(bv);
}
@Override
public ResultBean<List<GetNodeVo>> getNextNodesForSubmit(GetNextNodeDto gnnd) {
return baseInternalPurchaseService.getNextNodesForSubmit(gnnd);
}
@Override
public ResultBean<List<GetNodeVo>> getPreviousNodesForReject(GetNextNodeDto gnnd) {
return baseInternalPurchaseService.getPreviousNodesForReject(gnnd);
}
@Override
public ResultBean taskReject(BaseInterNalPurchaseTaskQuery query) {
return baseInternalPurchaseService.taskReject(query);
}
@Override
public ResultBean revokeProcess(BaseInterNalPurchaseTaskQuery query) {
return baseInternalPurchaseService.revokeProcess(query);
}
@Override
public ResultBean breakProcess(BaseInterNalPurchaseTaskQuery query) {
return baseInternalPurchaseService.breakProcess(query);
}
@Override
public ResultBean<AppCompanyShuntingVo> getCompanyShunting(String sid) {
return baseInternalPurchaseService.getCompanyShunting(sid);
}
}

18
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseinternalpurchase/BaseInternalPurchaseService.java

@ -41,7 +41,6 @@ import com.yxt.anrui.base.api.baseinternalpurchasevehicle.BaseInternalPurchaseVe
import com.yxt.anrui.base.api.baseinternalpurchasevehicle.BaseInternalPurchaseVehicleVo;
import com.yxt.anrui.base.api.baseoutsourcingapplication.GetNextNodeDto;
import com.yxt.anrui.base.api.basevehicle.BaseVehicle;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleVo;
import com.yxt.anrui.base.api.basevehmodelconfig.BaseVehmodelConfig;
import com.yxt.anrui.base.api.basevehmodelconfig.BaseVehmodelVo;
import com.yxt.anrui.base.biz.baseinternalpurchasevehicle.BaseInternalPurchaseVehicleService;
@ -86,25 +85,11 @@ import com.yxt.messagecenter.api.message.MessageFlowableQuery;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.*;
import java.util.concurrent.*;
import java.util.stream.Collectors;
/**
* Project: anrui-base(内申请管理) <br/>
* File: BaseInternalPurchaseService.java <br/>
* Class: com.yxt.anrui.base.biz.baseinternalpurchase.BaseInternalPurchaseService <br/>
* Description: 内购表 业务逻辑. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-06-16 13:46:25 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Service
public class BaseInternalPurchaseService extends MybatisBaseService<BaseInternalPurchaseMapper, BaseInternalPurchase> {
@ -559,6 +544,8 @@ public class BaseInternalPurchaseService extends MybatisBaseService<BaseInternal
baseVehmodelConfig.setConfigurationItemsSid(configSid);
baseVehmodelConfig.setUseOrgSid(buyerOrgSid);
baseVehmodelConfig.setGuidedPrice(new BigDecimal(booad.getGuidedPrice()));
baseVehmodelConfig.setManufactorSettlementPrice(new BigDecimal(booad.getGuidedPrice()));
baseVehmodelConfig.setInsideCode(baseVehicle.getInsideCode());
baseVehmodelConfigService.save(baseVehmodelConfig);
}
} else if (baseInternalPurchase.getShuntingTypeValue().equals("调出")) {
@ -572,6 +559,7 @@ public class BaseInternalPurchaseService extends MybatisBaseService<BaseInternal
baseVehmodelConfig.setConfigurationItemsSid(configSid);
baseVehmodelConfig.setUseOrgSid(buyerOrgSid);
baseVehmodelConfig.setGuidedPrice(new BigDecimal(booad.getGuidedPrice()));
baseVehmodelConfig.setManufactorSettlementPrice(new BigDecimal(booad.getGuidedPrice()));
baseVehmodelConfig.setInsideCode(baseVehicle.getInsideCode());
baseVehmodelConfigService.save(baseVehmodelConfig);
}

2
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleMapper.xml

@ -1219,7 +1219,7 @@
<select id="selVehicleByVinNo" resultType="com.yxt.anrui.base.api.basevehicle.BaseVehicleVo">
SELECT *
FROM base_vehicle bv
WHERE vinNo = #{vinNo}
WHERE vinNo like concat('%', #{vinNo}, '%')
AND isDelete = 0
AND vehicleState != "0004"
</select>

4
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleoutapply/BaseVehicleOutApplyMapper.xml

@ -82,10 +82,12 @@
SELECT
date_format (o.createTime,'%Y-%m-%d') saleDate,
a.customerSid,
s.`name` useOrgName
s.`name` useOrgName,
so.sid as orderSid
FROM
base_vehicle_out AS o
LEFT JOIN base_vehicle_out_apply AS a ON o.mainSid = a.sid
LEFT JOIN anrui_buscenter.bus_sales_order AS so ON so.contractNo = a.contractNo
LEFT JOIN anrui_portal.sys_organization AS s ON s.sid = a.createOrgSid
WHERE o.isDelete = '0' AND o.vinNo LIKE CONCAT( '%', #{vinNo}, '%' )
</select>

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

@ -176,6 +176,8 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.time.YearMonth;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.concurrent.*;
import java.util.stream.Collectors;
@ -1191,7 +1193,7 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
SolutionsDetailsVo solutionsDetailsVo = loanSolutionsFeign.selectDetailsss(saleOrderSid).getData();
if (solutionsDetailsVo != null) {
//三方金融的,在出库时推送单车返利数据,金额为厂家贴息。
if(!"0".equals(solutionsDetailsVo.getFactoryDiscount())){
if (!"0".equals(solutionsDetailsVo.getFactoryDiscount())) {
if ("2".equals(busSalesOrder.getFinancePlan())) {
Future future11 = pool.submit(() -> {
pushVehRebate(busDeliveredApply, detailsList, solutionsDetailsVo.getFactoryDiscount());
@ -1445,7 +1447,9 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
scmVehRebateVehDto.setEstimateRebate(factoryDiscount);
scmVehRebateVehDto.setPurchaseSystemSid(baseVehicle.getPurchaseSystemSid());
scmVehRebateVehDto.setPurchaseSystemName(baseVehicle.getPurchaseSystemName());
scmVehRebateVehDto.setWithholdingDate(DateUtil.format(new Date(), "yyyy-MM"));
//预提日期
String dateStr = YearMonth.now().format(DateTimeFormatter.ofPattern("yyyy年M月"));
scmVehRebateVehDto.setWithholdingDate(dateStr);
scmVehRebateVehDtos.add(scmVehRebateVehDto);
scmVehRebateDto.setScmVehRebateVehs(scmVehRebateVehDtos);
scmVehRebateFeign.save(scmVehRebateDto);
@ -1684,7 +1688,7 @@ public class BusDeliveredApplyService extends MybatisBaseService<BusDeliveredApp
SolutionsDetailsVo solutionsDetailsVo = loanSolutionsFeign.selectDetailsss(saleOrderSid).getData();
if (solutionsDetailsVo != null) {
//三方金融的,在出库时推送单车返利数据,金额为厂家贴息。
if(!"0".equals(solutionsDetailsVo.getFactoryDiscount())){
if (!"0".equals(solutionsDetailsVo.getFactoryDiscount())) {
if ("2".equals(busSalesOrder.getFinancePlan())) {
Future future11 = pool.submit(() -> {
pushVehRebate(busDeliveredApply, detailsList, solutionsDetailsVo.getFactoryDiscount());

7
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/fincollectionconfirmation/FinCollectionConfirmationService.java

@ -142,6 +142,7 @@ import java.math.BigDecimal;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.YearMonth;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;
import java.util.*;
@ -2246,6 +2247,9 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
scmVehRebateVehDto.setEstimateRebate(ll.toString());
scmVehRebateVehDto.setPurchaseSystemSid(baseVehicle.getPurchaseSystemSid());
scmVehRebateVehDto.setPurchaseSystemName(baseVehicle.getPurchaseSystemName());
//预提日期
String dateStr = YearMonth.now().format(DateTimeFormatter.ofPattern("yyyy年M月"));
scmVehRebateVehDto.setWithholdingDate(dateStr);
scmVehRebateVehDtos.add(scmVehRebateVehDto);
scmVehRebateDto.setScmVehRebateVehs(scmVehRebateVehDtos);
scmVehRebateFeign.save(scmVehRebateDto);
@ -2419,6 +2423,9 @@ public class FinCollectionConfirmationService extends MybatisBaseService<FinColl
scmVehRebateVehDto.setEstimateRebate(ll.toString());
scmVehRebateVehDto.setPurchaseSystemSid(baseVehicle.getPurchaseSystemSid());
scmVehRebateVehDto.setPurchaseSystemName(baseVehicle.getPurchaseSystemName());
//预提日期
String dateStr = YearMonth.now().format(DateTimeFormatter.ofPattern("yyyy年M月"));
scmVehRebateVehDto.setWithholdingDate(dateStr);
scmVehRebateVehDtos.add(scmVehRebateVehDto);
scmVehRebateDto.setScmVehRebateVehs(scmVehRebateVehDtos);
scmVehRebateFeign.save(scmVehRebateDto);

14
anrui-fin/anrui-fin-biz/src/main/java/com/yxt/anrui/fin/biz/finpaymentapply/FinPaymentapplyService.java

@ -26,17 +26,14 @@
package com.yxt.anrui.fin.biz.finpaymentapply;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleSelectVo;
import com.yxt.anrui.base.common.enums.BillTypeEnum;
import com.yxt.anrui.base.common.utils.Rule;
import com.yxt.anrui.base.common.utils.domain.BillNo;
import com.yxt.anrui.buscenter.api.busmaindeposit.BusMainDeposit;
import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicing;
import com.yxt.anrui.fin.api.finpaymentapply.*;
import com.yxt.anrui.fin.api.finpaymentapply.flow.FinPayGetNodeQuery;
@ -58,7 +55,6 @@ import com.yxt.anrui.fin.api.finpaymentapplyvehicle.AppFinPaymentapplyVehicleVo;
import com.yxt.anrui.fin.api.finpaymentapplyvehicle.FinPaymentapplyVehicleDto;
import com.yxt.anrui.fin.api.finpaymentapplyvehicle.FinPaymentapplyVehicleVo;
import com.yxt.anrui.fin.api.finpaymentrecord.FinPaymentrecordDto;
import com.yxt.anrui.fin.api.finselectedreceivablesdetailed.FinSelectedReceivablesDetailedVo;
import com.yxt.anrui.fin.biz.fincompanyinvoicing.FinCompanyInvoicingService;
import com.yxt.anrui.fin.biz.finpaymentapplydetails.FinPaymentapplyDetailsService;
import com.yxt.anrui.fin.biz.finpaymentapplydetailsbelow.FinPaymentapplyDetailsBelowService;
@ -78,16 +74,11 @@ import com.yxt.anrui.flowable.api.utils.ProcDefEnum;
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysparameter.SysParameterFeign;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysstaffpost.SysStaffPostFeign;
import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserVo;
import com.yxt.anrui.scm.api.scmcollectionrebate.ScmCollectionRebateDto;
import com.yxt.anrui.scm.api.scmcollectionrebate.ScmCollectionRebateFeign;
import com.yxt.anrui.scm.api.scmcollectionrebateveh.ScmCollectionRebateVehDto;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
@ -644,7 +635,6 @@ public class FinPaymentapplyService extends MybatisBaseService<FinPaymentapplyMa
//ToDo:到出纳记录
if ("Event_end".equals(resultBean.getData().getTaskDefKey())) {
FinPaymentapplyDetailsVo vo = fetchDetailsVoBySid(bv.getBusinessSid());
ResultBean<String> stringResultBean = sysStaffOrgFeign.getPathSidByUserSid(finPaymentapply.getCreateBySid());
FinPaymentrecordDto finPaymentrecordDto = new FinPaymentrecordDto();
finPaymentrecordDto.setCreateBySid(finPaymentapply.getCreateBySid());
finPaymentrecordDto.setUpdateBySid(finPaymentapply.getCreateBySid());
@ -655,9 +645,9 @@ public class FinPaymentapplyService extends MybatisBaseService<FinPaymentapplyMa
//付款类别
finPaymentrecordDto.setPayType(1);
//创建组织
finPaymentrecordDto.setCreateOrgSid(stringResultBean.getData());
finPaymentrecordDto.setCreateOrgSid(finPaymentapply.getUseOrgSid());
//使用组织
finPaymentrecordDto.setUseOrgSid(stringResultBean.getData());
finPaymentrecordDto.setUseOrgSid(finPaymentapply.getUseOrgSid());
//采购系统
FinCompanyInvoicing finCompanyInvoicing = finCompanyInvoicingService.fetchBySid(finPaymentapply.getPayCompanySid());
finPaymentrecordDto.setPurchaseSystemSid(finCompanyInvoicing.getPurchaseSystemSid());

5
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loandiff/LoanDiffService.java

@ -70,6 +70,8 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.time.YearMonth;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.concurrent.*;
import java.util.stream.Collectors;
@ -461,6 +463,9 @@ public class LoanDiffService extends MybatisBaseService<LoanDiffMapper, LoanDiff
scmVehRebateVehDto.setEstimateRebate(ll.toString());
scmVehRebateVehDto.setPurchaseSystemSid(baseVehicle.getPurchaseSystemSid());
scmVehRebateVehDto.setPurchaseSystemName(baseVehicle.getPurchaseSystemName());
//预提日期
String dateStr = YearMonth.now().format(DateTimeFormatter.ofPattern("yyyy年M月"));
scmVehRebateVehDto.setWithholdingDate(dateStr);
scmVehRebateVehDtos.add(scmVehRebateVehDto);
scmVehRebateDto.setScmVehRebateVehs(scmVehRebateVehDtos);
scmVehRebateFeign.save(scmVehRebateDto);

19
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanmonthlyaccrualapply/LoanMonthlyAccrualApplyService.java

@ -28,6 +28,8 @@ import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo;
import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo;
import com.yxt.anrui.flowable.api.utils.ProcDefEnum;
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables;
import com.yxt.anrui.portal.api.dictcommon.DictCommonFeign;
import com.yxt.anrui.portal.api.dictcommon.DictCommonVo;
import com.yxt.anrui.portal.api.flow.PCHistTaskListAndCommentList;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
@ -128,7 +130,8 @@ public class LoanMonthlyAccrualApplyService extends MybatisBaseService<LoanMonth
private LoanRepaymentScheduleService loanRepaymentScheduleService;
@Autowired
private FinTempTimePushFeign finTempTimePushFeign;
@Autowired
private DictCommonFeign dictCommonFeign;
public ResultBean<LoanMonthlyAccrualApplyInit> accrualInit(String orgPath) {
ResultBean<LoanMonthlyAccrualApplyInit> rb = ResultBean.fireFail();
String orgSidPath = orgPath;
@ -671,10 +674,18 @@ public class LoanMonthlyAccrualApplyService extends MybatisBaseService<LoanMonth
private void pushAccrualVoucher(String businessSid) {
LoanMonthlyAccrualApply apply = fetchBySid(businessSid);
List<LoanMonthlyAccrualRecord> records = loanMonthlyAccrualRecordService.selByMainSid(businessSid);
int index = 0;
int indexFinal = 0;
if (!records.isEmpty()) {
int index = 1000;
for (int i = 0; i < records.size(); i += 1000) {
if (i + 1000 > records.size()) {
DictCommonVo dictCommonVo = dictCommonFeign.selectBykey("WithholdMax", "月还计提").getData();
if (null != dictCommonVo) {
String dictValue = dictCommonVo.getDictValue();
int i = Integer.parseInt(dictValue);
index = i;
indexFinal = i;
}
for (int i = 0; i < records.size(); i += indexFinal) {
if (i + indexFinal > records.size()) {
index = records.size() - i;
}
List<LoanMonthlyAccrualRecord> newList = records.subList(i, i + index);

279
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentschedule/LoanRepaymentScheduleService.java

@ -10,12 +10,16 @@ import com.yxt.anrui.base.api.basepurchasesystem.BasePurchaseSystemFeign;
import com.yxt.anrui.base.api.basevehicle.BaseVehicle;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign;
import com.yxt.anrui.base.api.basevehicleoutapply.BaseVehicleOutApplyFeign;
import com.yxt.anrui.base.api.basevehicleoutapply.VehicleCustomerVo;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder;
import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrderFeign;
import com.yxt.anrui.buscenter.api.bussalesorderborrower.BusSalesOrderBorrower;
import com.yxt.anrui.buscenter.api.bussalesorderborrower.BusSalesOrderBorrowerDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesorderborrower.BusSalesOrderBorrowerFeign;
import com.yxt.anrui.buscenter.api.bussalesorderloancontract.*;
import com.yxt.anrui.buscenter.api.bussalesorderloancontract.BusSalesOrderLoancontract;
import com.yxt.anrui.buscenter.api.bussalesorderloancontract.BusSalesOrderLoancontractDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesorderloancontract.BusSalesOrderLoancontractFeign;
import com.yxt.anrui.buscenter.api.bussalesorderloancontract.LoanRepaymentPlanDetailsExportVo;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTemp;
@ -29,7 +33,6 @@ import com.yxt.anrui.fin.api.kingdee.voucher.GeneralVoucher;
import com.yxt.anrui.portal.api.sysorganization.SysOrganization;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysuser.SysUser;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserVo;
@ -69,8 +72,6 @@ import com.yxt.common.core.vo.PagerVo;
import com.yxt.messagecenter.api.message.MessageFeign;
import com.yxt.messagecenter.api.message.PushMessageQuery;
import com.yxt.messagecenter.api.message.PushSmsDto;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.time.DateUtils;
import org.apache.poi.hssf.usermodel.HSSFDateUtil;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
@ -5120,15 +5121,97 @@ public class LoanRepaymentScheduleService extends MybatisBaseService<LoanRepayme
customerTemps.add(crmCustomerTemp);
}
//根据车架号查询销售订单
String orderSid = baseVehicleOutApplyFeign.selectSidByVinNo(vinNo).getData();
if (StringUtils.isNotBlank(orderSid)) {
salesOrderSid = orderSid;
// 查询销售订单车辆列表
ResultBean<BusSalesOrderVehicle> busSalesOrderVehicle = busSalesOrderVehicleFeign.selByOrderSidAndVinNo(salesOrderSid, vinNo);
BusSalesOrderVehicle vehicleData = busSalesOrderVehicle.getData();
if (vehicleData != null) {
busVinSid = vehicleData.getSid();
if (StringUtils.isBlank(vehicleData.getBorrowerSid())) {
VehicleCustomerVo vehicleCustomerVo = baseVehicleOutApplyFeign.selectSidByVinNo(vinNo).getData();
if (null != vehicleCustomerVo) {
String orderSid = vehicleCustomerVo.getOrderSid();
if (StringUtils.isNotBlank(orderSid)) {
salesOrderSid = orderSid;
// 查询销售订单车辆列表
ResultBean<BusSalesOrderVehicle> busSalesOrderVehicle = busSalesOrderVehicleFeign.selByOrderSidAndVinNo(salesOrderSid, vinNo);
BusSalesOrderVehicle vehicleData = busSalesOrderVehicle.getData();
if (vehicleData != null) {
busVinSid = vehicleData.getSid();
if (StringUtils.isBlank(vehicleData.getBorrowerSid())) {
//生成销售订单贷款人表
BusSalesOrderBorrower busSalesOrderBorrower = new BusSalesOrderBorrower();
borrowerSid = busSalesOrderBorrower.getSid();
busSalesOrderBorrower.setSalesOrderSid(salesOrderSid);
busSalesOrderBorrower.setCustomSid(borrowerCustomerSid);
busSalesOrderBorrower.setBorrowerName(borrowerCustomerName);
busSalesOrderBorrower.setMobile("");
busSalesOrderBorrower.setVehCount(1);
busSalesOrderBorrower.setBankSid(bankSid);
busSalesOrderBorrower.setBankName(bankName);
busSalesOrderBorrower.setPolicyName(policyName);
busSalesOrderBorrower.setIsEnable(3);
busSalesOrderBorrower.setCreateBySid(userSid);
borrowers.add(busSalesOrderBorrower);
} else {
borrowerSid = vehicleData.getBorrowerSid();
BusSalesOrderBorrower borrower = busSalesOrderBorrowerFeign.fetchEntityBySid(borrowerSid).getData();
if (null == borrower) {
//生成销售订单贷款人表
BusSalesOrderBorrower busSalesOrderBorrower = new BusSalesOrderBorrower();
busSalesOrderBorrower.setSid(borrowerSid);
busSalesOrderBorrower.setSalesOrderSid(salesOrderSid);
busSalesOrderBorrower.setCustomSid(borrowerCustomerSid);
busSalesOrderBorrower.setBorrowerName(borrowerCustomerName);
busSalesOrderBorrower.setMobile("");
busSalesOrderBorrower.setVehCount(1);
busSalesOrderBorrower.setBankSid(bankSid);
busSalesOrderBorrower.setBankName(bankName);
busSalesOrderBorrower.setPolicyName(policyName);
busSalesOrderBorrower.setIsEnable(3);
busSalesOrderBorrower.setCreateBySid(userSid);
borrowers.add(busSalesOrderBorrower);
}
}
if (StringUtils.isBlank(vehicleData.getLoanContractSid())) {
//生成消贷合同表
BusSalesOrderLoancontract bsl = new BusSalesOrderLoancontract();
loanContractSid = bsl.getSid();
bsl.setSalesOrderSid(salesOrderSid);
bsl.setLoanContractNo(loanContractNo);
bsl.setBankContractNo(bankContractNo);
bsl.setBankName(bankName);
bsl.setPolicyName(policyName);
bsl.setBorrowerSid(borrowerSid);
bsl.setBorrowerName(borrowerCustomerName);
bsl.setVehCount(1);
bsl.setIsEnable(3);
bsl.setCreateBySid(userSid);
bsl.setBusNo("305");
bsl.setRepaymentState("1");
bsl.setRepaymentCreateTime(new Date());
contracts.add(bsl);
} else {
loanContractSid = vehicleData.getLoanContractSid();
BusSalesOrderLoancontract loancontract = busSalesOrderLoancontractFeign.fetchEntityBySid(loanContractSid).getData();
if (null == loancontract) {
//生成消贷合同表
BusSalesOrderLoancontract bsl = new BusSalesOrderLoancontract();
bsl.setSid(loanContractSid);
bsl.setSalesOrderSid(salesOrderSid);
bsl.setLoanContractNo(loanContractNo);
bsl.setBankContractNo(bankContractNo);
bsl.setBankName(bankName);
bsl.setPolicyName(policyName);
bsl.setBorrowerSid(borrowerSid);
bsl.setBorrowerName(borrowerCustomerName);
bsl.setVehCount(1);
bsl.setIsEnable(3);
bsl.setCreateBySid(userSid);
bsl.setBusNo("305");
bsl.setRepaymentState("1");
bsl.setRepaymentCreateTime(new Date());
contracts.add(bsl);
}
}
vehicleData.setTemporaryNo(borrowerNo);
vehicleData.setBorrowerSid(borrowerSid);
vehicleData.setLoanContractSid(loanContractSid);
updateVehicles.add(vehicleData);
} else {
//生成销售订单贷款人表
BusSalesOrderBorrower busSalesOrderBorrower = new BusSalesOrderBorrower();
borrowerSid = busSalesOrderBorrower.getSid();
@ -5143,27 +5226,6 @@ public class LoanRepaymentScheduleService extends MybatisBaseService<LoanRepayme
busSalesOrderBorrower.setIsEnable(3);
busSalesOrderBorrower.setCreateBySid(userSid);
borrowers.add(busSalesOrderBorrower);
} else {
borrowerSid = vehicleData.getBorrowerSid();
BusSalesOrderBorrower borrower = busSalesOrderBorrowerFeign.fetchEntityBySid(borrowerSid).getData();
if (null == borrower) {
//生成销售订单贷款人表
BusSalesOrderBorrower busSalesOrderBorrower = new BusSalesOrderBorrower();
busSalesOrderBorrower.setSid(borrowerSid);
busSalesOrderBorrower.setSalesOrderSid(salesOrderSid);
busSalesOrderBorrower.setCustomSid(borrowerCustomerSid);
busSalesOrderBorrower.setBorrowerName(borrowerCustomerName);
busSalesOrderBorrower.setMobile("");
busSalesOrderBorrower.setVehCount(1);
busSalesOrderBorrower.setBankSid(bankSid);
busSalesOrderBorrower.setBankName(bankName);
busSalesOrderBorrower.setPolicyName(policyName);
busSalesOrderBorrower.setIsEnable(3);
busSalesOrderBorrower.setCreateBySid(userSid);
borrowers.add(busSalesOrderBorrower);
}
}
if (StringUtils.isBlank(vehicleData.getLoanContractSid())) {
//生成消贷合同表
BusSalesOrderLoancontract bsl = new BusSalesOrderLoancontract();
loanContractSid = bsl.getSid();
@ -5181,34 +5243,43 @@ public class LoanRepaymentScheduleService extends MybatisBaseService<LoanRepayme
bsl.setRepaymentState("1");
bsl.setRepaymentCreateTime(new Date());
contracts.add(bsl);
} else {
loanContractSid = vehicleData.getLoanContractSid();
BusSalesOrderLoancontract loancontract = busSalesOrderLoancontractFeign.fetchEntityBySid(loanContractSid).getData();
if (null == loancontract) {
//生成消贷合同表
BusSalesOrderLoancontract bsl = new BusSalesOrderLoancontract();
bsl.setSid(loanContractSid);
bsl.setSalesOrderSid(salesOrderSid);
bsl.setLoanContractNo(loanContractNo);
bsl.setBankContractNo(bankContractNo);
bsl.setBankName(bankName);
bsl.setPolicyName(policyName);
bsl.setBorrowerSid(borrowerSid);
bsl.setBorrowerName(borrowerCustomerName);
bsl.setVehCount(1);
bsl.setIsEnable(3);
bsl.setCreateBySid(userSid);
bsl.setBusNo("305");
bsl.setRepaymentState("1");
bsl.setRepaymentCreateTime(new Date());
contracts.add(bsl);
//生成销售订单车辆表
BusSalesOrderVehicle busSalesOrderVehicleEntity = new BusSalesOrderVehicle();
busVinSid = busSalesOrderVehicleEntity.getSid();
busSalesOrderVehicleEntity.setSalesOrderSid(salesOrderSid);
busSalesOrderVehicleEntity.setLinkNo(vinNo);
busSalesOrderVehicleEntity.setTemporaryNo(borrowerNo);
BaseVehicle baseVehicle = baseVehicleFeign.selOneByVinNo(vinNo).getData();
if (null != baseVehicle) {
linkSid = baseVehicle.getSid();
} else {
linkSid = vinNo;
}
busSalesOrderVehicleEntity.setLinkSid(linkSid);
busSalesOrderVehicleEntity.setBorrowerSid(borrowerSid);
busSalesOrderVehicleEntity.setLoanContractSid(loanContractSid);
busSalesOrderVehicleEntity.setIsEnable(3);
busSalesOrderVehicleEntity.setCreateBySid(userSid);
vehicles.add(busSalesOrderVehicleEntity);
}
vehicleData.setTemporaryNo(borrowerNo);
vehicleData.setBorrowerSid(borrowerSid);
vehicleData.setLoanContractSid(loanContractSid);
updateVehicles.add(vehicleData);
} else {
//生成销售订单
BusSalesOrder busSalesOrder = new BusSalesOrder();
salesOrderSid = busSalesOrder.getSid();
busSalesOrder.setPayType("贷款(担保、非担保)");
busSalesOrder.setPayTypeKey("2");
busSalesOrder.setFinancePlan("01");
busSalesOrder.setFinancePlanValue("担保");
busSalesOrder.setCustomerSid(customerSid);
busSalesOrder.setCustomerName(customerName);
busSalesOrder.setUseOrgSid(useOrgSid);
busSalesOrder.setUseOrgName(useOrgName);
busSalesOrder.setOrgSid(deptSid);
busSalesOrder.setOrgName(deptName);
busSalesOrder.setOrgSidPath(orgPath);
busSalesOrder.setIsEnable(3);
busSalesOrder.setCreateBySid(userSid);
orders.add(busSalesOrder);
//生成销售订单贷款人表
BusSalesOrderBorrower busSalesOrderBorrower = new BusSalesOrderBorrower();
borrowerSid = busSalesOrderBorrower.getSid();
@ -5241,92 +5312,26 @@ public class LoanRepaymentScheduleService extends MybatisBaseService<LoanRepayme
bsl.setRepaymentCreateTime(new Date());
contracts.add(bsl);
//生成销售订单车辆表
BusSalesOrderVehicle busSalesOrderVehicleEntity = new BusSalesOrderVehicle();
busVinSid = busSalesOrderVehicleEntity.getSid();
busSalesOrderVehicleEntity.setSalesOrderSid(salesOrderSid);
busSalesOrderVehicleEntity.setLinkNo(vinNo);
busSalesOrderVehicleEntity.setTemporaryNo(borrowerNo);
BusSalesOrderVehicle busSalesOrderVehicle = new BusSalesOrderVehicle();
busVinSid = busSalesOrderVehicle.getSid();
busSalesOrderVehicle.setSalesOrderSid(salesOrderSid);
busSalesOrderVehicle.setLinkNo(vinNo);
busSalesOrderVehicle.setTemporaryNo(borrowerNo);
BaseVehicle baseVehicle = baseVehicleFeign.selOneByVinNo(vinNo).getData();
if (null != baseVehicle) {
linkSid = baseVehicle.getSid();
} else {
linkSid = vinNo;
}
busSalesOrderVehicleEntity.setLinkSid(linkSid);
busSalesOrderVehicleEntity.setBorrowerSid(borrowerSid);
busSalesOrderVehicleEntity.setLoanContractSid(loanContractSid);
busSalesOrderVehicleEntity.setIsEnable(3);
busSalesOrderVehicleEntity.setCreateBySid(userSid);
vehicles.add(busSalesOrderVehicleEntity);
busSalesOrderVehicle.setLinkSid(linkSid);
busSalesOrderVehicle.setBorrowerSid(borrowerSid);
busSalesOrderVehicle.setLoanContractSid(loanContractSid);
busSalesOrderVehicle.setIsEnable(3);
busSalesOrderVehicle.setCreateBySid(userSid);
vehicles.add(busSalesOrderVehicle);
}
} else {
//生成销售订单
BusSalesOrder busSalesOrder = new BusSalesOrder();
salesOrderSid = busSalesOrder.getSid();
busSalesOrder.setPayType("贷款(担保、非担保)");
busSalesOrder.setPayTypeKey("2");
busSalesOrder.setFinancePlan("01");
busSalesOrder.setFinancePlanValue("担保");
busSalesOrder.setCustomerSid(customerSid);
busSalesOrder.setCustomerName(customerName);
busSalesOrder.setUseOrgSid(useOrgSid);
busSalesOrder.setUseOrgName(useOrgName);
busSalesOrder.setOrgSid(deptSid);
busSalesOrder.setOrgName(deptName);
busSalesOrder.setOrgSidPath(orgPath);
busSalesOrder.setIsEnable(3);
busSalesOrder.setCreateBySid(userSid);
orders.add(busSalesOrder);
//生成销售订单贷款人表
BusSalesOrderBorrower busSalesOrderBorrower = new BusSalesOrderBorrower();
borrowerSid = busSalesOrderBorrower.getSid();
busSalesOrderBorrower.setSalesOrderSid(salesOrderSid);
busSalesOrderBorrower.setCustomSid(borrowerCustomerSid);
busSalesOrderBorrower.setBorrowerName(borrowerCustomerName);
busSalesOrderBorrower.setMobile("");
busSalesOrderBorrower.setVehCount(1);
busSalesOrderBorrower.setBankSid(bankSid);
busSalesOrderBorrower.setBankName(bankName);
busSalesOrderBorrower.setPolicyName(policyName);
busSalesOrderBorrower.setIsEnable(3);
busSalesOrderBorrower.setCreateBySid(userSid);
borrowers.add(busSalesOrderBorrower);
//生成消贷合同表
BusSalesOrderLoancontract bsl = new BusSalesOrderLoancontract();
loanContractSid = bsl.getSid();
bsl.setSalesOrderSid(salesOrderSid);
bsl.setLoanContractNo(loanContractNo);
bsl.setBankContractNo(bankContractNo);
bsl.setBankName(bankName);
bsl.setPolicyName(policyName);
bsl.setBorrowerSid(borrowerSid);
bsl.setBorrowerName(borrowerCustomerName);
bsl.setVehCount(1);
bsl.setIsEnable(3);
bsl.setCreateBySid(userSid);
bsl.setBusNo("305");
bsl.setRepaymentState("1");
bsl.setRepaymentCreateTime(new Date());
contracts.add(bsl);
//生成销售订单车辆表
BusSalesOrderVehicle busSalesOrderVehicle = new BusSalesOrderVehicle();
busVinSid = busSalesOrderVehicle.getSid();
busSalesOrderVehicle.setSalesOrderSid(salesOrderSid);
busSalesOrderVehicle.setLinkNo(vinNo);
busSalesOrderVehicle.setTemporaryNo(borrowerNo);
BaseVehicle baseVehicle = baseVehicleFeign.selOneByVinNo(vinNo).getData();
if (null != baseVehicle) {
linkSid = baseVehicle.getSid();
} else {
linkSid = vinNo;
}
busSalesOrderVehicle.setLinkSid(linkSid);
busSalesOrderVehicle.setBorrowerSid(borrowerSid);
busSalesOrderVehicle.setLoanContractSid(loanContractSid);
busSalesOrderVehicle.setIsEnable(3);
busSalesOrderVehicle.setCreateBySid(userSid);
vehicles.add(busSalesOrderVehicle);
}
//生成还款计划主表及还款计划表明细
if (sleep.equals("否")) {
LoanRepaymentSchedule scheduleDetails = new LoanRepaymentSchedule();

9
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmapplyinbound/ScmApplyInboundService.java

@ -11,10 +11,7 @@ import com.yxt.anrui.base.api.basemanufacturerbank.BaseManufacturerBankFeign;
import com.yxt.anrui.base.api.basemanufacturerbank.BaseManufacturerBankVo;
import com.yxt.anrui.base.api.basepurchasesystem.BasePurchaseSystemDetailsVo;
import com.yxt.anrui.base.api.basepurchasesystem.BasePurchaseSystemFeign;
import com.yxt.anrui.base.api.basevehicle.BaseVehicle;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleDto;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleSelectVo;
import com.yxt.anrui.base.api.basevehicle.*;
import com.yxt.anrui.base.api.basevehiclebrand.BaseVehicleBrand;
import com.yxt.anrui.base.api.basevehiclebrand.BaseVehicleBrandFeign;
import com.yxt.anrui.base.api.basevehiclemodel.BaseVehicleModel;
@ -294,7 +291,9 @@ public class ScmApplyInboundService extends MybatisBaseService<ScmApplyInboundMa
// 验证数据库是否重复
for (int i = 0; i < vinNoList.size(); i++) {
//int count = scmApplyInboundVehicleService.checkVinNo(vinNoList.get(i), dto.getUseOrgSid(), dto.getSid());
BaseVehicle data = baseVehicleFeign.selectByVinNoAndOrgSid(vinNoList.get(i), dto.getUseOrgSid()).getData();
// BaseVehicle data = baseVehicleFeign.selectByVinNoAndOrgSid(vinNoList.get(i), dto.getUseOrgSid()).getData();
//检索集团内是否存在非删除、非退车的车架号
BaseVehicleVo data= baseVehicleFeign.selVehicleByVinNo(vinNoList.get(i)).getData();
/* if (count > 0) {
baseMapper.updateNodeStatedtj(dto.getSid());
return new ResultBean().setMsg("入库车辆信息中" + vinNoList.get(i) + "车架号已经存在");

6
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml

@ -163,7 +163,8 @@
SELECT *,
expectItureCost + expectTreatCost + expectSuppCost AS expectCost,
expectItureCost + expectTreatCost + expectSuppCost AS withholdCost,
onceItureCost + onceTreatCost + onceSuppCost + secondItureCost + secondTreatCost + secondSuppCost AS money
onceItureCost + onceTreatCost + onceSuppCost + secondItureCost + secondTreatCost + secondSuppCost AS money,
estimateRebate - IFNULL(uploadMoney,0) - IFNULL(secondaryUploadMoney,0) + IFNULL(adjustmentMoney,0) AS notUploadMoney
FROM scm_special_rebate
<where>
${ew.sqlSegment}
@ -174,7 +175,8 @@
SELECT *,
expectItureCost + expectTreatCost + expectSuppCost AS expectCost,
expectItureCost + expectTreatCost + expectSuppCost AS withholdCost,
onceItureCost + onceTreatCost + onceSuppCost + secondItureCost + secondTreatCost + secondSuppCost AS money
onceItureCost + onceTreatCost + onceSuppCost + secondItureCost + secondTreatCost + secondSuppCost AS money,
estimateRebate - IFNULL(uploadMoney,0) - IFNULL(secondaryUploadMoney,0) + IFNULL(adjustmentMoney,0) AS notUploadMoney
FROM scm_special_rebate
<where>
${ew.sqlSegment}

47
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleenterlibrary/ScmVehicleEnterlibraryService.java

@ -46,12 +46,10 @@ import com.yxt.anrui.base.api.basevehicle.BaseVehicleDto;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign;
import com.yxt.anrui.base.api.basevehiclebrand.BaseVehicleBrand;
import com.yxt.anrui.base.api.basevehiclebrand.BaseVehicleBrandFeign;
import com.yxt.anrui.base.api.basevehiclemodel.BaseVehicleModelFeign;
import com.yxt.anrui.base.common.enums.ManPurOrderType;
import com.yxt.anrui.base.common.enums.OperVehicleState;
import com.yxt.anrui.base.common.enums.VehicleState;
import com.yxt.anrui.fin.api.kingdee.FinKingDeeFeign;
import com.yxt.anrui.fin.api.kingdee.stktransferdirect.StkTransferDirect;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysstaffinfo.SysStaffinfoVo;
@ -62,7 +60,6 @@ import com.yxt.anrui.scm.api.scmfile.ScmFile;
import com.yxt.anrui.scm.api.scmvehicleenterlibrary.*;
import com.yxt.anrui.scm.api.scmvehicleexamine.AppToDoNumQuery;
import com.yxt.anrui.scm.api.scmwarehouse.ScmWarehouse;
import com.yxt.anrui.scm.biz.scmapplyinboundquery.ScmApplyInboundQueryService;
import com.yxt.anrui.scm.biz.scmfile.ScmFileService;
import com.yxt.anrui.scm.biz.scmwarehouse.ScmWarehouseService;
import com.yxt.common.base.config.component.FileUploadComponent;
@ -75,54 +72,32 @@ import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* Project: scm(scm) <br/>
* File: ScmVehicleEnterlibraryService.java <br/>
* Class: scm.biz.scmvehicleenterlibrary.ScmVehicleEnterlibraryService <br/>
* Description: 入库单 业务逻辑. <br/>
* Copyright: Copyright (c) 2011 <br/>
* Company: https://gitee.com/liuzp315 <br/>
* Makedate: 2022-06-06 09:53:39 <br/>
*
* @author liupopo
* @version 1.0
* @since 1.0
*/
@Service
public class ScmVehicleEnterlibraryService extends MybatisBaseService<ScmVehicleEnterlibraryMapper, ScmVehicleEnterlibrary> {
@Autowired
SysUserFeign sysUserFeign;
private SysUserFeign sysUserFeign;
@Autowired
SysStaffOrgFeign sysStaffOrgFeign;
private SysStaffOrgFeign sysStaffOrgFeign;
@Autowired
ScmFileService scmFileService;
private ScmFileService scmFileService;
@Autowired
BaseVehicleFeign baseVehicleFeign;
private BaseVehicleFeign baseVehicleFeign;
@Autowired
FileUploadComponent fileUploadComponent;
private FileUploadComponent fileUploadComponent;
@Autowired
BaseOutsourcingApplicationFeign baseOutsourcingApplicationFeign;
private BaseOutsourcingApplicationFeign baseOutsourcingApplicationFeign;
@Autowired
BaseInternalPurchaseFeign baseInternalPurchaseFeign;
private BaseInternalPurchaseFeign baseInternalPurchaseFeign;
@Autowired
BaseInternalPurchaseVehicleFeign baseInternalPurchaseVehicleFeign;
private BaseInternalPurchaseVehicleFeign baseInternalPurchaseVehicleFeign;
@Autowired
FinKingDeeFeign finKingDeeFeign;
private FinKingDeeFeign finKingDeeFeign;
@Autowired
private SysOrganizationFeign sysOrganizationFeign;
@Autowired
@ -135,10 +110,6 @@ public class ScmVehicleEnterlibraryService extends MybatisBaseService<ScmVehicle
private BaseManufacturerBankFeign baseManufacturerBankFeign;
@Autowired
private BasePurchaseSystemFeign basePurchaseSystemFeign;
@Autowired
private BaseVehicleModelFeign baseVehicleModelFeign;
@Autowired
private ScmApplyInboundQueryService scmApplyInboundQueryService;
private QueryWrapper<ScmVehicleEnterlibrary> createQueryWrapper(ScmVehicleEnterlibraryQuery query) {
// todo: 这里根据具体业务调整查询条件

3
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.xml

@ -158,7 +158,8 @@
sid AS vehRebateSid,
expectTreatCost + expectSuppCost AS expectCost,
expectTreatCost + expectSuppCost AS withholdCost,
onceTreatCost + onceSuppCost + secondTreatCost + secondSuppCost AS money
onceTreatCost + onceSuppCost + secondTreatCost + secondSuppCost AS money,
estimateRebate - IFNULL(uploadMoney,0) - IFNULL(secondaryUploadMoney,0) + IFNULL(adjustmentMoney,0) AS notUploadMoney
FROM
scm_veh_rebate
<where>

15
yxt-base-biz/src/main/java/com/yxt/base/apiadmin/base/BaseGoodsSpuRest.java

@ -8,7 +8,10 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
import java.util.List;
/**
@ -111,6 +114,18 @@ public class BaseGoodsSpuRest {
return baseGoodsSpuService.selByCodeAndDept(code,deptSid);
}
@ApiOperation(value = "商品信息导入")
@PostMapping("/importGoodsSpuData")
public ResultBean importGoodsSpuData(
@RequestParam(value = "file") MultipartFile file,
@RequestParam("orgPath") String orgPath,
@RequestParam("userSid") String userSid,
HttpServletRequest request) throws IOException {
return baseGoodsSpuService.importGoodsSpuData(file,orgPath,userSid,request);
}
//------------------------------- 行政类商品管理 --------------------------------
@ApiOperation("保存修改行政商品信息")

281
yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodsspu/BaseGoodsSpuService.java

@ -34,11 +34,23 @@ import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import java.io.File;
import java.io.InputStream;
import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
* @author wangpengfei
@ -588,7 +600,7 @@ public class BaseGoodsSpuService extends MybatisBaseService<BaseGoodsSpuMapper,
return rb.success().setData(i);
}
public ResultBean<List<YxtBaseFormCommon>> selPurchaseAssetInfo(String orgPath,String name) {
public ResultBean<List<YxtBaseFormCommon>> selPurchaseAssetInfo(String orgPath, String name) {
ResultBean rb = ResultBean.fireFail();
List<YxtBaseFormCommon> list = new ArrayList<>();
String useOrgSid = "";
@ -603,7 +615,7 @@ public class BaseGoodsSpuService extends MybatisBaseService<BaseGoodsSpuMapper,
useOrgSid = sysOrganization.getSid();
}
}
List<BaseGoodsSpu> goodsSpus = baseMapper.selPurchaseAssetInfo(useOrgSid,name);
List<BaseGoodsSpu> goodsSpus = baseMapper.selPurchaseAssetInfo(useOrgSid, name);
if (!goodsSpus.isEmpty()) {
goodsSpus.stream().forEach(details -> {
YxtBaseFormCommon formCommon = new YxtBaseFormCommon();
@ -639,4 +651,269 @@ public class BaseGoodsSpuService extends MybatisBaseService<BaseGoodsSpuMapper,
String typeName = baseMapper.selGoodsTypeBySid(sid);
return rb.success().setData(typeName);
}
public ResultBean importGoodsSpuData(MultipartFile file, String orgPath, String userSid, HttpServletRequest request) {
ResultBean rb = ResultBean.fireFail();
String useOrgSid = "";//部门sid
List<String> split = Arrays.asList(orgPath.split("/"));
if (split.size() > 1) {
//获取本级sid获取本级部门信息
SysOrganizationVo sysOrganization1 = sysOrganizationFeign.fetchBySid(split.get(split.size() - 1)).getData();
useOrgSid = sysOrganization1.getSid();
} else {
SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(split.get(0)).getData();
useOrgSid = sysOrganization.getSid();
}
int size = 0;
try {
String temp = request.getSession().getServletContext().getRealPath(File.separator) + "temp";// 临时目录
File tempFile = new File(temp);
if (!tempFile.exists()) {
tempFile.mkdirs();
}
String fileName = file.getOriginalFilename();
if (!fileName.matches("^.+\\.(?i)(xls)$") && !fileName.matches("^.+\\.(?i)(xlsx)$")) {
return rb.fail().setMsg("上传文件不正确");
}
boolean isExcel2003 = true;
if (fileName.matches("^.+\\.(?i)(xlsx)$")) {
isExcel2003 = false;
}
InputStream is = file.getInputStream();
Workbook wb = null;
if (isExcel2003) {
wb = new HSSFWorkbook(is);
} else {
wb = new XSSFWorkbook(is);
}
Sheet sheet = wb.getSheetAt(0);
ReturnImportMsg returnMsg = getSleepSheetVal(sheet);
Set<String> setMsg = returnMsg.getSetMsg();
StringBuffer sbMsg = new StringBuffer();
List<ImportDataVo> list = returnMsg.getList();
if (!list.isEmpty() && list.size() > 0) {
for (ImportDataVo vo : list) {
}
}
if (null != setMsg && setMsg.size() > 0) {
for (String s : setMsg) {
sbMsg.append(s).append(",");
}
sbMsg.delete(sbMsg.length() - 1, sbMsg.length());
if (StringUtils.isNotBlank(sbMsg.toString())) {
return rb.setMsg(sbMsg.toString());
}
}
size = list.size();
} catch (Exception e) {
e.printStackTrace();
}
return rb.success().setMsg("成功导入" + size + "条数据");
}
private ReturnImportMsg getSleepSheetVal(Sheet sheet) {
ReturnImportMsg returnMsg = new ReturnImportMsg();
List<ImportDataVo> voList = new ArrayList<>();
Set<String> setMsg = new HashSet<>();
Row row1 = sheet.getRow(0);
Map<Integer, String> header = new HashMap<>();
Map<String, String> map = new HashMap<>();
for (int i = 0; i < 13; i++) {
String trim = new String();
try {
trim = getCellVal(row1.getCell(i)).toString().trim();
String temp = getCellVal(row1.getCell(i)).toString().trim();
if (StringUtils.isNotBlank(temp)) {
header.put(i, temp);
}
} catch (Exception e) {
e.printStackTrace();
}
}
for (int r = 1; r <= sheet.getLastRowNum(); r++) {
ImportDataVo info = new ImportDataVo();
Row row = sheet.getRow(r);
if (row == null) {
continue;
}
for (int i = 0; i < header.size(); i++) {
// String trim = new String();
try {
// trim = getCellVal(row.getCell(i)).toString().trim();
String temp = "";
if (null != getCellVal(row.getCell(i))) {
temp = getCellVal(row.getCell(i)).toString().trim();
}
String head = header.get(i);
String field = "";
if (StringUtils.isNotBlank(temp)) {
field = temp;
}
if (head.equals("*排序号")) {
if (StringUtils.isBlank(field)) {
setMsg.add("第" + (r + 1) + "行排序号不能为空");
} else {
if (!isNum(field)) {
setMsg.add("第" + (r + 1) + "行排序号请填写数字");
} else {
int parseInt = Integer.parseInt(field);
field = String.valueOf(parseInt);
}
}
info.setSortNo(field);
}
if (head.equals("*商品名称")) {
if (StringUtils.isBlank(field)) {
setMsg.add("第" + (r + 1) + "行商品名称不能为空");
}
info.setGoodsName(field);
}
if (head.equals("*图号")) {
if (StringUtils.isBlank(field)) {
setMsg.add("第" + (r + 1) + "行图号不能为空");
}
info.setGoodsCode(field);
}
if (head.equals("商品条码")) {
info.setBarCode(field);
}
if (head.equals("*商品类别")) {
if (StringUtils.isBlank(field)) {
setMsg.add("第" + (r + 1) + "行商品类别不能为空");
}
info.setGoodsTypeName(field);
}
if (head.equals("*品牌")) {
if (StringUtils.isBlank(field)) {
setMsg.add("第" + (r + 1) + "行品牌不能为空");
}
info.setBrandName(field);
}
if (head.equals("*厂家")) {
if (StringUtils.isBlank(field)) {
setMsg.add("第" + (r + 1) + "行厂家不能为空");
}
info.setManufacturerName(field);
}
if (head.equals("规格")) {
info.setIndexes(field);
}
if (head.equals("*计量单位")) {
if (StringUtils.isBlank(field)) {
setMsg.add("第" + (r + 1) + "行计量单位不能为空");
}
info.setGoodsUnitName(field);
}
if (head.equals("*库存上限")) {
if (StringUtils.isBlank(field)) {
setMsg.add("第" + (r + 1) + "行库存上限不能为空");
} else {
if (!isNum(field)) {
setMsg.add("第" + (r + 1) + "行库存上限请填写数字");
} else {
int parseInt = Integer.parseInt(field);
field = String.valueOf(parseInt);
}
}
info.setInventoryAlertUpperLimit(field);
}
if (head.equals("*库存下限")) {
if (StringUtils.isBlank(field)) {
setMsg.add("第" + (r + 1) + "行库存下限不能为空");
} else {
if (!isNum(field)) {
setMsg.add("第" + (r + 1) + "行库存下限请填写数字");
} else {
int parseInt = Integer.parseInt(field);
field = String.valueOf(parseInt);
}
}
info.setInventoryAlertLowerLimit(field);
}
if (head.equals("*商品等级")) {
if (StringUtils.isBlank(field)) {
setMsg.add("第" + (r + 1) + "行商品等级不能为空");
}
info.setGoodsLevelValue(field);
}
if (head.equals("*商品类型")) {
if (StringUtils.isBlank(field)) {
setMsg.add("第" + (r + 1) + "行商品类型不能为空");
}
info.setGoodsClassValue(field);
}
} catch (Exception e) {
e.printStackTrace();
continue;
}
}
voList.add(info);
}
returnMsg.setList(voList);
returnMsg.setSetMsg(setMsg);
return returnMsg;
}
public Object getCellVal(Cell cell) {
Object obj = null;
if (cell != null) {
switch (cell.getCellTypeEnum()) {
case BOOLEAN:
obj = cell.getBooleanCellValue();
break;
case ERROR:
obj = cell.getErrorCellValue();
break;
case NUMERIC:
obj = cell.getNumericCellValue();
break;
case STRING:
obj = cell.getStringCellValue();
break;
default:
break;
}
}
return obj;
}
public boolean isNum(String s) {
if (org.apache.commons.lang3.StringUtils.isNotBlank(s)) {
if (s.contains(".")) {
return isNumeric(s);
} else {
return isNumericFirst(s);
}
}
return false;
}
public boolean isNumeric(String s) {
String substring = s.substring(0, s.lastIndexOf("."));
String substringLast = s.substring(s.lastIndexOf(".") + 1, s.length());
if (substring != null && !"".equals(substring.trim()) || substringLast != null && !"".equals(substringLast.trim())) {
boolean matches = substring.matches("^[0-9]*$");
boolean b = substringLast.matches("^[0-9]*$");
if (matches && b) {
return true;
} else {
return false;
}
} else
return false;
}
public boolean isNumericFirst(String str) {
Pattern pattern = Pattern.compile("[0-9]*");
System.out.println(str);
Matcher isNum = pattern.matcher(str);
if (!isNum.matches()) {
return false;
}
return true;
}
}

22
yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodsspu/ImportDataVo.java

@ -0,0 +1,22 @@
package com.yxt.base.biz.base.basegoodsspu;
import lombok.Data;
@Data
public class ImportDataVo {
private String sortNo;//排序
private String goodsName;//商品名称
private String goodsCode;//图号
private String barCode;//条形码
private String goodsTypeName;//商品分类sid
private String brandName;//品牌
private String manufacturerName;//厂家名称
private String indexes;//规格
private String goodsUnitName;//计量单位名称
private String inventoryAlertUpperLimit;//库存上限
private String inventoryAlertLowerLimit;//库存下限
private String goodsClassValue;//商品类型
private String goodsLevelValue;//商品等级
}

14
yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodsspu/ReturnImportMsg.java

@ -0,0 +1,14 @@
package com.yxt.base.biz.base.basegoodsspu;
import lombok.Data;
import java.util.List;
import java.util.Set;
@Data
public class ReturnImportMsg {
private Set<String> setMsg;
private List<ImportDataVo> list;
}

2
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaForm.java

@ -24,7 +24,7 @@ public class OaForm extends BaseEntity {
private String billNo;
@ApiModelProperty("创建人")
private String createByName;
@ApiModelProperty("公司sid")
@ApiModelProperty("sid")
private String useOrgSid;
@ApiModelProperty("公司名称")
private String useOrgName;

Loading…
Cancel
Save