|
@@ -0,0 +1,123 @@
|
|
|
+package com.zanxiang.manage.service.Impl;
|
|
|
+
|
|
|
+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.core.toolkit.Wrappers;
|
|
|
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import com.zanxiang.common.exception.BaseException;
|
|
|
+import com.zanxiang.common.utils.StringUtils;
|
|
|
+import com.zanxiang.common.utils.bean.BeanUtils;
|
|
|
+import com.zanxiang.manage.domain.params.CpAddUpdateParam;
|
|
|
+import com.zanxiang.manage.domain.params.CpListParam;
|
|
|
+import com.zanxiang.manage.domain.vo.CpVO;
|
|
|
+import com.zanxiang.manage.service.CpService;
|
|
|
+import com.zanxiang.mybatis.entity.Cp;
|
|
|
+import com.zanxiang.mybatis.mapper.CpMapper;
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.apache.logging.log4j.util.Strings;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+import java.time.LocalDateTime;
|
|
|
+import java.util.Objects;
|
|
|
+
|
|
|
+
|
|
|
+ * @author : lingfeng
|
|
|
+ * @time : 2022-06-22
|
|
|
+ * @description : cp管理
|
|
|
+ */
|
|
|
+@Slf4j
|
|
|
+@Service
|
|
|
+public class CpServiceImpl extends ServiceImpl<CpMapper, Cp> implements CpService {
|
|
|
+
|
|
|
+
|
|
|
+ * 新增或者更新cp信息
|
|
|
+ *
|
|
|
+ * @param param : 新增或者更新的参数
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public boolean addOrUpdate(CpAddUpdateParam param) {
|
|
|
+ Long id = param.getId();
|
|
|
+
|
|
|
+ if (id != null) {
|
|
|
+ Cp cp = super.getById(id);
|
|
|
+ if (cp == null) {
|
|
|
+ throw new BaseException("参数错误, 更新的cp信息不存在");
|
|
|
+ }
|
|
|
+ cp.setCpName(param.getCpName());
|
|
|
+ cp.setCompanyName(param.getCompanyName());
|
|
|
+ cp.setLinkMan(param.getLinkMan());
|
|
|
+ cp.setMobile(param.getMobile());
|
|
|
+ cp.setStatus(param.getStatus());
|
|
|
+ cp.setRemark(param.getRemark());
|
|
|
+ cp.setUpdateTime(LocalDateTime.now());
|
|
|
+ return super.updateById(cp);
|
|
|
+ }
|
|
|
+
|
|
|
+ int count = super.count(new LambdaQueryWrapper<Cp>()
|
|
|
+ .eq(Cp::getCpName, param.getCpName()));
|
|
|
+ if (count > 0) {
|
|
|
+ throw new BaseException("cp名称已经存在");
|
|
|
+ }
|
|
|
+
|
|
|
+ Cp cp = Cp.builder()
|
|
|
+ .cpName(param.getCpName())
|
|
|
+ .companyName(param.getCompanyName())
|
|
|
+ .linkMan(param.getLinkMan())
|
|
|
+ .mobile(param.getMobile())
|
|
|
+ .status(param.getStatus())
|
|
|
+ .remark(param.getRemark())
|
|
|
+ .createTime(LocalDateTime.now())
|
|
|
+ .updateTime(LocalDateTime.now())
|
|
|
+ .build();
|
|
|
+ return super.save(cp);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * 查询cp列表
|
|
|
+ *
|
|
|
+ * @param param : cp列表查询参数
|
|
|
+ * @return : 返回分页信息
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public IPage<CpVO> list(CpListParam param) {
|
|
|
+ LambdaQueryWrapper<Cp> queryWrapper = Wrappers.lambdaQuery();
|
|
|
+ if (Strings.isNotBlank(param.getCpName())) {
|
|
|
+ queryWrapper.like(Cp::getCpName, param.getCpName());
|
|
|
+ }
|
|
|
+ queryWrapper.orderByDesc(Cp::getCreateTime);
|
|
|
+ return page(param.toPage(), new QueryWrapper<Cp>().lambda()
|
|
|
+ .like(StringUtils.isNotBlank(param.getCpName()), Cp::getCpName, param.getCpName())
|
|
|
+ .orderByDesc(Cp::getCreateTime)
|
|
|
+ ).convert(this::toVo);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * cp对象转换
|
|
|
+ *
|
|
|
+ * @param cp : cp信息
|
|
|
+ * @return : 返回cpVo
|
|
|
+ */
|
|
|
+ private CpVO toVo(Cp cp) {
|
|
|
+ if (Objects.isNull(cp)) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ return BeanUtils.copy(cp, CpVO.class);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ * 删除cp信息
|
|
|
+ *
|
|
|
+ * @param id : 要删除的cp信息id
|
|
|
+ * @return : 返回删除结果
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public boolean deleteById(Long id) {
|
|
|
+ return super.update(new LambdaUpdateWrapper<Cp>()
|
|
|
+ .set(Cp::getIsDelete, Boolean.TRUE)
|
|
|
+ .set(Cp::getDeleteTime, LocalDateTime.now())
|
|
|
+ .eq(Cp::getId, id));
|
|
|
+ }
|
|
|
+
|
|
|
+}
|