Commit 8ab88823 authored by 竹天卫's avatar 竹天卫

计划管理 start

parents d1c44ec6 2548f57c
...@@ -3,18 +3,21 @@ package cn.wise.sc.cement.business.controller; ...@@ -3,18 +3,21 @@ package cn.wise.sc.cement.business.controller;
import cn.wise.sc.cement.business.entity.EntrustReport; import cn.wise.sc.cement.business.entity.EntrustReport;
import cn.wise.sc.cement.business.model.BaseResponse; import cn.wise.sc.cement.business.model.BaseResponse;
import cn.wise.sc.cement.business.model.PageQuery; import cn.wise.sc.cement.business.model.PageQuery;
import cn.wise.sc.cement.business.model.vo.EntrustVo;
import cn.wise.sc.cement.business.model.vo.QualityDetailVo;
import cn.wise.sc.cement.business.service.IEntrustService; import cn.wise.sc.cement.business.service.IEntrustService;
import cn.wise.sc.cement.business.util.PageUtil; import cn.wise.sc.cement.business.util.PageUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.List; import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
...@@ -36,21 +39,27 @@ public class QualityController { ...@@ -36,21 +39,27 @@ public class QualityController {
this.iEntrustService = iEntrustService; this.iEntrustService = iEntrustService;
} }
@ApiOperation(value = "质量检测分页列表")
@ApiImplicitParams(value = {
@ApiImplicitParam(name = "startDate", value = "开始日期", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "endDate", value = "结束日期", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "clientId", value = "委托单位id", paramType = "query", dataType = "Integer"),
@ApiImplicitParam(name = "projectName", value = "项目名称", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "projectCode", value = "项目编号", paramType = "query", dataType = "String")
})
@GetMapping("/getPage")
public BaseResponse<IPage<EntrustVo>> page(PageQuery pageQuery, String startDate, String endDate,
Integer clientId, String projectName, String projectCode) {
return iEntrustService.getQualityPage(pageQuery, startDate, endDate, clientId, projectName, projectCode);
}
@GetMapping("/{entrustId}") @GetMapping("/{entrustId}")
@ApiOperation("获取报告详情") @ApiOperation("获取质量详情")
public BaseResponse<com.baomidou.mybatisplus.extension.plugins.pagination.Page<EntrustReport>> getReportDetail(@PathVariable("entrustId") Integer entrustId, PageQuery pageQuery) { public BaseResponse<QualityDetailVo> getReportDetail(@PathVariable("entrustId") Integer entrustId) {
List<EntrustReport> entrustReports = iEntrustService.getReportDetail(entrustId); return BaseResponse.okData(iEntrustService.getQualityDetail(entrustId));
if (entrustReports.size() != 0) {
//过滤 id==null 和 projectType != '常规项目'
List<EntrustReport> list = entrustReports.stream()
.filter(arg -> arg.getId() != null && "质量控制".equals(arg.getProjectType()))
.collect(Collectors.toList());
Page<EntrustReport> rts = PageUtil.listConvertToPage(list, pageQuery);
return BaseResponse.okData(rts);
}
return BaseResponse.errorMsg("没找到相关数据!");
} }
} }
...@@ -40,7 +40,7 @@ public class ReportController { ...@@ -40,7 +40,7 @@ public class ReportController {
this.iEntrustService = iEntrustService; this.iEntrustService = iEntrustService;
} }
@ApiOperation(value = "委托分页列表") @ApiOperation(value = "报告分页列表")
@ApiImplicitParams(value = { @ApiImplicitParams(value = {
@ApiImplicitParam(name = "startDate", value = "开始日期", paramType = "query", dataType = "String"), @ApiImplicitParam(name = "startDate", value = "开始日期", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "endDate", value = "结束日期", paramType = "query", dataType = "String"), @ApiImplicitParam(name = "endDate", value = "结束日期", paramType = "query", dataType = "String"),
......
package cn.wise.sc.cement.business.entity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* @description: 质量检测详情
* @author: qh
* @create: 2020-09-28 14:01
**/
@Data
@ApiModel("质量检测详情实体")
public class QualityDetail implements Serializable {
private static final long serialVersionUID = 42L;
@ApiModelProperty("样品名字")
private String sampleName;
@ApiModelProperty("检测数据")
private String inputResult;
@ApiModelProperty("检测组名字")
private String teamGroupName;
@ApiModelProperty("项目编号")
private String entrustCode;
@ApiModelProperty("项目名字")
private String projectName;
@ApiModelProperty("委托人名字")
private String sendName;
@ApiModelProperty("委托人电话")
private String sendPhone;
@ApiModelProperty("样品id")
private Integer sampleId;
@ApiModelProperty("项目id")
private Integer entrustId;
@ApiModelProperty("检测组id")
private Integer teamGroupId;
@ApiModelProperty("用户id")
private Integer userId;
@ApiModelProperty("样品数量")
private Integer sampleNum;
private Integer clientId;
private String userName;
private String clientName;
}
...@@ -2,6 +2,7 @@ package cn.wise.sc.cement.business.mapper; ...@@ -2,6 +2,7 @@ package cn.wise.sc.cement.business.mapper;
import cn.wise.sc.cement.business.entity.Entrust; import cn.wise.sc.cement.business.entity.Entrust;
import cn.wise.sc.cement.business.entity.EntrustReport; import cn.wise.sc.cement.business.entity.EntrustReport;
import cn.wise.sc.cement.business.entity.QualityDetail;
import cn.wise.sc.cement.business.model.vo.EntrustVo; import cn.wise.sc.cement.business.model.vo.EntrustVo;
import cn.wise.sc.cement.business.model.vo.ProjectVo; import cn.wise.sc.cement.business.model.vo.ProjectVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
...@@ -38,4 +39,6 @@ public interface EntrustMapper extends BaseMapper<Entrust> { ...@@ -38,4 +39,6 @@ public interface EntrustMapper extends BaseMapper<Entrust> {
List<EntrustReport> getReportDetail(@Param("entrustId") Integer entrustId); List<EntrustReport> getReportDetail(@Param("entrustId") Integer entrustId);
List<QualityDetail> getQualityDetail(@Param("entrustId") Integer entrustId);
} }
...@@ -154,7 +154,6 @@ ...@@ -154,7 +154,6 @@
order by e.update_time desc order by e.update_time desc
</select> </select>
<!--数据校核分页列表--> <!--数据校核分页列表-->
<select id="getCheckPage" resultType="cn.wise.sc.cement.business.model.vo.EntrustVo"> <select id="getCheckPage" resultType="cn.wise.sc.cement.business.model.vo.EntrustVo">
select e.*, p.name as projectName, c.name as clientName, su.name as userName, select e.*, p.name as projectName, c.name as clientName, su.name as userName,
...@@ -193,6 +192,19 @@ ...@@ -193,6 +192,19 @@
ON sscct.entrust_id = e.id AND e.id = #{entrustId} ON sscct.entrust_id = e.id AND e.id = #{entrustId}
</select> </select>
<select id="getQualityDetail" resultType="cn.wise.sc.cement.business.entity.QualityDetail">
SELECT s.sample_name,esscct.* FROM (SELECT sscct.*,client_id,entrust_code,project_name,sample_num,send_name,send_phone FROM entrust e
RIGHT JOIN
(SELECT sct.input_result,sample_id,entrust_id,team_group_name,team_group_id,user_id FROM sample_check sc
RIGHT JOIN
(SELECT * FROM sample_check_team) sct
ON sct.check_id = sc.id WHERE sc.entrust_id = #{entrustId}) sscct
ON e.id = sscct.entrust_id) esscct
LEFT JOIN
(SELECT name as sample_name,id FROM sample) s
ON esscct.sample_id = s.id
</select>
<sql id="checkWhere"> <sql id="checkWhere">
<where> <where>
and e.is_delete = 1 and e.status >= 6 and e.is_delete = 1 and e.status >= 6
......
package cn.wise.sc.cement.business.model.vo;
import lombok.Data;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;
/**
* @description: 质量检测详情Vo
* @author: qh
* @create: 2020-09-28 14:55
**/
@Data
public class QualityDetailVo implements Serializable {
private static final long serialVersionUID = 42L;
private String projectName;
private String clientName;
private String entrustCode;
private Integer sampleNum;
private String sendName;
private String sendPhone;
List<QualityTeamGroup> qualityTeamGroups = new ArrayList<>();
@Data
public static class QualityTeamGroup {
private String teamGroupName;
private List<QualitySample> qualitySamples = new ArrayList<>();
}
@Data
public static class QualitySample {
private String sampleName;
private List<SampleOriginal> sampleOriginals = new ArrayList<>();
}
@Data
public static class SampleOriginal {
private String cementCode;
private String userName;
private String teamValues;
}
}
...@@ -79,9 +79,18 @@ public interface IEntrustService extends IService<Entrust> { ...@@ -79,9 +79,18 @@ public interface IEntrustService extends IService<Entrust> {
BaseResponse<String> check(CheckQuery query); BaseResponse<String> check(CheckQuery query);
BaseResponse<IPage<EntrustVo>> getReportPage(PageQuery pageQuery, String startDate, String endDate, Integer clientId, String projectName, String projectCode); BaseResponse<IPage<EntrustVo>> getReportPage(PageQuery pageQuery, String startDate,
String endDate, Integer clientId,
String projectName, String projectCode);
BaseResponse<Boolean> deleteById(Integer id); BaseResponse<Boolean> deleteById(Integer id);
List<EntrustReport> getReportDetail(Integer entrustId); List<EntrustReport> getReportDetail(Integer entrustId);
BaseResponse<IPage<EntrustVo>> getQualityPage(PageQuery pageQuery,
String startDate, String endDate,
Integer clientId, String projectName,
String projectCode);
QualityDetailVo getQualityDetail(Integer entrustId);
} }
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