chengqf 2 years ago
parent a1fff34f40
commit c2b766152c

@ -0,0 +1,172 @@
package com.glxp.api.controller.basic;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import com.github.pagehelper.PageInfo;
import com.glxp.api.annotation.AuthRuleAnnotation;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.constant.AsyncDiDlHelper;
import com.glxp.api.entity.basic.ProductInfoEntity;
import com.glxp.api.entity.basic.UdiCompanyEntity;
import com.glxp.api.entity.basic.UdiEntity;
import com.glxp.api.entity.basic.UdiProductEntity;
import com.glxp.api.entity.basic.UdiRelevanceEntity;
import com.glxp.api.req.basic.FilterUdiRelRequest;
import com.glxp.api.req.basic.ProductInfoFilterRequest;
import com.glxp.api.req.basic.UdiCompanyRequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.service.basic.ProductInfoService;
import com.glxp.api.service.basic.SyncUdiService;
import com.glxp.api.service.basic.UdiCompanyService;
import com.glxp.api.service.basic.UdiProductService;
import com.glxp.api.service.basic.UdiRelevanceService;
import com.glxp.api.util.udi.FilterUdiUtils;
import cn.hutool.core.util.StrUtil;
import lombok.extern.slf4j.Slf4j;
/**
*
*/
@Slf4j
@RestController
public class UdiSyncController {
@Resource
UdiRelevanceService udiRelevanceService;
@Resource
UdiProductService udiProductService;
@Resource
SyncUdiService syncUdiService;
@Resource
AsyncDiDlHelper asyncDiDlHelper;
@Resource
ProductInfoService productInfoService;
@Resource
UdiCompanyService udiCompanyService;
//获取同步库UDI信息
@AuthRuleAnnotation("")
@GetMapping("udiwms/udiinfo/filterUdi")
public BaseResponse filterUdi(FilterUdiRelRequest filterUdiRelRequest) {
String nameCode;
if (StrUtil.isNotEmpty(filterUdiRelRequest.getUdiCode())) {
UdiEntity udiEntity = FilterUdiUtils.getUdi(filterUdiRelRequest.getUdiCode());
if (udiEntity != null) {
nameCode = udiEntity.getUdi();
} else {
return ResultVOUtils.error(500, "无效UDI码");
}
} else
nameCode = filterUdiRelRequest.getNameCode();
ProductInfoFilterRequest productInfoFilterRequest = new ProductInfoFilterRequest();
BeanUtils.copyProperties(filterUdiRelRequest, productInfoFilterRequest);
if (StrUtil.isNotEmpty(nameCode)) {
productInfoFilterRequest.setNameCode(nameCode);
} else {
productInfoFilterRequest.setDiType("1");
}
try {
BaseResponse<PageSimpleResponse<ProductInfoEntity>> udiDlDeviceResponse = syncUdiService.filterUdi(productInfoFilterRequest);
if (udiDlDeviceResponse.getCode() == 20000) {
if (filterUdiRelRequest.getIsCheck() != null && filterUdiRelRequest.getIsCheck()) {
List<ProductInfoEntity> productInfoEntities = udiDlDeviceResponse.getData().getList();
if (productInfoEntities != null && productInfoEntities.size() > 0) {
for (ProductInfoEntity productInfoEntity : productInfoEntities) {
List<UdiRelevanceEntity> udiRelevanceEntities = udiRelevanceService.selectByUuid(productInfoEntity.getUuid());
if (udiRelevanceEntities != null && udiRelevanceEntities.size() > 0) {
for (UdiRelevanceEntity udiRelevanceEntity : udiRelevanceEntities) {
if (udiRelevanceEntity.getThirdId() == null &&
udiRelevanceEntity.getThirdId2() == null && udiRelevanceEntity.getThirdId1() == null &&
udiRelevanceEntity.getThirdId3() == null && udiRelevanceEntity.getThirdId4() == null) {
//不能添加
productInfoEntity.setCheck(true);
break;
} else
productInfoEntity.setCheck(false);
}
} else {
productInfoEntity.setCheck(false);
}
}
}
}
}
return udiDlDeviceResponse;
} catch (Exception e) {
log.error(e.getMessage(), e);
return ResultVOUtils.error(500, "连接UDI数据下载服务出错");
}
}
//获取同步库医疗器械注册人信息
@AuthRuleAnnotation("")
@GetMapping("udiwms/udiinfo/filterCompany")
public BaseResponse filterCompany(UdiCompanyRequest udiCompanyRequest) {
try {
BaseResponse<PageSimpleResponse<UdiCompanyEntity>> udiDlDeviceResponse = syncUdiService.filterCompany(udiCompanyRequest);
return udiDlDeviceResponse;
} catch (Exception e) {
e.printStackTrace();
return ResultVOUtils.error(500, "连接UDI数据下载服务出错");
}
}
@AuthRuleAnnotation("")
@GetMapping("/udiwms/basic/instrument/maintain/filterProduct")
public BaseResponse filterProduct(FilterUdiRelRequest filterUdiRelRequest) {
List<UdiProductEntity> udiInfoEntities
= udiProductService.filterAllUdiInfo(filterUdiRelRequest);
PageInfo<UdiProductEntity> pageInfo;
pageInfo = new PageInfo<>(udiInfoEntities);
PageSimpleResponse<UdiProductEntity> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(pageInfo.getTotal());
pageSimpleResponse.setList(udiInfoEntities);
return ResultVOUtils.success(pageSimpleResponse);
}
@AuthRuleAnnotation("")
@GetMapping("/udiwms/basic/findByCode")
public BaseResponse findByCode(FilterUdiRelRequest filterUdiRelRequest) {
UdiEntity udiEntity = FilterUdiUtils.getUdi(filterUdiRelRequest.getUdiCode());
UdiProductEntity udiProductEntity
= udiProductService.findByNameCode(udiEntity.getUdi());
return ResultVOUtils.success(udiProductEntity);
}
//出入库同步下载
@GetMapping("udidl/udiwms/syncUdi")
public BaseResponse syncUdi(ProductInfoFilterRequest productInfoFilterRequest) {
List<ProductInfoEntity> productInfoEntityList = productInfoService.syncDlUdi(productInfoFilterRequest);
return ResultVOUtils.success(productInfoEntityList);
}
//出入库同步下载
@GetMapping("udidl/udiwms/syncCompany")
public BaseResponse syncCompany(UdiCompanyRequest udiCompanyRequest) {
List<UdiCompanyEntity> udiCompanyEntities = udiCompanyService.syncDlCompany(udiCompanyRequest);
return ResultVOUtils.success(udiCompanyEntities);
}
}

@ -0,0 +1,114 @@
package com.glxp.api.service.basic;
import cn.hutool.core.util.StrUtil;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.entity.basic.ProductInfoEntity;
import com.glxp.api.entity.basic.UdiCompanyEntity;
import com.glxp.api.req.basic.ProductInfoFilterRequest;
import com.glxp.api.req.basic.UdiCompanyRequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.util.RedisUtil;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import javax.validation.Valid;
import java.util.List;
@Service
public class SyncUdiService {
@Resource
ProductInfoService productInfoService;
@Resource
UdiCompanyService udiCompanyService;
@Resource
RedisUtil redisUtil;
public BaseResponse filterUdi(ProductInfoFilterRequest productInfoFilterRequest) {
//过滤--1.参数不能全未空
if ((productInfoFilterRequest.getYlqxzcrbarmc() == null || productInfoFilterRequest.getYlqxzcrbarmc().equals("")) &&
(productInfoFilterRequest.getCpmctymc() == null || productInfoFilterRequest.getCpmctymc().equals("")) &&
(productInfoFilterRequest.getNameCode() == null || productInfoFilterRequest.getNameCode().equals("")) &&
(productInfoFilterRequest.getGgxh() == null || productInfoFilterRequest.getGgxh().equals("")) &&
(productInfoFilterRequest.getUuid() == null || productInfoFilterRequest.getUuid().equals("")) &&
(productInfoFilterRequest.getZczbhhzbapzbh() == null || productInfoFilterRequest.getZczbhhzbapzbh().equals("")) &&
(productInfoFilterRequest.getDeviceRecordKey() == null || productInfoFilterRequest.getDeviceRecordKey().equals(""))
) {
return ResultVOUtils.error(500, "查询条件不能为空!");
}
if (StrUtil.isEmpty(productInfoFilterRequest.getYlqxzcrbarmc()) &&
StrUtil.isEmpty(productInfoFilterRequest.getCpmctymc())
&& StrUtil.isEmpty(productInfoFilterRequest.getNameCode())
&& StrUtil.isEmpty(productInfoFilterRequest.getGgxh())
&& StrUtil.isEmpty(productInfoFilterRequest.getUuid())
&& StrUtil.isEmpty(productInfoFilterRequest.getZczbhhzbapzbh())) {
if (productInfoFilterRequest.getNameCode() != null && !productInfoFilterRequest.getNameCode().equals("") && productInfoFilterRequest.getNameCode().length() < 10) {
return ResultVOUtils.error(500, "请输入完整的最小销售单元标识!");
}
}
if (StrUtil.isEmpty(productInfoFilterRequest.getYlqxzcrbarmc()) && StrUtil.isEmpty(productInfoFilterRequest.getNameCode())) {
if (StrUtil.isNotEmpty(productInfoFilterRequest.getCpmctymc())) {
return ResultVOUtils.error(500, "请输入医疗器械注册备案人名称");
}
if (productInfoFilterRequest.getGgxh() != null && !productInfoFilterRequest.getGgxh().equals("")) {
return ResultVOUtils.error(500, "请输入医疗器械注册备案人名称");
}
if (productInfoFilterRequest.getZczbhhzbapzbh() != null && !productInfoFilterRequest.getZczbhhzbapzbh().equals("")) {
return ResultVOUtils.error(500, "请输入医疗器械注册备案人名称");
}
}
if ((productInfoFilterRequest.getYlqxzcrbarmc() == null || productInfoFilterRequest.getYlqxzcrbarmc().equals(""))
&& (productInfoFilterRequest.getNameCode() == null || productInfoFilterRequest.getNameCode().equals(""))
&& (productInfoFilterRequest.getCpmctymc() == null || productInfoFilterRequest.getCpmctymc().equals(""))
) {
if (productInfoFilterRequest.getGgxh() != null && !productInfoFilterRequest.getGgxh().equals("")) {
return ResultVOUtils.error(500, "请输入医疗器械注册备案人名称");
}
if (productInfoFilterRequest.getZczbhhzbapzbh() != null && !productInfoFilterRequest.getZczbhhzbapzbh().equals("")) {
return ResultVOUtils.error(500, "请输入医疗器械注册备案人名称");
}
}
if (productInfoFilterRequest.getCpmctymc() != null && !productInfoFilterRequest.getCpmctymc().equals("") && productInfoFilterRequest.getCpmctymc().length() < 4) {
return ResultVOUtils.error(500, "请输入完整的产品通用名称!");
}
productInfoFilterRequest.setIsNewest(1);
// productInfoFilterRequest.setDiType("1");
String keyCache = productInfoFilterRequest.toCacheKey();
if (StrUtil.isEmpty(keyCache)) {
return ResultVOUtils.error(500, "查询条件不能为空!");
}
String totalStr = (String) redisUtil.get(keyCache);
long total = 0;
if (StrUtil.isEmpty(totalStr)) {
total = productInfoService.filterUdiNoPageCount(productInfoFilterRequest);
redisUtil.set(keyCache, total + "");
} else {
total = Long.parseLong(totalStr);
}
List<ProductInfoEntity> productInfoEntityList = productInfoService.filterUdiNoPage(productInfoFilterRequest);
PageSimpleResponse<ProductInfoEntity> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(total);
pageSimpleResponse.setList(productInfoEntityList);
return ResultVOUtils.success(pageSimpleResponse);
}
public BaseResponse filterCompany(@Valid UdiCompanyRequest udiCompanyRequest) {
List<UdiCompanyEntity> udiCompanyEntities = udiCompanyService.filterUdiCompany(udiCompanyRequest);
return ResultVOUtils.success(udiCompanyEntities);
}
}

