Browse Source

添加客户临时表、补充活动字段、添加致远SKD

mssql
Yen 3 years ago
parent
commit
ec5d2dea83
  1. 56
      pom.xml
  2. 8
      src/main/java/com/qs/serve/common/framework/exception/UnifiedExceptionHandler.java
  3. 49
      src/main/java/com/qs/serve/common/util/SeeYonUtil.java
  4. 6
      src/main/java/com/qs/serve/modules/bms/controller/BmsRegionController.java
  5. 28
      src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierController.java
  6. 27
      src/main/java/com/qs/serve/modules/bms/entity/BmsSupplier.java
  7. 75
      src/main/java/com/qs/serve/modules/bms/service/impl/BmsSupplierServiceImpl.java
  8. 17
      src/main/java/com/qs/serve/modules/his/entity/HisUserSupplier.java
  9. 10
      src/main/java/com/qs/serve/modules/his/service/HisUserSupplierService.java
  10. 58
      src/main/java/com/qs/serve/modules/his/service/impl/HisUserSupplierServiceImpl.java
  11. 11
      src/main/java/com/qs/serve/modules/tbs/controller/TbsActivityController.java
  12. 3
      src/main/java/com/qs/serve/modules/tbs/entity/TbsActivity.java
  13. 3
      src/main/java/com/qs/serve/modules/tbs/entity/vo/TbsActivityVo.java
  14. 2
      src/main/java/com/qs/serve/modules/tbs/service/impl/TbsActivityServiceImpl.java

56
pom.xml

@ -27,9 +27,65 @@
<mybatis-plus.version>3.5.2</mybatis-plus.version> <mybatis-plus.version>3.5.2</mybatis-plus.version>
<skipTests>true</skipTests> <skipTests>true</skipTests>
<wx.java.version>4.2.0</wx.java.version> <wx.java.version>4.2.0</wx.java.version>
<lib.dir>D:\workspace-main\JiaShiLi\jsl-questionnaire-base\src\main\resources\lib\</lib.dir>
</properties> </properties>
<dependencies> <dependencies>
<!-- 致远客户端所需依赖 START -->
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-spring-boot-starter-jaxrs</artifactId>
<version>3.2.0</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-json-provider</artifactId>
<version>2.8.5</version>
</dependency>
<dependency>
<groupId>org.glassfish.hk2</groupId>
<artifactId>hk2-api</artifactId>
<version>3.0.1</version>
</dependency>
<dependency>
<groupId>javax.inject</groupId>
<artifactId>javax.inject</artifactId>
<version>1</version>
</dependency>
<!-- 致远客户端所需依赖 END -->
<!-- 本地依赖 START -->
<dependency>
<groupId>com.seeyon</groupId>
<artifactId>seeyon</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${lib.dir}/seeyon-ctp-core.jar</systemPath>
</dependency>
<dependency>
<groupId>com.jsersey</groupId>
<artifactId>jsersey-client</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${lib.dir}/jersey-client.jar</systemPath>
</dependency>
<dependency>
<groupId>com.jsersey</groupId>
<artifactId>jsersey-common</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${lib.dir}/jersey-common.jar</systemPath>
</dependency>
<dependency>
<groupId>com.jsersey</groupId>
<artifactId>jsersey-guava</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${lib.dir}/jersey-guava.jar</systemPath>
</dependency>
<!-- 本地依赖 END -->
<dependency> <dependency>
<groupId>cn.hutool</groupId> <groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId> <artifactId>hutool-all</artifactId>

8
src/main/java/com/qs/serve/common/framework/exception/UnifiedExceptionHandler.java

@ -5,6 +5,7 @@ import com.qs.serve.common.model.dto.R;
import com.qs.serve.common.model.enums.HttpCode; import com.qs.serve.common.model.enums.HttpCode;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.dao.DuplicateKeyException; import org.springframework.dao.DuplicateKeyException;
import org.springframework.http.converter.HttpMessageNotReadableException;
import org.springframework.http.converter.HttpMessageNotWritableException; import org.springframework.http.converter.HttpMessageNotWritableException;
import org.springframework.security.access.AccessDeniedException; import org.springframework.security.access.AccessDeniedException;
import org.springframework.security.authentication.BadCredentialsException; import org.springframework.security.authentication.BadCredentialsException;
@ -91,6 +92,13 @@ public class UnifiedExceptionHandler {
return R.error("限制重复数据,请联系管理员"); return R.error("限制重复数据,请联系管理员");
} }
@ExceptionHandler(value = HttpMessageNotReadableException.class)
@ResponseBody
public R handleHttpMessageNotReadableException(HttpMessageNotReadableException e) {
e.printStackTrace();
return R.error("请求参数无法解析");
}
@ExceptionHandler({ @ExceptionHandler({
SQLIntegrityConstraintViolationException.class, SQLIntegrityConstraintViolationException.class,
}) })

