新增下载收费项目字典

dev_fifo1.0
anthonywj 1 year ago
parent 40d97991e8
commit 8fa91cee91

@ -57,5 +57,5 @@ public interface ThirdSysConstant {
String INV_PH_ORDER_QUERY_URL = "invPhOrderUrl";
String INV_GH_ORDER_QUERY_URL = "invGhOrderUrl";
String SF_PROJECT_DICT_URL = "sfProjectDictUrl";
}

@ -69,10 +69,10 @@ public class BasicDestinyRelController {
return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage());
}
List<BasicSkProjectResponse> basicSkProjectResponses = basicSkProjectService.filterList(basicSkProjectRequest);
if (CollectionUtil.isNotEmpty(basicSkProjectResponses)){
if (CollectionUtil.isNotEmpty(basicSkProjectResponses)) {
List<Long> pId = basicSkProjectResponses.stream().map(BasicSkProjectResponse::getId).collect(Collectors.toList());
Map<Long,BigDecimal> priceMap = basicDestinyRelService.sumPriceByRedIds(pId);
basicSkProjectResponses.forEach( x -> {
Map<Long, BigDecimal> priceMap = basicDestinyRelService.sumPriceByRedIds(pId);
basicSkProjectResponses.forEach(x -> {
BigDecimal price = priceMap.get(x.getId());
x.setPrice(String.valueOf(price));
});
@ -305,7 +305,7 @@ public class BasicDestinyRelController {
public BaseResponse submitSkSkProject(@RequestBody BasicSkProjectEntity basicSkProjectEntity) {
Long id = basicSkProjectEntity.getId();
if (id == null){
if (id == null) {
return ResultVOUtils.error(999, "提交失败id不可以为空");
}
Boolean falgf = basicSkProjectService.generateProduct(id);

@ -1,9 +1,15 @@
package com.glxp.api.req.basic;
import com.glxp.api.util.page.ListPageRequest;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class DlThirdDestinyRequest extends ListPageRequest {

@ -1,36 +1,28 @@
package com.glxp.api.service.basic;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.bean.copier.CopyOptions;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.dao.basic.BasicSkProjectMapper;
import com.glxp.api.entity.basic.*;
import com.glxp.api.dao.basic.BasicSkPrescribeMapper;
import com.glxp.api.entity.basic.BasicSkPrescribeDiEntity;
import com.glxp.api.entity.basic.BasicSkPrescribeEntity;
import com.glxp.api.entity.basic.BasicSkPrescribeItemEntity;
import com.glxp.api.entity.basic.UdiRelevanceEntity;
import com.glxp.api.entity.thrsys.ThrProductsEntity;
import com.glxp.api.http.ErpBasicClient;
import com.glxp.api.req.basic.BasicSkPrescribeRequest;
import com.glxp.api.req.basic.BasicSkProjectRequest;
import com.glxp.api.req.basic.GetSickPrescribeRequest;
import com.glxp.api.req.basic.GetSickRequest;
import com.glxp.api.req.thrsys.FilterThrProductsRequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.basic.BasicSkPrescribeResponse;
import com.glxp.api.res.basic.BasicSkProjectResponse;
import com.glxp.api.res.basic.BasicSkSickerResponse;
import com.glxp.api.res.basic.UdiRelevanceResponse;
import com.glxp.api.res.thrsys.ThrProductsResponse;
import com.glxp.api.service.BasicSkPrescribeDiService;
import com.glxp.api.service.thrsys.ThrProductsService;
import com.glxp.api.util.IntUtil;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.glxp.api.dao.basic.BasicSkPrescribeMapper;
import javax.annotation.Resource;
import java.time.LocalDateTime;

@ -4,7 +4,9 @@ package com.glxp.api.service.basic.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.IdUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper;
import com.glxp.api.common.res.BaseResponse;
@ -14,17 +16,14 @@ import com.glxp.api.dao.basic.BasicSkProjectMapper;
import com.glxp.api.dao.basic.UdiRelevanceDao;
import com.glxp.api.entity.basic.BasicSkProjectDetailEntity;
import com.glxp.api.entity.basic.BasicSkProjectEntity;
import com.glxp.api.entity.basic.BasicSkSickerEntity;
import com.glxp.api.entity.basic.UdiRlSupEntity;
import com.glxp.api.http.ErpBasicClient;
import com.glxp.api.req.basic.BasicDestinyRelRequest;
import com.glxp.api.req.basic.DlThirdDestinyRequest;
import com.glxp.api.req.basic.FilterUdiRelRequest;
import com.glxp.api.req.basic.GetSickRequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.res.basic.BasicSkProjectDetailResponse;
import com.glxp.api.res.basic.BasicSkProjectResponse;
import com.glxp.api.res.basic.BasicSkSickerResponse;
import com.glxp.api.res.basic.UdiRelevanceResponse;
import org.springframework.stereotype.Service;
@ -42,6 +41,8 @@ public class BasicDestinyRelService extends ServiceImpl<BasicDestinyRelMapper, B
ErpBasicClient erpBasicClient;
@Resource
UdiRelevanceDao udiRelevanceDao;
@Resource
BasicSkProjectMapper basicSkProjectMapper;
public Boolean addModeldestinyProduct(BasicDestinyRelRequest basicDestinyRelRequest) {
@ -122,26 +123,21 @@ public class BasicDestinyRelService extends ServiceImpl<BasicDestinyRelMapper, B
BaseResponse<PageSimpleResponse<BasicSkProjectResponse>> baseResponse = erpBasicClient.getBasicProject(request);
if (baseResponse.getCode() == 20000) {
List<BasicSkProjectResponse> list = baseResponse.getData().getList();
List<BasicSkProjectEntity> basicSkProjectEntities = new ArrayList<>();
if (CollUtil.isNotEmpty(list)) {
list.forEach(item -> { //todo 数据转换
list.forEach(item -> {
BasicSkProjectEntity basicSkProjectEntity = new BasicSkProjectEntity();
BeanUtil.copyProperties(item, basicSkProjectEntity);
List<BasicSkProjectDetailResponse> basicSkProjectDetailResponses = item.getBasicSkProjectDetailResponses();
if (CollUtil.isNotEmpty(basicSkProjectDetailResponses)) {
list.forEach(detailItem ->
{
//todo 数据转换
BasicSkProjectDetailEntity basicSkProjectDetailEntity = new BasicSkProjectDetailEntity();
BeanUtil.copyProperties(detailItem, basicSkProjectDetailEntity);
}
);
basicSkProjectEntity.setType(2);
Boolean b = basicSkProjectMapper.exists(new LambdaQueryWrapper<BasicSkProjectEntity>().eq(BasicSkProjectEntity::getCode, basicSkProjectEntity.getCode()));
if (b) {
basicSkProjectMapper.update(basicSkProjectEntity, new LambdaUpdateWrapper<BasicSkProjectEntity>().eq(BasicSkProjectEntity::getCode, basicSkProjectEntity.getCode()));
} else {
basicSkProjectEntity.setId(IdUtil.getSnowflakeNextId());
basicSkProjectMapper.insert(basicSkProjectEntity);
}
});
}
if (list.size() >= limit && !baseResponse.getData().getTotal().equals(-666)) {
// basicDestinyRelMapper.replaceBatchs(basicSkProjectEntities);
page++;
} else {
break;

@ -12,10 +12,12 @@ import com.glxp.api.dao.thrsys.ThrSystemDetailDao;
import com.glxp.api.entity.inv.InvPlaceOrderEntity;
import com.glxp.api.entity.system.ScheduledEntity;
import com.glxp.api.entity.thrsys.ThrSystemDetailEntity;
import com.glxp.api.req.basic.DlThirdDestinyRequest;
import com.glxp.api.req.basic.GetSickRequest;
import com.glxp.api.req.system.ScheduledRequest;
import com.glxp.api.res.thrsys.ThirdSysInterfaceExecuteVo;
import com.glxp.api.service.basic.BasicSkSickerService;
import com.glxp.api.service.basic.impl.BasicDestinyRelService;
import com.glxp.api.service.inout.IoOrderService;
import com.glxp.api.service.thrsys.*;
import com.glxp.api.util.RedisUtil;
@ -153,6 +155,11 @@ public class SyncThirdSysTask implements SchedulingConfigurer {
//下载出入库明细高耗
downloadInvGhOrder(thrSystemDetailEntity);
break;
case ThirdSysConstant.SF_PROJECT_DICT_URL:
//下载收费项目字典
break;
default:
//其他接口暂不处理
break;
@ -410,6 +417,29 @@ public class SyncThirdSysTask implements SchedulingConfigurer {
}
}
@Resource
BasicDestinyRelService basicDestinyRelService;
/**
*
*/
private void downloadSfProject(ThrSystemDetailEntity thrSystemDetailEntity) {
//校验任务并更新redis数据执行标识
if (verifyTask(thrSystemDetailEntity)) {
getExecutor().submit(() -> {
log.info("开始下载收费项目字典");
try {
basicDestinyRelService.dlThirdDestiny(new DlThirdDestinyRequest());
} catch (Exception e) {
log.error("开始下载患者信息", ExceptionUtils.getStackTrace(e));
} finally {
updateTask(getTaskKey(thrSystemDetailEntity));
}
log.info("下载收费项目字典结束");
});
}
}
/**
*

@ -2045,3 +2045,15 @@ CALL Pro_Temp_ColumnWork('pur_plan_detail', 'destinyId',
CALL Pro_Temp_ColumnWork('pur_receive_detail', 'destinyId',
' varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT''术式模板id''',
1);
INSERT IGNORE INTO`thr_system_detail`(`id`, `name`, `key`, `value`, `enabled`, `guideUrl`, `remark`, `thirdSysFk`, `itrCache`, `fromType`, `time`, `dlLastTime`) VALUES (100, '项目字典下载', 'sfProjectDictUrl', NULL, 1, '1', NULL, 'thirdId', 1, 3, 1440, NULL);
INSERT IGNORE INTO`thr_system_detail`(`id`, `name`, `key`, `value`, `enabled`, `guideUrl`, `remark`, `thirdSysFk`, `itrCache`, `fromType`, `time`, `dlLastTime`) VALUES (101, '项目字典下载', 'sfProjectDictUrl', NULL, 1, '1', NULL, 'thirdId1', 1, 3, 1440, NULL);
INSERT IGNORE INTO`thr_system_detail`(`id`, `name`, `key`, `value`, `enabled`, `guideUrl`, `remark`, `thirdSysFk`, `itrCache`, `fromType`, `time`, `dlLastTime`) VALUES (102, '项目字典下载', 'sfProjectDictUrl', NULL, 1, '1', NULL, 'thirdId2', 1, 3, 1440, NULL);
INSERT IGNORE INTO`thr_system_detail`(`id`, `name`, `key`, `value`, `enabled`, `guideUrl`, `remark`, `thirdSysFk`, `itrCache`, `fromType`, `time`, `dlLastTime`) VALUES (103, '项目字典下载', 'sfProjectDictUrl', NULL, 1, '1', NULL, 'thirdId3', 1, 3, 1440, NULL);
INSERT IGNORE INTO`thr_system_detail`(`id`, `name`, `key`, `value`, `enabled`, `guideUrl`, `remark`, `thirdSysFk`, `itrCache`, `fromType`, `time`, `dlLastTime`) VALUES (104, '项目字典下载', 'sfProjectDictUrl', NULL, 1, '1', NULL, 'thirdId4', 1, 3, 1440, NULL);

Loading…
Cancel
Save