From 8dcb0edcc2ceaa244501e7ed0c4f363ab4f3a428 Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期五, 03 四月 2026 15:29:04 +0800
Subject: [PATCH] Merge branch '2.0.1' of http://139.186.142.91:10010/r/productDev/funingyunwei into 2.0.1
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwGatewayServiceImpl.java | 142 +++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 142 insertions(+), 0 deletions(-)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwGatewayServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwGatewayServiceImpl.java
new file mode 100644
index 0000000..d9b5653
--- /dev/null
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwGatewayServiceImpl.java
@@ -0,0 +1,142 @@
+package com.doumee.service.business.impl;
+
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
+import com.doumee.core.model.LoginUserInfo;
+import com.doumee.core.model.PageData;
+import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Constants;
+import com.doumee.core.utils.DateUtil;
+import com.doumee.core.utils.Utils;
+import com.doumee.dao.business.YwGatewayMapper;
+import com.doumee.dao.business.model.YwGateway;
+import com.doumee.service.business.YwGatewayService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.github.yulichang.wrapper.MPJLambdaWrapper;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Objects;
+
+/**
+ * 缃戝叧绠$悊Service瀹炵幇
+ * @author renkang
+ * @date 2026/04/02
+ */
+@Service
+public class YwGatewayServiceImpl implements YwGatewayService {
+
+ @Autowired
+ private YwGatewayMapper ywGatewayMapper;
+
+ @Override
+ public Integer create(YwGateway ywGateway) {
+ if (Objects.isNull(ywGateway)
+ || StringUtils.isBlank(ywGateway.getName())
+ || StringUtils.isBlank(ywGateway.getGatewayCode())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ LoginUserInfo loginUserInfo = ywGateway.getLoginUserInfo();
+ // 鏍¢獙缃戝叧璁惧鍙峰敮涓�
+ if (ywGatewayMapper.selectCount(new QueryWrapper<YwGateway>().lambda()
+ .eq(YwGateway::getIsdeleted, Constants.ZERO)
+ .eq(YwGateway::getGatewayCode, ywGateway.getGatewayCode())) > Constants.ZERO) {
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "缃戝叧璁惧鍙烽噸澶�!");
+ }
+ ywGateway.setCreateDate(new Date());
+ ywGateway.setCreator(loginUserInfo.getId());
+ ywGateway.setEditDate(new Date());
+ ywGateway.setEditor(loginUserInfo.getId());
+ ywGateway.setIsdeleted(Constants.ZERO);
+ ywGatewayMapper.insert(ywGateway);
+ return ywGateway.getId();
+ }
+
+ @Override
+ public void deleteById(Integer id, LoginUserInfo user) {
+ ywGatewayMapper.update(new UpdateWrapper<YwGateway>()
+ .lambda()
+ .set(YwGateway::getIsdeleted, Constants.ONE)
+ .set(YwGateway::getEditDate, DateUtil.getCurrDateTime())
+ .set(YwGateway::getEditor, user.getId())
+ .eq(YwGateway::getId, id)
+ );
+ }
+
+ @Override
+ public void deleteByIdInBatch(List<Integer> ids, LoginUserInfo user) {
+ if (CollectionUtils.isEmpty(ids)) {
+ return;
+ }
+ for (Integer id : ids) {
+ this.deleteById(id, user);
+ }
+ }
+
+ @Override
+ public void updateById(YwGateway ywGateway) {
+ if (Objects.isNull(ywGateway)
+ || Objects.isNull(ywGateway.getId())
+ || StringUtils.isBlank(ywGateway.getName())
+ || StringUtils.isBlank(ywGateway.getGatewayCode())) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST);
+ }
+ LoginUserInfo loginUserInfo = ywGateway.getLoginUserInfo();
+ // 鏍¢獙缃戝叧璁惧鍙峰敮涓�锛堟帓闄よ嚜韬級
+ if (ywGatewayMapper.selectCount(new QueryWrapper<YwGateway>().lambda()
+ .eq(YwGateway::getIsdeleted, Constants.ZERO)
+ .eq(YwGateway::getGatewayCode, ywGateway.getGatewayCode())
+ .ne(YwGateway::getId, ywGateway.getId())) > Constants.ZERO) {
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "缃戝叧璁惧鍙烽噸澶�!");
+ }
+ ywGateway.setEditDate(new Date());
+ ywGateway.setEditor(loginUserInfo.getId());
+ ywGatewayMapper.updateById(ywGateway);
+ }
+
+ @Override
+ public void updateStatusById(YwGateway ywGateway) {
+ YwGateway model = new YwGateway();
+ model.setId(ywGateway.getId());
+ model.setStatus(ywGateway.getStatus());
+ ywGatewayMapper.updateById(model);
+ }
+
+ @Override
+ public YwGateway findById(Integer id) {
+ return ywGatewayMapper.selectJoinOne(YwGateway.class,
+ new MPJLambdaWrapper<YwGateway>()
+ .selectAll(YwGateway.class)
+ .selectAs(com.doumee.dao.business.model.YwProject::getName, YwGateway::getProjectName)
+ .leftJoin(com.doumee.dao.business.model.YwProject.class, com.doumee.dao.business.model.YwProject::getId, YwGateway::getProjectId)
+ .eq(YwGateway::getId, id)
+ .last(" limit 1 ")
+ );
+ }
+
+ @Override
+ public PageData<YwGateway> findPage(PageWrap<YwGateway> pageWrap) {
+ IPage<YwGateway> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
+ MPJLambdaWrapper<YwGateway> queryWrapper = new MPJLambdaWrapper<>();
+ Utils.MP.blankToNull(pageWrap.getModel());
+ YwGateway model = pageWrap.getModel();
+ queryWrapper.selectAll(YwGateway.class)
+ .selectAs(com.doumee.dao.business.model.YwProject::getName, YwGateway::getProjectName)
+ .leftJoin(com.doumee.dao.business.model.YwProject.class, com.doumee.dao.business.model.YwProject::getId, YwGateway::getProjectId)
+ .and(Objects.nonNull(model) && StringUtils.isNotBlank(model.getName()),
+ i -> i.like(YwGateway::getName, model.getName()).or().like(YwGateway::getGatewayCode, model.getName()))
+ .eq(Objects.nonNull(model) && Objects.nonNull(model.getStatus()), YwGateway::getStatus, model.getStatus())
+ .eq(Objects.nonNull(model) && Objects.nonNull(model.getProjectId()), YwGateway::getProjectId, model.getProjectId())
+ .eq(YwGateway::getIsdeleted, Constants.ZERO)
+ .orderByDesc(YwGateway::getCreateDate);
+ IPage<YwGateway> iPage = ywGatewayMapper.selectJoinPage(page, YwGateway.class, queryWrapper);
+ return PageData.from(iPage);
+ }
+}
--
Gitblit v1.9.3