新增了放心签1113333
This commit is contained in:
parent
1a14b66a91
commit
bed2a987e3
@ -87,9 +87,9 @@ public class FxqTask extends Base {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取签署链接
|
* 签署任务详情查询
|
||||||
*/
|
*/
|
||||||
public GetTaskLinkResponse getTaskDetail(String taskNo, String unionId){
|
public GetTaskDetailResponse getTaskDetail(String taskNo, String unionId){
|
||||||
String url = getClientUrl() + "sign/task/detail";
|
String url = getClientUrl() + "sign/task/detail";
|
||||||
|
|
||||||
Map<String, Object> requestData = new HashMap<>();
|
Map<String, Object> requestData = new HashMap<>();
|
||||||
@ -100,7 +100,7 @@ public class FxqTask extends Base {
|
|||||||
log.info("获取app数据参数:{}",jsonBody);
|
log.info("获取app数据参数:{}",jsonBody);
|
||||||
|
|
||||||
String response = postJson(url,jsonBody,null);
|
String response = postJson(url,jsonBody,null);
|
||||||
GetTaskLinkResponse result = JSONUtil.toBean(response, GetTaskLinkResponse.class);
|
GetTaskDetailResponse result = JSONUtil.toBean(response, GetTaskDetailResponse.class);
|
||||||
if (result.getCode() != 10000){
|
if (result.getCode() != 10000){
|
||||||
if (!Objects.equals(result.getMessage(), "")){
|
if (!Objects.equals(result.getMessage(), "")){
|
||||||
throw new BusinessException(result.getMessage());
|
throw new BusinessException(result.getMessage());
|
||||||
|
|||||||
@ -12,6 +12,7 @@ import net.lab1024.sa.admin.constant.AdminSwaggerTagConst;
|
|||||||
import net.lab1024.sa.admin.extend.fangxinqian.task.GetTaskLinkResponse;
|
import net.lab1024.sa.admin.extend.fangxinqian.task.GetTaskLinkResponse;
|
||||||
import net.lab1024.sa.admin.module.app.expert.admin.*;
|
import net.lab1024.sa.admin.module.app.expert.admin.*;
|
||||||
import net.lab1024.sa.admin.module.app.expert.dao.FxqExpertTaskDao;
|
import net.lab1024.sa.admin.module.app.expert.dao.FxqExpertTaskDao;
|
||||||
|
import net.lab1024.sa.admin.module.app.expert.dao.FxqTemplateDao;
|
||||||
import net.lab1024.sa.admin.module.app.expert.dao.FxqUserDao;
|
import net.lab1024.sa.admin.module.app.expert.dao.FxqUserDao;
|
||||||
import net.lab1024.sa.admin.module.app.expert.domain.entity.FxqCompanyEntity;
|
import net.lab1024.sa.admin.module.app.expert.domain.entity.FxqCompanyEntity;
|
||||||
import net.lab1024.sa.admin.module.app.expert.domain.entity.FxqExpertTaskEntity;
|
import net.lab1024.sa.admin.module.app.expert.domain.entity.FxqExpertTaskEntity;
|
||||||
@ -31,6 +32,7 @@ import net.lab1024.sa.admin.module.system.login.service.LoginService;
|
|||||||
import net.lab1024.sa.common.common.annoation.NoNeedLogin;
|
import net.lab1024.sa.common.common.annoation.NoNeedLogin;
|
||||||
import net.lab1024.sa.common.common.constant.RequestHeaderConst;
|
import net.lab1024.sa.common.common.constant.RequestHeaderConst;
|
||||||
import net.lab1024.sa.common.common.domain.ResponseDTO;
|
import net.lab1024.sa.common.common.domain.ResponseDTO;
|
||||||
|
import net.lab1024.sa.common.common.exception.BusinessException;
|
||||||
import net.lab1024.sa.common.common.util.Sha256Util;
|
import net.lab1024.sa.common.common.util.Sha256Util;
|
||||||
import net.lab1024.sa.common.common.util.SmartBeanUtil;
|
import net.lab1024.sa.common.common.util.SmartBeanUtil;
|
||||||
import net.lab1024.sa.common.common.util.SmartRequestUtil;
|
import net.lab1024.sa.common.common.util.SmartRequestUtil;
|
||||||
@ -73,6 +75,9 @@ public class ExpertFxqController {
|
|||||||
@Resource
|
@Resource
|
||||||
private FxqUserDao fxqUserDao;
|
private FxqUserDao fxqUserDao;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private FxqTemplateDao fxqTemplateDao;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取专家协议签署详情
|
* 获取专家协议签署详情
|
||||||
*/
|
*/
|
||||||
@ -85,24 +90,15 @@ public class ExpertFxqController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
GetExpertSignVo g = new GetExpertSignVo();
|
GetExpertSignVo g = new GetExpertSignVo();
|
||||||
g.setTaskStatus(2);
|
|
||||||
|
|
||||||
// 获取签署任务数据
|
// 获取专家协议签署状态
|
||||||
LambdaQueryWrapper<FxqExpertTaskEntity> queryWrapper = new LambdaQueryWrapper<>();
|
boolean res = expertFxqService.getExpertSign(expertId);
|
||||||
queryWrapper.eq(FxqExpertTaskEntity::getExpertId, expertId);
|
if (!res){
|
||||||
FxqExpertTaskEntity fxqExpertTask = fxqExpertTaskDao.selectOne(queryWrapper);
|
g.setTaskStatus(2);
|
||||||
if (fxqExpertTask == null) {
|
}else {
|
||||||
return ResponseDTO.app_ok(g);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (fxqExpertTask.getTaskStatus() == 20){
|
|
||||||
g.setTaskStatus(1);
|
g.setTaskStatus(1);
|
||||||
g.setTaskFileUrl(fxqExpertTask.getTaskLink());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取协议签署情况
|
|
||||||
|
|
||||||
|
|
||||||
return ResponseDTO.app_ok(g);
|
return ResponseDTO.app_ok(g);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -12,6 +12,7 @@ import net.lab1024.sa.admin.module.app.expert.admin.ExpertEntity;
|
|||||||
import net.lab1024.sa.admin.module.app.expert.dao.*;
|
import net.lab1024.sa.admin.module.app.expert.dao.*;
|
||||||
import net.lab1024.sa.admin.module.app.expert.domain.entity.*;
|
import net.lab1024.sa.admin.module.app.expert.domain.entity.*;
|
||||||
import net.lab1024.sa.admin.module.app.expert.domain.vo.AddFxqVo;
|
import net.lab1024.sa.admin.module.app.expert.domain.vo.AddFxqVo;
|
||||||
|
import net.lab1024.sa.admin.module.app.expert.domain.vo.GetExpertSignVo;
|
||||||
import net.lab1024.sa.common.common.domain.ResponseDTO;
|
import net.lab1024.sa.common.common.domain.ResponseDTO;
|
||||||
import net.lab1024.sa.common.common.exception.BusinessException;
|
import net.lab1024.sa.common.common.exception.BusinessException;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
@ -131,7 +132,7 @@ public class ExpertFxqService {
|
|||||||
throw new BusinessException("操作失败");
|
throw new BusinessException("操作失败");
|
||||||
}
|
}
|
||||||
|
|
||||||
// 获取企业实名认证数据-个人
|
// 获取个人实名认证数据
|
||||||
LambdaQueryWrapper<FxqUserEntity> personalQueryWrapper = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<FxqUserEntity> personalQueryWrapper = new LambdaQueryWrapper<>();
|
||||||
personalQueryWrapper.eq(FxqUserEntity::getExpertId, expertId);
|
personalQueryWrapper.eq(FxqUserEntity::getExpertId, expertId);
|
||||||
FxqUserEntity fxqUser = fxqUserDao.selectOne(personalQueryWrapper);
|
FxqUserEntity fxqUser = fxqUserDao.selectOne(personalQueryWrapper);
|
||||||
@ -210,7 +211,6 @@ public class ExpertFxqService {
|
|||||||
// 获取数据库模版数据
|
// 获取数据库模版数据
|
||||||
LambdaQueryWrapper<FxqTemplateEntity> templateQueryWrapper = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<FxqTemplateEntity> templateQueryWrapper = new LambdaQueryWrapper<>();
|
||||||
templateQueryWrapper.eq(FxqTemplateEntity::getCompanyId, companyId);
|
templateQueryWrapper.eq(FxqTemplateEntity::getCompanyId, companyId);
|
||||||
templateQueryWrapper.eq(FxqTemplateEntity::getId, 1);
|
|
||||||
FxqTemplateEntity fxqTemplate = fxqTemplateDao.selectOne(templateQueryWrapper);
|
FxqTemplateEntity fxqTemplate = fxqTemplateDao.selectOne(templateQueryWrapper);
|
||||||
if (fxqTemplate == null) {
|
if (fxqTemplate == null) {
|
||||||
// 获取企业模版数据
|
// 获取企业模版数据
|
||||||
@ -306,63 +306,65 @@ public class ExpertFxqService {
|
|||||||
return g;
|
return g;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 10待签署 0发起签署
|
||||||
if (fxqExpertTask.getTaskStatus() == 10 || fxqExpertTask.getTaskStatus() == 0){
|
if (fxqExpertTask.getTaskStatus() == 10 || fxqExpertTask.getTaskStatus() == 0){
|
||||||
taskNo = fxqExpertTask.getTaskNo();
|
g.setTaskStatus(2);
|
||||||
|
g.setLinkUrl(fxqExpertTask.getTaskLink());
|
||||||
|
return g;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Objects.equals(taskNo, "")){
|
// 需创建模版任务
|
||||||
AddTemplateTaskRequest r = new AddTemplateTaskRequest();
|
AddTemplateTaskRequest r = new AddTemplateTaskRequest();
|
||||||
r.setUnionId(company.getUnionId());
|
r.setUnionId(company.getUnionId());
|
||||||
r.setTemplateNo(fxqTemplate.getTemplateNo());
|
r.setTemplateNo(fxqTemplate.getTemplateNo());
|
||||||
|
|
||||||
// 初始化 signers 列表
|
// 初始化 signers 列表
|
||||||
List<AddTemplateTaskRequest.signersData> signersList = new ArrayList<>();
|
List<AddTemplateTaskRequest.signersData> signersList = new ArrayList<>();
|
||||||
|
|
||||||
AddTemplateTaskRequest.signersData signer = new AddTemplateTaskRequest.signersData();
|
AddTemplateTaskRequest.signersData signer = new AddTemplateTaskRequest.signersData();
|
||||||
signer.setSignerNo(fxqTemplate.getCompanySignerNo());
|
signer.setSignerNo(fxqTemplate.getCompanySignerNo());
|
||||||
signer.setSignerUnionId(company.getUnionId());
|
signer.setSignerUnionId(company.getUnionId());
|
||||||
signersList.add(signer);
|
signersList.add(signer);
|
||||||
|
|
||||||
signer = new AddTemplateTaskRequest.signersData();
|
signer = new AddTemplateTaskRequest.signersData();
|
||||||
signer.setSignerNo(fxqTemplate.getPersonalSignerNo());
|
signer.setSignerNo(fxqTemplate.getPersonalSignerNo());
|
||||||
signer.setSignerUnionId(fxqUser.getUnionId());
|
signer.setSignerUnionId(fxqUser.getUnionId());
|
||||||
signersList.add(signer);
|
signersList.add(signer);
|
||||||
|
|
||||||
r.setSigners(signersList);
|
r.setSigners(signersList);
|
||||||
|
|
||||||
// 初始化 components 列表
|
// 初始化 components 列表
|
||||||
List<AddTemplateTaskRequest.componentsData> componentsList = new ArrayList<>();
|
List<AddTemplateTaskRequest.componentsData> componentsList = new ArrayList<>();
|
||||||
AddTemplateTaskRequest.componentsData components = new AddTemplateTaskRequest.componentsData();
|
AddTemplateTaskRequest.componentsData components = new AddTemplateTaskRequest.componentsData();
|
||||||
components.setFileKey("doctorName");
|
components.setFileKey("doctorName");
|
||||||
components.setFileValue(fxqUser.getName());
|
components.setFileValue(fxqUser.getName());
|
||||||
componentsList.add(components);
|
componentsList.add(components);
|
||||||
r.setComponents(componentsList);
|
r.setComponents(componentsList);
|
||||||
|
|
||||||
AddTemplateTaskResponse templateTask = fxqTask.addTemplateTask(r);
|
AddTemplateTaskResponse templateTask = fxqTask.addTemplateTask(r);
|
||||||
if (templateTask.getData() == null) {
|
if (templateTask.getData() == null) {
|
||||||
throw new BusinessException("操作失败");
|
throw new BusinessException("操作失败");
|
||||||
}
|
|
||||||
|
|
||||||
if (templateTask.getData().getTaskNo() == null || templateTask.getData().getTaskNo().isEmpty()) {
|
|
||||||
throw new BusinessException("操作失败");
|
|
||||||
}
|
|
||||||
|
|
||||||
// 添加数据库
|
|
||||||
FxqExpertTaskEntity fxqExpertTaskData = new FxqExpertTaskEntity();
|
|
||||||
fxqExpertTaskData.setExpertId(fxqUser.getExpertId());
|
|
||||||
fxqExpertTaskData.setTaskNo(templateTask.getData().getTaskNo());
|
|
||||||
fxqExpertTaskData.setTemplateId(fxqTemplate.getId());
|
|
||||||
fxqExpertTaskData.setTaskStatus(0);
|
|
||||||
fxqExpertTaskData.setCreateTime(LocalDateTime.now());
|
|
||||||
int res = fxqExpertTaskDao.insert(fxqExpertTaskData);
|
|
||||||
if (res <= 0){
|
|
||||||
throw new BusinessException("操作失败");
|
|
||||||
}
|
|
||||||
|
|
||||||
taskNo = templateTask.getData().getTaskNo();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (templateTask.getData().getTaskNo() == null || templateTask.getData().getTaskNo().isEmpty()) {
|
||||||
|
throw new BusinessException("操作失败");
|
||||||
|
}
|
||||||
|
|
||||||
|
// 添加数据库
|
||||||
|
FxqExpertTaskEntity fxqExpertTaskData = new FxqExpertTaskEntity();
|
||||||
|
fxqExpertTaskData.setExpertId(fxqUser.getExpertId());
|
||||||
|
fxqExpertTaskData.setTaskNo(templateTask.getData().getTaskNo());
|
||||||
|
fxqExpertTaskData.setTemplateId(fxqTemplate.getId());
|
||||||
|
fxqExpertTaskData.setTaskStatus(10);
|
||||||
|
fxqExpertTaskData.setCreateTime(LocalDateTime.now());
|
||||||
|
int res = fxqExpertTaskDao.insert(fxqExpertTaskData);
|
||||||
|
if (res <= 0){
|
||||||
|
throw new BusinessException("操作失败");
|
||||||
|
}
|
||||||
|
|
||||||
|
taskNo = templateTask.getData().getTaskNo();
|
||||||
|
|
||||||
if (Objects.equals(taskNo, "")){
|
if (Objects.equals(taskNo, "")){
|
||||||
throw new BusinessException("操作失败");
|
throw new BusinessException("操作失败");
|
||||||
}
|
}
|
||||||
@ -389,4 +391,77 @@ public class ExpertFxqService {
|
|||||||
throw new BusinessException(e.getMessage());
|
throw new BusinessException(e.getMessage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 签署任务详情查询
|
||||||
|
*/
|
||||||
|
public FxqExpertTaskEntity getTaskDetail(String taskNo, String unionId,FxqExpertTaskEntity fxqExpertTask){
|
||||||
|
GetTaskDetailResponse taskLink = fxqTask.getTaskDetail(taskNo,unionId);
|
||||||
|
if (taskLink.getData() == null) {
|
||||||
|
throw new BusinessException("操作失败");
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改签署状态
|
||||||
|
if (taskLink.getData().getTaskNo() == null || taskLink.getData().getTaskNo().isEmpty()) {
|
||||||
|
throw new BusinessException("操作失败");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!taskLink.getData().getTaskNo().equals(fxqExpertTask.getTaskNo())){
|
||||||
|
throw new BusinessException("操作失败");
|
||||||
|
}
|
||||||
|
|
||||||
|
// 修改状态
|
||||||
|
fxqExpertTask.setTaskStatus(taskLink.getData().getTaskStatus());
|
||||||
|
fxqExpertTaskDao.updateById(fxqExpertTask);
|
||||||
|
|
||||||
|
return fxqExpertTask;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取专家协议签署详情
|
||||||
|
*/
|
||||||
|
@Transactional
|
||||||
|
public boolean getExpertSign(Long expertId){
|
||||||
|
try {
|
||||||
|
// 获取签署任务数据
|
||||||
|
LambdaQueryWrapper<FxqExpertTaskEntity> queryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
queryWrapper.eq(FxqExpertTaskEntity::getExpertId, expertId);
|
||||||
|
queryWrapper.in(FxqExpertTaskEntity::getTaskStatus, 0,10,20);
|
||||||
|
FxqExpertTaskEntity fxqExpertTask = fxqExpertTaskDao.selectOne(queryWrapper);
|
||||||
|
if (fxqExpertTask == null) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (fxqExpertTask.getTaskStatus() == 20){
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取个人实名认证数据
|
||||||
|
LambdaQueryWrapper<FxqUserEntity> personalQueryWrapper = new LambdaQueryWrapper<>();
|
||||||
|
personalQueryWrapper.eq(FxqUserEntity::getExpertId, expertId);
|
||||||
|
FxqUserEntity fxqUser = fxqUserDao.selectOne(personalQueryWrapper);
|
||||||
|
if (fxqUser == null) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取签署链接
|
||||||
|
GetTaskLinkResponse.taskDetailsData fxqLink = getTaskLink(fxqExpertTask.getTaskNo(),fxqUser.getUnionId());
|
||||||
|
if (fxqLink == null) {
|
||||||
|
throw new BusinessException("操作失败");
|
||||||
|
}
|
||||||
|
|
||||||
|
// 已签署
|
||||||
|
if (Objects.equals(fxqLink.getSignStatus(), "2")){
|
||||||
|
// 修改签署任务
|
||||||
|
fxqExpertTask.setTaskStatus(20);
|
||||||
|
fxqExpertTaskDao.updateById(fxqExpertTask);
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
} catch (Exception e) {
|
||||||
|
throw new BusinessException(e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user