Browse Source

问卷填写、列表接口

dev
sunyuchao 4 years ago
parent
commit
6c45ec5c5c
  1. 5
      tduck-project/src/main/java/com/tduck/cloud/project/entity/PrUserProjectResultExtEntity.java
  2. 12
      tduck-project/src/main/java/com/tduck/cloud/project/entity/UserProjectResultEntity.java
  3. 14
      tduck-project/src/main/java/com/tduck/cloud/project/mapper/PrUserProjectResultExtDao.java
  4. 31
      tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectResultServiceImpl.java
  5. 11
      tduck-project/src/main/java/com/tduck/cloud/project/vo/PrUserProjectResultExtDTO.java

5
tduck-project/src/main/java/com/tduck/cloud/project/entity/PrUserProjectResultExtEntity.java

@ -39,6 +39,11 @@ public class PrUserProjectResultExtEntity extends BaseEntity<PrUserProjectResult
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
/**
* pr_user_project表主键
*/
private String projectKey;
/** /**
* pr_user_project_result表主键 * pr_user_project_result表主键
*/ */

12
tduck-project/src/main/java/com/tduck/cloud/project/entity/UserProjectResultEntity.java

@ -96,4 +96,16 @@ public class UserProjectResultEntity extends BaseEntity<UserProjectResultEntity>
*/ */
@TableField(typeHandler = JacksonTypeHandler.class) @TableField(typeHandler = JacksonTypeHandler.class)
private Map<String, Object> wxUserInfo; private Map<String, Object> wxUserInfo;
//填写问卷人员信息表【pr_user_project_result_ext】字段
//问卷填写人所属端【工作端:gov、居民端:resi、运营端:oper】
private transient String clientType = "";
//填写人姓名
private transient String realName = "";
//工作人员添加入口Id(agencyId;deptId;gridId)
private transient String orgId = "";
//人员注册时所属组织名【组织-组织,组织-部门,组织-网格】
private transient String orgName = "";
//工作人员添加入口类型(组织:agency;部门:dept;网格:gridId)
private transient String orgType = "";
} }

14
tduck-project/src/main/java/com/tduck/cloud/project/mapper/PrUserProjectResultExtDao.java

@ -19,7 +19,11 @@ package com.tduck.cloud.project.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.tduck.cloud.project.entity.PrUserProjectResultExtEntity; import com.tduck.cloud.project.entity.PrUserProjectResultExtEntity;
import com.tduck.cloud.project.vo.PrUserProjectResultExtDTO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import java.util.List;
/** /**
* 填写问卷人员信息 * 填写问卷人员信息
@ -30,4 +34,14 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper @Mapper
public interface PrUserProjectResultExtDao extends BaseMapper<PrUserProjectResultExtEntity> { public interface PrUserProjectResultExtDao extends BaseMapper<PrUserProjectResultExtEntity> {
/**
* 查询填写问卷人员信息
* @param projectKey
*/
@Select("SELECT id, customer_id, project_key, user_project_result, client_type, user_id, real_name, org_id, org_name, org_type " +
"FROM pr_user_project_result_ext " +
"WHERE project_key=#{projectKey} " +
"GROUP BY user_id ")
List<PrUserProjectResultExtDTO> selectResultExtList(String projectKey);
} }

31
tduck-project/src/main/java/com/tduck/cloud/project/service/impl/UserProjectResultServiceImpl.java

@ -18,15 +18,19 @@ import com.tduck.cloud.common.util.AddressUtils;
import com.tduck.cloud.common.util.AsyncProcessUtils; import com.tduck.cloud.common.util.AsyncProcessUtils;
import com.tduck.cloud.common.util.RedisUtils; import com.tduck.cloud.common.util.RedisUtils;
import com.tduck.cloud.common.util.Result; import com.tduck.cloud.common.util.Result;
import com.tduck.cloud.project.entity.PrUserProjectResultExtEntity;
import com.tduck.cloud.project.entity.UserProjectItemEntity; import com.tduck.cloud.project.entity.UserProjectItemEntity;
import com.tduck.cloud.project.entity.UserProjectResultEntity; import com.tduck.cloud.project.entity.UserProjectResultEntity;
import com.tduck.cloud.project.entity.enums.ProjectItemTypeEnum; import com.tduck.cloud.project.entity.enums.ProjectItemTypeEnum;
import com.tduck.cloud.project.entity.struct.UploadResultStruct; import com.tduck.cloud.project.entity.struct.UploadResultStruct;
import com.tduck.cloud.project.mapper.PrUserProjectResultExtDao;
import com.tduck.cloud.project.mapper.UserProjectResultMapper; import com.tduck.cloud.project.mapper.UserProjectResultMapper;
import com.tduck.cloud.project.request.QueryProjectResultRequest; import com.tduck.cloud.project.request.QueryProjectResultRequest;
import com.tduck.cloud.project.service.PrUserProjectResultExtService;
import com.tduck.cloud.project.service.UserProjectItemService; import com.tduck.cloud.project.service.UserProjectItemService;
import com.tduck.cloud.project.service.UserProjectResultService; import com.tduck.cloud.project.service.UserProjectResultService;
import com.tduck.cloud.project.vo.ExportProjectResultVO; import com.tduck.cloud.project.vo.ExportProjectResultVO;
import com.tduck.cloud.project.vo.PrUserProjectResultExtDTO;
import com.tduck.cloud.storage.cloud.OssStorageFactory; import com.tduck.cloud.storage.cloud.OssStorageFactory;
import com.tduck.cloud.storage.util.StorageUtils; import com.tduck.cloud.storage.util.StorageUtils;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
@ -52,6 +56,8 @@ public class UserProjectResultServiceImpl extends ServiceImpl<UserProjectResultM
private final UserProjectItemService userProjectItemService; private final UserProjectItemService userProjectItemService;
private final RedisUtils redisUtils; private final RedisUtils redisUtils;
private final PrUserProjectResultExtService prUserProjectResultExtService;
private final PrUserProjectResultExtDao prUserProjectResultExtDao;
/** /**
* 需要处理类型 * 需要处理类型
@ -66,7 +72,17 @@ public class UserProjectResultServiceImpl extends ServiceImpl<UserProjectResultM
entity.setSerialNumber(redisUtils.incr(StrUtil.format(PROJECT_RESULT_NUMBER, projectKey), CommonConstants.ConstantNumber.ONE)); entity.setSerialNumber(redisUtils.incr(StrUtil.format(PROJECT_RESULT_NUMBER, projectKey), CommonConstants.ConstantNumber.ONE));
entity.setSubmitAddress(AddressUtils.getRealAddressByIP(entity.getSubmitRequestIp())); entity.setSubmitAddress(AddressUtils.getRealAddressByIP(entity.getSubmitRequestIp()));
this.save(entity); this.save(entity);
//填写问卷人员信息表新增数据
PrUserProjectResultExtEntity extEntity = new PrUserProjectResultExtEntity();
extEntity.setProjectKey(entity.getProjectKey());
extEntity.setUserProjectResult(entity.getId());
extEntity.setClientType(entity.getClientType());
extEntity.setUserId(entity.getUserId());
extEntity.setRealName(entity.getRealName());
extEntity.setOrgId(entity.getOrgId());
extEntity.setOrgName(entity.getOrgName());
extEntity.setOrgType(entity.getOrgType());
prUserProjectResultExtService.save(extEntity);
} }
@Override @Override
@ -87,7 +103,18 @@ public class UserProjectResultServiceImpl extends ServiceImpl<UserProjectResultM
lambdaQueryWrapper.apply(StrUtil.format("original_data ->'$.{}' {} {} ", item, queryComparison.getKey(), value)); lambdaQueryWrapper.apply(StrUtil.format("original_data ->'$.{}' {} {} ", item, queryComparison.getKey(), value));
}); });
} }
return this.page(request.toMybatisPage(), lambdaQueryWrapper); Page page = this.page(request.toMybatisPage(), lambdaQueryWrapper);
List<UserProjectResultEntity> resultEntity = (List<UserProjectResultEntity>) page.getRecords();
List<PrUserProjectResultExtDTO> extList = prUserProjectResultExtDao.selectResultExtList(request.getProjectKey());
resultEntity.forEach(re -> extList.stream().filter(l -> re.getId().equals(l.getUserProjectResult())).forEach(s -> {
re.setClientType(s.getClientType());
re.setRealName(s.getRealName());
re.setOrgId(s.getOrgId());
re.setOrgName(s.getOrgName());
re.setOrgType(s.getOrgType());
}));
page.setRecords(resultEntity);
return page;
} }
@Override @Override

11
tduck-project/src/main/java/com/tduck/cloud/project/vo/PrUserProjectResultExtDTO.java

@ -33,6 +33,11 @@ public class PrUserProjectResultExtDTO {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
/**
* pr_user_project表主键
*/
private String projectKey;
/** /**
* pr_user_project_result表主键 * pr_user_project_result表主键
*/ */
@ -68,10 +73,4 @@ public class PrUserProjectResultExtDTO {
*/ */
private String orgType; private String orgType;
/**
* 版本号
*/
private Integer revision;
} }
Loading…
Cancel
Save