49
src/main/java/com/qs/serve/common/util/SeeYonUtil.java

@ -0,0 +1,49 @@
package com.qs.serve.common.util;
import com.alibaba.fastjson.JSON;
import com.seeyon.client.CTPRestClient;
import com.seeyon.client.CTPServiceClientManager;
import lombok.Getter;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Scope;
import java.util.HashMap;
import java.util.Map;
/**
* @Author JcYen
* @Date 2021/5/21
*/
@Slf4j
@Configuration
public class SeeYonUtil {
public static String restUrl = "http://192.168.10.7";
public static String userName = "kenpbtz";
public static String password = "66da74b2-f141-4b01-ae58-ac6ce4cfcc47";
/**
* 致远客户端
* 文献http://open.seeyon.com/book/ctp/restjie-kou/restjie-kou-java-ke-hu-duan.html
* @return
*/
public static CTPRestClient getRestClient() {
CTPServiceClientManager clientManager = CTPServiceClientManager.getInstance(restUrl);
CTPRestClient client = null;
try {
client = clientManager.getRestClient();
//登录校验,成功返回true,失败返回false,此过程并会把验证通过获取的token保存在缓存中
//再请求访问其他资源时会自动把token放入请求header中。
client.authenticate(userName, password);
} catch (Exception e) {
log.error("致远客户端获取异常:{}",e.getMessage(),e);
}
return client;
}
}

6
src/main/java/com/qs/serve/modules/bms/controller/BmsRegionController.java

