LiGuang пре 3 година
родитељ
комит
ee33440de4

+ 172 - 0
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/userchange/controller/UserChageController.java

@@ -0,0 +1,172 @@
+package org.jeecg.modules.geke.userchange.controller;
+
+import java.util.*;
+import java.io.IOException;
+import java.io.UnsupportedEncodingException;
+import java.net.URLDecoder;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.shiro.SecurityUtils;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.common.util.oConvertUtils;
+import org.jeecg.modules.geke.userPrize.entity.UserPrize;
+import org.jeecg.modules.geke.userchange.entity.UserChage;
+import org.jeecg.modules.geke.userchange.service.IUserChageService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecgframework.poi.excel.ExcelImportUtil;
+import org.jeecgframework.poi.excel.def.NormalExcelConstants;
+import org.jeecgframework.poi.excel.entity.ExportParams;
+import org.jeecgframework.poi.excel.entity.ImportParams;
+import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+import org.springframework.web.multipart.MultipartHttpServletRequest;
+import org.springframework.web.servlet.ModelAndView;
+import com.alibaba.fastjson.JSON;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+ /**
+ * @Description: 人事变动
+ * @Author: jeecg-boot
+ * @Date:   2022-03-02
+ * @Version: V1.0
+ */
+@Slf4j
+@Api(tags="人事变动")
+@RestController
+@RequestMapping("/userchange/userChage")
+public class UserChageController extends JeecgController<UserChage, IUserChageService> {
+	@Autowired
+	private IUserChageService userChageService;
+
+	 @Value("${jeecg.path.upload}")
+	 private String upLoadPath;
+	/**
+	 * 分页列表查询
+	 *
+	 * @param userChage
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	@AutoLog(value = "人事变动-分页列表查询")
+	@ApiOperation(value="人事变动-分页列表查询", notes="人事变动-分页列表查询")
+	@GetMapping(value = "/list")
+	public Result<?> queryPageList(UserChage userChage,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+								   HttpServletRequest req) {
+		QueryWrapper<UserChage> queryWrapper = QueryGenerator.initQueryWrapper(userChage, req.getParameterMap());
+		Page<UserChage> page = new Page<UserChage>(pageNo, pageSize);
+		IPage<UserChage> pageList = userChageService.page(page, queryWrapper);
+		return Result.OK(pageList);
+	}
+	
+	/**
+	 * 添加
+	 *
+	 * @param userChage
+	 * @return
+	 */
+	@AutoLog(value = "人事变动-添加")
+	@ApiOperation(value="人事变动-添加", notes="人事变动-添加")
+	@PostMapping(value = "/add")
+	public Result<?> add(@RequestBody UserChage userChage) {
+		userChageService.save(userChage);
+		return Result.OK("添加成功!");
+	}
+	
+	/**
+	 * 编辑
+	 *
+	 * @param userChage
+	 * @return
+	 */
+	@AutoLog(value = "人事变动-编辑")
+	@ApiOperation(value="人事变动-编辑", notes="人事变动-编辑")
+	@PutMapping(value = "/edit")
+	public Result<?> edit(@RequestBody UserChage userChage) {
+		userChageService.updateById(userChage);
+		return Result.OK("编辑成功!");
+	}
+	
+	/**
+	 * 通过id删除
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "人事变动-通过id删除")
+	@ApiOperation(value="人事变动-通过id删除", notes="人事变动-通过id删除")
+	@DeleteMapping(value = "/delete")
+	public Result<?> delete(@RequestParam(name="id",required=true) String id) {
+		userChageService.removeById(id);
+		return Result.OK("删除成功!");
+	}
+	
+	/**
+	 * 批量删除
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "人事变动-批量删除")
+	@ApiOperation(value="人事变动-批量删除", notes="人事变动-批量删除")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<?> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.userChageService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("批量删除成功!");
+	}
+	
+	/**
+	 * 通过id查询
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "人事变动-通过id查询")
+	@ApiOperation(value="人事变动-通过id查询", notes="人事变动-通过id查询")
+	@GetMapping(value = "/queryById")
+	public Result<?> queryById(@RequestParam(name="id",required=true) String id) {
+		UserChage userChage = userChageService.getById(id);
+		return Result.OK(userChage);
+	}
+
+  /**
+   * 导出excel
+   *
+   * @param request
+   * @param userChage
+   */
+  @RequestMapping(value = "/exportXls")
+  public ModelAndView exportXls(HttpServletRequest request, UserChage userChage) {
+	  LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+	  List<UserChage>list=new ArrayList<>();
+	  ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
+	  mv.addObject(NormalExcelConstants.FILE_NAME, "薪资调整列表"); //此处设置的filename无效 ,前端会重更新设置一下
+	  mv.addObject(NormalExcelConstants.CLASS, UserChage.class);
+	  //update-begin--Author:liusq  Date:20210126 for:图片导出报错,ImageBasePath未设置--------------------
+	  ExportParams  exportParams=new ExportParams("薪资调整列表", "导出人:" + sysUser.getRealname(), "薪资调整列表");
+	  exportParams.setImageBasePath(upLoadPath);
+	  //update-end--Author:liusq  Date:20210126 for:图片导出报错,ImageBasePath未设置----------------------
+	  mv.addObject(NormalExcelConstants.PARAMS,exportParams);
+	  mv.addObject(NormalExcelConstants.DATA_LIST,list);
+      return mv;
+  }
+
+
+
+}

+ 82 - 0
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/userchange/entity/UserChage.java

@@ -0,0 +1,82 @@
+package org.jeecg.modules.geke.userchange.entity;
+
+import java.io.Serializable;
+import java.util.Date;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.jeecgframework.poi.excel.annotation.Excel;
+
+/**
+ * @Description: 人事变动
+ * @Author: jeecg-boot
+ * @Date:   2022-03-02
+ * @Version: V1.0
+ */
+@Data
+@TableName("geke_personnel_changes")
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@ApiModel(value="geke_personnel_changes对象", description="人事变动")
+public class UserChage {
+    
+	/**id*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "id")
+	private java.lang.String id;
+	/**变动类型*/
+    @ApiModelProperty(value = "变动类型")
+	private java.lang.String type;
+	/**部门名称*/
+    @ApiModelProperty(value = "部门名称")
+	private java.lang.String deptName;
+	/**部门id*/
+    @ApiModelProperty(value = "部门id")
+	private java.lang.String deptId;
+	/**员工id*/
+	@Excel(name = "工号", width = 15)
+    @ApiModelProperty(value = "员工id")
+	private java.lang.String userId;
+	/**员工姓名*/
+    @ApiModelProperty(value = "员工姓名")
+	private java.lang.String realname;
+	/**原职位*/
+    @ApiModelProperty(value = "原职位")
+	private java.lang.String startPost;
+	/**调整后职位*/
+    @ApiModelProperty(value = "调整后职位")
+	private java.lang.String endPost;
+	/**原薪资*/
+	@Excel(name = "原薪资", width = 15)
+    @ApiModelProperty(value = "原薪资")
+	private java.lang.String startWages;
+	/**调整后薪资*/
+	@Excel(name = "调整后薪资", width = 15)
+    @ApiModelProperty(value = "调整后薪资")
+	private java.lang.String endWages;
+	/**提交人*/
+    @ApiModelProperty(value = "提交人")
+	private java.lang.String conmitId;
+	/**生效日期*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "生效日期")
+	private java.util.Date time;
+	/**提交时间*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    @ApiModelProperty(value = "提交时间")
+	private java.util.Date conmitDate;
+	/**备注*/
+	@ApiModelProperty(value = "备注")
+	private java.lang.String demo;
+
+}

+ 19 - 0
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/userchange/mapper/UserChageMapper.java

@@ -0,0 +1,19 @@
+package org.jeecg.modules.geke.userchange.mapper;
+
+import java.util.List;
+
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.geke.userchange.entity.UserChage;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * @Description: 人事变动
+ * @Author: jeecg-boot
+ * @Date:   2022-03-02
+ * @Version: V1.0
+ */
+public interface UserChageMapper extends BaseMapper<UserChage> {
+
+    List<UserChage>listDate(@Param("startDate")String startDate,@Param("endDate")String endDate);
+
+}

