Browse Source

客户导出

v1.0
15989082884@163.com 2 years ago
parent
commit
4c76b7fd34
  1. 195
      src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierController.java
  2. 126
      src/main/java/com/qs/serve/modules/bms/entity/bo/BmsSupplierExcelBo.java

195
src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierController.java

@ -15,6 +15,7 @@ import com.qs.serve.common.util.*;
import com.qs.serve.modules.bms.controller.my.BmsSupplierMyController; import com.qs.serve.modules.bms.controller.my.BmsSupplierMyController;
import com.qs.serve.modules.bms.entity.*; import com.qs.serve.modules.bms.entity.*;
import com.qs.serve.modules.bms.entity.bo.BmsSupplierBo; import com.qs.serve.modules.bms.entity.bo.BmsSupplierBo;
import com.qs.serve.modules.bms.entity.bo.BmsSupplierExcelBo;
import com.qs.serve.modules.bms.entity.bo.BmsSupplierParentBo; import com.qs.serve.modules.bms.entity.bo.BmsSupplierParentBo;
import com.qs.serve.modules.bms.entity.vo.BmsSupplierTreeVo; import com.qs.serve.modules.bms.entity.vo.BmsSupplierTreeVo;
import com.qs.serve.modules.bms.mapper.BmsSupplierMapper; import com.qs.serve.modules.bms.mapper.BmsSupplierMapper;
@ -77,12 +78,7 @@ public class BmsSupplierController {
@PreAuthorize("hasRole('bms:supplier:query')") @PreAuthorize("hasRole('bms:supplier:query')")
public R<List<BmsSupplier>> getList(@RequestBody BmsSupplier param){ public R<List<BmsSupplier>> getList(@RequestBody BmsSupplier param){
if(param.getSupplierName()!=null){ param = this.initQueryParam(param);
param.setName(param.getSupplierName());
}
if(param.getSupplierCode()!=null){
param.setCode(param.getSupplierCode());
}
String userId = param.getUserId(); String userId = param.getUserId();
if(param.getLoadByCurrent()!=null&&param.getLoadByCurrent().equals(1)){ if(param.getLoadByCurrent()!=null&&param.getLoadByCurrent().equals(1)){
@ -93,78 +89,6 @@ public class BmsSupplierController {
param.setCurrUserId(userId); param.setCurrUserId(userId);
} }
if(StringUtils.hasText(param.getRegion2Label())){
LambdaQueryWrapper<BmsRegion2> region2LambdaQueryWrapper = new LambdaQueryWrapper<>();
region2LambdaQueryWrapper.like(BmsRegion2::getPathNames,param.getRegion2Label());
List<BmsRegion2> region2List = bmsRegion2Service.list(region2LambdaQueryWrapper);
if(region2List.size()>0) {
param.setRegion2Ids(region2List.stream().map(a -> a.getId()).collect(Collectors.toList()));
}else{
param.setRegion2Ids(Arrays.asList("#"));
}
}
if(StringUtils.hasText(param.getSearchRegion2FirstName())){
LambdaQueryWrapper<BmsRegion2> region2LambdaQueryWrapper = new LambdaQueryWrapper<>();
region2LambdaQueryWrapper.like(BmsRegion2::getName,param.getSearchRegion2FirstName());
List<BmsRegion2> region2List = bmsRegion2Service.list(region2LambdaQueryWrapper);
if(region2List.size()>0) {
param.setSearchRegion2First(region2List.stream().map(a -> a.getId()).collect(Collectors.toList()));
}else{
param.setSearchRegion2First(Arrays.asList("#"));
}
}
if(StringUtils.hasText(param.getSearchRegion2SecondName())){
LambdaQueryWrapper<BmsRegion2> region2LambdaQueryWrapper = new LambdaQueryWrapper<>();
region2LambdaQueryWrapper.like(BmsRegion2::getName,param.getSearchRegion2SecondName());
List<BmsRegion2> region2List = bmsRegion2Service.list(region2LambdaQueryWrapper);
if(region2List.size()>0) {
param.setSearchRegion2Second(region2List.stream().map(a -> a.getId()).collect(Collectors.toList()));
}else{
param.setSearchRegion2Second(Arrays.asList("#"));
}
}
if(StringUtils.hasText(param.getSearchRegion2ThirdName())){
LambdaQueryWrapper<BmsRegion2> region2LambdaQueryWrapper = new LambdaQueryWrapper<>();
region2LambdaQueryWrapper.like(BmsRegion2::getName,param.getSearchRegion2ThirdName());
List<BmsRegion2> region2List = bmsRegion2Service.list(region2LambdaQueryWrapper);
if(region2List.size()>0) {
param.setSearchRegion2Third(region2List.stream().map(a -> a.getId()).collect(Collectors.toList()));
}else{
param.setSearchRegion2Third(Arrays.asList("#"));
}
}
if(StringUtils.hasText(param.getRegionLabel())){
LambdaQueryWrapper<BmsRegion> regionLambdaQueryWrapper = new LambdaQueryWrapper<>();
regionLambdaQueryWrapper.like(BmsRegion::getPathNames,param.getRegionLabel());
List<BmsRegion> regionList = bmsRegionService.list(regionLambdaQueryWrapper);
if(regionList.size()>0) {
param.setRegionIds(regionList.stream().map(a -> a.getId()).collect(Collectors.toList()));
}else{
param.setRegion2Ids(Arrays.asList("#"));
}
}
if(StringUtils.hasText(param.getSearchRegionFirstName())){
LambdaQueryWrapper<BmsRegion> regionLambdaQueryWrapper = new LambdaQueryWrapper<>();
regionLambdaQueryWrapper.like(BmsRegion::getName,param.getSearchRegionFirstName());
List<BmsRegion> regionList = bmsRegionService.list(regionLambdaQueryWrapper);
if(regionList.size()>0) {
param.setSearchRegionFirst(regionList.stream().map(a -> a.getId()).collect(Collectors.toList()));
}else{
param.setSearchRegionFirst(Arrays.asList("#"));
}
}
if(StringUtils.hasText(param.getSearchRegionSecondName())){
LambdaQueryWrapper<BmsRegion> regionLambdaQueryWrapper = new LambdaQueryWrapper<>();
regionLambdaQueryWrapper.like(BmsRegion::getName,param.getSearchRegionSecondName());
List<BmsRegion> regionList = bmsRegionService.list(regionLambdaQueryWrapper);
if(regionList.size()>0) {
param.setSearchRegionSecond(regionList.stream().map(a -> a.getId()).collect(Collectors.toList()));
}else{
param.setSearchRegionSecond(Arrays.asList("#"));
}
}
List<BmsSupplier> list = bmsSupplierService.selectSupplierList(param); List<BmsSupplier> list = bmsSupplierService.selectSupplierList(param);
initSupplierList(list); initSupplierList(list);
initParentList(list); initParentList(list);
@ -187,86 +111,7 @@ public class BmsSupplierController {
@PostMapping("/page") @PostMapping("/page")
@PreAuthorize("hasRole('bms:supplier:query')") @PreAuthorize("hasRole('bms:supplier:query')")
public R<PageVo<BmsSupplier>> getPage(@RequestBody BmsSupplier param){ public R<PageVo<BmsSupplier>> getPage(@RequestBody BmsSupplier param){
//兼容 前端接错参数 param = this.initQueryParam(param);
if(param.getSupplierName()!=null){
param.setName(param.getSupplierName());
}
if(param.getSupplierCode()!=null){
param.setCode(param.getSupplierCode());
}
if(StringUtils.hasText(param.getRegion2Label())){
LambdaQueryWrapper<BmsRegion2> region2LambdaQueryWrapper = new LambdaQueryWrapper<>();
region2LambdaQueryWrapper.like(BmsRegion2::getPathNames,param.getRegion2Label());
List<BmsRegion2> region2List = bmsRegion2Service.list(region2LambdaQueryWrapper);
if(region2List.size()>0) {
param.setRegion2Ids(region2List.stream().map(a -> a.getId()).collect(Collectors.toList()));
}else{
param.setRegion2Ids(Arrays.asList("#"));
}
}
if(StringUtils.hasText(param.getSearchRegion2FirstName())){
LambdaQueryWrapper<BmsRegion2> region2LambdaQueryWrapper = new LambdaQueryWrapper<>();
region2LambdaQueryWrapper.like(BmsRegion2::getName,param.getSearchRegion2FirstName());
List<BmsRegion2> region2List = bmsRegion2Service.list(region2LambdaQueryWrapper);
if(region2List.size()>0) {
param.setSearchRegion2First(region2List.stream().map(a -> a.getId()).collect(Collectors.toList()));
}else{
param.setSearchRegion2First(Arrays.asList("#"));
}
}
if(StringUtils.hasText(param.getSearchRegion2SecondName())){
LambdaQueryWrapper<BmsRegion2> region2LambdaQueryWrapper = new LambdaQueryWrapper<>();
region2LambdaQueryWrapper.like(BmsRegion2::getName,param.getSearchRegion2SecondName());
List<BmsRegion2> region2List = bmsRegion2Service.list(region2LambdaQueryWrapper);
if(region2List.size()>0) {
param.setSearchRegion2Second(region2List.stream().map(a -> a.getId()).collect(Collectors.toList()));
}else{
param.setSearchRegion2Second(Arrays.asList("#"));
}
}
if(StringUtils.hasText(param.getSearchRegion2ThirdName())){
LambdaQueryWrapper<BmsRegion2> region2LambdaQueryWrapper = new LambdaQueryWrapper<>();
region2LambdaQueryWrapper.like(BmsRegion2::getName,param.getSearchRegion2ThirdName());
List<BmsRegion2> region2List = bmsRegion2Service.list(region2LambdaQueryWrapper);
if(region2List.size()>0) {
param.setSearchRegion2Third(region2List.stream().map(a -> a.getId()).collect(Collectors.toList()));
}else{
param.setSearchRegion2Third(Arrays.asList("#"));
}
}
if(StringUtils.hasText(param.getRegionLabel())){
LambdaQueryWrapper<BmsRegion> regionLambdaQueryWrapper = new LambdaQueryWrapper<>();
regionLambdaQueryWrapper.like(BmsRegion::getPathNames,param.getRegionLabel());
List<BmsRegion> regionList = bmsRegionService.list(regionLambdaQueryWrapper);
if(regionList.size()>0) {
param.setRegionIds(regionList.stream().map(a -> a.getId()).collect(Collectors.toList()));
}else{
param.setRegion2Ids(Arrays.asList("#"));
}
}
if(StringUtils.hasText(param.getSearchRegionFirstName())){
LambdaQueryWrapper<BmsRegion> regionLambdaQueryWrapper = new LambdaQueryWrapper<>();
regionLambdaQueryWrapper.like(BmsRegion::getName,param.getSearchRegionFirstName());
List<BmsRegion> regionList = bmsRegionService.list(regionLambdaQueryWrapper);
if(regionList.size()>0) {
param.setSearchRegionFirst(regionList.stream().map(a -> a.getId()).collect(Collectors.toList()));
}else{
param.setSearchRegionFirst(Arrays.asList("#"));
}
}
if(StringUtils.hasText(param.getSearchRegionSecondName())){
LambdaQueryWrapper<BmsRegion> regionLambdaQueryWrapper = new LambdaQueryWrapper<>();
regionLambdaQueryWrapper.like(BmsRegion::getName,param.getSearchRegionSecondName());
List<BmsRegion> regionList = bmsRegionService.list(regionLambdaQueryWrapper);
if(regionList.size()>0) {
param.setSearchRegionSecond(regionList.stream().map(a -> a.getId()).collect(Collectors.toList()));
}else{
param.setSearchRegionSecond(Arrays.asList("#"));
}
}
if(param.getLoadByCurrent()!=null&&param.getLoadByCurrent().equals(1)){ if(param.getLoadByCurrent()!=null&&param.getLoadByCurrent().equals(1)){
PageUtil.setPageSize(param.getPageSize()+""); PageUtil.setPageSize(param.getPageSize()+"");
@ -283,7 +128,20 @@ public class BmsSupplierController {
@PostMapping("/exportExcel") @PostMapping("/exportExcel")
@PreAuthorize("hasRole('bms:supplier:query')") @PreAuthorize("hasRole('bms:supplier:query')")
public R<List<BmsSupplier>> exportExcel(@RequestBody BmsSupplier param){ public R<List<BmsSupplierExcelBo>> exportExcel(@RequestBody BmsSupplier param){
param = this.initQueryParam(param);
List<BmsSupplier> list = bmsSupplierService.selectSupplierList(param);
initSupplierList(list);
initParentList(list);
List<BmsSupplierExcelBo> boList = list.stream().map(a->BmsSupplierExcelBo.toExcelBo(a)).collect(Collectors.toList());
return R.ok(boList);
}
private BmsSupplier initQueryParam(BmsSupplier param){
//兼容 前端接错参数 //兼容 前端接错参数
if(param.getSupplierName()!=null){ if(param.getSupplierName()!=null){
param.setName(param.getSupplierName()); param.setName(param.getSupplierName());
@ -363,11 +221,7 @@ public class BmsSupplierController {
param.setSearchRegionSecond(Arrays.asList("#")); param.setSearchRegionSecond(Arrays.asList("#"));
} }
} }
return param;
List<BmsSupplier> list = bmsSupplierService.selectSupplierList(param);
initSupplierList(list);
initParentList(list);
return R.ok(list);
} }
/** /**
@ -978,5 +832,18 @@ public class BmsSupplierController {
} }
} }
/**
* 新增
* @param param
* @return
*/
@PostMapping("/importExcel")
// @SysLog(module = SystemModule.BASE, title = "供应商", biz = BizType.INSERT)
@PreAuthorize("hasRole('bms:supplier:insert')")
public R<?> importExcel(@RequestBody List<BmsSupplierExcelBo> param){
return R.ok();
}
} }

126
src/main/java/com/qs/serve/modules/bms/entity/bo/BmsSupplierExcelBo.java

@ -0,0 +1,126 @@
package com.qs.serve.modules.bms.entity.bo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.qs.serve.modules.bms.entity.BmsRegion;
import com.qs.serve.modules.bms.entity.BmsRegion2;
import com.qs.serve.modules.bms.entity.BmsSupplier;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;
/**
* @author YenHex
* @since 2022/10/11
*/
@Data
public class BmsSupplierExcelBo {
// 序号
private String id;
// 客户名称
private String customerName;
// 客户编码
private String customerCode;
// 销售大区名称
private String firstLevelSalesRegionName;
// 销售区域名称
private String salesRegionName;
// 省
private String firstLevelAdministrativeRegionName;
// 市
private String secondaryLevelAdministrativeRegionName;
// 区
private String administrativeRegionName;
// 是否供应商
private Integer isSupplier;
// 所属公司
private String affiliatedCompany;
// 主要负责人
private String mainHeadName;
private String mainHeadCode;
// 次要负责人
private String minorHeadNames;
private String minorHeadCodes;
// 是否可投放费用
private Integer isExpendableExpense;
// 闭户状态
private Integer closeAccountStatus;
// 闭户日期
private LocalDateTime closeAccountDate;
// 暂不合作状态
private Integer suspendCooperationStatus;
// 暂不合作日期
private LocalDateTime suspendCooperationDate;
// 创建时间
private LocalDateTime createTime;
// 更新时间
private LocalDateTime updateTime;
private String errorInfo;
public static BmsSupplierExcelBo toExcelBo(BmsSupplier bmsSupplier){
BmsSupplierExcelBo bo = new BmsSupplierExcelBo();
bo.setId(bmsSupplier.getId());
bo.setCustomerName(bmsSupplier.getName());
bo.setCustomerCode(bmsSupplier.getCode());
if(bmsSupplier.getRegionFirstInfo()!=null) {
BmsRegion firstRegion = (BmsRegion)bmsSupplier.getRegionFirstInfo();
bo.setFirstLevelSalesRegionName(firstRegion.getName());
}
if(bmsSupplier.getRegionSecondInfo()!=null) {
BmsRegion secRegion = (BmsRegion)bmsSupplier.getRegionSecondInfo();
bo.setSalesRegionName(secRegion.getName());
}
if(bmsSupplier.getRegion2FirstInfo()!=null) {
BmsRegion2 first2Region = (BmsRegion2)bmsSupplier.getRegion2FirstInfo();
bo.setFirstLevelAdministrativeRegionName(first2Region.getName());
}
if(bmsSupplier.getRegion2SecondInfo()!=null) {
BmsRegion2 sec2Region = (BmsRegion2)bmsSupplier.getRegion2SecondInfo();
bo.setSecondaryLevelAdministrativeRegionName(sec2Region.getName());
}
if(bmsSupplier.getRegion2ThirdInfo()!=null) {
BmsRegion2 third2Region = (BmsRegion2)bmsSupplier.getRegion2ThirdInfo();
bo.setAdministrativeRegionName(third2Region.getName());
}
bo.setIsSupplier(bmsSupplier.getSupplierFlag());
bo.setAffiliatedCompany(bmsSupplier.getBelong());
bo.setMainHeadName(bmsSupplier.getUserName());
bo.setMainHeadCode(bmsSupplier.getUserCode());
bo.setMinorHeadNames(bmsSupplier.getOtherUserNames());
bo.setMinorHeadCodes(bmsSupplier.getOtherUserCodes());
bo.setIsExpendableExpense(bmsSupplier.getCostFlag());
bo.setCloseAccountDate(bmsSupplier.getStopFlagDate());
bo.setCloseAccountStatus(bmsSupplier.getStopFlag());
bo.setSuspendCooperationDate(bmsSupplier.getCooperatePauseFlagDate());
bo.setSuspendCooperationStatus(bmsSupplier.getCooperatePauseFlag());
bo.setCreateTime(bmsSupplier.getCreateTime());
bo.setUpdateTime(bmsSupplier.getUpdateTime());
return bo;
}
}
Loading…
Cancel
Save