@ -12,6 +12,7 @@ import com.qs.serve.modules.bms.entity.*;
import com.qs.serve.modules.bms.entity.bo.BmsRegionBatchBo; import com.qs.serve.modules.bms.entity.bo.BmsRegionBatchBo;
import com.qs.serve.modules.bms.entity.vo.BmsRegionTreeVo; import com.qs.serve.modules.bms.entity.vo.BmsRegionTreeVo;
import com.qs.serve.modules.bms.service.*; import com.qs.serve.modules.bms.service.*;
import com.qs.serve.modules.his.service.HisUserSupplierService;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.cache.annotation.Cacheable; import org.springframework.cache.annotation.Cacheable;
@ -42,6 +43,7 @@ public class BmsRegionController {
private BmsFactoryService bmsFactoryService; private BmsFactoryService bmsFactoryService;
private BmsChannelPointService bmsChannelPointService; private BmsChannelPointService bmsChannelPointService;
private BmsRegionUserService bmsRegionUserService; private BmsRegionUserService bmsRegionUserService;
private HisUserSupplierService hisUserSupplierService;
/** /**
* 列表 * 列表
@ -255,6 +257,8 @@ public class BmsRegionController {
} }
} }
bmsRegionService.flushAllLevel(false); bmsRegionService.flushAllLevel(false);
//清空临时表
hisUserSupplierService.cleanTable();
return R.ok(); return R.ok();
} }
@ -292,6 +296,8 @@ public class BmsRegionController {
//删除商品限制 //删除商品限制
bmsRuleRegionService.removeByRegionId(Long.parseLong(id)); bmsRuleRegionService.removeByRegionId(Long.parseLong(id));
boolean result = bmsRegionService.removeById(id); boolean result = bmsRegionService.removeById(id);
//清空临时表
hisUserSupplierService.cleanTable();
return R.isTrue(result); return R.isTrue(result);
} }

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

@ -15,6 +15,7 @@ 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;
import com.qs.serve.modules.bms.service.BmsRegion2Service; import com.qs.serve.modules.bms.service.BmsRegion2Service;
import com.qs.serve.modules.bms.service.BmsRegionService; import com.qs.serve.modules.bms.service.BmsRegionService;
import com.qs.serve.modules.his.entity.HisUserSupplier;
import com.qs.serve.modules.his.service.HisUserSupplierService; import com.qs.serve.modules.his.service.HisUserSupplierService;
import com.qs.serve.modules.sys.entity.SysUser; import com.qs.serve.modules.sys.entity.SysUser;
import com.qs.serve.modules.sys.entity.bo.SysRelateSuppliersParam; import com.qs.serve.modules.sys.entity.bo.SysRelateSuppliersParam;
@ -59,10 +60,6 @@ public class BmsSupplierController {
@GetMapping("/list") @GetMapping("/list")
@PreAuthorize("hasRole('bms:supplier:query')") @PreAuthorize("hasRole('bms:supplier:query')")
public R<List<BmsSupplier>> getList(BmsSupplier param){ public R<List<BmsSupplier>> getList(BmsSupplier param){
if(param.getLoadByCurrent()!=null&&param.getLoadByCurrent().equals(1)){
//hisUserSupplierService.list()
return R.ok();
}
String userId = param.getUserId(); String userId = param.getUserId();
param.setCurrUserId(userId); param.setCurrUserId(userId);
List<BmsSupplier> list = bmsSupplierService.selectSupplierList(param); List<BmsSupplier> list = bmsSupplierService.selectSupplierList(param);
@ -87,6 +84,17 @@ public class BmsSupplierController {
@GetMapping("/page") @GetMapping("/page")
@PreAuthorize("hasRole('bms:supplier:query')") @PreAuthorize("hasRole('bms:supplier:query')")
public R<PageVo<BmsSupplier>> getPage(BmsSupplier param){ public R<PageVo<BmsSupplier>> getPage(BmsSupplier param){
if(param.getLoadByCurrent()!=null&&param.getLoadByCurrent().equals(1)){
String userId = AuthContextUtils.getSysUserId();
//初始化
hisUserSupplierService.initByUserId(userId,false);
HisUserSupplier userSupplier = param.toHisUserSupplier(userId,null);
LambdaQueryWrapper<HisUserSupplier> lqw = new LambdaQueryWrapper<>(userSupplier);
PageUtil.startPage();
List<HisUserSupplier> list = hisUserSupplierService.list(lqw);
List<BmsSupplier> supplierList = list.stream().map(HisUserSupplier::toSupplier).collect(Collectors.toList());
return R.byPageHelperList(list,supplierList);
}
PageUtil.startPage(); PageUtil.startPage();
List<BmsSupplier> list = bmsSupplierService.selectSupplierList(param); List<BmsSupplier> list = bmsSupplierService.selectSupplierList(param);
initSupplierList(list); initSupplierList(list);
@ -155,6 +163,8 @@ public class BmsSupplierController {
bmsSupplierService.updateById(supplierParam); bmsSupplierService.updateById(supplierParam);
} }
initSupplierOtherInfo(supplierIds); initSupplierOtherInfo(supplierIds);
//清空临时表
hisUserSupplierService.cleanTable();
return R.ok(); return R.ok();
} }
@ -174,6 +184,8 @@ public class BmsSupplierController {
bmsSupplier.setOtherUserIds(param.getUserIds()==null?new String[]{}:uids.toArray(new String[uids.size()])); bmsSupplier.setOtherUserIds(param.getUserIds()==null?new String[]{}:uids.toArray(new String[uids.size()]));
bmsSupplierService.updateById(bmsSupplier); bmsSupplierService.updateById(bmsSupplier);
initSupplierOtherInfo(Arrays.asList(supplier.getId())); initSupplierOtherInfo(Arrays.asList(supplier.getId()));
//清空临时表
hisUserSupplierService.cleanTable();
return R.ok(); return R.ok();
} }
@ -208,6 +220,8 @@ public class BmsSupplierController {
} }
} }
initSupplierOtherInfo(supplierIds); initSupplierOtherInfo(supplierIds);
//清空临时表
hisUserSupplierService.cleanTable();
return R.ok(); return R.ok();
} }
@ -238,6 +252,8 @@ public class BmsSupplierController {
bmsSupplierService.updateById(supplier1); bmsSupplierService.updateById(supplier1);
} }
initSupplierOtherInfo(Arrays.asList(supplier.getId())); initSupplierOtherInfo(Arrays.asList(supplier.getId()));
//清空临时表
hisUserSupplierService.cleanTable();
return R.ok(); return R.ok();
} }
@ -398,6 +414,8 @@ public class BmsSupplierController {
@PreAuthorize("hasRole('bms:supplier:insert')") @PreAuthorize("hasRole('bms:supplier:insert')")
public R<?> save(@RequestBody @Valid BmsSupplierBo param){ public R<?> save(@RequestBody @Valid BmsSupplierBo param){
bmsSupplierService.edit(param); bmsSupplierService.edit(param);
//清空临时表
hisUserSupplierService.cleanTable();
return R.ok(); return R.ok();
} }
@ -414,6 +432,8 @@ public class BmsSupplierController {
return R.error("含有子公司客户无法删除"); return R.error("含有子公司客户无法删除");
} }
bmsSupplierService.removeById(id); bmsSupplierService.removeById(id);
//清空临时表
hisUserSupplierService.cleanTable();
return R.ok(); return R.ok();
} }

27
src/main/java/com/qs/serve/modules/bms/entity/BmsSupplier.java

@ -9,6 +9,7 @@ import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonProperty;
import com.qs.serve.common.framework.mybatis.handler.meta.SplitStringTypeHandler; import com.qs.serve.common.framework.mybatis.handler.meta.SplitStringTypeHandler;
import com.qs.serve.modules.his.entity.HisUserSupplier;
import com.qs.serve.modules.sys.entity.dto.SysUserVo; import com.qs.serve.modules.sys.entity.dto.SysUserVo;
import lombok.Data; import lombok.Data;
import org.apache.ibatis.type.JdbcType; import org.apache.ibatis.type.JdbcType;
@ -42,6 +43,9 @@ public class BmsSupplier implements Serializable {
/** 三级区域ID */ /** 三级区域ID */
private String regionThird; private String regionThird;
/** 四级区域ID */
private String regionFourthly;
/** 最子级区域ID */ /** 最子级区域ID */
private String regionLast; private String regionLast;
@ -54,6 +58,9 @@ public class BmsSupplier implements Serializable {
/** 行政三级区域ID */ /** 行政三级区域ID */
private String region2Third; private String region2Third;
/** 行政四级区域ID */
private String region2Fourthly;
/** 行政最子级区域ID */ /** 行政最子级区域ID */
private String region2Last; private String region2Last;
@ -177,5 +184,25 @@ public class BmsSupplier implements Serializable {
@TableField(exist = false) @TableField(exist = false)
private Integer loadByCurrent; private Integer loadByCurrent;
public HisUserSupplier toHisUserSupplier(String userId,Integer type){
HisUserSupplier userSupplier = new HisUserSupplier();
userSupplier.setUserId(userId);
if(this.getUserId()!=null){
userSupplier.setSupplierId(Long.parseLong(this.getId()));
}
userSupplier.setSupplierName(this.getName());
userSupplier.setSupplierCode(this.getCode());
userSupplier.setSaleRegionFirst(this.getRegionFirst());
userSupplier.setSaleRegionSecond(this.getRegionSecond());
userSupplier.setSaleRegionThird(this.getRegionThird());
userSupplier.setSaleRegionFourthly(this.getRegionFourthly());
userSupplier.setBizRegionFirst(this.getRegion2First());
userSupplier.setBizRegionSecond(this.getRegion2Second());
userSupplier.setBizRegionThird(this.getRegion2Third());
userSupplier.setBizRegionFourthly(this.getRegion2Fourthly());
userSupplier.setType(type);
return userSupplier;
}
} }

75
src/main/java/com/qs/serve/modules/bms/service/impl/BmsSupplierServiceImpl.java

@ -81,10 +81,19 @@ public class BmsSupplierServiceImpl extends ServiceImpl<BmsSupplierMapper,BmsSup
public BmsSupplier getByCode(String code,String belong) { public BmsSupplier getByCode(String code,String belong) {
LambdaQueryWrapper<BmsSupplier> lqw = new LambdaQueryWrapper<>(); LambdaQueryWrapper<BmsSupplier> lqw = new LambdaQueryWrapper<>();
lqw.eq(BmsSupplier::getCode,code); lqw.eq(BmsSupplier::getCode,code);
lqw.eq(BmsSupplier::getBelong,belong); if(belong!=null){
lqw.eq(BmsSupplier::getBelong,belong);
}
return this.getOne(lqw,false); return this.getOne(lqw,false);
} }
@Override
public BmsSupplier getByName(String String) {
LambdaQueryWrapper<BmsSupplier> lqw = new LambdaQueryWrapper<>();
lqw.eq(BmsSupplier::getName,String);
return this.getOne(lqw,true);
}
@Override @Override
public List<BmsSupplier> listChild(String pid) { public List<BmsSupplier> listChild(String pid) {
LambdaQueryWrapper<BmsSupplier> lqw = new LambdaQueryWrapper<>(); LambdaQueryWrapper<BmsSupplier> lqw = new LambdaQueryWrapper<>();
@ -98,7 +107,8 @@ public class BmsSupplierServiceImpl extends ServiceImpl<BmsSupplierMapper,BmsSup
lqw.and(w-> lqw.and(w->
w.eq(BmsSupplier::getRegionFirst,regionId) w.eq(BmsSupplier::getRegionFirst,regionId)
.or().eq(BmsSupplier::getRegionSecond,regionId) .or().eq(BmsSupplier::getRegionSecond,regionId)
.or().eq(BmsSupplier::getRegionThird,regionId)); .or().eq(BmsSupplier::getRegionThird,regionId))
.or().eq(BmsSupplier::getRegionFourthly,regionId);
return this.list(lqw); return this.list(lqw);
} }
@ -108,7 +118,8 @@ public class BmsSupplierServiceImpl extends ServiceImpl<BmsSupplierMapper,BmsSup
lqw.and(w-> lqw.and(w->
w.eq(BmsSupplier::getRegion2First,regionId) w.eq(BmsSupplier::getRegion2First,regionId)
.or().eq(BmsSupplier::getRegion2Second,regionId) .or().eq(BmsSupplier::getRegion2Second,regionId)
.or().eq(BmsSupplier::getRegion2Third,regionId)); .or().eq(BmsSupplier::getRegion2Third,regionId)
.or().eq(BmsSupplier::getRegion2Fourthly,regionId));
return this.list(lqw); return this.list(lqw);
} }
@ -159,22 +170,33 @@ public class BmsSupplierServiceImpl extends ServiceImpl<BmsSupplierMapper,BmsSup
* @param regionId * @param regionId
*/ */
private void initRegion(BmsSupplier supplier,String regionId){ private void initRegion(BmsSupplier supplier,String regionId){
BmsRegion region1 = regionService.getById(regionId); if(regionId==null||regionId.equals("0")){
if(region1==null){
supplier.setRegionFirst("0"); supplier.setRegionFirst("0");
supplier.setRegionSecond(""); supplier.setRegionSecond("");
supplier.setRegionThird(""); supplier.setRegionThird("");
supplier.setRegionFourthly("");
supplier.setRegionLast("0"); supplier.setRegionLast("0");
return; return;
} }
BmsRegion region2 = regionService.getById(region1.getPid()); List<BmsRegion> childList = regionService.listChild(regionId);
if(region1.getLevel()!=3){ //判断是否有子级节点
Assert.throwEx("供应商需选择第三级区域"); if(childList.size()>0){
Assert.throwEx("请选择最后一级销售区域");
} }
supplier.setRegionLast(regionId); BmsRegion currentRegion = regionService.getById(regionId);
supplier.setRegionFirst(region2.getPid()); String[] regionIds = currentRegion.getPathIds().split("_");
supplier.setRegionSecond(region2.getId()); for (int i = 0; i < regionIds.length; i++) {
supplier.setRegionThird(region1.getId()); if(i==0){
supplier.setRegionFirst(regionIds[i]);
}else if(i==1){
supplier.setRegionSecond(regionIds[i]);
}else if(i==2){
supplier.setRegionThird(regionIds[i]);
}else if(i==3){
supplier.setRegionFourthly(regionIds[i]);
}
}
supplier.setRegionLast(currentRegion.getId());
} }
/** /**
@ -183,22 +205,33 @@ public class BmsSupplierServiceImpl extends ServiceImpl<BmsSupplierMapper,BmsSup
* @param regionId * @param regionId
*/ */
private void initRegion2(BmsSupplier supplier,String regionId){ private void initRegion2(BmsSupplier supplier,String regionId){
BmsRegion2 region1 = region2Service.getById(regionId); if(regionId==null||regionId.equals("0")){
if(region1==null){
supplier.setRegion2First("0"); supplier.setRegion2First("0");
supplier.setRegion2Second(""); supplier.setRegion2Second("");
supplier.setRegion2Third(""); supplier.setRegion2Third("");
supplier.setRegion2Fourthly("");
supplier.setRegion2Last("0"); supplier.setRegion2Last("0");
return; return;
} }
BmsRegion2 region2 = region2Service.getById(region1.getPid()); List<BmsRegion2> childList = region2Service.listChild(regionId);
if(region1.getLevel()!=3){ //判断是否有子级节点
Assert.throwEx("供应商需选择第三级区域"); if(childList.size()>0){
Assert.throwEx("请选择最后一级销售区域");
}
BmsRegion2 currentRegion = region2Service.getById(regionId);
String[] regionIds = currentRegion.getPathIds().split("_");
for (int i = 0; i < regionIds.length; i++) {
if(i==0){
supplier.setRegion2First(regionIds[i]);
}else if(i==1){
supplier.setRegion2Second(regionIds[i]);
}else if(i==2){
supplier.setRegion2Third(regionIds[i]);
}else if(i==3){
supplier.setRegion2Fourthly(regionIds[i]);
}
} }
supplier.setRegion2Last(regionId); supplier.setRegionLast(currentRegion.getId());
supplier.setRegion2First(region2.getPid());
supplier.setRegion2Second(region2.getId());
supplier.setRegion2Third(region1.getId());
} }
} }

