123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172 |
- package com.ozs.pm.service.impl;
- import java.util.*;
- import com.ozs.common.enums.ProjectTypes;
- import com.ozs.common.utils.DateUtils;
- import com.ozs.common.utils.bean.BeanUtils;
- import com.ozs.pm.doman.*;
- import com.ozs.pm.doman.vo.requestVo.PmRequestVo;
- import com.ozs.pm.doman.vo.responseVo.*;
- import com.ozs.pm.mapper.PmDemandMapper;
- import com.ozs.pm.service.*;
- import com.ozs.system.domain.vo.responseVo.SysDeptResponseVo;
- import com.ozs.system.service.ISysDeptService;
- import com.ozs.system.service.ISysDictTypeService;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- /**
- * 采购需求Service业务层处理
- *
- * @author ruoyi
- * @date 2023-01-16
- */
- @Service
- public class PmDemandServiceImpl implements IPmDemandService
- {
- @Autowired
- private PmDemandMapper pmDemandMapper;
- @Autowired
- private IPmDemandServeService iPmDemandServeService;
- @Autowired
- private IPmDemandMaterialsService iPmDemandMaterialsService;
- @Autowired
- private IPmDemandEquipService iPmDemandEquipService;
- @Autowired
- private IPmDemandEngineeringService iPmDemandEngineeringService;
- @Autowired
- private ISysDeptService deptService;
- @Autowired
- private ISysDictTypeService dictTypeService;
- /**
- * 查询采购需求
- *
- * @param demandId 采购需求主键
- * @return 采购需求
- */
- @Override
- public PmDemandResponseVo selectPmDemandByDemandId(Long demandId)
- {
- PmDemand pmDemand = pmDemandMapper.selectPmDemandByDemandId(demandId);
- if(pmDemand != null){
- PmDemandResponseVo vo = new PmDemandResponseVo();
- BeanUtils.copyProperties(pmDemand, vo);
- SysDeptResponseVo sysDeptResponseVo = (SysDeptResponseVo) deptService.selectDeptById(vo.getPurchaseDeptId()).get("sysDept");
- if(sysDeptResponseVo != null){
- vo.setPurchaseDeptName(sysDeptResponseVo.getDeptName());
- }
- //项目类型
- for (ProjectTypes value : ProjectTypes.values()) {
- if (vo.getProjectType() != null && vo.getProjectType().equals(value.getCode())) {
- vo.setProjectTypeName(value.getInfo());
- break;
- }
- }
- if(ProjectTypes.EQUIPMENTTYPE.getCode().equals(vo.getProjectType())){//装备类
- PmDemandEquip obj = new PmDemandEquip();
- obj.setDemandId(demandId);
- List<PmDemandEquip> list = iPmDemandEquipService.selectPmDemandEquipList(obj);
- if(list !=null && list.size() > 0){
- PmDemandEquipResponseVo responseVo = new PmDemandEquipResponseVo();
- BeanUtils.copyProperties(list.get(0),responseVo);
- vo.setPmDemandEquipResponseVo(responseVo);
- }
- } else if(ProjectTypes.MATERIALTYPE.getCode().equals(vo.getProjectType())){ //物资类
- PmDemandMaterials obj = new PmDemandMaterials();
- obj.setDemandId(demandId);
- List<PmDemandMaterials> list = iPmDemandMaterialsService.selectPmDemandMaterialsList(obj);
- if(list !=null && list.size() > 0){
- PmDemandMaterialsResponseVo responseVo = new PmDemandMaterialsResponseVo();
- BeanUtils.copyProperties(list.get(0),responseVo);
- vo.setPmDemandMaterialsResponseVo(responseVo);
- }
- } else if(ProjectTypes.SERVICESTYPE.getCode().equals(vo.getProjectType())){//服务类
- PmDemandServe obj = new PmDemandServe();
- obj.setDemandId(demandId);
- List<PmDemandServe> list = iPmDemandServeService.selectPmDemandServeList(obj);
- if(list !=null && list.size() > 0){
- PmDemandServeResponseVo responseVo = new PmDemandServeResponseVo();
- BeanUtils.copyProperties(list.get(0),responseVo);
- vo.setPmDemandServeResponseVo(responseVo);
- }
- } else if(ProjectTypes.PLANTOEXAMINETYPE.getCode().equals(vo.getProjectType())){//工程类
- PmDemandEngineering obj = new PmDemandEngineering();
- obj.setDemandId(demandId);
- List<PmDemandEngineering> list = iPmDemandEngineeringService.selectPmDemandEngineeringList(obj);
- if(list !=null && list.size() > 0){
- PmDemandEngineeringResponseVo responseVo = new PmDemandEngineeringResponseVo();
- BeanUtils.copyProperties(list.get(0),responseVo);
- vo.setPmDemandEngineeringResponseVo(responseVo);
- }
- }
- return vo;
- } else {
- return null;
- }
- }
- /**
- * 查询采购需求列表
- *
- * @param requestVo
- * @return 采购需求
- */
- @Override
- public List<PmDemandResponseVo> selectPmDemandList(PmRequestVo requestVo)
- {
- PmDemand pmDemand = new PmDemand();
- pmDemand.setProjectName(requestVo.getProjectName());
- pmDemand.setPurchaseServices(requestVo.getPurchaseServiceStation());
- pmDemand.setProjectStatus(requestVo.getProjectStatus());
- Map<String,Object> params = new HashMap<>();
- params.put("beginDate",requestVo.getBeginDate());
- params.put("endDate",requestVo.getEndDate());
- pmDemand.setParams(params);
- List<PmDemand> pmDemandList = pmDemandMapper.selectPmDemandList(pmDemand);
- List<PmDemandResponseVo> pmDemandResponseVoList = new ArrayList<>();
- if(pmDemandList != null && !pmDemandList.isEmpty()){
- for(PmDemand pmDemand1 : pmDemandList){
- PmDemandResponseVo vo = new PmDemandResponseVo();
- BeanUtils.copyBeanProp(pmDemand1,vo);
- pmDemandResponseVoList.add(vo);
- }
- }
- return pmDemandResponseVoList;
- }
- /**
- * 新增采购需求
- *
- * @param pmDemand 采购需求
- * @return 结果
- */
- @Override
- public int insertPmDemand(PmDemand pmDemand)
- {
- pmDemand.setCreateTime(DateUtils.getNowDate());
- return pmDemandMapper.insertPmDemand(pmDemand);
- }
- /**
- * 修改采购需求
- *
- * @param pmDemand 采购需求
- * @return 结果
- */
- @Override
- public int updatePmDemand(PmDemand pmDemand)
- {
- pmDemand.setUpdateTime(DateUtils.getNowDate());
- return pmDemandMapper.updatePmDemand(pmDemand);
- }
- }
|