|
@@ -1,19 +1,26 @@
|
|
|
package com.migao.service.impl;
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.migao.config.authority.LoginUtils;
|
|
|
-import com.migao.config.response.ResponseBean;
|
|
|
-import com.migao.config.response.ResponseBuilder;
|
|
|
+import com.migao.config.response.*;
|
|
|
import com.migao.entity.po.DemandAttachment;
|
|
|
import com.migao.entity.po.DemandLibrary;
|
|
|
import com.migao.entity.po.User;
|
|
|
import com.migao.entity.vo.req.DemandLibraryInsertReq;
|
|
|
+import com.migao.entity.vo.req.DemandLibraryQueryReq;
|
|
|
import com.migao.entity.vo.req.DemandLibraryUpdateReq;
|
|
|
+import com.migao.entity.vo.res.DemandLibraryPageQueryRes;
|
|
|
import com.migao.mapper.DemandAttachmentMapper;
|
|
|
import com.migao.mapper.DemandLibraryMapper;
|
|
|
+import com.migao.mapper.DictionaryMapper;
|
|
|
+import com.migao.mapper.ProjectMapper;
|
|
|
import com.migao.service.DemandLibraryService;
|
|
|
import com.migao.util.EntityUtils;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
@@ -31,6 +38,10 @@ public class DemandLibraryServiceImpl extends ServiceImpl<DemandLibraryMapper, D
|
|
|
DemandLibraryMapper demandLibraryMap;
|
|
|
@Resource
|
|
|
DemandAttachmentMapper demandAttachmentMapper;
|
|
|
+ @Resource
|
|
|
+ DictionaryMapper dictionaryMapper;
|
|
|
+ @Resource
|
|
|
+ ProjectMapper projectMapper;
|
|
|
|
|
|
@Override
|
|
|
public ResponseBean<?> insert(DemandLibraryInsertReq demandLibrary) {
|
|
@@ -90,5 +101,107 @@ public class DemandLibraryServiceImpl extends ServiceImpl<DemandLibraryMapper, D
|
|
|
return ResponseBuilder.ok();
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public ResponseBean<PageBeanOne<DemandLibraryPageQueryRes>> pageQuery(BasePageRequest basePageRequest) {
|
|
|
+ Integer page = basePageRequest.getPage();
|
|
|
+ page = page == null ? 1 : page <= 0 ? 1 : page;
|
|
|
+ Integer size = basePageRequest.getSize();
|
|
|
+ size = size == null ? 10 : size <= 0 ? 10 : size;
|
|
|
+
|
|
|
+ LambdaQueryWrapper<DemandLibrary> dynamicQuery = Wrappers.<DemandLibrary>lambdaQuery();
|
|
|
+ dynamicQuery.orderByDesc(DemandLibrary::getSubmitTime);
|
|
|
+
|
|
|
+ Page<DemandLibrary> all = demandLibraryMap.selectPage(new Page<>(page, size),dynamicQuery);
|
|
|
+
|
|
|
+ return ResponseBuilderOne.ok(
|
|
|
+ all,
|
|
|
+ element -> {
|
|
|
+ DemandLibraryPageQueryRes dicPageQueryRes = DemandLibraryPageQueryRes
|
|
|
+ .builder()
|
|
|
+ .id(element.getId())
|
|
|
+ .demandNumber(element.getDemandNumber())
|
|
|
+ .demandName(element.getDemandName())
|
|
|
+ .demandContent(element.getDemandContent())
|
|
|
+ .demandClass(dictionaryMapper.selectById(element.getDemandClassId()).getValue())
|
|
|
+ .unitName(element.getUnitName())
|
|
|
+ .demandStatus(element.getDemandStatus() == -1 ? "废除"
|
|
|
+ : element.getDemandStatus() == 0 ? "立项" : "认领")
|
|
|
+ .demandSchedule(element.getDemandSchedule())
|
|
|
+ .associatedProjectId(projectMapper.selectById(element.getAssociatedProjectId()).getName())
|
|
|
+ .submitter(element.getSubmitter())
|
|
|
+ .submitTime(element.getSubmitTime())
|
|
|
+ .deleted(element.getDeleted())
|
|
|
+ .build();
|
|
|
+ return dicPageQueryRes;
|
|
|
+ }
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ResponseBean<PageBeanOne<DemandLibraryPageQueryRes>> pageQueryById(BasePageRequest basePageRequest) {
|
|
|
+ //获取当前登录用户的信息
|
|
|
+ User user = LoginUtils.getUser();
|
|
|
+
|
|
|
+ Integer page = basePageRequest.getPage();
|
|
|
+ page = page == null ? 1 : page <= 0 ? 1 : page;
|
|
|
+ Integer size = basePageRequest.getSize();
|
|
|
+ size = size == null ? 10 : size <= 0 ? 10 : size;
|
|
|
+
|
|
|
+ LambdaQueryWrapper<DemandLibrary> dynamicQuery = Wrappers.<DemandLibrary>lambdaQuery();
|
|
|
+ if(user.getId() != null) {
|
|
|
+ dynamicQuery.eq(DemandLibrary::getCreateUserId, user.getId());
|
|
|
+ }
|
|
|
+ dynamicQuery.orderByDesc(DemandLibrary::getSubmitTime);
|
|
|
+
|
|
|
+ Page<DemandLibrary> all = demandLibraryMap.selectPage(new Page<>(page, size),dynamicQuery);
|
|
|
+ return ResponseBuilderOne.ok(
|
|
|
+ all,
|
|
|
+ element -> {
|
|
|
+ DemandLibraryPageQueryRes dicPageQueryRes = DemandLibraryPageQueryRes
|
|
|
+ .builder()
|
|
|
+ .id(element.getId())
|
|
|
+ .demandNumber(element.getDemandNumber())
|
|
|
+ .demandName(element.getDemandName())
|
|
|
+ .demandContent(element.getDemandContent())
|
|
|
+ .demandClass(dictionaryMapper.selectById(element.getDemandClassId()).getValue())
|
|
|
+ .unitName(element.getUnitName())
|
|
|
+ .demandStatus(element.getDemandStatus() == -1 ? "废除"
|
|
|
+ : element.getDemandStatus() == 0 ? "立项" : "认领")
|
|
|
+ .demandSchedule(element.getDemandSchedule())
|
|
|
+ .associatedProjectId(projectMapper.selectById(element.getAssociatedProjectId()).getName())
|
|
|
+ .submitter(element.getSubmitter())
|
|
|
+ .submitTime(element.getSubmitTime())
|
|
|
+ .deleted(element.getDeleted())
|
|
|
+ .build();
|
|
|
+ return dicPageQueryRes;
|
|
|
+ }
|
|
|
+ );
|
|
|
+ }
|
|
|
+
|
|
|
+ //暂时
|
|
|
+ @Override
|
|
|
+ public ResponseBean<PageBeanOne<DemandLibraryPageQueryRes>> pageQuery(DemandLibraryQueryReq demandLibraryQuery) {
|
|
|
+ Integer page = demandLibraryQuery.getPage();
|
|
|
+ page = page == null ? 1 : page <= 0 ? 1 : page;
|
|
|
+ Integer size = demandLibraryQuery.getSize();
|
|
|
+ size = size == null ? 10 : size <= 0 ? 10 : size;
|
|
|
+
|
|
|
+ LambdaQueryWrapper<DemandLibrary> dynamicQuery = Wrappers.<DemandLibrary>lambdaQuery();
|
|
|
+ if(StringUtils.isNotBlank(demandLibraryQuery.getKey())){
|
|
|
+ //需求编号
|
|
|
+ dynamicQuery.like(DemandLibrary::getDemandNumber,demandLibraryQuery.getKey());
|
|
|
+ //需求名称
|
|
|
+ LambdaQueryWrapper<DemandLibrary> or1 = dynamicQuery.or();
|
|
|
+ or1.like(DemandLibrary::getDemandName,demandLibraryQuery.getKey());
|
|
|
+ //需求内容
|
|
|
+ LambdaQueryWrapper<DemandLibrary> or2 = or1.or();
|
|
|
+ or2.like(DemandLibrary::getDemandContent,demandLibraryQuery.getKey());
|
|
|
+ //
|
|
|
+ }
|
|
|
+
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
|
|
|
}
|