From db4fffcda2e0cea32350a5db5f6a37ed739128ba Mon Sep 17 00:00:00 2001 From: BrandWang Date: Mon, 15 May 2023 10:26:11 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E5=8F=AF=E5=9B=9E=E6=BA=AF):=20=E5=A4=9A?= =?UTF-8?q?=E7=A7=9F=E6=88=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 增加从配置取租户ID逻辑 --- .../recall/trace/dao/RecallApiDao.java | 51 +++++++ .../recall/trace/dao/RecallProductDao.java | 51 +++++++ .../recall/trace/dto/RecallApiDTO.java | 35 +++++ .../recall/trace/dto/RecallProductDTO.java | 44 ++++++ .../recall/trace/entity/RecallApiEntity.java | 38 ++++++ .../trace/entity/RecallProductEntity.java | 44 ++++++ .../trace/service/RecallApiService.java | 55 ++++++++ .../trace/service/RecallProductService.java | 48 +++++++ .../service/impl/RecallApiServiceImpl.java | 59 ++++++++ .../impl/RecallProductServiceImpl.java | 46 +++++++ .../recall/trace/vo/RecallApiVO.java | 45 +++++++ .../recall/trace/vo/RecallProductVO.java | 54 ++++++++ .../resources/mapper/trace/RecallApiDao.xml | 96 +++++++++++++ .../mapper/trace/RecallProductDao.xml | 126 ++++++++++++++++++ .../trace/controller/RecallApiController.java | 63 +++++++++ .../controller/RecallProductController.java | 64 +++++++++ .../trace/service/RecallApiApiService.java | 47 +++++++ .../service/RecallProductApiService.java | 46 +++++++ .../service/impl/RecallApiApiServiceImpl.java | 71 ++++++++++ .../impl/RecallProductApiServiceImpl.java | 73 ++++++++++ .../impl/RecallRecordApiServiceImpl.java | 7 + .../wabestway/recall/util/HeaderDataUtil.java | 111 +++++++++++++++ 22 files changed, 1274 insertions(+) create mode 100644 afis-recall-service/src/main/java/com/wabestway/recall/trace/dao/RecallApiDao.java create mode 100644 afis-recall-service/src/main/java/com/wabestway/recall/trace/dao/RecallProductDao.java create mode 100644 afis-recall-service/src/main/java/com/wabestway/recall/trace/dto/RecallApiDTO.java create mode 100644 afis-recall-service/src/main/java/com/wabestway/recall/trace/dto/RecallProductDTO.java create mode 100644 afis-recall-service/src/main/java/com/wabestway/recall/trace/entity/RecallApiEntity.java create mode 100644 afis-recall-service/src/main/java/com/wabestway/recall/trace/entity/RecallProductEntity.java create mode 100644 afis-recall-service/src/main/java/com/wabestway/recall/trace/service/RecallApiService.java create mode 100644 afis-recall-service/src/main/java/com/wabestway/recall/trace/service/RecallProductService.java create mode 100644 afis-recall-service/src/main/java/com/wabestway/recall/trace/service/impl/RecallApiServiceImpl.java create mode 100644 afis-recall-service/src/main/java/com/wabestway/recall/trace/service/impl/RecallProductServiceImpl.java create mode 100644 afis-recall-service/src/main/java/com/wabestway/recall/trace/vo/RecallApiVO.java create mode 100644 afis-recall-service/src/main/java/com/wabestway/recall/trace/vo/RecallProductVO.java create mode 100644 afis-recall-service/src/main/resources/mapper/trace/RecallApiDao.xml create mode 100644 afis-recall-service/src/main/resources/mapper/trace/RecallProductDao.xml create mode 100644 afis-recall-web/src/main/java/com/wabestway/recall/trace/controller/RecallApiController.java create mode 100644 afis-recall-web/src/main/java/com/wabestway/recall/trace/controller/RecallProductController.java create mode 100644 afis-recall-web/src/main/java/com/wabestway/recall/trace/service/RecallApiApiService.java create mode 100644 afis-recall-web/src/main/java/com/wabestway/recall/trace/service/RecallProductApiService.java create mode 100644 afis-recall-web/src/main/java/com/wabestway/recall/trace/service/impl/RecallApiApiServiceImpl.java create mode 100644 afis-recall-web/src/main/java/com/wabestway/recall/trace/service/impl/RecallProductApiServiceImpl.java create mode 100644 afis-recall-web/src/main/java/com/wabestway/recall/util/HeaderDataUtil.java diff --git a/afis-recall-service/src/main/java/com/wabestway/recall/trace/dao/RecallApiDao.java b/afis-recall-service/src/main/java/com/wabestway/recall/trace/dao/RecallApiDao.java new file mode 100644 index 0000000..f3cb63c --- /dev/null +++ b/afis-recall-service/src/main/java/com/wabestway/recall/trace/dao/RecallApiDao.java @@ -0,0 +1,51 @@ +package com.wabestway.recall.trace.dao; + +import com.wabestway.recall.trace.entity.RecallApiEntity; +import com.wabestway.recall.trace.dto.RecallApiDTO; +import com.wabestway.recall.trace.vo.RecallApiVO; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.apache.ibatis.annotations.Param; +import java.util.List; + +/** + * + * + * @author wangH + * @company 北京华焱坤泰科技有限公司 + * @Time 2023-05-15 09:59:12 + */ +@Mapper +public interface RecallApiDao extends BaseMapper { + + /** + * 分页查询 + * @param page 分页对象 + * @param recallApiDTO + * @return + */ + IPage queryRecallApiByCondition(Page page, @Param("recallApiDTO")RecallApiDTO recallApiDTO); + + /** + * 条件查询,不分页 + * @param recallApiDTO + * @return + */ + List queryRecallApiListNoPage(@Param("recallApiDTO")RecallApiDTO recallApiDTO); + + /** + * 根据id更新 + * @param recallApi 对象 + * @return + */ + void updateRecallApiById(@Param("recallApi")RecallApiEntity recallApi); + + /** + * 根据id查询详情 + * @param id + * @return + */ + RecallApiVO queryRecallApiById(@Param("id") String id); +} diff --git a/afis-recall-service/src/main/java/com/wabestway/recall/trace/dao/RecallProductDao.java b/afis-recall-service/src/main/java/com/wabestway/recall/trace/dao/RecallProductDao.java new file mode 100644 index 0000000..ec286b1 --- /dev/null +++ b/afis-recall-service/src/main/java/com/wabestway/recall/trace/dao/RecallProductDao.java @@ -0,0 +1,51 @@ +package com.wabestway.recall.trace.dao; + +import com.wabestway.recall.trace.entity.RecallProductEntity; +import com.wabestway.recall.trace.dto.RecallProductDTO; +import com.wabestway.recall.trace.vo.RecallProductVO; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.apache.ibatis.annotations.Param; +import java.util.List; + +/** + * + * + * @author wangH + * @company 北京华焱坤泰科技有限公司 + * @Time 2023-05-15 09:59:12 + */ +@Mapper +public interface RecallProductDao extends BaseMapper { + + /** + * 分页查询 + * @param page 分页对象 + * @param recallProductDTO + * @return + */ + IPage queryRecallProductByCondition(Page page, @Param("recallProductDTO")RecallProductDTO recallProductDTO); + + /** + * 条件查询,不分页 + * @param recallProductDTO + * @return + */ + List queryRecallProductListNoPage(@Param("recallProductDTO")RecallProductDTO recallProductDTO); + + /** + * 根据id更新 + * @param recallProduct 对象 + * @return + */ + void updateRecallProductById(@Param("recallProduct")RecallProductEntity recallProduct); + + /** + * 根据id查询详情 + * @param id + * @return + */ + RecallProductVO queryRecallProductById(@Param("id") String id); +} diff --git a/afis-recall-service/src/main/java/com/wabestway/recall/trace/dto/RecallApiDTO.java b/afis-recall-service/src/main/java/com/wabestway/recall/trace/dto/RecallApiDTO.java new file mode 100644 index 0000000..ecd1646 --- /dev/null +++ b/afis-recall-service/src/main/java/com/wabestway/recall/trace/dto/RecallApiDTO.java @@ -0,0 +1,35 @@ +package com.wabestway.recall.trace.dto; + +import java.io.Serializable; +import lombok.Data; +import com.wabestway.commons.http.PageDTO; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + + +/** + * + * + * @author wangH + * @company 北京华焱坤泰科技有限公司 + * @Time 2023-05-15 09:59:12 + */ +@Data +@ApiModel +public class RecallApiDTO extends PageDTO implements Serializable { + private static final long serialVersionUID = 1L; + + /** */ + @ApiModelProperty(value = "") + private String id; + /** 可回溯调用appKey */ + @ApiModelProperty(value = "可回溯调用appKey") + private String appKey; + /** 调用方名称 */ + @ApiModelProperty(value = "调用方名称") + private String name; + /** 备注 */ + @ApiModelProperty(value = "备注") + private String remark; + +} diff --git a/afis-recall-service/src/main/java/com/wabestway/recall/trace/dto/RecallProductDTO.java b/afis-recall-service/src/main/java/com/wabestway/recall/trace/dto/RecallProductDTO.java new file mode 100644 index 0000000..c3a4e0e --- /dev/null +++ b/afis-recall-service/src/main/java/com/wabestway/recall/trace/dto/RecallProductDTO.java @@ -0,0 +1,44 @@ +package com.wabestway.recall.trace.dto; + +import java.io.Serializable; +import lombok.Data; +import com.wabestway.commons.http.PageDTO; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + + +/** + * + * + * @author wangH + * @company 北京华焱坤泰科技有限公司 + * @Time 2023-05-15 09:59:12 + */ +@Data +@ApiModel +public class RecallProductDTO extends PageDTO implements Serializable { + private static final long serialVersionUID = 1L; + + /** */ + @ApiModelProperty(value = "") + private String id; + /** 产品编码 */ + @ApiModelProperty(value = "产品编码") + private String productCode; + /** 产品名称 */ + @ApiModelProperty(value = "产品名称") + private String productName; + /** 保险公司编码 */ + @ApiModelProperty(value = "保险公司编码") + private String supplierCode; + /** 保险公司名称 */ + @ApiModelProperty(value = "保险公司名称") + private String supplierName; + /** 是否归档 0-否1-是 */ + @ApiModelProperty(value = "是否归档 0-否1-是 ") + private String archived; + /** 是否记录轨迹 0-否1-是 */ + @ApiModelProperty(value = "是否记录轨迹 0-否1-是 ") + private String tracked; + +} diff --git a/afis-recall-service/src/main/java/com/wabestway/recall/trace/entity/RecallApiEntity.java b/afis-recall-service/src/main/java/com/wabestway/recall/trace/entity/RecallApiEntity.java new file mode 100644 index 0000000..7cd1d9f --- /dev/null +++ b/afis-recall-service/src/main/java/com/wabestway/recall/trace/entity/RecallApiEntity.java @@ -0,0 +1,38 @@ +package com.wabestway.recall.trace.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.TableId; + +import lombok.Data; + +/** + * + * + * @author wangH + * @company 北京华焱坤泰科技有限公司 + * @Time 2023-05-15 09:59:12 + */ +@Data +@TableName(value = "recall_api") +public class RecallApiEntity { + /** */ + @TableId + private String id; + /** 可回溯调用appKey */ + private String appKey; + /** 调用方名称 */ + private String name; + /** 租户Id */ + private String tenantId; + /** 备注 */ + private String remark; + /** 创建人 */ + private String createBy; + /** 创建时间 */ + private Long createTime; + /** 更新人 */ + private String updateBy; + /** 更新时间 */ + private Long updateTime; + +} diff --git a/afis-recall-service/src/main/java/com/wabestway/recall/trace/entity/RecallProductEntity.java b/afis-recall-service/src/main/java/com/wabestway/recall/trace/entity/RecallProductEntity.java new file mode 100644 index 0000000..ba1feab --- /dev/null +++ b/afis-recall-service/src/main/java/com/wabestway/recall/trace/entity/RecallProductEntity.java @@ -0,0 +1,44 @@ +package com.wabestway.recall.trace.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.TableId; + +import lombok.Data; + +/** + * + * + * @author wangH + * @company 北京华焱坤泰科技有限公司 + * @Time 2023-05-15 09:59:12 + */ +@Data +@TableName(value = "recall_product") +public class RecallProductEntity { + /** */ + @TableId + private String id; + /** 产品编码 */ + private String productCode; + /** 产品名称 */ + private String productName; + /** 保险公司编码 */ + private String supplierCode; + /** 保险公司名称 */ + private String supplierName; + /** 是否归档 0-否1-是 */ + private String archived; + /** 是否记录轨迹 0-否1-是 */ + private String tracked; + /** 租户Id */ + private String tenantId; + /** 创建人 */ + private String createBy; + /** 创建时间 */ + private Long createTime; + /** 更新人 */ + private String updateBy; + /** 更新时间 */ + private Long updateTime; + +} diff --git a/afis-recall-service/src/main/java/com/wabestway/recall/trace/service/RecallApiService.java b/afis-recall-service/src/main/java/com/wabestway/recall/trace/service/RecallApiService.java new file mode 100644 index 0000000..df52d26 --- /dev/null +++ b/afis-recall-service/src/main/java/com/wabestway/recall/trace/service/RecallApiService.java @@ -0,0 +1,55 @@ +package com.wabestway.recall.trace.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; +import com.wabestway.recall.trace.entity.RecallApiEntity; +import com.wabestway.recall.trace.dto.RecallApiDTO; +import com.wabestway.recall.trace.vo.RecallApiVO; +import java.util.List; + +/** + * + * + * @author wangH + * @company 北京华焱坤泰科技有限公司 + * @Time 2023-05-15 09:59:12 + */ +public interface RecallApiService extends IService { + + /** + * 分页查询 + * @param page 分页对象 + * @param recallApiDTO + * @return + */ + IPage queryRecallApiByCondition(long page, long size, RecallApiDTO recallApiDTO); + + /** + * 条件查询,不分页 + * @param recallApiDTO + * @return + */ + List queryRecallApiListNoPage(RecallApiDTO recallApiDTO); + + /** + * 根据id更新 + * @param recallApi 对象 + * @return + */ + void updateRecallApiById(RecallApiEntity recallApi); + + /** + * 根据id查询详情 + * @param id + * @return + */ + RecallApiVO queryRecallApiById(String id); + + /** + * 查询调用app归属租户 + * @param appKey + * @return + */ + String queryApiTenant(String appKey); +} + diff --git a/afis-recall-service/src/main/java/com/wabestway/recall/trace/service/RecallProductService.java b/afis-recall-service/src/main/java/com/wabestway/recall/trace/service/RecallProductService.java new file mode 100644 index 0000000..c43311c --- /dev/null +++ b/afis-recall-service/src/main/java/com/wabestway/recall/trace/service/RecallProductService.java @@ -0,0 +1,48 @@ +package com.wabestway.recall.trace.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; +import com.wabestway.recall.trace.entity.RecallProductEntity; +import com.wabestway.recall.trace.dto.RecallProductDTO; +import com.wabestway.recall.trace.vo.RecallProductVO; +import java.util.List; + +/** + * + * + * @author wangH + * @company 北京华焱坤泰科技有限公司 + * @Time 2023-05-15 09:59:12 + */ +public interface RecallProductService extends IService { + + /** + * 分页查询 + * @param page 分页对象 + * @param recallProductDTO + * @return + */ + IPage queryRecallProductByCondition(long page, long size, RecallProductDTO recallProductDTO); + + /** + * 条件查询,不分页 + * @param recallProductDTO + * @return + */ + List queryRecallProductListNoPage(RecallProductDTO recallProductDTO); + + /** + * 根据id更新 + * @param recallProduct 对象 + * @return + */ + void updateRecallProductById(RecallProductEntity recallProduct); + + /** + * 根据id查询详情 + * @param id + * @return + */ + RecallProductVO queryRecallProductById(String id); +} + diff --git a/afis-recall-service/src/main/java/com/wabestway/recall/trace/service/impl/RecallApiServiceImpl.java b/afis-recall-service/src/main/java/com/wabestway/recall/trace/service/impl/RecallApiServiceImpl.java new file mode 100644 index 0000000..af37122 --- /dev/null +++ b/afis-recall-service/src/main/java/com/wabestway/recall/trace/service/impl/RecallApiServiceImpl.java @@ -0,0 +1,59 @@ +package com.wabestway.recall.trace.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.metadata.OrderItem; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wabestway.recall.trace.dao.RecallApiDao; +import com.wabestway.recall.trace.entity.RecallApiEntity; +import com.wabestway.recall.trace.dto.RecallApiDTO; +import com.wabestway.recall.trace.vo.RecallApiVO; +import com.wabestway.recall.trace.service.RecallApiService; + +import java.util.List; + +/** + * @author wangH + * @company 北京华焱坤泰科技有限公司 + * @Time 2023-05-15 09:59:12 + */ +@Service +public class RecallApiServiceImpl extends ServiceImpl implements RecallApiService { + + @Override + public IPage queryRecallApiByCondition(long page, long size, RecallApiDTO recallApiDTO) { + Page paramReq = new Page<>(page, size); + paramReq.addOrder(new OrderItem().setColumn("create_time").setAsc(false));//创建时间降序排序 + IPage iPage = baseMapper.queryRecallApiByCondition(paramReq, recallApiDTO); + return iPage; + } + + public List queryRecallApiListNoPage(RecallApiDTO recallApiDTO) { + return baseMapper.queryRecallApiListNoPage(recallApiDTO); + } + + @Override + public void updateRecallApiById(RecallApiEntity recallApi) { + baseMapper.updateRecallApiById(recallApi); + } + + @Override + public RecallApiVO queryRecallApiById(String id) { + return baseMapper.queryRecallApiById(id); + } + + @Override + public String queryApiTenant(String appKey) { + LambdaQueryWrapper query = Wrappers.lambdaQuery(); + query.eq(RecallApiEntity::getAppKey, appKey); + query.last("limit 1"); + RecallApiEntity recallApi = baseMapper.selectOne(query); + if (recallApi != null) { + return recallApi.getTenantId(); + } + return null; + } +} \ No newline at end of file diff --git a/afis-recall-service/src/main/java/com/wabestway/recall/trace/service/impl/RecallProductServiceImpl.java b/afis-recall-service/src/main/java/com/wabestway/recall/trace/service/impl/RecallProductServiceImpl.java new file mode 100644 index 0000000..68bdc96 --- /dev/null +++ b/afis-recall-service/src/main/java/com/wabestway/recall/trace/service/impl/RecallProductServiceImpl.java @@ -0,0 +1,46 @@ +package com.wabestway.recall.trace.service.impl; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.metadata.OrderItem; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wabestway.recall.trace.dao.RecallProductDao; +import com.wabestway.recall.trace.entity.RecallProductEntity; +import com.wabestway.recall.trace.dto.RecallProductDTO; +import com.wabestway.recall.trace.vo.RecallProductVO; +import com.wabestway.recall.trace.service.RecallProductService; +import java.util.List; + +/** + * + * + * @author wangH + * @company 北京华焱坤泰科技有限公司 + * @Time 2023-05-15 09:59:12 + */ +@Service +public class RecallProductServiceImpl extends ServiceImpl implements RecallProductService { + + @Override + public IPage queryRecallProductByCondition(long page, long size, RecallProductDTO recallProductDTO) { + Page paramReq = new Page<>(page,size); + paramReq.addOrder(new OrderItem().setColumn("create_time").setAsc(false));//创建时间降序排序 + IPage iPage = baseMapper.queryRecallProductByCondition(paramReq, recallProductDTO); + return iPage; + } + + public List queryRecallProductListNoPage(RecallProductDTO recallProductDTO) { + return baseMapper.queryRecallProductListNoPage(recallProductDTO); + } + + @Override + public void updateRecallProductById(RecallProductEntity recallProduct) { + baseMapper.updateRecallProductById(recallProduct); + } + + @Override + public RecallProductVO queryRecallProductById(String id ) { + return baseMapper.queryRecallProductById(id); + } +} \ No newline at end of file diff --git a/afis-recall-service/src/main/java/com/wabestway/recall/trace/vo/RecallApiVO.java b/afis-recall-service/src/main/java/com/wabestway/recall/trace/vo/RecallApiVO.java new file mode 100644 index 0000000..8e3a47e --- /dev/null +++ b/afis-recall-service/src/main/java/com/wabestway/recall/trace/vo/RecallApiVO.java @@ -0,0 +1,45 @@ +package com.wabestway.recall.trace.vo; + +import java.io.Serializable; +import lombok.Data; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + * + * + * @author wangH + * @company 北京华焱坤泰科技有限公司 + * @Time 2023-05-15 09:59:12 + */ +@Data +@ApiModel +public class RecallApiVO implements Serializable { + private static final long serialVersionUID = 1L; + + /** */ + @ApiModelProperty(value = "") + private String id; + /** 可回溯调用appKey */ + @ApiModelProperty(value = "可回溯调用appKey") + private String appKey; + /** 调用方名称 */ + @ApiModelProperty(value = "调用方名称") + private String name; + /** 备注 */ + @ApiModelProperty(value = "备注") + private String remark; + /** 创建人 */ + @ApiModelProperty(value = "创建人") + private String createBy; + /** 创建时间 */ + @ApiModelProperty(value = "创建时间") + private Long createTime; + /** 更新人 */ + @ApiModelProperty(value = "更新人") + private String updateBy; + /** 更新时间 */ + @ApiModelProperty(value = "更新时间") + private Long updateTime; + +} diff --git a/afis-recall-service/src/main/java/com/wabestway/recall/trace/vo/RecallProductVO.java b/afis-recall-service/src/main/java/com/wabestway/recall/trace/vo/RecallProductVO.java new file mode 100644 index 0000000..c7aa5bb --- /dev/null +++ b/afis-recall-service/src/main/java/com/wabestway/recall/trace/vo/RecallProductVO.java @@ -0,0 +1,54 @@ +package com.wabestway.recall.trace.vo; + +import java.io.Serializable; +import lombok.Data; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; + +/** + * + * + * @author wangH + * @company 北京华焱坤泰科技有限公司 + * @Time 2023-05-15 09:59:12 + */ +@Data +@ApiModel +public class RecallProductVO implements Serializable { + private static final long serialVersionUID = 1L; + + /** */ + @ApiModelProperty(value = "") + private String id; + /** 产品编码 */ + @ApiModelProperty(value = "产品编码") + private String productCode; + /** 产品名称 */ + @ApiModelProperty(value = "产品名称") + private String productName; + /** 保险公司编码 */ + @ApiModelProperty(value = "保险公司编码") + private String supplierCode; + /** 保险公司名称 */ + @ApiModelProperty(value = "保险公司名称") + private String supplierName; + /** 是否归档 0-否1-是 */ + @ApiModelProperty(value = "是否归档 0-否1-是 ") + private String archived; + /** 是否记录轨迹 0-否1-是 */ + @ApiModelProperty(value = "是否记录轨迹 0-否1-是 ") + private String tracked; + /** 创建人 */ + @ApiModelProperty(value = "创建人") + private String createBy; + /** 创建时间 */ + @ApiModelProperty(value = "创建时间") + private Long createTime; + /** 更新人 */ + @ApiModelProperty(value = "更新人") + private String updateBy; + /** 更新时间 */ + @ApiModelProperty(value = "更新时间") + private Long updateTime; + +} diff --git a/afis-recall-service/src/main/resources/mapper/trace/RecallApiDao.xml b/afis-recall-service/src/main/resources/mapper/trace/RecallApiDao.xml new file mode 100644 index 0000000..c2bc6aa --- /dev/null +++ b/afis-recall-service/src/main/resources/mapper/trace/RecallApiDao.xml @@ -0,0 +1,96 @@ + + + + + + + t.id id, + t.app_key appKey, + t.name name, + t.tenant_id tenantId, + t.remark remark, + t.create_by createBy, + t.create_time createTime, + t.update_by updateBy, + t.update_time updateTime + + + + + + + + + + update recall_api t + + + + t.id = #{recallApi.id}, + + + t.app_key = #{recallApi.appKey}, + + + t.name = #{recallApi.name}, + + + t.remark = #{recallApi.remark}, + + + t.update_by = #{recallApi.updateBy}, + + + t.update_time = #{recallApi.updateTime}, + + + where t.id= #{recallApi.id} + + + \ No newline at end of file diff --git a/afis-recall-service/src/main/resources/mapper/trace/RecallProductDao.xml b/afis-recall-service/src/main/resources/mapper/trace/RecallProductDao.xml new file mode 100644 index 0000000..8481b66 --- /dev/null +++ b/afis-recall-service/src/main/resources/mapper/trace/RecallProductDao.xml @@ -0,0 +1,126 @@ + + + + + + + t.id id, + t.product_code productCode, + t.product_name productName, + t.supplier_code supplierCode, + t.supplier_name supplierName, + t.archived archived, + t.tracked tracked, + t.tenant_id tenantId, + t.create_by createBy, + t.create_time createTime, + t.update_by updateBy, + t.update_time updateTime + + + + + + + + + + update recall_product t + + + + t.id = #{recallProduct.id}, + + + t.product_code = #{recallProduct.productCode}, + + + t.product_name = #{recallProduct.productName}, + + + t.supplier_code = #{recallProduct.supplierCode}, + + + t.supplier_name = #{recallProduct.supplierName}, + + + t.archived = #{recallProduct.archived}, + + + t.tracked = #{recallProduct.tracked}, + + + t.update_by = #{recallProduct.updateBy}, + + + t.update_time = #{recallProduct.updateTime}, + + + where t.id= #{recallProduct.id} + + + \ No newline at end of file diff --git a/afis-recall-web/src/main/java/com/wabestway/recall/trace/controller/RecallApiController.java b/afis-recall-web/src/main/java/com/wabestway/recall/trace/controller/RecallApiController.java new file mode 100644 index 0000000..da65ec9 --- /dev/null +++ b/afis-recall-web/src/main/java/com/wabestway/recall/trace/controller/RecallApiController.java @@ -0,0 +1,63 @@ +package com.wabestway.recall.trace.controller; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import com.wabestway.recall.trace.dto.RecallApiDTO; +import com.wabestway.recall.trace.vo.RecallApiVO; +import com.wabestway.recall.trace.service.RecallApiApiService; +import com.wabestway.commons.http.Paging; +import com.wabestway.commons.http.ResObj; + + +/** + * + * + * @author wangH + * @company 北京华焱坤泰科技有限公司 + * @Time 2023-05-15 09:59:12 + */ +@RestController +@RequestMapping("/trace/recallApi") +@Api(tags = {"-接口"}, description = "-接口") +public class RecallApiController { + @Autowired + private RecallApiApiService recallApiApiService; + + /** + * 列表 + */ + @PostMapping("/list") + @ApiOperation(value = "分页列表查询", notes = "条件分页查询列表", httpMethod = "POST") + public ResObj> list(@RequestBody RecallApiDTO paramRequest) { + return recallApiApiService.list(paramRequest); + } + + /** + * 信息 + */ + @GetMapping("/info/{id}") + @ApiOperation(value = "根据id查详情", notes = "根据id查详情", httpMethod = "GET") + public ResObj info(@PathVariable("id") String id) { + return recallApiApiService.getRecallApi(id); + } + + /** + * 保存 + */ + @PostMapping("/save") + @ApiOperation(value = "保存", notes = "保存", httpMethod = "POST") + public ResObj saveRecallApi(@RequestBody RecallApiDTO paramRequest) { + return recallApiApiService.saveRecallApi(paramRequest); + } + + /** + * 修改 + */ + @PostMapping("/update") + @ApiOperation(value = "修改", notes = "修改", httpMethod = "POST") + public ResObj updateRecallApi(@RequestBody RecallApiDTO paramRequest) { + return recallApiApiService.updateRecallApi(paramRequest); + } +} diff --git a/afis-recall-web/src/main/java/com/wabestway/recall/trace/controller/RecallProductController.java b/afis-recall-web/src/main/java/com/wabestway/recall/trace/controller/RecallProductController.java new file mode 100644 index 0000000..b985314 --- /dev/null +++ b/afis-recall-web/src/main/java/com/wabestway/recall/trace/controller/RecallProductController.java @@ -0,0 +1,64 @@ +package com.wabestway.recall.trace.controller; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import com.wabestway.recall.trace.dto.RecallProductDTO; +import com.wabestway.recall.trace.vo.RecallProductVO; +import com.wabestway.recall.trace.service.RecallProductApiService; +import com.wabestway.commons.http.Paging; +import com.wabestway.commons.http.ResObj; + + +/** + * + * + * @author wangH + * @company 北京华焱坤泰科技有限公司 + * @Time 2023-05-15 09:59:12 + */ +@RestController +@RequestMapping("/trace/recallProduct") +@Api(tags = {"-接口"}, description = "-接口") +public class RecallProductController { + @Autowired + private RecallProductApiService recallProductApiService; + + /** + * 列表 + */ + @PostMapping("/list") + @ApiOperation(value = "分页列表查询", notes = "条件分页查询列表", httpMethod = "POST") + public ResObj> list(@RequestBody RecallProductDTO paramRequest) { + return recallProductApiService.list(paramRequest); + } + + /** + * 信息 + */ + @GetMapping("/info/{id}") + @ApiOperation(value = "根据id查详情", notes = "根据id查详情", httpMethod = "GET") + public ResObj info(@PathVariable("id") String id) { + return recallProductApiService.getRecallProduct(id); + } + + /** + * 保存 + */ + @PostMapping("/save") + @ApiOperation(value = "保存", notes = "保存", httpMethod = "POST") + public ResObj saveRecallProduct(@RequestBody RecallProductDTO paramRequest) { + return recallProductApiService.saveRecallProduct(paramRequest); + } + + /** + * 修改 + */ + @PostMapping("/update") + @ApiOperation(value = "修改", notes = "修改", httpMethod = "POST") + public ResObj updateRecallProduct(@RequestBody RecallProductDTO paramRequest) { + return recallProductApiService.updateRecallProduct(paramRequest); + } + +} diff --git a/afis-recall-web/src/main/java/com/wabestway/recall/trace/service/RecallApiApiService.java b/afis-recall-web/src/main/java/com/wabestway/recall/trace/service/RecallApiApiService.java new file mode 100644 index 0000000..55cfa0f --- /dev/null +++ b/afis-recall-web/src/main/java/com/wabestway/recall/trace/service/RecallApiApiService.java @@ -0,0 +1,47 @@ +package com.wabestway.recall.trace.service; + + +import com.wabestway.recall.trace.dto.RecallApiDTO; +import com.wabestway.recall.trace.vo.RecallApiVO; +import com.wabestway.commons.http.Paging; +import com.wabestway.commons.http.ResObj; + + +/** + * + * + * @author wangH + * @company 北京华焱坤泰科技有限公司 + * @Time 2023-05-15 09:59:12 + */ +public interface RecallApiApiService { + + /** + * 列表 + * @param paramReq + * @return + */ + ResObj> list(RecallApiDTO paramReq); + + /** + * 查询详情 + * @param id + * @return + */ + ResObj getRecallApi(String id); + + /** + * 保存 + * @param paramReq + * @return + */ + ResObj saveRecallApi(RecallApiDTO paramReq); + + /** + * 修改 + * @param paramReq + * @return + */ + ResObj updateRecallApi(RecallApiDTO paramReq); + +} diff --git a/afis-recall-web/src/main/java/com/wabestway/recall/trace/service/RecallProductApiService.java b/afis-recall-web/src/main/java/com/wabestway/recall/trace/service/RecallProductApiService.java new file mode 100644 index 0000000..2654d83 --- /dev/null +++ b/afis-recall-web/src/main/java/com/wabestway/recall/trace/service/RecallProductApiService.java @@ -0,0 +1,46 @@ +package com.wabestway.recall.trace.service; + +import java.util.List; +import com.wabestway.recall.trace.dto.RecallProductDTO; +import com.wabestway.recall.trace.vo.RecallProductVO; +import com.wabestway.commons.http.Paging; +import com.wabestway.commons.http.ResObj; + + +/** + * + * + * @author wangH + * @company 北京华焱坤泰科技有限公司 + * @Time 2023-05-15 09:59:12 + */ +public interface RecallProductApiService { + + /** + * 列表 + * @param paramReq + * @return + */ + ResObj> list(RecallProductDTO paramReq); + + /** + * 查询详情 + * @param id + * @return + */ + ResObj getRecallProduct(String id); + + /** + * 保存 + * @param paramReq + * @return + */ + ResObj saveRecallProduct(RecallProductDTO paramReq); + + /** + * 修改 + * @param paramReq + * @return + */ + ResObj updateRecallProduct(RecallProductDTO paramReq); +} diff --git a/afis-recall-web/src/main/java/com/wabestway/recall/trace/service/impl/RecallApiApiServiceImpl.java b/afis-recall-web/src/main/java/com/wabestway/recall/trace/service/impl/RecallApiApiServiceImpl.java new file mode 100644 index 0000000..0344171 --- /dev/null +++ b/afis-recall-web/src/main/java/com/wabestway/recall/trace/service/impl/RecallApiApiServiceImpl.java @@ -0,0 +1,71 @@ +package com.wabestway.recall.trace.service.impl; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.wabestway.commons.http.Paging; +import com.wabestway.commons.http.ResObj; +import com.wabestway.recall.util.HeaderDataUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.BeanUtils; +import com.wabestway.ins.utils.UUIDUtil; +import com.wabestway.recall.trace.entity.RecallApiEntity; +import com.wabestway.recall.trace.dto.RecallApiDTO; +import com.wabestway.recall.trace.vo.RecallApiVO; +import com.wabestway.recall.trace.service.RecallApiApiService; +import com.wabestway.recall.trace.service.RecallApiService; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +/** + * @author wangH + * @company 北京华焱坤泰科技有限公司 + * @Time 2023-05-15 09:59:12 + */ +@Service +public class RecallApiApiServiceImpl implements RecallApiApiService { + @Autowired + private RecallApiService recallApiService; + + @Override + public ResObj> list(RecallApiDTO paramReq) { + IPage resultPage = recallApiService.queryRecallApiByCondition(paramReq.getPage(), paramReq.getPageSize(), paramReq); + + Paging paging = new Paging(resultPage.getRecords(), paramReq.getPage(), resultPage.getSize(), resultPage.getTotal()); + return ResObj.ok(paging); + } + + @Override + public ResObj getRecallApi(String id) { + RecallApiVO recallApiVO = recallApiService.queryRecallApiById(id); + + return ResObj.ok(recallApiVO); + } + + @Transactional + @Override + public ResObj saveRecallApi(RecallApiDTO paramReq) { + RecallApiEntity recallApi = new RecallApiEntity(); + BeanUtils.copyProperties(paramReq, recallApi); + + recallApi.setId(UUIDUtil.generate());//赋值id + recallApi.setTenantId(HeaderDataUtil.getTenantId()); + recallApi.setCreateBy(HeaderDataUtil.getUserId());//创建人 + recallApi.setCreateTime(System.currentTimeMillis());//创建时间 + recallApi.setUpdateBy(HeaderDataUtil.getUserId());//更新人 + recallApi.setUpdateTime(System.currentTimeMillis());//更新时间 + + recallApiService.save(recallApi); + return ResObj.ok(); + } + + @Transactional + @Override + public ResObj updateRecallApi(RecallApiDTO paramReq) { + RecallApiEntity recallApi = new RecallApiEntity(); + BeanUtils.copyProperties(paramReq, recallApi); + recallApi.setUpdateBy(HeaderDataUtil.getUserId());//更新人 + recallApi.setUpdateTime(System.currentTimeMillis());//更新时间 + recallApiService.updateById(recallApi); + return ResObj.ok(); + } + +} diff --git a/afis-recall-web/src/main/java/com/wabestway/recall/trace/service/impl/RecallProductApiServiceImpl.java b/afis-recall-web/src/main/java/com/wabestway/recall/trace/service/impl/RecallProductApiServiceImpl.java new file mode 100644 index 0000000..1d023f3 --- /dev/null +++ b/afis-recall-web/src/main/java/com/wabestway/recall/trace/service/impl/RecallProductApiServiceImpl.java @@ -0,0 +1,73 @@ +package com.wabestway.recall.trace.service.impl; + + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.wabestway.commons.http.Paging; +import com.wabestway.commons.http.ResObj; +import com.wabestway.commons.enums.DataValidEnum; +import com.wabestway.recall.util.HeaderDataUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.BeanUtils; +import com.wabestway.ins.utils.UUIDUtil; +import com.wabestway.recall.trace.entity.RecallProductEntity; +import com.wabestway.recall.trace.dto.RecallProductDTO; +import com.wabestway.recall.trace.vo.RecallProductVO; +import com.wabestway.recall.trace.service.RecallProductApiService; +import com.wabestway.recall.trace.service.RecallProductService; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + + +/** + * @author wangH + * @company 北京华焱坤泰科技有限公司 + * @Time 2023-05-15 09:59:12 + */ +@Service +public class RecallProductApiServiceImpl implements RecallProductApiService { + @Autowired + private RecallProductService recallProductService; + + @Override + public ResObj> list(RecallProductDTO paramReq) { + IPage resultPage = recallProductService.queryRecallProductByCondition(paramReq.getPage(), paramReq.getPageSize(), paramReq); + + Paging paging = new Paging(resultPage.getRecords(), paramReq.getPage(), resultPage.getSize(), resultPage.getTotal()); + return ResObj.ok(paging); + } + + @Override + public ResObj getRecallProduct(String id) { + RecallProductVO recallProductVO = recallProductService.queryRecallProductById(id); + + return ResObj.ok(recallProductVO); + } + + @Transactional + @Override + public ResObj saveRecallProduct(RecallProductDTO paramReq) { + RecallProductEntity recallProduct = new RecallProductEntity(); + BeanUtils.copyProperties(paramReq, recallProduct); + + recallProduct.setId(UUIDUtil.generate());//赋值id + recallProduct.setCreateBy(HeaderDataUtil.getUserId());//创建人 + recallProduct.setCreateTime(System.currentTimeMillis());//创建时间 + recallProduct.setUpdateBy(HeaderDataUtil.getUserId());//更新人 + recallProduct.setUpdateTime(System.currentTimeMillis());//更新时间 + + recallProductService.save(recallProduct); + return ResObj.ok(); + } + + @Transactional + @Override + public ResObj updateRecallProduct(RecallProductDTO paramReq) { + RecallProductEntity recallProduct = new RecallProductEntity(); + BeanUtils.copyProperties(paramReq, recallProduct); + recallProduct.setUpdateBy(HeaderDataUtil.getUserId());//更新人 + recallProduct.setUpdateTime(System.currentTimeMillis());//更新时间 + recallProductService.updateById(recallProduct); + return ResObj.ok(); + } + +} diff --git a/afis-recall-web/src/main/java/com/wabestway/recall/trace/service/impl/RecallRecordApiServiceImpl.java b/afis-recall-web/src/main/java/com/wabestway/recall/trace/service/impl/RecallRecordApiServiceImpl.java index 4013ab8..c6e5f94 100644 --- a/afis-recall-web/src/main/java/com/wabestway/recall/trace/service/impl/RecallRecordApiServiceImpl.java +++ b/afis-recall-web/src/main/java/com/wabestway/recall/trace/service/impl/RecallRecordApiServiceImpl.java @@ -7,6 +7,7 @@ import com.wabestway.commons.http.ResObj; import com.wabestway.recall.trace.dto.TraceDTO; import com.wabestway.recall.trace.entity.RecallOrderEntity; import com.wabestway.recall.trace.entity.RecallRecordEntity; +import com.wabestway.recall.trace.service.RecallApiService; import com.wabestway.recall.trace.service.RecallOrderService; import com.wabestway.recall.trace.service.RecallRecordService; import lombok.extern.slf4j.Slf4j; @@ -32,6 +33,8 @@ public class RecallRecordApiServiceImpl implements RecallRecordApiService { private RecallRecordService recallRecordService; @Autowired private RecallOrderService recallOrderService; + @Autowired + private RecallApiService recallApiService; @Override public ResObj save(TraceDTO record) { @@ -55,6 +58,10 @@ public class RecallRecordApiServiceImpl implements RecallRecordApiService { newOrder.setAppKey(record.getAppKey()); newOrder.setArchived("0"); newOrder.setComplete(isLastEvent ? "1" : "0"); + String tenantId = recallApiService.queryApiTenant(record.getAppKey()); + if (tenantId != null) { + newOrder.setTenantId(tenantId); + } if (isLastEvent) { newOrder.setCompleteDate(System.currentTimeMillis()); } diff --git a/afis-recall-web/src/main/java/com/wabestway/recall/util/HeaderDataUtil.java b/afis-recall-web/src/main/java/com/wabestway/recall/util/HeaderDataUtil.java new file mode 100644 index 0000000..3b8fbaa --- /dev/null +++ b/afis-recall-web/src/main/java/com/wabestway/recall/util/HeaderDataUtil.java @@ -0,0 +1,111 @@ +package com.wabestway.recall.util; + +import com.google.gson.Gson; +import com.wabestway.auth.api.user.ReqOrgInfo; +import com.wabestway.auth.api.user.ReqTenantInfo; +import com.wabestway.auth.api.user.ReqUser; +import com.wabestway.auth.api.user.TokenObj; +import com.wabestway.commons.exception.AlertException; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.servlet.http.HttpServletRequest; +import java.net.URLDecoder; + +public class HeaderDataUtil { + private static Logger logger = LoggerFactory.getLogger(HeaderDataUtil.class); + + public HeaderDataUtil() { + } + + public static ReqUser getUserData() { + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()) + .getRequest(); + ReqUser reqUser = null; + try { + String header = request.getHeader(TokenObj._USER); + if (header != null) { + String str = URLDecoder.decode(header, "UTF-8"); + logger.info("用户信息:{}", str); + reqUser = new Gson().fromJson(str, ReqUser.class); + } + } catch (Exception e) { + logger.error("用户信息转化异常", e); + throw new AlertException("未获取到header用户信息!"); + } + + return reqUser; + } + + public static ReqOrgInfo getOrgInfoData() { + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()) + .getRequest(); + ReqOrgInfo orgInfo = null; + try { + String header = request.getHeader(TokenObj._ORG); + if (header != null) { + String str = URLDecoder.decode(header, "UTF-8"); + logger.info("机构信息:{}", str); + orgInfo = new Gson().fromJson(str, ReqOrgInfo.class); + } + } catch (Exception e) { + logger.error("机构信息转化异常", e); + throw new AlertException("未获取到header机构信息!"); + } + + return orgInfo; + } + + public static ReqTenantInfo getTenantData() { + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()) + .getRequest(); + ReqTenantInfo tenant = null; + try { + String header = request.getHeader(TokenObj._TENANT); + if (header != null) { + String str = URLDecoder.decode(header, "UTF-8"); + logger.info("机构信息:{}", str); + tenant = new Gson().fromJson(str, ReqTenantInfo.class); + } + } catch (Exception e) { + logger.error("租户信息转化异常", e); + } + + return tenant; + } + + public static String getUserId() { + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()) + .getRequest(); + String userId = null; + try { + String header = request.getHeader(TokenObj._USERID); + if (header != null) { + userId = URLDecoder.decode(header, "UTF-8"); + } + } catch (Exception e) { + logger.error("用户ID信息转化异常", e); + } + + return userId; + } + + public static String getTenantId() { + HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()) + .getRequest(); + String tenantId = null; + + try { + String header = request.getHeader(TokenObj._TENANTID); + if (header != null) { + tenantId = URLDecoder.decode(header, "UTF-8"); + } + } catch (Exception e) { + logger.error("租户id信息转化异常", e); + } + + return tenantId; + } +} \ No newline at end of file