@ -0,0 +1,28 @@
package com.glxp.api.service.basic;
import com.glxp.api.entity.basic.UdiCompanyEntity;
import com.glxp.api.req.basic.UdiCompanyRequest;
import java.util.List;
public interface UdiCompanyService {
List<UdiCompanyEntity> selectAllTyshxyh();
List<UdiCompanyEntity> syncDlCompany(UdiCompanyRequest udiCompanyRequest);
List<UdiCompanyEntity> filterUdiCompany(UdiCompanyRequest udiCompanyRequest);
boolean insertUdiCompany(UdiCompanyEntity udiCompanyEntity);
boolean insertUdiCompanys(List<UdiCompanyEntity> udiCompanyEntities);
boolean deleteById(String id);
boolean deleteAll(List<String> ids);
boolean updateUdiCompany(UdiCompanyEntity udiCompanyEntity);
}

@ -0,0 +1,63 @@
package com.glxp.api.service.basic;
import com.glxp.api.entity.basic.UdiProductEntity;
import com.glxp.api.req.basic.FilterUdiRelRequest;
import com.glxp.api.req.basic.UdiInfoRequest;
import com.glxp.api.res.basic.UdiRelevanceResponse;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* -
*/
public interface UdiProductService {
List<UdiProductEntity> filterUdiInfo(FilterUdiRelRequest filterUdiRelRequest);
UdiProductEntity findBySptm(String sptm);
List<UdiRelevanceResponse> filterUdiInfo2(FilterUdiRelRequest filterUdiRelRequest);
List<UdiProductEntity> filterAllUdiInfo(FilterUdiRelRequest filterUdiRelRequest);
UdiProductEntity findByNameCode(String nameCode);
UdiProductEntity findById(@Param("id") String id);
UdiProductEntity findByUuid(String uuid);
List<UdiProductEntity> findByUuids(String uuid);
boolean insertUdiInfo(UdiProductEntity udiProductEntity);
boolean insertUdiInfos(List<UdiProductEntity> udiInfoEntities);
boolean updateUdiInfo(UdiProductEntity udiProductEntity);
boolean updateUdiInfoByUuid(UdiProductEntity udiProductEntity);
boolean updateUdiInfoById(UdiProductEntity udiProductEntity);
boolean deleteById(String id);
boolean deleteByUuid(String uuid);
/**
*
*
* @param relId
* @return
*/
List<String> getGgxhList(String relId);
boolean updateUdiInfoNotAll(UdiInfoRequest udiInfoRequest);
/**
* DI
*
* @param nameCode
* @return
*/
UdiProductEntity getAllowNoBatch(String nameCode);
}

