郑永安
2023-06-19 2fcd97552d16718cc7997629fd637a73a5a4483f
src/main/java/com/gk/firework/Service/ServiceImpl/EnterpriseStandardizationServiceImpl.java
对比新文件
@@ -0,0 +1,209 @@
package com.gk.firework.Service.ServiceImpl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.gk.firework.Domain.Enterprise;
import com.gk.firework.Domain.EnterpriseResource;
import com.gk.firework.Domain.EnterpriseStandardization;
import com.gk.firework.Domain.Exception.BusinessException;
import com.gk.firework.Domain.UserInfo;
import com.gk.firework.Domain.Utils.*;
import com.gk.firework.Domain.Utils.Properties;
import com.gk.firework.Domain.Vo.EnterpriseStandardizationVo;
import com.gk.firework.Mapper.EnterpriseStandardizationMapper;
import com.gk.firework.Service.EnterpriseResourceService;
import com.gk.firework.Service.EnterpriseStandardizationService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import java.util.*;
@Service("enterpriseStandardizationService")
public class EnterpriseStandardizationServiceImpl extends ServiceImpl<EnterpriseStandardizationMapper, EnterpriseStandardization> implements EnterpriseStandardizationService {
    @Autowired
    private EnterpriseStandardizationMapper enterpriseStandardizationMapper;
    @Autowired
    private EnterpriseResourceService enterpriseResourceService;
    @Override
    public Page selectPage(Page<EnterpriseStandardization> page, Long id) {
        Map<String, Object> params = new HashMap<>();
        params.put("id", id);
        params.put("tabletype", Constants.STANDARDIZATION);
        List<EnterpriseStandardization> enterpriseStandardizations = enterpriseStandardizationMapper.selectPages(page, params);
        page.setRecords(enterpriseStandardizations);
        return page;
    }
    @Override
    @Transactional
    public void addEnterpriseStandardization(EnterpriseStandardizationVo enterpriseStandardizationVo, UserInfo user) throws Exception {
        //新增标准化
        EnterpriseStandardization es = new EnterpriseStandardization();
        es.setLevel(enterpriseStandardizationVo.getLevel());
        es.setLicensenumber(enterpriseStandardizationVo.getLicensenumber());
        es.setReviewunit(enterpriseStandardizationVo.getReviewunit());
        es.setLicensingunit(enterpriseStandardizationVo.getLicensingunit());
        es.setScore(enterpriseStandardizationVo.getScore());
        es.setValidstarttime(enterpriseStandardizationVo.getValidstarttime());
        es.setValidendtime(enterpriseStandardizationVo.getValidendtime());
        es.setCreatetime(new Date());
        es.setCreateby(user.getId());
        es.setCreatebyname(user.getUsername());
        es.setEnterpriseid(enterpriseStandardizationVo.getEnterpriseid());
        es.setValidflag(true);
        this.save(es);
        //新增图片信息
        List<EnterpriseResource> ers = null;
        if (enterpriseStandardizationVo.getFile() != null && enterpriseStandardizationVo.getFile().length > 0) {
            ers = new ArrayList<>();
            Date now = new Date();
            for (MultipartFile file : enterpriseStandardizationVo.getFile()) {
                //上传文件 获取新的文件名
                String name = UploadUtil.uploadFile(file, Properties.enterprisePath);
                EnterpriseResource er = new EnterpriseResource();
                er.setBelongid(es.getId());
                er.setTabletype(Constants.STANDARDIZATION);
                er.setCreateby(user.getId());
                er.setCreatebyname(user.getUsername());
                er.setCreatetime(now);
                er.setFilename(file.getOriginalFilename());
                er.setUrl(Properties.enterprise + name);
                er.setValidflag(true);
                ers.add(er);
            }
             enterpriseResourceService.saveBatch(ers);
        }
    }
    @Override
    @Transactional
    public void modEnterpriseStandardization(EnterpriseStandardizationVo enterpriseStandardizationVo, UserInfo user) throws Exception {
        //修改标准化
        EnterpriseStandardization es = new EnterpriseStandardization();
        es.setId(enterpriseStandardizationVo.getId());
        es.setLevel(enterpriseStandardizationVo.getLevel());
        es.setLicensenumber(enterpriseStandardizationVo.getLicensenumber());
        es.setReviewunit(enterpriseStandardizationVo.getReviewunit());
        es.setLicensingunit(enterpriseStandardizationVo.getLicensingunit());
        es.setScore(enterpriseStandardizationVo.getScore());
        es.setValidstarttime(enterpriseStandardizationVo.getValidstarttime());
        es.setValidendtime(enterpriseStandardizationVo.getValidendtime());
        es.setUpdatetime(new Date());
        es.setUpdateby(user.getId());
        es.setUpdatebyname(user.getUsername());
        es.setEnterpriseid(enterpriseStandardizationVo.getEnterpriseid());
        this.updateById(es);
        //修改图片
        List<Long> imgIds = enterpriseStandardizationVo.getImgids();
        //1.删除图片
        List<EnterpriseResource> dels = null;
        if (imgIds !=null && imgIds.size() > 0) {
            dels = new ArrayList<>();
            Date now = new Date();
            for (Long id:imgIds) {
                EnterpriseResource er = new EnterpriseResource();
                er.setId(id);
                er.setValidflag(false);
                er.setUpdateby(user.getId());
                er.setUpdatebyname(user.getUsername());
                er.setUpdatetime(now);
                dels.add(er);
            }
            //删除
            enterpriseResourceService.updateBatchById(dels);
        }
        //2.新增
        List<EnterpriseResource> adds = null;
        if (enterpriseStandardizationVo.getFile() !=null && enterpriseStandardizationVo.getFile().length > 0) {
            adds = new ArrayList<>();
            Date now = new Date();
            for (MultipartFile file : enterpriseStandardizationVo.getFile()) {
                String name = UploadUtil.uploadFile(file, Properties.enterprisePath);
                EnterpriseResource er = new EnterpriseResource();
                er.setTabletype(Constants.STANDARDIZATION);
                er.setFilename(file.getOriginalFilename());
                er.setUrl(Properties.enterprise + name);
                er.setCreatetime(now);
                er.setCreateby(user.getId());
                er.setCreatebyname(user.getUsername());
                er.setBelongid(enterpriseStandardizationVo.getId());
                er.setValidflag(true);
                adds.add(er);
            }
            //执行
            enterpriseResourceService.saveBatch(adds);
        }
    }
    @Override
    public void delEnterpriseStandardization(Long id, UserInfo user) {
        EnterpriseStandardization es = new EnterpriseStandardization();
        es.setId(id);
        es.setUpdatebyname(user.getUsername());
        es.setUpdateby(user.getId());
        es.setUpdatetime(new Date());
        es.setValidflag(false);
        this.updateById(es);
    }
    @Override
    public EnterpriseStandardization getOne(Long id) {
        Map<String, Object> params = new HashMap<>();
        params.put("id", id);
        params.put("tabletype", Constants.STANDARDIZATION);
        List<EnterpriseStandardization> enterpriseStandardizations = enterpriseStandardizationMapper.selectStandardization(params);
        if (enterpriseStandardizations.size() > 0) {
            return enterpriseStandardizations.get(0);
        }
        return null;
    }
    /**
    * @Description: 新增|修改的校验
    * @date 2021/4/6 14:54
    */
    @Override
    public void checkEnterpriseStandardization(EnterpriseStandardizationVo enterpriseStandardizationVo) {
        if (StringUtils.isBlank(enterpriseStandardizationVo.getLevel())) {
            throw new BusinessException("标准化级别不能为空");
        }
        if (StringUtils.isBlank(enterpriseStandardizationVo.getLicensenumber())) {
            throw new BusinessException("证书编号不能为空");
        }
        if (StringUtils.isBlank(enterpriseStandardizationVo.getReviewunit())) {
            throw new BusinessException("评审单位不能为空");
        }
        if (StringUtils.isBlank(enterpriseStandardizationVo.getLicensingunit())) {
            throw new BusinessException("发牌单位不能为空");
        }
        if (enterpriseStandardizationVo.getScore() == null) {
            throw new BusinessException("考核得分不能为空");
        }
        if (enterpriseStandardizationVo.getValidstarttime() == null
                || enterpriseStandardizationVo.getValidendtime() == null) {
            throw new BusinessException("有效期不能为空");
        }
    }
}