diff --git a/src/main/java/com/xqopen/kehui/Api.java b/src/main/java/com/xqopen/kehui/Api.java index 4ffe3f3..700e162 100644 --- a/src/main/java/com/xqopen/kehui/Api.java +++ b/src/main/java/com/xqopen/kehui/Api.java @@ -381,6 +381,11 @@ public class Api { 季度考核管理 */ public static final String PROJECT_QUARTERLY_EVALUATION=PROJECT_PREFIX+"/quarterExamine"; + public static final String PROJECT_QUARTERLY_EVALUATION_LIST=PROJECT_QUARTERLY_EVALUATION+"/list"; + + + + public static final String PROJECT_INFO_GET_ACCEPT_PROJECTS = PROJECT_INFO + "/accept"; public static final String PROJECT_INFO_MODEL = PROJECT_INFO + "/model"; diff --git a/src/main/java/com/xqopen/kehui/mapper/ProjectAssessmentIndicatorsDao.java b/src/main/java/com/xqopen/kehui/mapper/ProjectAssessmentIndicatorsDao.java index dc82a12..1ced35c 100644 --- a/src/main/java/com/xqopen/kehui/mapper/ProjectAssessmentIndicatorsDao.java +++ b/src/main/java/com/xqopen/kehui/mapper/ProjectAssessmentIndicatorsDao.java @@ -1,10 +1,15 @@ package com.xqopen.kehui.mapper; import com.baomidou.mybatisplus.mapper.BaseMapper; +import com.baomidou.mybatisplus.plugins.Page; import com.xqopen.kehui.project.entity.ProjectAssessmentIndicators; +import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Update; +import java.util.List; + public interface ProjectAssessmentIndicatorsDao extends BaseMapper { @Update("update project_assessment_indicators set is_deleted=true where project_id =#{id}") void updateByProjectId(Long id); + List getList(Page page, @Param("indicators") ProjectAssessmentIndicators indicators); } diff --git a/src/main/java/com/xqopen/kehui/mapper/ProjectInfoDao.java b/src/main/java/com/xqopen/kehui/mapper/ProjectInfoDao.java index 90638a6..3853104 100644 --- a/src/main/java/com/xqopen/kehui/mapper/ProjectInfoDao.java +++ b/src/main/java/com/xqopen/kehui/mapper/ProjectInfoDao.java @@ -1,14 +1,14 @@ package com.xqopen.kehui.mapper; -import java.util.List; - +import com.baomidou.mybatisplus.mapper.BaseMapper; import com.baomidou.mybatisplus.plugins.Page; import com.xqopen.kehui.project.dto.ProjectInfoBase; import com.xqopen.kehui.project.dto.ProjectInfoListItemResp; import com.xqopen.kehui.project.entity.ProjectInfo; -import com.baomidou.mybatisplus.mapper.BaseMapper; import org.apache.ibatis.annotations.Param; +import java.util.List; + /** *

* 项目管理 Mapper 接口 @@ -36,4 +36,5 @@ public interface ProjectInfoDao extends BaseMapper { ); List getAcceptNameList(); + List getListByIds(Page page,@Param("list") List list); } \ No newline at end of file diff --git a/src/main/resources/mapper/ProjectAssessmentIndicatorsMapper.xml b/src/main/java/com/xqopen/kehui/mapper/xml/ProjectAssessmentIndicatorsMapper.xml similarity index 74% rename from src/main/resources/mapper/ProjectAssessmentIndicatorsMapper.xml rename to src/main/java/com/xqopen/kehui/mapper/xml/ProjectAssessmentIndicatorsMapper.xml index eaf9316..7cfdef7 100644 --- a/src/main/resources/mapper/ProjectAssessmentIndicatorsMapper.xml +++ b/src/main/java/com/xqopen/kehui/mapper/xml/ProjectAssessmentIndicatorsMapper.xml @@ -2,10 +2,10 @@ - + - - + + @@ -17,7 +17,7 @@ - + @@ -31,4 +31,11 @@ is_deleted,project_id,quarter, number + diff --git a/src/main/java/com/xqopen/kehui/mapper/xml/ProjectInfoDao.xml b/src/main/java/com/xqopen/kehui/mapper/xml/ProjectInfoDao.xml index 7cd0156..9c6962c 100644 --- a/src/main/java/com/xqopen/kehui/mapper/xml/ProjectInfoDao.xml +++ b/src/main/java/com/xqopen/kehui/mapper/xml/ProjectInfoDao.xml @@ -145,6 +145,15 @@ AND (f.id_ is NULL OR f.id_ in (select MAX(id_) from flows where is_deleted=FALSE group BY business_id)) AND f.activiti_status=2 AND f.is_deleted=FALSE + AND ( diff --git a/src/main/java/com/xqopen/kehui/project/action/ProjectAssessmentIndicatorsController.java b/src/main/java/com/xqopen/kehui/project/action/ProjectAssessmentIndicatorsController.java new file mode 100644 index 0000000..7b4be96 --- /dev/null +++ b/src/main/java/com/xqopen/kehui/project/action/ProjectAssessmentIndicatorsController.java @@ -0,0 +1,40 @@ +package com.xqopen.kehui.project.action; + +import com.alibaba.fastjson.support.spring.FastJsonJsonView; +import com.baomidou.mybatisplus.plugins.Page; +import com.xqopen.kehui.Api; +import com.xqopen.kehui.exception.ErrorCode; +import com.xqopen.kehui.exception.XQException; +import com.xqopen.kehui.project.api.ProjectAssessmentIndicatorsApi; +import com.xqopen.kehui.project.entity.ProjectAssessmentIndicators; +import com.xqopen.kehui.project.service.IProjectAssessmentIndicatorsService; +import com.xqopen.kehui.util.ApiResponse; +import com.xqopen.kehui.util.PageNoUtil; +import com.xqopen.kehui.util.ResultListReqUtil; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +@Slf4j +@RestController +@RequestMapping(produces = FastJsonJsonView.DEFAULT_CONTENT_TYPE) +public class ProjectAssessmentIndicatorsController implements ProjectAssessmentIndicatorsApi { + @Autowired + IProjectAssessmentIndicatorsService indicatorsService; + + @Override + @PostMapping(Api.PROJECT_QUARTERLY_EVALUATION_LIST) + public String list(@RequestHeader Long userId, @RequestBody PageNoUtil pageNoUtil) throws XQException { + try { + Page page = new Page<>(pageNoUtil.getPageNo(),pageNoUtil.getPageSize()); + List indicatorsServiceList = indicatorsService.getList(page, pageNoUtil.getT()); + ResultListReqUtil listReqUtil = new ResultListReqUtil<>(indicatorsServiceList,pageNoUtil.getPageNo(),pageNoUtil.getPageSize()); + return ApiResponse.fillSuccess(listReqUtil); + }catch (Exception e){ + log.error("ProjectAssessmentIndicatorsController.list", e); + throw new XQException(ErrorCode.PROJECTINFO_EXCEPTION_ERROR, null); + } + } +} diff --git a/src/main/java/com/xqopen/kehui/project/action/ProjectQuarterlyEvaluationController.java b/src/main/java/com/xqopen/kehui/project/action/ProjectQuarterlyEvaluationController.java index c24d4b0..54b8bf0 100644 --- a/src/main/java/com/xqopen/kehui/project/action/ProjectQuarterlyEvaluationController.java +++ b/src/main/java/com/xqopen/kehui/project/action/ProjectQuarterlyEvaluationController.java @@ -1,13 +1,18 @@ package com.xqopen.kehui.project.action; import com.alibaba.fastjson.support.spring.FastJsonJsonView; +import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.plugins.Page; import com.xqopen.kehui.Api; +import com.xqopen.kehui.common.entity.SystemUserLogin; +import com.xqopen.kehui.common.service.ISystemUserLoginService; import com.xqopen.kehui.exception.ErrorCode; import com.xqopen.kehui.exception.XQException; import com.xqopen.kehui.project.api.ProjectQuarterlyEvaluationApi; -import com.xqopen.kehui.project.dto.ProjectQuarterlyEvaluationListDto; +import com.xqopen.kehui.project.dto.ProjectInfoListItemResp; +import com.xqopen.kehui.project.entity.ProjectInfo; import com.xqopen.kehui.project.entity.ProjectQuarterlyEvaluation; +import com.xqopen.kehui.project.service.IProjectInfoService; import com.xqopen.kehui.project.service.ProjectQuarterlyEvaluationService; import com.xqopen.kehui.util.ApiResponse; import com.xqopen.kehui.util.PageNoUtil; @@ -24,15 +29,29 @@ import java.util.List; public class ProjectQuarterlyEvaluationController implements ProjectQuarterlyEvaluationApi { @Autowired ProjectQuarterlyEvaluationService quarterlyEvaluationService; + @Autowired + ISystemUserLoginService userLoginService; + @Autowired + IProjectInfoService projectInfoService; @Override @PostMapping(Api.PROJECT_QUARTERLY_EVALUATION) public String list(@RequestHeader Long userId, @RequestBody PageNoUtil pageNoUtil) throws XQException { try { - Page page = new Page<>(pageNoUtil.getPageNo(),pageNoUtil.getPageSize()); - ProjectQuarterlyEvaluation evaluation = pageNoUtil.getT(); - List list = quarterlyEvaluationService.getList(page, evaluation); - ResultListReqUtil listReqUtil = new ResultListReqUtil<>(); + //先拿到季度审核表数据 + EntityWrapper userLoginEntityWrapper = new EntityWrapper<>(); + userLoginEntityWrapper.eq("id_",userId); + SystemUserLogin systemUserLogin = userLoginService.selectOne(userLoginEntityWrapper); + EntityWrapper evaluationEntityWrapper = new EntityWrapper<>(); + evaluationEntityWrapper.eq("is_deleted","0"); + evaluationEntityWrapper.eq("created_by",String.valueOf(systemUserLogin.getUserinfoId())); + evaluationEntityWrapper.setSqlSelect("project_id"); + List evaluationList = quarterlyEvaluationService.selectObjs(evaluationEntityWrapper); + Page page = new Page<>(pageNoUtil.getPageNo(),pageNoUtil.getPageSize()); + + //通过季度审核表的项目id集合,查询到当前负责人下面的项目列表 + List list = projectInfoService.getListByIds(page, evaluationList); + ResultListReqUtil listReqUtil = new ResultListReqUtil<>(); listReqUtil.setLs(list); listReqUtil.setPages(page.getPages()); listReqUtil.setTotal(page.getTotal()); diff --git a/src/main/java/com/xqopen/kehui/project/api/ProjectAssessmentIndicatorsApi.java b/src/main/java/com/xqopen/kehui/project/api/ProjectAssessmentIndicatorsApi.java new file mode 100644 index 0000000..377eda9 --- /dev/null +++ b/src/main/java/com/xqopen/kehui/project/api/ProjectAssessmentIndicatorsApi.java @@ -0,0 +1,21 @@ +package com.xqopen.kehui.project.api; + +import com.xqopen.kehui.exception.XQException; +import com.xqopen.kehui.project.dto.ProjectAchievementResp; +import com.xqopen.kehui.project.entity.ProjectAssessmentIndicators; +import com.xqopen.kehui.util.Constants; +import com.xqopen.kehui.util.PageNoUtil; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; + +@Api(value = "季度考核指标管理", tags = Constants.MODULE_PROJECT, description = "项目模块") +public interface ProjectAssessmentIndicatorsApi { + @ApiOperation(value = "获取季度考核指标列表", notes = "获取季度考核指标列表", response = ProjectAchievementResp.class) + @ApiImplicitParams({ + @ApiImplicitParam(name = "token", value = "登录标识符", required = true, paramType = "header", dataType = "String"), + @ApiImplicitParam(name = "userId", value = "用户id", required = true, paramType = "header", dataType = "Long"), + }) + String list(Long userId, PageNoUtil pageNoUtil) throws XQException; +} diff --git a/src/main/java/com/xqopen/kehui/project/entity/ProjectAssessmentIndicators.java b/src/main/java/com/xqopen/kehui/project/entity/ProjectAssessmentIndicators.java index 4aa1794..7ae9921 100644 --- a/src/main/java/com/xqopen/kehui/project/entity/ProjectAssessmentIndicators.java +++ b/src/main/java/com/xqopen/kehui/project/entity/ProjectAssessmentIndicators.java @@ -1,5 +1,7 @@ package com.xqopen.kehui.project.entity; +import com.alibaba.fastjson.JSON; +import com.baomidou.mybatisplus.annotations.TableField; import com.baomidou.mybatisplus.annotations.TableId; import com.baomidou.mybatisplus.annotations.TableName; import com.baomidou.mybatisplus.enums.IdType; @@ -35,4 +37,6 @@ public class ProjectAssessmentIndicators { private String quarter; @ApiModelProperty("序号") private Long number; + @TableField("ext_") + private JSON ext; } diff --git a/src/main/java/com/xqopen/kehui/project/entity/ProjectQuarterlyEvaluation.java b/src/main/java/com/xqopen/kehui/project/entity/ProjectQuarterlyEvaluation.java index 792a85a..9c33060 100644 --- a/src/main/java/com/xqopen/kehui/project/entity/ProjectQuarterlyEvaluation.java +++ b/src/main/java/com/xqopen/kehui/project/entity/ProjectQuarterlyEvaluation.java @@ -1,7 +1,9 @@ package com.xqopen.kehui.project.entity; +import com.baomidou.mybatisplus.annotations.TableId; import com.baomidou.mybatisplus.annotations.TableName; +import com.baomidou.mybatisplus.enums.IdType; import lombok.Data; import java.io.Serializable; @@ -16,6 +18,7 @@ public class ProjectQuarterlyEvaluation implements Serializable { /** * */ + @TableId(value = "id_", type = IdType.AUTO) private String id; /** diff --git a/src/main/java/com/xqopen/kehui/project/service/IProjectAssessmentIndicatorsService.java b/src/main/java/com/xqopen/kehui/project/service/IProjectAssessmentIndicatorsService.java index 3b1f989..bc4af5a 100644 --- a/src/main/java/com/xqopen/kehui/project/service/IProjectAssessmentIndicatorsService.java +++ b/src/main/java/com/xqopen/kehui/project/service/IProjectAssessmentIndicatorsService.java @@ -1,12 +1,16 @@ package com.xqopen.kehui.project.service; +import com.baomidou.mybatisplus.plugins.Page; import com.baomidou.mybatisplus.service.IService; import com.xqopen.kehui.project.entity.ProjectAssessmentIndicators; +import java.util.List; + public interface IProjectAssessmentIndicatorsService extends IService { /** * 通过项目id,批量逻辑删除数据,方便新增 * @param id */ void updateByProjectId(Long id); + List getList(Page page,ProjectAssessmentIndicators indicators); } diff --git a/src/main/java/com/xqopen/kehui/project/service/IProjectInfoService.java b/src/main/java/com/xqopen/kehui/project/service/IProjectInfoService.java index c83ba56..09d4487 100644 --- a/src/main/java/com/xqopen/kehui/project/service/IProjectInfoService.java +++ b/src/main/java/com/xqopen/kehui/project/service/IProjectInfoService.java @@ -1,12 +1,12 @@ package com.xqopen.kehui.project.service; -import java.util.List; - import com.baomidou.mybatisplus.plugins.Page; +import com.baomidou.mybatisplus.service.IService; import com.xqopen.kehui.project.dto.ProjectInfoBase; import com.xqopen.kehui.project.dto.ProjectInfoListItemResp; import com.xqopen.kehui.project.entity.ProjectInfo; -import com.baomidou.mybatisplus.service.IService; + +import java.util.List; /** *

@@ -23,4 +23,5 @@ public interface IProjectInfoService extends IService { List getNameList(String projectStep, String projectCategory, String NprojectStep); List getAcceptNameList(); + List getListByIds(Page page,List list); } diff --git a/src/main/java/com/xqopen/kehui/project/service/impl/IProjectInitServiceImpl.java b/src/main/java/com/xqopen/kehui/project/service/impl/IProjectInitServiceImpl.java index fda1616..a8d0da5 100644 --- a/src/main/java/com/xqopen/kehui/project/service/impl/IProjectInitServiceImpl.java +++ b/src/main/java/com/xqopen/kehui/project/service/impl/IProjectInitServiceImpl.java @@ -1,5 +1,6 @@ package com.xqopen.kehui.project.service.impl; +import com.baomidou.mybatisplus.plugins.Page; import com.baomidou.mybatisplus.service.impl.ServiceImpl; import com.xqopen.kehui.mapper.ProjectAssessmentIndicatorsDao; import com.xqopen.kehui.project.entity.ProjectAssessmentIndicators; @@ -7,6 +8,8 @@ import com.xqopen.kehui.project.service.IProjectAssessmentIndicatorsService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; + @Service public class IProjectInitServiceImpl extends ServiceImpl implements IProjectAssessmentIndicatorsService { @Autowired @@ -15,4 +18,9 @@ public class IProjectInitServiceImpl extends ServiceImpl getList(Page page, ProjectAssessmentIndicators indicators) { + return indicatorsDao.getList(page,indicators); + } } diff --git a/src/main/java/com/xqopen/kehui/project/service/impl/ProjectInfoServiceImpl.java b/src/main/java/com/xqopen/kehui/project/service/impl/ProjectInfoServiceImpl.java index 5113613..2c71a97 100644 --- a/src/main/java/com/xqopen/kehui/project/service/impl/ProjectInfoServiceImpl.java +++ b/src/main/java/com/xqopen/kehui/project/service/impl/ProjectInfoServiceImpl.java @@ -1,19 +1,18 @@ package com.xqopen.kehui.project.service.impl; -import java.util.List; - import com.baomidou.mybatisplus.plugins.Page; +import com.baomidou.mybatisplus.service.impl.ServiceImpl; +import com.xqopen.kehui.mapper.ProjectInfoDao; import com.xqopen.kehui.project.dto.ProjectInfoBase; import com.xqopen.kehui.project.dto.ProjectInfoListItemResp; import com.xqopen.kehui.project.entity.ProjectInfo; -import com.xqopen.kehui.mapper.ProjectInfoDao; import com.xqopen.kehui.project.service.IProjectInfoService; -import com.baomidou.mybatisplus.service.impl.ServiceImpl; - import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.List; + /** *

* 项目管理 服务实现类 @@ -39,4 +38,9 @@ public class ProjectInfoServiceImpl extends ServiceImpl getAcceptNameList() { return infoDao.getAcceptNameList(); } + + @Override + public List getListByIds(Page page, List list) { + return infoDao.getListByIds(page,list); + } } diff --git a/src/main/java/com/xqopen/kehui/util/ResultListReqUtil.java b/src/main/java/com/xqopen/kehui/util/ResultListReqUtil.java index 18209f4..75e5fa9 100644 --- a/src/main/java/com/xqopen/kehui/util/ResultListReqUtil.java +++ b/src/main/java/com/xqopen/kehui/util/ResultListReqUtil.java @@ -14,4 +14,13 @@ public class ResultListReqUtil{ @ApiModelProperty(value = "总页数", required = true, position = 3) private int pages; + + public ResultListReqUtil(List ls, long total, int pages) { + this.ls = ls; + this.total = total; + this.pages = pages; + } + + public ResultListReqUtil() { + } }