@ -0,0 +1,105 @@
package com.glxp.api.service.basic;
import com.baomidou.mybatisplus.extension.service.IService;
import com.glxp.api.entity.basic.UdiRelevanceEntity;
import com.glxp.api.req.basic.FilterUdiRelRequest;
import com.glxp.api.res.basic.UdiRelevanceResponse;
import java.util.List;
/**
*
*/
public interface UdiRelevanceService extends IService<UdiRelevanceEntity> {
List<UdiRelevanceResponse> filterUdiRelevance(FilterUdiRelRequest filterUdiRelRequest);
List<UdiRelevanceResponse> filterCertUdi(FilterUdiRelRequest filterUdiRelRequest);
List<UdiRelevanceResponse> filterUdiJoinSup(FilterUdiRelRequest filterUdiRelRequest);
List<UdiRelevanceEntity> filterUdiEntity(FilterUdiRelRequest filterUdiRelRequest);
UdiRelevanceResponse selectByNameCode(String nameCode);
/**
* ID
*
* @param relId
* @return
*/
UdiRelevanceResponse selectByRelId(String relId);
//根据DI查询产品信息
List<UdiRelevanceResponse> selectAllByNameCode(String nameCode);
List<UdiRelevanceResponse> selectAllByNameCode(String nameCode, String unitFk);
boolean isExit();
List<UdiRelevanceResponse> filterUdiGp(FilterUdiRelRequest filterUdiRelRequest);
boolean isExitByUuid(String uuid);
List<UdiRelevanceEntity> batchSelectByUuid(List<String> uuids);
List<UdiRelevanceEntity> batchSelectByIds(List<String> ids);
List<UdiRelevanceEntity> selectByUuid(String uuid);
UdiRelevanceEntity selectById(Long id);
UdiRelevanceResponse selectGroupById(Long id);
UdiRelevanceResponse selectUdiId(Long id);
UdiRelevanceResponse selectSupGroupById(Long id, String supId);
UdiRelevanceEntity selectUpdateByUuid(String uuid);
UdiRelevanceEntity selectUpdateByThirdId(String thirdId);
UdiRelevanceEntity selectByMainIdLimitOne(String mainId);
List<UdiRelevanceResponse> selectByMainId(String mainId);
UdiRelevanceEntity selectUpteaByAll(String uuid, String thirdId);
UdiRelevanceEntity selectByThirdId(String thirdId, String thirdSys);
List<UdiRelevanceResponse> selectListByThirdId(String thirdId, String thirdSys);
boolean insertUdiRelevance(UdiRelevanceEntity udiRelevanceEntity);
boolean insertUdiRelevanceignore(UdiRelevanceEntity udiRelevanceEntity);
boolean updateUdiRelevance(UdiRelevanceEntity udiRelevanceEntity);
boolean deleteById(String id);
boolean deleteByIds(List<String> id);
boolean deleteByUuid(String uuid);
/**
* uuid
*
* @param relId
* @return
*/
String findUuidById(String relId);
List<UdiRelevanceResponse> selectGroupByNameCode(String nameCode, Boolean isDisable);
/**
* UDIID
*
* @param code
* @return
*/
String getRelIdByUdiCode(String code);
}

@ -0,0 +1,67 @@
package com.glxp.api.service.basic.impl;
import com.github.pagehelper.PageHelper;
import com.glxp.api.dao.basic.UdiCompanyDao;
import com.glxp.api.entity.basic.UdiCompanyEntity;
import com.glxp.api.req.basic.UdiCompanyRequest;
import com.glxp.api.service.basic.UdiCompanyService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.List;
@Service
@Transactional(rollbackFor = Exception.class)
public class UdiCompanyServiceImpl implements UdiCompanyService {
@Resource
UdiCompanyDao udiCompanyDao;
@Override
public List<UdiCompanyEntity> selectAllTyshxyh() {
return udiCompanyDao.selectAllTyshxyh();
}
@Override
public List<UdiCompanyEntity> syncDlCompany(UdiCompanyRequest udiCompanyRequest) {
int offset = (udiCompanyRequest.getPage() - 1) * udiCompanyRequest.getLimit() + 1;
udiCompanyRequest.setPage(offset);
return udiCompanyDao.syncDlCompany(udiCompanyRequest);
}
@Override
public List<UdiCompanyEntity> filterUdiCompany(UdiCompanyRequest udiCompanyRequest) {
if (udiCompanyRequest.getPage() != null && udiCompanyRequest.getLimit() != null) {
int offset = (udiCompanyRequest.getPage() - 1) * udiCompanyRequest.getLimit();
PageHelper.offsetPage(offset, udiCompanyRequest.getLimit());
}
return udiCompanyDao.filterUdiCompany(udiCompanyRequest);
}
@Override
public boolean insertUdiCompany(UdiCompanyEntity udiCompanyEntity) {
return udiCompanyDao.insertUdiCompany(udiCompanyEntity);
}
@Override
public boolean insertUdiCompanys(List<UdiCompanyEntity> udiCompanyEntities) {
return udiCompanyDao.insertUdiCompanys(udiCompanyEntities);
}
@Override
public boolean deleteById(String id) {
return udiCompanyDao.deleteById(id);
}
@Override
public boolean deleteAll(List<String> ids) {
return udiCompanyDao.deleteAll(ids);
}
@Override
public boolean updateUdiCompany(UdiCompanyEntity udiCompanyEntity) {
return udiCompanyDao.updateUdiCompany(udiCompanyEntity);
}
}

