Commit 21f9012a authored by 曹盼盼's avatar 曹盼盼

增加ugp项目统计接口

parent 58310d3c
package com.yeejoin.amos.boot.module.ugp.api.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import lombok.EqualsAndHashCode;
......@@ -24,6 +25,7 @@ public class MsgNoticeDto {
/**
* 消息创建时间
*/
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
private Date createDate;
/**
......@@ -36,5 +38,9 @@ public class MsgNoticeDto {
*/
private String status;
/**项目名称*/
private String projectName;
private String image;
}
......@@ -2,6 +2,7 @@ package com.yeejoin.amos.boot.module.ugp.api.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
......@@ -47,14 +48,18 @@ public class Task extends BaseEntity {
private String taskTypeLabel;
private String content;
private String agencyCode;
private Date sendTime;
private String type;
private Long unitId;
@TableField(exist = false)
private String extend; //url路径
private Long extendId;
private String projectName;
private String image;
......
......@@ -60,4 +60,6 @@ public interface ProjectMapper extends BaseMapper<Project> {
String getContext(String instanceId,String taskName);
Double getProjectSchedule(@Param("projectId") Long projectId);
Float getLengths();
}
......@@ -9,15 +9,22 @@
<select id="getTask" resultType="com.yeejoin.amos.boot.module.ugp.api.entity.Task">
SELECT
tk.*,
tp.url AS extend
tp.url AS extend,
pt.name AS projectName
FROM
tz_ugp_task tk
tz_ugp_project pt
LEFT JOIN
tz_ugp_task tk on pt.sequence_nbr=tk.source_id
LEFT JOIN
tz_ugp_path tp ON tk.title = tp.name and tk.status = tp.status
where tk.unit_id =#{unitId}
<if test="type != null ">
and tk.status =#{type}
</if>
where 1=1
<if test="unitId != null ">
and tk.unit_id =#{unitId}
</if>
<if test="type != null ">
and tk.status =#{type}
</if>
ORDER BY tk.rec_date DESC
</select>
</mapper>
\ No newline at end of file
......@@ -8,15 +8,20 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.mysql.cj.xdevapi.JsonString;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.common.api.entity.OrgUsr;
import com.yeejoin.amos.boot.module.common.biz.utils.CommonResponseUtil;
import com.yeejoin.amos.boot.module.ugp.api.Enum.OrgEnum;
import com.yeejoin.amos.boot.module.ugp.api.Enum.TabLogoEnum;
import com.yeejoin.amos.boot.module.ugp.api.constants.XJConstant;
import com.yeejoin.amos.boot.module.ugp.api.dto.*;
import com.yeejoin.amos.boot.module.ugp.api.entity.InstallNotice;
import com.yeejoin.amos.boot.module.ugp.api.entity.Project;
import com.yeejoin.amos.boot.module.ugp.api.mapper.CompanyMapper;
import com.yeejoin.amos.boot.module.ugp.api.mapper.ProjectMapper;
import com.yeejoin.amos.boot.module.ugp.api.service.IProcessRelationService;
import com.yeejoin.amos.boot.module.ugp.biz.framework.BusinessIdentify;
import com.yeejoin.amos.boot.module.ugp.biz.service.impl.*;
......@@ -25,6 +30,7 @@ import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.*;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
......@@ -34,6 +40,8 @@ import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletRequest;
import java.util.*;
import static com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.Int;
/**
* 项目信息表
*
......@@ -48,6 +56,13 @@ public class ProjectController extends BaseController {
@Autowired
ProjectServiceImpl projectServiceImpl;
@Autowired
ProjectMapper projectMapper;
@Autowired
private CompanyServiceImpl companyServiceImpl;
@Autowired
private RedisUtils redisUtils;
@Autowired
ProjectInitiationServiceImpl projectInitiationService;
@Autowired
CompanyMapper companyMapper;
......@@ -66,6 +81,7 @@ public class ProjectController extends BaseController {
@Autowired
IProcessRelationService iProcessRelationService;
/**
* 新增项目信息表
*
......@@ -152,7 +168,6 @@ public class ProjectController extends BaseController {
}
/**
* 列表全部数据查询
*
......@@ -162,8 +177,9 @@ public class ProjectController extends BaseController {
@ApiOperation(httpMethod = "GET",value = "项目信息表列表全部数据查询", notes = "项目信息表列表全部数据查询")
@GetMapping(value = "/list")
public ResponseModel<List<ProjectDto>> selectForList() {
return ResponseHelper.buildResponse(projectServiceImpl.queryForProjectList());
return ResponseHelper.buildResponse(projectServiceImpl.queryForProjectList());
}
/**
* 查询项目名称
*/
......@@ -345,7 +361,6 @@ public class ProjectController extends BaseController {
}
/**
* 项目进度
* @return
......@@ -581,5 +596,121 @@ public class ProjectController extends BaseController {
jsonObject.put(TabLogoEnum.项目流程跟踪.getLogo(), iProcessRelationService.getProcessRelation(projectId));
return ResponseHelper.buildResponse(jsonObject);
}
/**
* 获取当前登录人下所在单位的项目总数
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@ApiOperation(httpMethod = "GET", value = "获取当前登录人下所在单位的项目总数", notes = "获取当前登录人下所在单位的项目总数")
@GetMapping(value = "/getCountPorject")
@BusinessIdentify
public ResponseModel<JSONObject> getCountPorject(){
LambdaQueryWrapper<Project> objectLambdaQueryWrapper = new LambdaQueryWrapper<>();
ReginParams reginParams = orgServiceImpl.getReginParams();
String companyType = reginParams.getBusinessInfo().getCompanyType();
Long companySequenceNbr = reginParams.getBusinessInfo().getCompanySequenceNbr();
if (OrgEnum.安装单位.getKey().equals(companyType)) {
objectLambdaQueryWrapper.eq(Project::getInstallationUnitId,companySequenceNbr);
} else if (OrgEnum.设计单位.getKey().equals(companyType)) {
objectLambdaQueryWrapper.eq(Project::getDesignUnitId,companySequenceNbr);
} else if (OrgEnum.建设单位.getKey().equals(companyType)) {
objectLambdaQueryWrapper.eq(Project::getConstructionUnitId,companySequenceNbr);
} else if (OrgEnum.监察部门.getKey().equals(companyType)) {
//区域
CompanyDto companyDto = companyServiceImpl.queryBySeq(companySequenceNbr);
String regionCode = companyDto.getRegionCode();
objectLambdaQueryWrapper.like(Project::getInstallRegionCode,regionCode);
} else if (OrgEnum.监检机构.getKey().equals(companyType)) {
objectLambdaQueryWrapper.eq(Project::getTestingUnitId,companySequenceNbr);
} else if (OrgEnum.监理单位.getKey().equals(companyType)) {
objectLambdaQueryWrapper.eq(Project::getSupervisionUnitId,companySequenceNbr);
} else if (OrgEnum.建设单位负责人.getKey().equals(companyType)) {
objectLambdaQueryWrapper.eq(Project::getChargePersonId,companySequenceNbr);
}
Integer count = projectServiceImpl.count(objectLambdaQueryWrapper);
JSONObject jsonObject = new JSONObject();
jsonObject.put("title",count);
return ResponseHelper.buildResponse(jsonObject);
}
/**
* 获取当前登录人下所在单位的在建项目数量和项目长度
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@ApiOperation(httpMethod = "GET", value = "获取当前登录人下所在单位的在建项目数量和项目长度", notes = "获取当前登录人下所在单位的在建项目数量和项目长度")
@GetMapping(value = "/getLenths")
@BusinessIdentify
public ResponseModel<JSONObject> getLenths(){
Float lengths=0.00f;
LambdaQueryWrapper<Project> objectLambdaQueryWrapper = new LambdaQueryWrapper<>();
ReginParams reginParams = orgServiceImpl.getReginParams();
String companyType = reginParams.getBusinessInfo().getCompanyType();
Long companySequenceNbr = reginParams.getBusinessInfo().getCompanySequenceNbr();
if (OrgEnum.安装单位.getKey().equals(companyType)) {
objectLambdaQueryWrapper
.eq(Project::getInstallationUnitId,companySequenceNbr).ne(Project::getStatus,"竣工流程结束!");
for (Project project : projectMapper.selectList(objectLambdaQueryWrapper)) {
lengths += Float.valueOf(project.getLength()) ;
}
} else if (OrgEnum.设计单位.getKey().equals(companyType)) {
objectLambdaQueryWrapper.eq(Project::getDesignUnitId,companySequenceNbr).ne(Project::getStatus,"竣工流程结束!");
for (Project project : projectMapper.selectList(objectLambdaQueryWrapper)) {
lengths += Float.valueOf(project.getLength()) ;
}
} else if (OrgEnum.建设单位.getKey().equals(companyType)) {
objectLambdaQueryWrapper.eq(Project::getConstructionUnitId,companySequenceNbr).ne(Project::getStatus,"竣工流程结束!");
for (Project project : projectMapper.selectList(objectLambdaQueryWrapper)) {
lengths += Float.valueOf(project.getLength()) ;
}
} else if (OrgEnum.监察部门.getKey().equals(companyType)) {
//区域
CompanyDto companyDto = companyServiceImpl.queryBySeq(companySequenceNbr);
String regionCode = companyDto.getRegionCode();
objectLambdaQueryWrapper.like(Project::getInstallRegionCode,regionCode).ne(Project::getStatus,"竣工流程结束!");
for (Project project : projectMapper.selectList(objectLambdaQueryWrapper)) {
lengths += Float.valueOf(project.getLength()) ;
}
} else if (OrgEnum.监检机构.getKey().equals(companyType)) {
objectLambdaQueryWrapper.eq(Project::getTestingUnitId,companySequenceNbr).ne(Project::getStatus,"竣工流程结束!");
for (Project project : projectMapper.selectList(objectLambdaQueryWrapper)) {
lengths += Float.valueOf(project.getLength()) ;
}
} else if (OrgEnum.监理单位.getKey().equals(companyType)) {
objectLambdaQueryWrapper.eq(Project::getSupervisionUnitId,companySequenceNbr).ne(Project::getStatus,"竣工流程结束!");
for (Project project : projectMapper.selectList(objectLambdaQueryWrapper)) {
lengths += Float.valueOf(project.getLength()) ;
}
} else if (OrgEnum.建设单位负责人.getKey().equals(companyType)) {
objectLambdaQueryWrapper.eq(Project::getChargePersonId,companySequenceNbr).ne(Project::getStatus,"竣工流程结束!");
for (Project project : projectMapper.selectList(objectLambdaQueryWrapper)) {
lengths += Float.valueOf(project.getLength()) ;
}
}
Integer count = projectServiceImpl.count(objectLambdaQueryWrapper);
JSONObject jsonObject = new JSONObject();
String[] split = lengths.toString().split(".");
String s =split[0]+"Km";
jsonObject.put("number",count);
jsonObject.put("lengths",s);
return ResponseHelper.buildResponse(jsonObject);
}
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@ApiOperation(httpMethod = "GET", value = "token", notes = "token")
@GetMapping(value = "/getUserToken")
public ResponseModel<ReginParams> getUserToken(){
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
return ResponseHelper.buildResponse(reginParams);
}
}
......@@ -48,8 +48,8 @@ public class RectifyMsgController extends BaseController {
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增整改短信通知表", notes = "新增整改短信通知表")
public ResponseModel<RectifyMsgDto> save(@RequestBody RectifyMsgDto model) {
model = rectifyMsgServiceImpl.createWithModel(model);
return ResponseHelper.buildResponse(model);
model = rectifyMsgServiceImpl.createWithModel(model);
return ResponseHelper.buildResponse(model);
}
/**
......@@ -62,8 +62,8 @@ public class RectifyMsgController extends BaseController {
@PutMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新通知表", notes = "根据sequenceNbr更新通知表")
public ResponseModel<RectifyMsgDto> updateBySequenceNbrRectifyMsg(@RequestBody RectifyMsgDto model,@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
model.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(rectifyMsgServiceImpl.updateWithModel(model));
model.setSequenceNbr(sequenceNbr);
return ResponseHelper.buildResponse(rectifyMsgServiceImpl.updateWithModel(model));
}
/**
......@@ -89,7 +89,7 @@ public class RectifyMsgController extends BaseController {
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个整改短信通知表", notes = "根据sequenceNbr查询单个整改短信通知表")
public ResponseModel<RectifyMsgDto> selectOne(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse(rectifyMsgServiceImpl.queryBySeq(sequenceNbr));
return ResponseHelper.buildResponse(rectifyMsgServiceImpl.queryBySeq(sequenceNbr));
}
/**
......@@ -109,10 +109,10 @@ public class RectifyMsgController extends BaseController {
@RequestParam(value = "isProblem") Boolean isProblem,
@RequestParam(value = "name",required = false) String name,
@RequestParam(value = "installationUnit",required = false) String installationUnit) {
IPage<RectifyMsgDto> page = new Page<RectifyMsgDto>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(rectifyMsgServiceImpl.queryForRectifyMsgPage(page,name,isProblem,installationUnit));
IPage<RectifyMsgDto> page = new Page<RectifyMsgDto>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(rectifyMsgServiceImpl.queryForRectifyMsgPage(page,name,isProblem,installationUnit));
}
/**
......@@ -124,7 +124,7 @@ public class RectifyMsgController extends BaseController {
@ApiOperation(httpMethod = "GET",value = "整改短信通知表列表全部数据查询", notes = "整改短信通知表列表全部数据查询")
@GetMapping(value = "/list")
public ResponseModel<List<RectifyMsgDto>> selectForList() {
return ResponseHelper.buildResponse(rectifyMsgServiceImpl.queryForRectifyMsgList());
return ResponseHelper.buildResponse(rectifyMsgServiceImpl.queryForRectifyMsgList());
}
@TycloudOperation(ApiLevel = UserType.AGENCY,needAuth = false)
......@@ -133,7 +133,11 @@ public class RectifyMsgController extends BaseController {
public ResponseModel<Page<MsgNoticeDto>> msgNotice(@RequestParam(value = "isRead",required = false) Boolean isRead,Long current,Long size) {
Page page = new Page(current,size);
List<MsgNoticeDto> msgNoticeDtoList = new ArrayList<>();
msgNoticeDtoList.addAll(rectifyMsgServiceImpl.msgNotice(isRead));
List<MsgNoticeDto> msgNoticeDtos = rectifyMsgServiceImpl.msgNotice(isRead);
for (MsgNoticeDto msgNoticeDto : msgNoticeDtos) {
msgNoticeDto.setImage("upload/tzs/amos_studio/D46947D534E3C3F93CB5EB32EE107456.png");
}
msgNoticeDtoList.addAll(msgNoticeDtos);
page.setRecords(msgNoticeDtoList);
page.setTotal(msgNoticeDtoList.size());
return ResponseHelper.buildResponse(page);
......@@ -150,7 +154,7 @@ public class RectifyMsgController extends BaseController {
page.setTotal(msgNoticeDtoList.size());
return ResponseHelper.buildResponse(page);
}
/**
* 安装告知短信通知记录列表分页查询
......
......@@ -29,6 +29,7 @@ import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletRequest;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.util.*;
import java.util.stream.Collectors;
......@@ -190,8 +191,12 @@ public class TaskController {
}
}
}
task.setImage("upload/tzs/amos_studio/78DD5C143321F1CA31FD6510ED50F38C.png");
}
return ResponseHelper.buildResponse(page);
}
......
......@@ -344,8 +344,6 @@ public class CompanyServiceImpl extends BaseService<CompanyDto, Company, Company
}
model.setApproved(CompanyExamineEnum.企业审核.getNo());
model.setRecDate(new Date());
SuperviseRule superviseRules = superviseRuleService.getOne(new LambdaQueryWrapper<SuperviseRule>().likeRight(SuperviseRule::getAdminRegionCode,model.getRegionCodeC()));
if (model.getType().equals(OrgEnum.监检机构.getKey())){
if (model.getRegionCode().equals(model.getRegionCodeD())){
......
......@@ -40,6 +40,9 @@ public class RectifyMsgServiceImpl extends BaseService<RectifyMsgDto,RectifyMsg,
IRectifyMsgService iRectifyMsgService;
@Autowired
private ProjectServiceImpl projectService;
@Autowired
RectifyMsgMapper rectifyMsgMapper;
@Autowired
......@@ -149,6 +152,10 @@ public class RectifyMsgServiceImpl extends BaseService<RectifyMsgDto,RectifyMsg,
msgNoticeDto.setStatus("未读");
}
}
if (!ValidationUtil.isEmpty(rectifyMsg.getInstallNoticeId())) {
ProjectDto projectDto = projectService.selectById(rectifyMsg.getInstallNoticeId());
msgNoticeDto.setProjectName("["+projectDto.getName()+"("+projectDto.getCode()+")"+"]");
}
msgNoticeDto.setCreateDate(rectifyMsg.getSendTime());
msgNoticeDto.setSequenceNbr(rectifyMsg.getSequenceNbr());
msgNoticeDtoList.add(msgNoticeDto);
......
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