From 770b213864822afd95f59b6f69e8ee0e28eb3069 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期四, 20 三月 2025 09:20:55 +0800
Subject: [PATCH] Merge branch 'dev'
---
business/src/main/java/com/ycl/service/impl/CodingRulerServiceImpl.java | 153 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 153 insertions(+), 0 deletions(-)
diff --git a/business/src/main/java/com/ycl/service/impl/CodingRulerServiceImpl.java b/business/src/main/java/com/ycl/service/impl/CodingRulerServiceImpl.java
new file mode 100644
index 0000000..1b72990
--- /dev/null
+++ b/business/src/main/java/com/ycl/service/impl/CodingRulerServiceImpl.java
@@ -0,0 +1,153 @@
+package com.ycl.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
+import com.ycl.common.enums.business.CodingRulerCodeTypeEnum;
+import com.ycl.common.enums.business.CodingRulerStatusEnum;
+import com.ycl.domain.entity.CodingRuler;
+import com.ycl.mapper.CodingRulerMapper;
+import com.ycl.service.CodingRulerService;
+import com.ycl.common.base.Result;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ycl.domain.form.CodingRulerForm;
+import com.ycl.domain.vo.CodingRulerVO;
+import com.ycl.domain.query.CodingRulerQuery;
+import org.springframework.stereotype.Service;
+import lombok.RequiredArgsConstructor;
+import com.ycl.framework.utils.PageUtil;
+import org.springframework.beans.BeanUtils;
+import org.springframework.util.Assert;
+
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * 鏈嶅姟瀹炵幇绫�
+ *
+ * @author zxl
+ * @since 2025-03-18
+ */
+@Service
+@RequiredArgsConstructor
+public class CodingRulerServiceImpl extends ServiceImpl<CodingRulerMapper, CodingRuler> implements CodingRulerService {
+
+ private final CodingRulerMapper codingRulerMapper;
+
+ /**
+ * 娣诲姞
+ * @param form
+ * @return
+ */
+ @Override
+ public Result add(CodingRulerForm form) {
+ CodingRuler entity = CodingRulerForm.getEntityByForm(form, null);
+ //璁剧疆榛樿鏈惎鍔�
+ entity.setStatus(0);
+ baseMapper.insert(entity);
+ return Result.ok("娣诲姞鎴愬姛");
+ }
+
+ /**
+ * 淇敼
+ * @param form
+ * @return
+ */
+ @Override
+ public Result update(CodingRulerForm form) {
+ CodingRuler entity = baseMapper.selectById(form.getId());
+ // 涓虹┖鎶汭llegalArgumentException锛屽仛鍏ㄥ眬寮傚父澶勭悊
+ Assert.notNull(entity, "璁板綍涓嶅瓨鍦�");
+ BeanUtils.copyProperties(form, entity);
+ baseMapper.updateById(entity);
+ return Result.ok("淇敼鎴愬姛");
+ }
+
+ /**
+ * 鎵归噺鍒犻櫎
+ * @param ids
+ * @return
+ */
+ @Override
+ public Result remove(List<String> ids) {
+ baseMapper.deleteBatchIds(ids);
+ return Result.ok("鍒犻櫎鎴愬姛");
+ }
+
+ /**
+ * id鍒犻櫎
+ * @param id
+ * @return
+ */
+ @Override
+ public Result removeById(String id) {
+ baseMapper.deleteById(id);
+ return Result.ok("鍒犻櫎鎴愬姛");
+ }
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ * @param query
+ * @return
+ */
+ @Override
+ public Result page(CodingRulerQuery query) {
+ IPage<CodingRulerVO> page = PageUtil.getPage(query, CodingRulerVO.class);
+
+ baseMapper.getPage(page, query);
+ return Result.ok().data(page.getRecords()).total(page.getTotal());
+ }
+
+ /**
+ * 鏍规嵁id鏌ユ壘
+ * @param id
+ * @return
+ */
+ @Override
+ public Result detail(Integer id) {
+ CodingRulerVO vo = baseMapper.getById(id);
+ Assert.notNull(vo, "璁板綍涓嶅瓨鍦�");
+ return Result.ok().data(vo);
+ }
+
+ /**
+ * 鍒楄〃
+ * @return
+ */
+ @Override
+ public Result all() {
+ List<CodingRuler> entities = baseMapper.selectList(null);
+ List<CodingRulerVO> vos = entities.stream()
+ .map(entity -> CodingRulerVO.getVoByEntity(entity, null))
+ .collect(Collectors.toList());
+ return Result.ok().data(vos);
+ }
+
+ @Override
+ public Result changeCodingRulerStatus(Integer id) {
+ //绾㈢爜 缁跨爜 鍚屾椂鍙兘鍚姩涓�涓�
+ CodingRuler codingRuler = baseMapper.selectById(id);
+ String msg = "";
+ //鍒ゆ柇浼犲叆 id 褰撳墠鐘舵��
+ if (CodingRulerStatusEnum.off.getValue().equals(codingRuler.getStatus())){
+ // 褰撳墠鐘舵�佹湭鍚姩 -- 淇敼涓哄惎鍔ㄧ姸鎬�
+ //鏌ヨ锛堢孩鐮�'缁跨爜锛夎鍒欐槸鍚﹀惎鍔�
+ CodingRuler statusStartCodingRuler = new LambdaQueryChainWrapper<CodingRuler>(baseMapper)
+ .eq(CodingRuler::getStatus, CodingRulerStatusEnum.on.getValue())
+ .eq(CodingRuler::getProjectCodeType, codingRuler.getProjectCodeType())
+ .eq(CodingRuler::getDeleted,0)
+ .one();
+ if (statusStartCodingRuler != null) {
+ throw new RuntimeException("宸插惎鍔ㄨ绉嶈祴鐮佽鍒�");
+ }
+
+ codingRuler.setStatus(CodingRulerStatusEnum.on.getValue());
+ msg = CodingRulerStatusEnum.on.getDesc();
+ }else {
+ // 褰撳墠鐘舵�佸惎鍔� -- 淇敼涓烘湭鍚姩鐘舵��
+ codingRuler.setStatus(CodingRulerStatusEnum.off.getValue());
+ msg = CodingRulerStatusEnum.off.getDesc();
+ }
+ baseMapper.updateById(codingRuler);
+ return Result.ok(msg);
+ }
+}
--
Gitblit v1.8.0