@ -0,0 +1,158 @@
package com.glxp.api.service.basic.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageHelper;
import com.glxp.api.dao.basic.UdiProductDao;
import com.glxp.api.entity.basic.UdiProductEntity;
import com.glxp.api.req.basic.FilterUdiRelRequest;
import com.glxp.api.req.basic.UdiInfoRequest;
import com.glxp.api.res.basic.UdiRelevanceResponse;
import com.glxp.api.service.basic.UdiProductService;
import com.glxp.api.util.udi.FilterUdiUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Collections;
import java.util.List;
@Service
@Transactional(rollbackFor = Exception.class)
public class UdiProductServiceImpl implements UdiProductService {
@Resource
UdiProductDao udiProductDao;
@Override
public List<UdiProductEntity> filterUdiInfo(FilterUdiRelRequest filterUdiRelRequest) {
if (filterUdiRelRequest == null) {
return Collections.emptyList();
}
if (filterUdiRelRequest.getPage() != null) {
int offset = (filterUdiRelRequest.getPage() - 1) * filterUdiRelRequest.getLimit();
PageHelper.offsetPage(offset, filterUdiRelRequest.getLimit());
}
List<UdiProductEntity> data = udiProductDao.filterUdiInfo(filterUdiRelRequest);
return data;
}
@Override
public UdiProductEntity findBySptm(String sptm) {
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
filterUdiRelRequest.setSptm(sptm);
List<UdiProductEntity> data = udiProductDao.filterUdiInfo(filterUdiRelRequest);
if (CollUtil.isNotEmpty(data)) {
return data.get(0);
}
return null;
}
@Override
public List<UdiRelevanceResponse> filterUdiInfo2(FilterUdiRelRequest filterUdiRelRequest) {
if (filterUdiRelRequest == null) {
return Collections.emptyList();
}
if (filterUdiRelRequest.getPage() != null) {
int offset = (filterUdiRelRequest.getPage() - 1) * filterUdiRelRequest.getLimit();
PageHelper.offsetPage(offset, filterUdiRelRequest.getLimit());
}
List<UdiRelevanceResponse> data = udiProductDao.filterUdiInfo2(filterUdiRelRequest);
return data;
}
@Override
public List<UdiProductEntity> filterAllUdiInfo(FilterUdiRelRequest filterUdiRelRequest) {
if (filterUdiRelRequest == null) {
return Collections.emptyList();
}
List<UdiProductEntity> data = udiProductDao.filterUdiInfo(filterUdiRelRequest);
return data;
}
@Override
public UdiProductEntity findByNameCode(String nameCode) {
String prefix = FilterUdiUtils.getDiStr(nameCode);
return udiProductDao.findByNameCode(prefix);
}
@Override
public UdiProductEntity findById(String id) {
return udiProductDao.findById(id);
}
@Override
public UdiProductEntity findByUuid(String uuid) {
return udiProductDao.findByUuid(uuid);
}
@Override
public List<UdiProductEntity> findByUuids(String uuid) {
return udiProductDao.findByUuids(uuid);
}
@Override
public boolean insertUdiInfo(UdiProductEntity udiProductEntity) {
if (udiProductEntity.getId() == null) {
udiProductEntity.setId(IdUtil.getSnowflakeNextId());
}
return udiProductDao.insertUdiInfo(udiProductEntity);
}
@Override
public boolean insertUdiInfos(List<UdiProductEntity> udiInfoEntities) {
return udiProductDao.insertUdiInfos(udiInfoEntities);
}
@Override
public boolean updateUdiInfo(UdiProductEntity udiProductEntity) {
if (StrUtil.isEmpty(udiProductEntity.getNameCode()))
return false;
return udiProductDao.updateUdiInfo(udiProductEntity);
}
@Override
public boolean updateUdiInfoByUuid(UdiProductEntity udiProductEntity) {
if (StrUtil.isEmpty(udiProductEntity.getUuid()))
return false;
return udiProductDao.updateUdiInfoByUuid(udiProductEntity);
}
@Override
public boolean updateUdiInfoById(UdiProductEntity udiProductEntity) {
return udiProductDao.updateUdiInfoById(udiProductEntity);
}
@Override
public boolean deleteById(String id) {
return udiProductDao.deleteById(id);
}
@Override
public boolean deleteByUuid(String uuid) {
return udiProductDao.deleteByUuid(uuid);
}
@Override
public List<String> getGgxhList(String relId) {
return udiProductDao.selectGgxhList(relId);
}
@Override
public boolean updateUdiInfoNotAll(UdiInfoRequest udiInfoRequest) {
if (StrUtil.isEmpty(udiInfoRequest.getUuid()))
return false;
return udiProductDao.updateUdiInfoNotAll(udiInfoRequest);
}
@Override
public UdiProductEntity getAllowNoBatch(String nameCode) {
String di = FilterUdiUtils.getDiStr(nameCode);
return udiProductDao.selectAllowNoBatch(di);
}
}

@ -0,0 +1,405 @@
package com.glxp.api.service.basic.impl;
import java.util.Collections;
import java.util.List;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper;
import com.glxp.api.constant.ConstantStatus;
import com.glxp.api.dao.basic.UdiRelevanceDao;
import com.glxp.api.entity.basic.UdiEntity;
import com.glxp.api.entity.basic.UdiRelevanceEntity;
import com.glxp.api.req.basic.FilterUdiRelRequest;
import com.glxp.api.res.basic.UdiRelevanceResponse;
import com.glxp.api.service.basic.UdiRelevanceService;
import com.glxp.api.util.udi.FilterUdiUtils;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
@Service
@Transactional(rollbackFor = Exception.class)
public class UdiRelevanceServiceImpl extends ServiceImpl<UdiRelevanceDao, UdiRelevanceEntity> implements UdiRelevanceService {
@Resource
UdiRelevanceDao udiRelevanceDao;
@Override
public List<UdiRelevanceResponse> filterUdiRelevance(FilterUdiRelRequest filterUdiRelRequest) {
if (filterUdiRelRequest == null) {
return Collections.emptyList();
}
if (filterUdiRelRequest.getPage() != null) {
int offset = (filterUdiRelRequest.getPage() - 1) * filterUdiRelRequest.getLimit();
PageHelper.offsetPage(offset, filterUdiRelRequest.getLimit());
}
List<UdiRelevanceResponse> data = udiRelevanceDao.filterUdiRelevance(filterUdiRelRequest);
return data;
}
@Override
public List<UdiRelevanceResponse> filterCertUdi(FilterUdiRelRequest filterUdiRelRequest) {
if (filterUdiRelRequest == null) {
return Collections.emptyList();
}
if (filterUdiRelRequest.getPage() != null) {
int offset = (filterUdiRelRequest.getPage() - 1) * filterUdiRelRequest.getLimit();
PageHelper.offsetPage(offset, filterUdiRelRequest.getLimit());
}
List<UdiRelevanceResponse> data = udiRelevanceDao.filterCertUdi(filterUdiRelRequest);
return data;
}
@Override
public List<UdiRelevanceResponse> filterUdiJoinSup(FilterUdiRelRequest filterUdiRelRequest) {
if (filterUdiRelRequest == null) {
return Collections.emptyList();
}
if (filterUdiRelRequest.getPage() != null) {
int offset = (filterUdiRelRequest.getPage() - 1) * filterUdiRelRequest.getLimit();
PageHelper.offsetPage(offset, filterUdiRelRequest.getLimit());
}
List<UdiRelevanceResponse> data = udiRelevanceDao.filterUdiJoinSup(filterUdiRelRequest);
return data;
}
@Override
public List<UdiRelevanceEntity> filterUdiEntity(FilterUdiRelRequest filterUdiRelRequest) {
List<UdiRelevanceEntity> data = udiRelevanceDao.filterEntity(filterUdiRelRequest);
return data;
}
@Override
public List<UdiRelevanceResponse> selectAllByNameCode(String nameCode) {
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
filterUdiRelRequest.setUniqueNameCode(nameCode);
List<UdiRelevanceResponse> udiRelevanceResponses = filterUdiRelevance(filterUdiRelRequest);
return udiRelevanceResponses;
}
@Override
public UdiRelevanceResponse selectByNameCode(String nameCode) {
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
filterUdiRelRequest.setUniqueNameCode(nameCode);
List<UdiRelevanceResponse> udiRelevanceResponses = filterUdiRelevance(filterUdiRelRequest);
if (udiRelevanceResponses != null && udiRelevanceResponses.size() > 0)
return udiRelevanceResponses.get(0);
return null;
}
@Override
public UdiRelevanceResponse selectByRelId(String relId) {
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
filterUdiRelRequest.setRelId(relId);
List<UdiRelevanceResponse> udiRelevanceResponses = filterUdiRelevance(filterUdiRelRequest);
if (CollUtil.isNotEmpty(udiRelevanceResponses)) {
return udiRelevanceResponses.get(0);
}
return null;
}
@Override
public List<UdiRelevanceResponse> selectAllByNameCode(String nameCode, String unitFk) {
List<UdiRelevanceResponse> udiRelevanceResponses;
if (StrUtil.isNotEmpty(unitFk)) {
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
filterUdiRelRequest.setUniqueNameCode(nameCode);
filterUdiRelRequest.setUnitFk(unitFk);
filterUdiRelRequest.setIsDisable(false);
udiRelevanceResponses = filterUdiJoinSup(filterUdiRelRequest);
} else {
udiRelevanceResponses = selectGroupByNameCode(nameCode, false);
}
if (udiRelevanceResponses.size() == 1) {
UdiRelevanceResponse udiRelevanceResponse = udiRelevanceResponses.get(0);
if (udiRelevanceResponse == null || udiRelevanceResponse.getProductType() == ConstantStatus.PRODUCT_TYPE_THIRD) {
return selectByMainId(nameCode);
}
}
return udiRelevanceResponses;
}
@Override
public boolean isExit() {
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
filterUdiRelRequest.setPage(1);
filterUdiRelRequest.setLimit(1);
List<UdiRelevanceResponse> data = filterUdiRelevance(filterUdiRelRequest);
if (data != null && data.size() > 0) {
return true;
}
return false;
}
@Override
public List<UdiRelevanceResponse> filterUdiGp(FilterUdiRelRequest filterUdiRelRequest) {
if (filterUdiRelRequest == null) {
return Collections.emptyList();
}
if (filterUdiRelRequest.getPage() != null) {
int offset = (filterUdiRelRequest.getPage() - 1) * filterUdiRelRequest.getLimit();
PageHelper.offsetPage(offset, filterUdiRelRequest.getLimit());
}
List<UdiRelevanceResponse> data = udiRelevanceDao.filterUdiGp(filterUdiRelRequest);
return data;
}
@Override
public boolean isExitByUuid(String uuid) {
List<UdiRelevanceEntity> udiRelevanceEntities = udiRelevanceDao.selectByUuid(uuid);
if (udiRelevanceEntities != null && !udiRelevanceEntities.isEmpty()) {
return true;
}
return false;
}
@Override
public List<UdiRelevanceEntity> batchSelectByUuid(List<String> uuids) {
return udiRelevanceDao.batchSelectByUuid(uuids);
}
@Override
public List<UdiRelevanceEntity> batchSelectByIds(List<String> ids) {
return udiRelevanceDao.batchSelectByIds(ids);
}
@Override
public List<UdiRelevanceEntity> selectByUuid(String uuid) {
return udiRelevanceDao.selectByUuid(uuid);
}
@Override
public UdiRelevanceEntity selectById(Long id) {
return udiRelevanceDao.selectById(id);
}
@Override
public UdiRelevanceResponse selectGroupById(Long id) {
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
filterUdiRelRequest.setId(id);
filterUdiRelRequest.setDiType(1);
List<UdiRelevanceResponse> data = udiRelevanceDao.filterUdiRelevance(filterUdiRelRequest);
if (data != null && data.size() > 0)
return data.get(0);
return null;
}
@Override
public UdiRelevanceResponse selectUdiId(Long id) {
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
filterUdiRelRequest.setId(id);
List<UdiRelevanceResponse> data = udiRelevanceDao.filterUdiRelevance(filterUdiRelRequest);
if (data != null && data.size() > 0)
return data.get(0);
return null;
}
@Override
public UdiRelevanceResponse selectSupGroupById(Long id, String supId) {
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
if (StrUtil.isNotEmpty(supId))
filterUdiRelRequest.setUnitFk(supId);
filterUdiRelRequest.setId(id);
filterUdiRelRequest.setDiType(1);
return udiRelevanceDao.selectOneUdiJoinSup(filterUdiRelRequest);
}
@Override
public UdiRelevanceEntity selectUpdateByUuid(String uuid) {
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
filterUdiRelRequest.setUuid(uuid);
List<UdiRelevanceEntity> data = udiRelevanceDao.filterEntity(filterUdiRelRequest);
if (data != null && data.size() > 0)
return data.get(0);
return null;
}
@Override
public UdiRelevanceEntity selectUpdateByThirdId(String thirdId) {
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
if (thirdId != null) {
/* ThrSystemEntity basicThirdSysEntity = basicThirdSysService.selectMainThrSys();
String mainSys = basicThirdSysEntity.getThirdId();
if (mainSys.equals("thirdId")) {
filterUdiRelRequest.setThirdId(thirdId);
} else if (mainSys.equals("thirdId1")) {
filterUdiRelRequest.setThirdId1(thirdId);
} else if (mainSys.equals("thirdId2")) {
filterUdiRelRequest.setThirdId2(thirdId);
} else if (mainSys.equals("thirdId3")) {
filterUdiRelRequest.setThirdId3(thirdId);
} else if (mainSys.equals("thirdId4")) {
filterUdiRelRequest.setThirdId4(thirdId);
}*/
}
List<UdiRelevanceEntity> data = udiRelevanceDao.filterEntity(filterUdiRelRequest);
if (data != null && data.size() > 0)
return data.get(0);
return null;
}
@Override
public UdiRelevanceEntity selectByMainIdLimitOne(String mainId) {
if (mainId == null)
return null;
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
filterUdiRelRequest.setMainId(mainId);
return udiRelevanceDao.selectByThirdId(filterUdiRelRequest);
}
@Override
public List<UdiRelevanceResponse> selectByMainId(String mainId) {
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
filterUdiRelRequest.setMainId(mainId);
List<UdiRelevanceResponse> udiRelevanceResponses = filterUdiRelevance(filterUdiRelRequest);
return udiRelevanceResponses;
}
@Override
public UdiRelevanceEntity selectUpteaByAll(String uuid, String thirdId) {
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
if (thirdId != null) {
/*ThrSystemEntity basicThirdSysEntity = basicThirdSysService.selectMainThrSys();
String mainSys = basicThirdSysEntity.getThirdId();
filterUdiRelRequest.setUuid(uuid);
if (mainSys.equals("thirdId")) {
filterUdiRelRequest.setThirdId(thirdId);
} else if (mainSys.equals("thirdId1")) {
filterUdiRelRequest.setThirdId1(thirdId);
} else if (mainSys.equals("thirdId2")) {
filterUdiRelRequest.setThirdId2(thirdId);
} else if (mainSys.equals("thirdId3")) {
filterUdiRelRequest.setThirdId3(thirdId);
} else if (mainSys.equals("thirdId4")) {
filterUdiRelRequest.setThirdId4(thirdId);
}*/
}
List<UdiRelevanceEntity> data = udiRelevanceDao.filterEntity(filterUdiRelRequest);
if (data != null && data.size() > 0)
return data.get(0);
return null;
}
@Override
public UdiRelevanceEntity selectByThirdId(String thirdId, String thirdSys) {
if (StrUtil.isEmpty(thirdId) || StrUtil.isEmpty(thirdSys)) {
return null;
}
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
if ("thirdId".equals(thirdSys)) {
filterUdiRelRequest.setThirdId(thirdId);
} else if ("thirdId1".equals(thirdSys)) {
filterUdiRelRequest.setThirdId1(thirdId);
} else if ("thirdId2".equals(thirdSys)) {
filterUdiRelRequest.setThirdId2(thirdId);
} else if ("thirdId3".equals(thirdSys)) {
filterUdiRelRequest.setThirdId3(thirdId);
} else if ("thirdId4".equals(thirdSys)) {
filterUdiRelRequest.setThirdId4(thirdId);
}
return udiRelevanceDao.selectByThirdId(filterUdiRelRequest);
}
@Override
public List<UdiRelevanceResponse> selectListByThirdId(String thirdId, String thirdSys) {
if (StrUtil.isEmpty(thirdId) || StrUtil.isEmpty(thirdSys)) {
return null;
}
FilterUdiRelRequest filterUdiRelRequest = new FilterUdiRelRequest();
if ("thirdId".equals(thirdSys)) {
filterUdiRelRequest.setThirdId(thirdId);
} else if ("thirdId1".equals(thirdSys)) {
filterUdiRelRequest.setThirdId1(thirdId);
} else if ("thirdId2".equals(thirdSys)) {
filterUdiRelRequest.setThirdId2(thirdId);
} else if ("thirdId3".equals(thirdSys)) {
filterUdiRelRequest.setThirdId3(thirdId);
} else if ("thirdId4".equals(thirdSys)) {
filterUdiRelRequest.setThirdId4(thirdId);
}
List<UdiRelevanceResponse> data = udiRelevanceDao.filterUdiGp(filterUdiRelRequest);
return data;
}
@Override
public boolean insertUdiRelevance(UdiRelevanceEntity udiRelevanceEntity) {
return udiRelevanceDao.insertUdiRelevance(udiRelevanceEntity);
}
@Override
public boolean insertUdiRelevanceignore(UdiRelevanceEntity udiRelevanceEntity) {
return udiRelevanceDao.insertUdiRelevanceignore(udiRelevanceEntity);
}
@Override
public boolean updateUdiRelevance(UdiRelevanceEntity udiRelevanceEntity) {
/*ThrSystemEntity basicThirdSysEntity = basicThirdSysService.selectMainThrSys();
String mainSys = basicThirdSysEntity.getThirdId();
if (mainSys.equals("thirdId")) {
udiRelevanceEntity.setMainId(udiRelevanceEntity.getThirdId());
} else if (mainSys.equals("thirdId1")) {
udiRelevanceEntity.setMainId(udiRelevanceEntity.getThirdId1());
} else if (mainSys.equals("thirdId2")) {
udiRelevanceEntity.setMainId(udiRelevanceEntity.getThirdId2());
} else if (mainSys.equals("thirdId3")) {
udiRelevanceEntity.setMainId(udiRelevanceEntity.getThirdId3());
} else if (mainSys.equals("thirdId4")) {
udiRelevanceEntity.setMainId(udiRelevanceEntity.getThirdId4());
}*/
return udiRelevanceDao.updateUdiRelevance(udiRelevanceEntity);
}
@Override
public boolean deleteById(String id) {
return udiRelevanceDao.deleteById(id);
}
@Override
public boolean deleteByIds(List<String> ids) {
return udiRelevanceDao.deleteByIds(ids);
}
@Override
public boolean deleteByUuid(String uuid) {
return udiRelevanceDao.deleteByUuid(uuid);
}
@Override
public String findUuidById(String relId) {
return udiRelevanceDao.selectUuidById(relId);
}
@Override
public List<UdiRelevanceResponse> selectGroupByNameCode(String nameCode, Boolean isDisable) {
return udiRelevanceDao.selectGroupByNameCode(nameCode, isDisable);
}
@Override
public String getRelIdByUdiCode(String code) {
if (StrUtil.isBlank(code)) {
return null;
}
UdiEntity udi = FilterUdiUtils.getUdi(code);
return udiRelevanceDao.selectRelIdByNameCode(udi.getUdi());
}
}
Loading…
Cancel
Save