From 34981c30a78e8bbd7791131059a9210f9928b62c Mon Sep 17 00:00:00 2001
From: 刘光辉 <347230014@qq.com>
Date: 星期四, 17 九月 2026 09:24:09 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into master

---
 jnpf-lims/jnpf-lims-biz/src/main/java/jnpf/service/impl/WorkLogServiceImpl.java |  104 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 104 insertions(+), 0 deletions(-)

diff --git a/jnpf-lims/jnpf-lims-biz/src/main/java/jnpf/service/impl/WorkLogServiceImpl.java b/jnpf-lims/jnpf-lims-biz/src/main/java/jnpf/service/impl/WorkLogServiceImpl.java
new file mode 100644
index 0000000..32f8582
--- /dev/null
+++ b/jnpf-lims/jnpf-lims-biz/src/main/java/jnpf/service/impl/WorkLogServiceImpl.java
@@ -0,0 +1,104 @@
+package jnpf.service.impl;
+
+import com.baomidou.dynamic.datasource.annotation.DSTransactional;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import jnpf.base.Pagination;
+import jnpf.base.service.SuperServiceImpl;
+import jnpf.entity.WorkLogEntity;
+import jnpf.entity.WorkLogShareEntity;
+import jnpf.mapper.WorkLogMapper;
+import jnpf.mapper.WorkLogShareMapper;
+import jnpf.service.WorkLogService;
+import jnpf.util.RandomUtil;
+import jnpf.util.UserProvider;
+import lombok.RequiredArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 宸ヤ綔鏃ュ織
+ *
+ * @author JNPF寮�鍙戝钩鍙扮粍
+ * @version V3.1.0
+ * @copyright 寮曡繄淇℃伅鎶�鏈湁闄愬叕鍙革紙https://www.jnpfsoft.com锛�
+ * @date 2019骞�9鏈�26鏃� 涓婂崍9:18
+ */
+@Service
+@RequiredArgsConstructor
+public class WorkLogServiceImpl extends SuperServiceImpl<WorkLogMapper, WorkLogEntity> implements WorkLogService {
+
+
+    private final WorkLogShareMapper workLogShareMapper;
+
+    @Override
+    public List<WorkLogEntity> getSendList(Pagination pageModel) {
+        return this.baseMapper.getSendList(pageModel);
+    }
+
+    @Override
+    public List<WorkLogEntity> getReceiveList(Pagination pageModel) {
+        return this.baseMapper.getReceiveList(pageModel);
+    }
+
+    @Override
+    public WorkLogEntity getInfo(String id) {
+        return this.baseMapper.getInfo(id);
+    }
+
+    @Override
+    @DSTransactional
+    public void create(WorkLogEntity entity) {
+        entity.setId(RandomUtil.uuId());
+        entity.setSortCode(RandomUtil.parses());
+        entity.setCreatorTime(new Date());
+        entity.setCreatorUserId(UserProvider.getUser().getUserId());
+        this.save(entity);
+        String[] toUserIds = entity.getToUserId().split(",");
+        for (String userIds : toUserIds) {
+            WorkLogShareEntity workLogShare = new WorkLogShareEntity();
+            workLogShare.setId(RandomUtil.uuId());
+            workLogShare.setShareTime(new Date());
+            workLogShare.setWorkLogId(entity.getId());
+            workLogShare.setShareUserId(userIds);
+            workLogShareMapper.insert(workLogShare);
+        }
+    }
+
+    @Override
+    @DSTransactional
+    public boolean update(String id, WorkLogEntity entity) {
+        boolean flag = false;
+        entity.setId(id);
+        entity.setLastModifyTime(new Date());
+        entity.setLastModifyUserId(UserProvider.getUser().getUserId());
+        flag = this.updateById(entity);
+        QueryWrapper<WorkLogShareEntity> queryWrapper = new QueryWrapper<>();
+        queryWrapper.lambda().eq(WorkLogShareEntity::getWorkLogId, entity.getId());
+        workLogShareMapper.delete(queryWrapper);
+        String[] toUserIds = entity.getToUserId().split(",");
+        for (String userIds : toUserIds) {
+            WorkLogShareEntity workLogShare = new WorkLogShareEntity();
+            workLogShare.setId(RandomUtil.uuId());
+            workLogShare.setShareTime(new Date());
+            workLogShare.setWorkLogId(entity.getId());
+            workLogShare.setShareUserId(userIds);
+            workLogShareMapper.insert(workLogShare);
+        }
+        return flag;
+    }
+
+    @Override
+    @DSTransactional
+    public void delete(WorkLogEntity entity) {
+        if (entity != null) {
+            this.removeById(entity.getId());
+            QueryWrapper<WorkLogShareEntity> queryWrapper = new QueryWrapper<>();
+            queryWrapper.lambda().eq(WorkLogShareEntity::getWorkLogId, entity.getId());
+            workLogShareMapper.delete(queryWrapper);
+        }
+    }
+
+}

--
Gitblit v1.8.0