Commit dda62217 authored by 廖旭伟's avatar 廖旭伟

事项申请列表返回值增加材料分组

parent 7b0f1268
package com.mortals.xhx.module.apply.model.vo;
import lombok.Data;
@Data
public class DatumFileVO {
/**
* 附件文件名称
*/
private String fileName;
/**
* 附件文件地址
*/
private String fileUrl;
}
package com.mortals.xhx.module.apply.model.vo;
import lombok.Data;
import java.util.List;
@Data
public class MatterApplyDatumGroupVO {
/**
* 用户申报id
*/
private Long applyId;
/**
* 单事项id
*/
private Long singleMatterId;
/**
* 基础事项id
*/
private Long matterId;
/**
* 材料id
*/
private Long datumId;
/**
* 材料名称
*/
private String materialName;
private List<DatumFileVO> datumFileList;
}
......@@ -29,4 +29,6 @@ public class MatterApplyVo extends BaseEntityLong {
private String applyTimeEnd;
private String applyTypeName;
private List<MatterApplyDatumGroupVO> datumGroupList;
}
\ No newline at end of file
......@@ -12,6 +12,8 @@ import com.mortals.xhx.module.apply.model.MatterApplyDatumEntity;
import com.mortals.xhx.module.apply.model.MatterApplyDatumQuery;
import com.mortals.xhx.module.apply.model.MatterApplyEntity;
import com.mortals.xhx.module.apply.model.MatterApplyQuery;
import com.mortals.xhx.module.apply.model.vo.DatumFileVO;
import com.mortals.xhx.module.apply.model.vo.MatterApplyDatumGroupVO;
import com.mortals.xhx.module.apply.service.ApproverService;
import com.mortals.xhx.module.apply.service.MatterApplyDatumService;
import com.mortals.xhx.module.apply.service.MatterApplyService;
......@@ -24,6 +26,8 @@ import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* MatterApplyService
......@@ -136,6 +140,7 @@ public class MatterApplyServiceImpl extends AbstractCRUDServiceImpl<MatterApplyD
for (MatterApplyEntity entity:list){
List<MatterApplyDatumEntity> datumEntities = matterApplyDatumService.find(new MatterApplyDatumQuery().applyId(entity.getId()));
entity.setApplyDatumList(datumEntities);
entity.setDatumGroupList(convertDatum(datumEntities));
if(entity.getApplyType()==1){
entity.setApplyTypeName("移动端申请");
}else {
......@@ -160,6 +165,7 @@ public class MatterApplyServiceImpl extends AbstractCRUDServiceImpl<MatterApplyD
for (MatterApplyEntity entity:list){
List<MatterApplyDatumEntity> datumEntities = matterApplyDatumService.find(new MatterApplyDatumQuery().applyId(entity.getId()));
entity.setApplyDatumList(datumEntities);
entity.setDatumGroupList(convertDatum(datumEntities));
if(entity.getApplyType()==1){
entity.setApplyTypeName("移动端申请");
}else {
......@@ -178,6 +184,27 @@ public class MatterApplyServiceImpl extends AbstractCRUDServiceImpl<MatterApplyD
}
}
private List<MatterApplyDatumGroupVO> convertDatum(List<MatterApplyDatumEntity> datumEntities){
List<MatterApplyDatumGroupVO> groupVOList = new ArrayList<>();
if(CollectionUtils.isNotEmpty(datumEntities)){
Map<Long, List<MatterApplyDatumEntity>> map = datumEntities.stream().collect(Collectors.groupingBy(t -> t.getDatumId()));
for (Long key:map.keySet()){
MatterApplyDatumGroupVO groupVO = new MatterApplyDatumGroupVO();
BeanUtils.copyProperties(map.get(key).get(0),groupVO);
List<DatumFileVO> datumFileList = new ArrayList<>();
for(MatterApplyDatumEntity item:map.get(key)){
DatumFileVO fileVO = new DatumFileVO();
fileVO.setFileName(item.getFileName());
fileVO.setFileUrl(item.getFileUrl());
datumFileList.add(fileVO);
}
groupVO.setDatumFileList(datumFileList);
groupVOList.add(groupVO);
}
}
return groupVOList;
}
@Override
public void applyExamine(MatterApplyEntity entity, Context context) throws AppException {
if(entity.getId()==null){
......
package com.mortals.xhx.module.apply.web;
import com.mortals.framework.annotation.RepeatSubmit;
import com.mortals.framework.annotation.UnAuth;
import com.mortals.framework.common.Rest;
import com.mortals.framework.model.BaseEntity;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.Result;
import com.mortals.framework.service.IUser;
import com.mortals.framework.utils.BeanUtil;
import com.mortals.framework.utils.ReflectUtils;
......@@ -224,4 +227,38 @@ public class MatterApplyController extends BaseCRUDJsonBodyMappingController<Mat
return ret.toJSONString();
}
}
@PostMapping({"list"})
@UnAuth
public Rest<Object> list(@RequestBody MatterApplyEntity query) {
Rest<Object> ret = new Rest();
Map<String, Object> model = new HashMap();
Context context = this.getContext();
String busiDesc = "查询" + this.getModuleDesc();
int code;
try {
this.doListBefore(query, model, context);
PageInfo pageInfo = this.buildPageInfo(query);
Result<MatterApplyEntity> result = this.getService().find(query, pageInfo, context);
this.doListAfter(query, result.getList(), context);
model.put("data", result.getList());
model.put("pageInfo", result.getPageInfo());
this.parsePageInfo(model, result.getPageInfo());
code = this.doListAfter(query, (Map)model, context);
model.put("message_info", busiDesc + "成功");
this.recordSysLog(this.request, busiDesc + " 【成功】");
} catch (Exception var9) {
code = -1;
this.doException(this.request, busiDesc, model, var9);
}
this.init(model, context);
ret.setCode(code);
ret.setData(model);
ret.setDict(model.get("dict"));
ret.setMsg(model.get("message_info") == null ? "" : model.remove("message_info").toString());
return ret;
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment