From edf8ce5a1a36560cefd532baf0cc7a4d38a5e199 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Thu, 21 Dec 2023 16:56:25 +0800
Subject: [PATCH] 请假修改

---
 src/main/java/org/springblade/modules/leave/mapper/LeavesMapper.xml             |    3 +
 src/main/java/org/springblade/modules/leave/service/ILeaveService.java          |    3 +
 src/main/java/org/springblade/modules/leave/service/impl/LeavesServiceImpl.java |   34 ++++++++++++++++
 src/main/java/org/springblade/modules/leave/controller/LeavesController.java    |    3 +
 src/main/java/org/springblade/modules/leave/entity/Leave.java                   |   76 ++++++++++++++++++++++++++++---------
 5 files changed, 97 insertions(+), 22 deletions(-)

diff --git a/src/main/java/org/springblade/modules/leave/controller/LeavesController.java b/src/main/java/org/springblade/modules/leave/controller/LeavesController.java
index 0847f14..5d1eb9e 100644
--- a/src/main/java/org/springblade/modules/leave/controller/LeavesController.java
+++ b/src/main/java/org/springblade/modules/leave/controller/LeavesController.java
@@ -56,7 +56,8 @@
 	@ApiOperationSupport(order = 3)
 	@ApiOperation(value = "分页", notes = "传入leave")
 	public R<IPage<LeaveVO>> page(LeaveVO leaveVO, Query query) {
-		return R.data(leaveService.getPage(Condition.getPage(query), leaveVO));
+		IPage<LeaveVO> page = leaveService.getPage(Condition.getPage(query), leaveVO);
+		return R.data(page);
 	}
 
 	/**
diff --git a/src/main/java/org/springblade/modules/leave/entity/Leave.java b/src/main/java/org/springblade/modules/leave/entity/Leave.java
index 4a0c6d0..5642676 100644
--- a/src/main/java/org/springblade/modules/leave/entity/Leave.java
+++ b/src/main/java/org/springblade/modules/leave/entity/Leave.java
@@ -1,42 +1,80 @@
 package org.springblade.modules.leave.entity;
 
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.fasterxml.jackson.annotation.JsonFormat;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import org.springblade.core.mp.base.BaseEntity;
 import org.springframework.format.annotation.DateTimeFormat;
 
+import java.io.Serializable;
 import java.util.Date;
 
 @Data
 @TableName("sys_leave")
-public class Leave extends BaseEntity {
+public class Leave  implements Serializable {
+	private static final long serialVersionUID = 1L;
+	@TableId(
+		value = "id",
+		type = IdType.ASSIGN_ID
+	)
+	private String id;
+
+	@JsonSerialize(
+		using = ToStringSerializer.class
+	)
+	@ApiModelProperty("创建人")
+	private Long createUser;
+	@JsonSerialize(
+		using = ToStringSerializer.class
+	)
+	@ApiModelProperty("创建部门")
+	private Long createDept;
+	@DateTimeFormat(
+		pattern = "yyyy-MM-dd HH:mm:ss"
+	)
+	@JsonFormat(
+		pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8"
+	)
+	@ApiModelProperty("创建时间")
+	private Date createTime;
+	@JsonSerialize(
+		using = ToStringSerializer.class
+	)
+	@ApiModelProperty("更新人")
+	private Long updateUser;
+	@DateTimeFormat(
+		pattern = "yyyy-MM-dd HH:mm:ss"
+	)
+	@JsonFormat(
+		pattern = "yyyy-MM-dd HH:mm:ss" ,timezone = "GMT+8"
+	)
+	@ApiModelProperty("更新时间")
+	private Date updateTime;
+	@ApiModelProperty("业务状态")
+	private Integer status;
+	@TableLogic
+	@ApiModelProperty("是否已删除")
+	private Integer isDeleted;
 
 	//请假原因
 	private String reason;
 
-	@DateTimeFormat(
-		pattern = "yyyy-MM-dd HH:mm:ss"
-	)
-	@JsonFormat(
-		pattern = "yyyy-MM-dd HH:mm:ss"
-	)
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
 	private Date startTime;
 
-	@DateTimeFormat(
-		pattern = "yyyy-MM-dd HH:mm:ss"
-	)
-	@JsonFormat(
-		pattern = "yyyy-MM-dd HH:mm:ss"
-	)
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
 	private Date endTime;
 
-	@DateTimeFormat(
-		pattern = "yyyy-MM-dd HH:mm:ss"
-	)
-	@JsonFormat(
-		pattern = "yyyy-MM-dd HH:mm:ss"
-	)
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
 	private Date auditTime;
 
 	private String urls;
diff --git a/src/main/java/org/springblade/modules/leave/mapper/LeavesMapper.xml b/src/main/java/org/springblade/modules/leave/mapper/LeavesMapper.xml
index 3ce77b7..ec0bcd9 100644
--- a/src/main/java/org/springblade/modules/leave/mapper/LeavesMapper.xml
+++ b/src/main/java/org/springblade/modules/leave/mapper/LeavesMapper.xml
@@ -30,6 +30,9 @@
         <if test="vo.auditStatus != null and vo.auditStatus !=''">
             and l.audit_status = #{vo.auditStatus}
         </if>
+        <if test="vo.createUser != null and vo.createUser != ''">
+            AND l.create_user = #{vo.createUser}
+        </if>
         ORDER BY l.create_time DESC
     </select>
 </mapper>
diff --git a/src/main/java/org/springblade/modules/leave/service/ILeaveService.java b/src/main/java/org/springblade/modules/leave/service/ILeaveService.java
index 038f89b..aca388f 100644
--- a/src/main/java/org/springblade/modules/leave/service/ILeaveService.java
+++ b/src/main/java/org/springblade/modules/leave/service/ILeaveService.java
@@ -1,12 +1,13 @@
 package org.springblade.modules.leave.service;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
 import com.sun.org.apache.xpath.internal.operations.Bool;
 import org.springblade.core.mp.base.BaseService;
 import org.springblade.modules.leave.entity.Leave;
 import org.springblade.modules.leave.vo.LeaveVO;
 
-public interface ILeaveService extends BaseService<Leave> {
+public interface ILeaveService extends IService<Leave> {
 	IPage<LeaveVO> getPage(IPage<LeaveVO> page, LeaveVO leaveVO);
 
     Boolean audit(Leave leave);
diff --git a/src/main/java/org/springblade/modules/leave/service/impl/LeavesServiceImpl.java b/src/main/java/org/springblade/modules/leave/service/impl/LeavesServiceImpl.java
index cf02337..f9ee337 100644
--- a/src/main/java/org/springblade/modules/leave/service/impl/LeavesServiceImpl.java
+++ b/src/main/java/org/springblade/modules/leave/service/impl/LeavesServiceImpl.java
@@ -1,7 +1,12 @@
 package org.springblade.modules.leave.service.impl;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import me.zhyd.oauth.model.AuthUser;
 import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springblade.core.secure.BladeUser;
+import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.core.tool.utils.DateUtil;
 import org.springblade.modules.leave.entity.Leave;
 import org.springblade.modules.leave.mapper.LeavesMapper;
 import org.springblade.modules.leave.service.ILeaveService;
@@ -11,7 +16,7 @@
 import java.util.Date;
 
 @Service
-public class LeavesServiceImpl extends BaseServiceImpl<LeavesMapper, Leave> implements ILeaveService {
+public class LeavesServiceImpl extends ServiceImpl<LeavesMapper, Leave> implements ILeaveService {
 	@Override
 	public IPage<LeaveVO> getPage(IPage<LeaveVO> page, LeaveVO leaveVO) {
 		return page.setRecords(baseMapper.getPage(page,leaveVO));
@@ -23,4 +28,31 @@
 		leave.setAuditTime(new Date());
 		return updateById(leave);
 	}
+
+	@Override
+	public boolean save(Leave entity) {
+		BladeUser user = AuthUtil.getUser();
+		Date now = DateUtil.now();
+
+		entity.setCreateUser(user.getUserId());
+		entity.setUpdateUser(user.getUserId());
+		entity.setCreateTime(now);
+		entity.setUpdateTime(now);
+		entity.setCreateDept(Long.parseLong(user.getDeptId()));
+		entity.setStatus(1);
+		entity.setIsDeleted(0);
+		return super.save(entity);
+	}
+
+	@Override
+	public boolean updateById(Leave entity) {
+
+		BladeUser user = AuthUtil.getUser();
+		Date now = DateUtil.now();
+
+		entity.setUpdateUser(user.getUserId());
+		entity.setUpdateTime(now);
+
+		return super.updateById(entity);
+	}
 }

--
Gitblit v1.9.3