17
src/main/java/com/qs/serve/modules/his/entity/HisUserSupplier.java

@ -9,6 +9,7 @@ import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonProperty;
import com.qs.serve.modules.bms.entity.BmsSupplier;
import lombok.Data; import lombok.Data;
import org.hibernate.validator.constraints.Length; import org.hibernate.validator.constraints.Length;
import org.springframework.format.annotation.DateTimeFormat; import org.springframework.format.annotation.DateTimeFormat;
@ -97,5 +98,21 @@ public class HisUserSupplier implements Serializable {
@Length(max = 32,message = "行政区域4长度不能超过32字") @Length(max = 32,message = "行政区域4长度不能超过32字")
private String bizRegionFourthly; private String bizRegionFourthly;
public BmsSupplier toSupplier(){
BmsSupplier bmsSupplier = new BmsSupplier();
bmsSupplier.setId(this.getSupplierId()+"");
bmsSupplier.setName(this.getSupplierName());
bmsSupplier.setCode(this.getSupplierCode());
bmsSupplier.setRegionFirst(this.getSaleRegionFirst());
bmsSupplier.setRegionSecond(this.getSaleRegionSecond());
bmsSupplier.setRegionThird(this.getSaleRegionThird());
bmsSupplier.setRegionFourthly(this.getSaleRegionFourthly());
bmsSupplier.setRegion2First(this.getBizRegionFirst());
bmsSupplier.setRegion2Second(this.getBizRegionSecond());
bmsSupplier.setRegion2Third(this.getBizRegionThird());
bmsSupplier.setRegionFourthly(this.getBizRegionFourthly());
return bmsSupplier;
}
} }

