|
|
@@ -0,0 +1,62 @@
|
|
|
+package com.xjrsoft.module.evaluate.service.impl;
|
|
|
+
|
|
|
+import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
+import com.github.yulichang.base.MPJBaseServiceImpl;
|
|
|
+import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
|
|
+import com.xjrsoft.common.page.ConventPage;
|
|
|
+import com.xjrsoft.common.utils.VoToColumnUtil;
|
|
|
+import com.xjrsoft.module.base.entity.BaseSemester;
|
|
|
+import com.xjrsoft.module.evaluate.dto.EvaluateResultIndexPageDto;
|
|
|
+import com.xjrsoft.module.evaluate.entity.EvaluateManage;
|
|
|
+import com.xjrsoft.module.evaluate.entity.EvaluateResult;
|
|
|
+import com.xjrsoft.module.evaluate.entity.EvaluateTemplate;
|
|
|
+import com.xjrsoft.module.evaluate.mapper.EvaluateManageMapper;
|
|
|
+import com.xjrsoft.module.evaluate.mapper.EvaluateResultMapper;
|
|
|
+import com.xjrsoft.module.evaluate.service.IEvaluateResultService;
|
|
|
+import com.xjrsoft.module.evaluate.vo.EvaluateResultIndexPageVo;
|
|
|
+import com.xjrsoft.module.organization.entity.Department;
|
|
|
+import com.xjrsoft.module.system.entity.DictionaryDetail;
|
|
|
+import lombok.AllArgsConstructor;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+/**
|
|
|
+* @title: 评价结果
|
|
|
+* @Author szs
|
|
|
+* @Date: 2024-01-16
|
|
|
+* @Version 1.0
|
|
|
+*/
|
|
|
+@Service
|
|
|
+@AllArgsConstructor
|
|
|
+public class EvaluateResultServiceImpl extends MPJBaseServiceImpl<EvaluateResultMapper, EvaluateResult> implements IEvaluateResultService {
|
|
|
+
|
|
|
+ private EvaluateManageMapper evaluateManageMapper;
|
|
|
+ @Override
|
|
|
+ public IPage<EvaluateResultIndexPageVo> getIndexPage(EvaluateResultIndexPageDto dto) {
|
|
|
+ MPJLambdaWrapper<EvaluateManage> evaluateManageMPJLambdaWrapper = new MPJLambdaWrapper<>();
|
|
|
+ evaluateManageMPJLambdaWrapper
|
|
|
+ .selectAs(EvaluateManage::getId, EvaluateResultIndexPageVo::getEvaluateManageId)
|
|
|
+ .selectAs(BaseSemester::getName, EvaluateResultIndexPageVo::getSemesterName)
|
|
|
+ .selectAs(Department::getName, EvaluateResultIndexPageVo::getOrgName)
|
|
|
+ .selectAs(DictionaryDetail::getName, EvaluateResultIndexPageVo::getEvaluateTypeCN)
|
|
|
+ .select(EvaluateManage.class, x -> VoToColumnUtil.fieldsToColumns(EvaluateResultIndexPageVo.class).contains(x.getProperty()))
|
|
|
+ .leftJoin(BaseSemester.class, BaseSemester::getId, EvaluateManage::getBaseSemesterId)
|
|
|
+ .leftJoin(Department.class, Department::getId, EvaluateManage::getOrgId)
|
|
|
+ .leftJoin(EvaluateTemplate.class, EvaluateTemplate::getId, EvaluateManage::getEvaluateTemplateId)
|
|
|
+ .leftJoin(DictionaryDetail.class, DictionaryDetail::getCode, EvaluateTemplate::getEvaluateType)
|
|
|
+ .eq((dto.getBaseSemesterId() != null && dto.getBaseSemesterId() > 0), EvaluateManage::getBaseSemesterId, dto.getBaseSemesterId())
|
|
|
+ .eq((dto.getOrgId() != null && dto.getOrgId() > 0), EvaluateManage::getOrgId, dto.getOrgId())
|
|
|
+ .eq((dto.getEvaluateType() != null && dto.getEvaluateType().equals("")), EvaluateTemplate::getEvaluateType, dto.getEvaluateType())
|
|
|
+ .like((dto.getName() != null && dto.getName().equals("")), EvaluateManage::getName, dto.getName())
|
|
|
+ .gt((dto.getStartTime() != null), EvaluateManage::getStartTime, dto.getStartTime())
|
|
|
+ .lt((dto.getEndTime() != null), EvaluateManage::getEndTime, dto.getEndTime())
|
|
|
+ .orderByDesc(EvaluateResult::getId);
|
|
|
+
|
|
|
+ IPage<EvaluateResultIndexPageVo> page = evaluateManageMapper.selectJoinPage(ConventPage.getPage(dto), EvaluateResultIndexPageVo.class, evaluateManageMPJLambdaWrapper);
|
|
|
+ return page;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public IPage<EvaluateResultIndexPageVo> getDetailPage(EvaluateResultIndexPageDto dto) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+}
|