+ 12 - 0
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/userchange/mapper/xml/UserChageMapper.xml

@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.geke.userchange.mapper.UserChageMapper">
+
+    <select id="listDate" resultType="org.jeecg.modules.geke.userchange.entity.UserChage">
+        select *from geke_personnel_changes where 1=1
+        <if test="startDate!=null and endDate!=null">
+          and  date_format(time,'%Y-%m-%d')  BETWEEN date_format(#{startDate},'%Y-%m-%d') AND date_format(#{endDate},'%Y-%m-%d')
+        </if>
+        order by time asc
+    </select>
+</mapper>

+ 17 - 0
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/userchange/service/IUserChageService.java

@@ -0,0 +1,17 @@
+package org.jeecg.modules.geke.userchange.service;
+
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.geke.userchange.entity.UserChage;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.List;
+
+/**
+ * @Description: 人事变动
+ * @Author: jeecg-boot
+ * @Date:   2022-03-02
+ * @Version: V1.0
+ */
+public interface IUserChageService extends IService<UserChage> {
+    List<UserChage> listDate(String startDate,String endDate);
+}

+ 28 - 0
jeecg-boot-module-demo/src/main/java/org/jeecg/modules/geke/userchange/service/impl/UserChageServiceImpl.java

@@ -0,0 +1,28 @@
+package org.jeecg.modules.geke.userchange.service.impl;
+
+import org.jeecg.modules.geke.userchange.entity.UserChage;
+import org.jeecg.modules.geke.userchange.mapper.UserChageMapper;
+import org.jeecg.modules.geke.userchange.service.IUserChageService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+import java.util.List;
+
+/**
+ * @Description: 人事变动
+ * @Author: jeecg-boot
+ * @Date:   2022-03-02
+ * @Version: V1.0
+ */
+@Service
+public class UserChageServiceImpl extends ServiceImpl<UserChageMapper, UserChage> implements IUserChageService {
+    @Autowired
+    private  UserChageMapper userChageMapper;
+
+    @Override
+    public List<UserChage> listDate(String startDate, String endDate) {
+        return userChageMapper.listDate(startDate,endDate);
+    }
+}

+ 34 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/quartz/job/EditUserChangeJob.java

@@ -0,0 +1,34 @@
+package org.jeecg.modules.quartz.job;
+
+import lombok.SneakyThrows;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.modules.system.service.IWeixinUserService;
+import org.quartz.*;
+import org.springframework.beans.factory.annotation.Autowired;
+
+/**
+ *
+ *
+ *
+ * 人事变动修改信息
+ *
+ *
+ * @author: taoyan
+ * @date: 2020年06月19日
+ */
+@PersistJobDataAfterExecution
+@DisallowConcurrentExecution
+@Slf4j
+public class EditUserChangeJob implements Job {
+    @Autowired
+    IWeixinUserService weixinUserService;
+
+    @SneakyThrows
+    @Override
+    public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
+        System.out.println("=======================开始执行======================");
+        weixinUserService.editUserChange();
+        System.out.println("=======================执行完成======================");
+    }
+
+}

+ 36 - 0
jeecg-boot-module-system/src/main/java/org/jeecg/modules/quartz/job/WeixinChangeJob.java

@@ -0,0 +1,36 @@
+package org.jeecg.modules.quartz.job;
+
+import lombok.SneakyThrows;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.util.DateUtils;
+import org.jeecg.modules.geke.userchange.service.IUserChageService;
+import org.jeecg.modules.system.service.IWeixinUserService;
+import org.quartz.*;
+import org.springframework.beans.factory.annotation.Autowired;
+
+/**
+ *
+ *
+ *
+ * 人事变动
+ *
+ *
+ * @author: taoyan
+ * @date: 2020年06月19日
+ */
+@PersistJobDataAfterExecution
+@DisallowConcurrentExecution
+@Slf4j
+public class WeixinChangeJob implements Job {
+    @Autowired
+    IWeixinUserService weixinUserService;
+
+    @SneakyThrows
+    @Override
+    public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
+        System.out.println("=======================开始执行======================");
+        weixinUserService.WeixinChange();
+        System.out.println("=======================执行完成======================");
+    }
+
+}