10
src/main/java/com/qs/serve/modules/his/service/HisUserSupplierService.java

@ -1,10 +1,11 @@
package com.qs.serve.modules.his.service; package com.qs.serve.modules.his.service;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.qs.serve.modules.bms.entity.BmsSupplier;
import com.qs.serve.modules.his.entity.HisUserSupplier; import com.qs.serve.modules.his.entity.HisUserSupplier;
import java.io.Serializable; import java.io.Serializable;
import java.util.List;
/** /**
* 供应商负责人 服务接口 * 供应商负责人 服务接口
* @author YenHex * @author YenHex
@ -12,12 +13,17 @@ import java.io.Serializable;
*/ */
public interface HisUserSupplierService extends IService<HisUserSupplier> { public interface HisUserSupplierService extends IService<HisUserSupplier> {
/** /**
* 初始化 * 初始化
* @param userId * @param userId
* @return * @return
*/ */
boolean initByUserId(String userId); boolean initByUserId(String userId,boolean hasCheck);
boolean checkInit(String userId);
/** /**
* 删除 * 删除

58
src/main/java/com/qs/serve/modules/his/service/impl/HisUserSupplierServiceImpl.java

@ -38,31 +38,30 @@ public class HisUserSupplierServiceImpl extends ServiceImpl<HisUserSupplierMappe
private BmsRegionUserService regionUserService; private BmsRegionUserService regionUserService;
@Override @Override
public boolean initByUserId(String userId) { public boolean checkInit(String userId) {
LambdaQueryWrapper<HisUserSupplier> lqwExist = new LambdaQueryWrapper<>(); LambdaQueryWrapper<HisUserSupplier> lqwExist = new LambdaQueryWrapper<>();
lqwExist.eq(HisUserSupplier::getUserId,userId); lqwExist.eq(HisUserSupplier::getUserId,userId);
long count = this.count(lqwExist); long count = this.count(lqwExist);
if(count>0L){ if(count>0L){
return true; return true;
} }
return false;
}
@Override
public boolean initByUserId(String userId,boolean hasCheck) {
if(!hasCheck){
boolean checkInit = this.checkInit(userId);
if(checkInit){
return true;
}
}
BmsSupplier param = new BmsSupplier(); BmsSupplier param = new BmsSupplier();
param.setCurrUserId(userId); param.setCurrUserId(userId);
List<BmsSupplier> list = bmsSupplierService.selectSupplierList(param); List<BmsSupplier> list = bmsSupplierService.selectSupplierList(param);
List<HisUserSupplier> userSuppliers = new ArrayList<>(); List<HisUserSupplier> userSuppliers = new ArrayList<>();
for (BmsSupplier supplier : list) { for (BmsSupplier supplier : list) {
HisUserSupplier userSupplier = new HisUserSupplier(); HisUserSupplier userSupplier = supplier.toHisUserSupplier(userId,3);
userSupplier.setUserId(userId);
userSupplier.setSupplierId(Long.parseLong(supplier.getId()));
userSupplier.setSupplierCode(supplier.getCode());
userSupplier.setSupplierName(supplier.getName());
userSupplier.setType(3);
userSupplier.setMasterFlag(supplier.getMasterFlag());
userSupplier.setSaleRegionFirst(supplier.getRegionFirst());
userSupplier.setSaleRegionSecond(supplier.getRegionSecond());
userSupplier.setSaleRegionThird(supplier.getRegionThird());
userSupplier.setBizRegionFirst(supplier.getRegion2First());
userSupplier.setBizRegionSecond(supplier.getRegion2Second());
userSupplier.setBizRegionThird(supplier.getRegion2Third());
userSuppliers.add(userSupplier); userSuppliers.add(userSupplier);
} }
LambdaQueryWrapper<BmsRegionUser> regionUserLqw = new LambdaQueryWrapper<>(); LambdaQueryWrapper<BmsRegionUser> regionUserLqw = new LambdaQueryWrapper<>();
@ -75,12 +74,11 @@ public class HisUserSupplierServiceImpl extends ServiceImpl<HisUserSupplierMappe
if(regionSaleIds.size()>0){ if(regionSaleIds.size()>0){
List<BmsRegion> saleRegions = saleRegionService.listByIds(regionSaleIds); List<BmsRegion> saleRegions = saleRegionService.listByIds(regionSaleIds);
Map<Integer,List<BmsRegion>> saleRegionsMap = saleRegions.stream().collect(Collectors.groupingBy(BmsRegion::getLevel)); Map<Integer,List<BmsRegion>> saleRegionsMap = saleRegions.stream().collect(Collectors.groupingBy(BmsRegion::getLevel));
List<String> regionIds01 = saleRegionsMap.get(1).stream().map(BmsRegion::getId).collect(Collectors.toList()); for (Integer level : saleRegionsMap.keySet()) {
List<String> regionIds02 = saleRegionsMap.get(2).stream().map(BmsRegion::getId).collect(Collectors.toList()); List<BmsRegion> saleRegionListByLevel = saleRegionsMap.get(level);
List<String> regionIds03 = saleRegionsMap.get(3).stream().map(BmsRegion::getId).collect(Collectors.toList()); List<String> regionIds = saleRegionListByLevel.stream().map(BmsRegion::getId).collect(Collectors.toList());
toHisUserSupplier(userSuppliers,regionIds01,1,userId); toHisUserSupplier(userSuppliers,0,regionIds,3,userId);
toHisUserSupplier(userSuppliers,regionIds02,2,userId); }
toHisUserSupplier(userSuppliers,regionIds03,3,userId);
} }
List<String> regionBizIds = regionUsers.stream() List<String> regionBizIds = regionUsers.stream()
.filter(a->a.getType().equals(1)) .filter(a->a.getType().equals(1))
@ -89,12 +87,11 @@ public class HisUserSupplierServiceImpl extends ServiceImpl<HisUserSupplierMappe
if(regionBizIds.size()>0){ if(regionBizIds.size()>0){
List<BmsRegion2> bizRegions = bizRegionService.listByIds(regionBizIds); List<BmsRegion2> bizRegions = bizRegionService.listByIds(regionBizIds);
Map<Integer,List<BmsRegion2>> saleRegionsMap = bizRegions.stream().collect(Collectors.groupingBy(BmsRegion2::getLevel)); Map<Integer,List<BmsRegion2>> saleRegionsMap = bizRegions.stream().collect(Collectors.groupingBy(BmsRegion2::getLevel));
List<String> regionIds01 = saleRegionsMap.get(1).stream().map(BmsRegion2::getId).collect(Collectors.toList()); for (Integer level : saleRegionsMap.keySet()) {
List<String> regionIds02 = saleRegionsMap.get(2).stream().map(BmsRegion2::getId).collect(Collectors.toList()); List<BmsRegion2> region2List = saleRegionsMap.get(level);
List<String> regionIds03 = saleRegionsMap.get(3).stream().map(BmsRegion2::getId).collect(Collectors.toList()); List<String> region2Ids = region2List.stream().map(BmsRegion2::getId).collect(Collectors.toList());
toHisUserSupplier(userSuppliers,regionIds01,1,userId); toHisUserSupplier(userSuppliers,1,region2Ids,1,userId);
toHisUserSupplier(userSuppliers,regionIds02,2,userId); }
toHisUserSupplier(userSuppliers,regionIds03,3,userId);
} }
if(userSuppliers.size()>0){ if(userSuppliers.size()>0){
this.saveBatch(userSuppliers); this.saveBatch(userSuppliers);
@ -108,7 +105,8 @@ public class HisUserSupplierServiceImpl extends ServiceImpl<HisUserSupplierMappe
return false; return false;
} }
private void toHisUserSupplier(List<HisUserSupplier> userSuppliers,List<String> regionIds,Integer level,String userId){
private void toHisUserSupplier(List<HisUserSupplier> userSuppliers,Integer type,List<String> regionIds,Integer level,String userId){
if(regionIds.size()>0){ if(regionIds.size()>0){
LambdaQueryWrapper<BmsSupplier> lqw = new LambdaQueryWrapper<>(); LambdaQueryWrapper<BmsSupplier> lqw = new LambdaQueryWrapper<>();
if(level.equals(1)){ if(level.equals(1)){
@ -120,11 +118,7 @@ public class HisUserSupplierServiceImpl extends ServiceImpl<HisUserSupplierMappe
} }
List<BmsSupplier> supplierList = bmsSupplierService.list(lqw); List<BmsSupplier> supplierList = bmsSupplierService.list(lqw);
for (BmsSupplier supplier : supplierList) { for (BmsSupplier supplier : supplierList) {
HisUserSupplier userSupplier = new HisUserSupplier(); HisUserSupplier userSupplier = supplier.toHisUserSupplier(userId,type);
userSupplier.setUserId(userId);
userSupplier.setSupplierId(Long.parseLong(supplier.getId()));
userSupplier.setType(0);
userSupplier.setMasterFlag(supplier.getMasterFlag());
userSuppliers.add(userSupplier); userSuppliers.add(userSupplier);
} }
} }

11
src/main/java/com/qs/serve/modules/tbs/controller/TbsActivityController.java

@ -58,6 +58,17 @@ public class TbsActivityController {
LambdaQueryWrapper<TbsActivity> lqw = new LambdaQueryWrapper<>(entity); LambdaQueryWrapper<TbsActivity> lqw = new LambdaQueryWrapper<>(entity);
PageUtil.startPage(); PageUtil.startPage();
List<TbsActivity> list = tbsActivityService.list(lqw); List<TbsActivity> list = tbsActivityService.list(lqw);
for (TbsActivity activity : list) {
QueryWrapper qw = new QueryWrapper<>();
qw.eq("activity_id",activity.getId());
List<TbsActivityGoods> goodsList = activityGoodsService.list(qw);
if(goodsList.size()>0){
activity.setGoodsType(goodsList.get(0).getTargetType());
}
activity.setGoodsList(goodsList);
List<TbsActivitySubject> activitySubjects = activitySubjectService.list(qw);
activity.setSubjectCenterList(activitySubjects);
}
return R.ok(list); return R.ok(list);
} }

3
src/main/java/com/qs/serve/modules/tbs/entity/TbsActivity.java

@ -31,6 +31,9 @@ public class TbsActivity implements Serializable {
@TableId(type = IdType.AUTO) @TableId(type = IdType.AUTO)
private Long id; private Long id;
/** 编码 */
private String activityCode;
/** 费用申请id */ /** 费用申请id */
@NotNull(message = "费用申请id不能为空") @NotNull(message = "费用申请id不能为空")
private Long costApplyId; private Long costApplyId;

3
src/main/java/com/qs/serve/modules/tbs/entity/vo/TbsActivityVo.java

@ -28,6 +28,9 @@ public class TbsActivityVo implements Serializable {
/** id */ /** id */
private Long id; private Long id;
/** 编码 */
private String activityCode;
/** 费用申请id */ /** 费用申请id */
private Long costApplyId; private Long costApplyId;

2
src/main/java/com/qs/serve/modules/tbs/service/impl/TbsActivityServiceImpl.java

@ -76,7 +76,7 @@ public class TbsActivityServiceImpl extends ServiceImpl<TbsActivityMapper,TbsAct
} }
}else { }else {
activity = CopierUtil.copy(activityBo,new TbsActivity()); activity = CopierUtil.copy(activityBo,new TbsActivity());
activity.setSupplierCode("G"+ StringUtils.genShortId()); activity.setActivityCode("G"+ StringUtils.genShortId());
} }
activity.setSupplierId(Long.parseLong(supplier.getId())); activity.setSupplierId(Long.parseLong(supplier.getId()));
activity.setSupplierCode(supplier.getCode()); activity.setSupplierCode(supplier.getCode());

Loading…
Cancel
Save