Browse Source

🚀 对接完毕

master
wangxiang 3 years ago
parent
commit
7ba2174d8f
  1. 3
      kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/Doctor.java
  2. 2
      kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/Hospital.java
  3. 2
      kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/MapLogisticPoint.java
  4. 2
      kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/Office.java
  5. 2
      kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/Org.java
  6. 5
      kicc-platform/kicc-platform-api/kicc-system-api/src/main/java/com/cloud/kicc/system/api/entity/User.java
  7. 13
      kicc-platform/kicc-platform-api/kicc-system-api/src/main/java/com/cloud/kicc/system/api/feign/RemoteUserService.java
  8. 93
      kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/impl/MapLogisticServiceImpl.java
  9. 7
      kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/controller/UserController.java
  10. 3
      kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/resources/bootstrap.yml

3
kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/Doctor.java

@ -63,4 +63,7 @@ public class Doctor extends CommonEntity {
/**医生状态*/ /**医生状态*/
private String status; private String status;
/** 内部系统账户 */
private Integer klabDoctorAccount;
} }

2
kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/Hospital.java

@ -53,6 +53,8 @@ public class Hospital extends CommonEntity {
private String mapNotify; private String mapNotify;
private Integer klabHospitalAccount;
@TableField(exist = false) @TableField(exist = false)
private String[] orgIds; private String[] orgIds;

2
kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/MapLogisticPoint.java

@ -46,7 +46,7 @@ public class MapLogisticPoint extends CommonEntity {
@ApiModelProperty("区分是医院还是医检标记点,0医院,1医检") @ApiModelProperty("区分是医院还是医检标记点,0医院,1医检")
private String type; private String type;
@ApiModelProperty("任务类型,1是普通任务,2是交接任务") @ApiModelProperty("任务类型,0是普通任务,1是交接任务")
private String taskType; private String taskType;
@ApiModelProperty("关联报告单生成的批次码") @ApiModelProperty("关联报告单生成的批次码")

2
kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/Office.java

@ -45,4 +45,6 @@ public class Office extends CommonEntity {
private String status; private String status;
private Integer klabOfficeAccount;
} }

2
kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/Org.java

@ -46,4 +46,6 @@ public class Org extends CommonEntity {
private Double mapLat; private Double mapLat;
private Integer klabOrgAccount;
} }

5
kicc-platform/kicc-platform-api/kicc-system-api/src/main/java/com/cloud/kicc/system/api/entity/User.java

@ -114,6 +114,11 @@ public class User extends CommonEntity {
*/ */
private String status; private String status;
/**
* 内部系统账户
*/
private Integer klabUserAccount;
/** /**
* 角色ID集合 * 角色ID集合
*/ */

13
kicc-platform/kicc-platform-api/kicc-system-api/src/main/java/com/cloud/kicc/system/api/feign/RemoteUserService.java

@ -22,7 +22,7 @@ import org.springframework.web.bind.annotation.RequestHeader;
public interface RemoteUserService { public interface RemoteUserService {
/** /**
* 通过用户名查询用户角色信息 * 通过用户名查询用户
* @param userName 用户名 * @param userName 用户名
* @param from 调用标志 * @param from 调用标志
* @return R * @return R
@ -31,7 +31,7 @@ public interface RemoteUserService {
R<User> selectByUserName(@PathVariable("userName") String userName, @RequestHeader(SecurityConstants.FROM) String from); R<User> selectByUserName(@PathVariable("userName") String userName, @RequestHeader(SecurityConstants.FROM) String from);
/** /**
* 通过手机号码查询用户角色信息 * 通过手机号码查询用户
* @param phone 手机号码 * @param phone 手机号码
* @param from 调用标志 * @param from 调用标志
* @return R * @return R
@ -39,4 +39,13 @@ public interface RemoteUserService {
@GetMapping(AppConstants.APP_SYSTEM + "/user/selectByPhone/{phone}") @GetMapping(AppConstants.APP_SYSTEM + "/user/selectByPhone/{phone}")
R<User> selectByPhone(@PathVariable("phone") String phone, @RequestHeader(SecurityConstants.FROM) String from); R<User> selectByPhone(@PathVariable("phone") String phone, @RequestHeader(SecurityConstants.FROM) String from);
/**
* 通过用户ID查询用户
* @param userid 用户id
* @param from 调用标志
* @return R
*/
@GetMapping(AppConstants.APP_SYSTEM + "/user/getUser/{userId}")
R<User> selectByUserId(@PathVariable("userId") String userid, @RequestHeader(SecurityConstants.FROM) String from);
} }

93
kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/impl/MapLogisticServiceImpl.java

@ -2,27 +2,29 @@ package com.cloud.kicc.commonbiz.service.impl;
import cn.hutool.core.collection.ListUtil; import cn.hutool.core.collection.ListUtil;
import cn.hutool.core.date.LocalDateTimeUtil; import cn.hutool.core.date.LocalDateTimeUtil;
import cn.hutool.core.lang.UUID;
import cn.hutool.core.thread.ThreadUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.cloud.kicc.common.core.api.R;
import com.cloud.kicc.common.core.constant.SecurityConstants;
import com.cloud.kicc.common.security.util.SecurityUtils; import com.cloud.kicc.common.security.util.SecurityUtils;
import com.cloud.kicc.commonbiz.api.entity.MapLogistic; import com.cloud.kicc.commonbiz.api.entity.*;
import com.cloud.kicc.commonbiz.api.entity.MapLogisticPoint;
import com.cloud.kicc.commonbiz.api.entity.MapTask;
import com.cloud.kicc.commonbiz.api.entity.MapTaskPreset;
import com.cloud.kicc.commonbiz.mapper.MapLogisticMapper; import com.cloud.kicc.commonbiz.mapper.MapLogisticMapper;
import com.cloud.kicc.commonbiz.service.IMapLogisticPointService; import com.cloud.kicc.commonbiz.service.*;
import com.cloud.kicc.commonbiz.service.IMapLogisticService;
import com.cloud.kicc.commonbiz.service.IMapTaskPresetService;
import com.cloud.kicc.commonbiz.service.IMapTaskService;
import com.cloud.kicc.commonbiz.util.PushClientUtil; import com.cloud.kicc.commonbiz.util.PushClientUtil;
import com.cloud.kicc.system.api.entity.User;
import com.cloud.kicc.system.api.feign.RemoteUserService;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import okhttp3.OkHttpClient; import lombok.extern.slf4j.Slf4j;
import okhttp3.*;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.io.IOException;
import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatter;
import java.util.List; import java.util.List;
@ -34,6 +36,7 @@ import java.util.List;
* @author entfrm开发团队-王翔 * @author entfrm开发团队-王翔
* @since 2022-07-22 * @since 2022-07-22
*/ */
@Slf4j
@Service @Service
@RequiredArgsConstructor @RequiredArgsConstructor
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@ -43,6 +46,10 @@ public class MapLogisticServiceImpl extends ServiceImpl<MapLogisticMapper, MapLo
private final IMapTaskPresetService iMapTaskPresetService; private final IMapTaskPresetService iMapTaskPresetService;
private final IMapLogisticPointService iMapLogisticPointService; private final IMapLogisticPointService iMapLogisticPointService;
private final OkHttpClient okHttpClient; private final OkHttpClient okHttpClient;
private final RemoteUserService remoteUserService;
private final OrgService orgService;
private final HospitalService hospitalService;
@Override @Override
public void mapSaveOrUpdate(MapLogistic mapLogistic) { public void mapSaveOrUpdate(MapLogistic mapLogistic) {
@ -90,9 +97,77 @@ public class MapLogisticServiceImpl extends ServiceImpl<MapLogisticMapper, MapLo
} }
}); });
mapLogistic.getMapLogisticPoint().forEach(item -> item.setMapLogisticId(mapLogistic.getId())); mapLogistic.getMapLogisticPoint().forEach(item -> item.setMapLogisticId(mapLogistic.getId()));
createReportFormSetData(mapLogistic);
//ThreadUtil.execute(() -> createReportFormSetData(mapLogistic));
iMapLogisticPointService.saveBatch(mapLogistic.getMapLogisticPoint()); iMapLogisticPointService.saveBatch(mapLogistic.getMapLogisticPoint());
} }
private void createReportFormSetData(MapLogistic mapLogistic) {
String batchCode = UUID.fromString(UUID.randomUUID().toString()).toString();
mapLogistic.getMapTask().forEach(mapTask -> {
if (StrUtil.isNotEmpty(mapTask.getReceiptFileId())) {
R<User> user = remoteUserService.selectByUserId(mapTask.getCourierUserId(), SecurityConstants.FROM_IN);
Org org = orgService.getById(mapTask.getOrgId());
Hospital hospital = hospitalService.getById(mapTask.getHospitalId());
JSONObject jsonObject = new JSONObject();
jsonObject.put("hospitalId", hospital.getKlabHospitalAccount());
jsonObject.put("institutionId", org.getKlabOrgAccount());
// todo:任务科室医生还需讨论需求
jsonObject.put("officeId", 0);
jsonObject.put("doctorId", 0);
jsonObject.put("syUserId", user.getData().getKlabUserAccount());
jsonObject.put("batchCode", batchCode);
jsonObject.put("taskType", 0);
jsonObject.put("originImages", mapTask.getReceiptFileId());
jsonObject.put("remark", mapTask.getRemarks());
internalSystemCreateReportForm(jsonObject);
}
mapTask.getMapTaskPreset().forEach(mapTaskPreset -> {
if (StrUtil.isNotEmpty(mapTaskPreset.getReceiptFileId())) {
R<User> taskPresetUser = remoteUserService.selectByUserId(mapTaskPreset.getCourierUserId(), SecurityConstants.FROM_IN);
JSONObject jsonObject = new JSONObject();
// todo:交接点位置由自己设置
jsonObject.put("hospitalId", 0);
jsonObject.put("institutionId", 0);
jsonObject.put("officeId", 0);
jsonObject.put("doctorId", 0);
jsonObject.put("syUserId", taskPresetUser.getData().getKlabUserAccount());
jsonObject.put("batchCode", mapTaskPreset);
jsonObject.put("taskType", 1);
jsonObject.put("originImages", mapTaskPreset.getReceiptFileId());
jsonObject.put("remark", mapTaskPreset.getRemarks());
jsonObject.put("batchCode", batchCode);
internalSystemCreateReportForm(jsonObject);
}
});
});
}
private void internalSystemCreateReportForm(JSONObject jsonObject) {
okhttp3.Request request = new okhttp3.Request
.Builder()
.url("https://cmsapi.kanglailab.com/reportTask/add")
.post(RequestBody.create(MediaType.parse("application/json; charset=utf-8"), jsonObject.toJSONString()))
.build();
okHttpClient.newCall(request).enqueue(new Callback() {
@Override
public void onResponse(Call call, Response response) {
log.info("对接内部平台创建报告单成功:", response);
}
@Override
public void onFailure(Call call, IOException e) {
log.info("对接内部平台创建报告单失败:", e);
}
});
}
@Override @Override
public void mapRemove(List<String> mapLogisticIds) { public void mapRemove(List<String> mapLogisticIds) {
super.removeByIds(mapLogisticIds); super.removeByIds(mapLogisticIds);

7
kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/java/com/cloud/kicc/system/controller/UserController.java

@ -98,6 +98,13 @@ public class UserController {
return R.ok(new ResultVo().setResult(user).setExtend(roleList)); return R.ok(new ResultVo().setResult(user).setExtend(roleList));
} }
@Inner
@GetMapping("getUser/{id:\\w+}")
public R getUser(@PathVariable("id") String id) {
User user = userService.getById(id);
return R.ok(user);
}
@SysLog("用户新增") @SysLog("用户新增")
@PostMapping("/save") @PostMapping("/save")
@PreAuthorize("@pms.hasPermission('user_add')") @PreAuthorize("@pms.hasPermission('user_add')")

3
kicc-platform/kicc-platform-biz/kicc-system-biz/src/main/resources/bootstrap.yml

@ -7,7 +7,8 @@ spring:
cloud: cloud:
nacos: nacos:
discovery: discovery:
server-addr: ${NACOS_HOST:kicc-register}:${NACOS_PORT:8848} server-addr: ${NACOS_HOST:192.168.3.10}:${NACOS_PORT:8848}
#server-addr: ${NACOS_HOST:kicc-register}:${NACOS_PORT:8848}
namespace: @profiles.namespace@ namespace: @profiles.namespace@
config: config:
server-addr: ${spring.cloud.nacos.discovery.server-addr} server-addr: ${spring.cloud.nacos.discovery.server-addr}

Loading…
Cancel
Save