yangdamao 1 rok pred
rodič
commit
37b8f4be64

+ 96 - 0
zhongzheng-api/src/main/java/com/zhongzheng/controller/user/UserHandleController.java

@@ -0,0 +1,96 @@
+package com.zhongzheng.controller.user;
+
+import com.zhongzheng.common.core.controller.BaseController;
+import com.zhongzheng.common.core.domain.AjaxResult;
+import com.zhongzheng.common.core.page.TableDataInfo;
+import com.zhongzheng.common.utils.ServletUtils;
+import com.zhongzheng.common.utils.poi.EasyPoiUtil;
+import com.zhongzheng.framework.web.service.WxTokenService;
+import com.zhongzheng.modules.user.bo.UserHandleBo;
+import com.zhongzheng.modules.user.bo.UserHandleImportBo;
+import com.zhongzheng.modules.user.bo.UserHandleQueryBo;
+import com.zhongzheng.modules.user.entity.ClientLoginUser;
+import com.zhongzheng.modules.user.service.IUserHandleService;
+import com.zhongzheng.modules.user.vo.UserHandleVo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.RequiredArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.util.List;
+
+/**
+ * 用户经办名单
+ *
+ * @author ruoyi
+ * @date 2021-06-24
+ */
+@Api(value = "用户经办名单控制器", tags = {"用户经办名单控制器"})
+@RequiredArgsConstructor(onConstructor_ = @Autowired)
+@RestController
+@RequestMapping("/user/handle")
+public class UserHandleController extends BaseController {
+
+    private final IUserHandleService iUserHandleService;
+
+    private final WxTokenService wxTokenService;
+
+    /**
+     * 查询用户的做题历史列表
+     */
+    @ApiOperation("用户经办名单列表")
+    @GetMapping("/list")
+    public TableDataInfo<UserHandleVo> list(UserHandleQueryBo bo) {
+        ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
+        bo.setUserId(loginUser.getUser().getUserId());
+        startPage();
+        List<UserHandleVo> list = iUserHandleService.queryUserHandleList(bo);
+        return getDataTable(list);
+    }
+
+    /**
+     * 新增用户经办名单
+     */
+    @ApiOperation("新增用户经办名单")
+    @PostMapping("/save")
+    public AjaxResult<Void> save(@RequestBody UserHandleBo bo) {
+        ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
+        bo.setUserId(loginUser.getUser().getUserId());
+        return toAjax(iUserHandleService.saveUserHandle(bo) ? 1 : 0);
+    }
+
+    /**
+     * 修改用户经办名单
+     */
+    @ApiOperation("修改用户经办名单")
+    @PostMapping("/edit")
+    public AjaxResult<Void> edit(@RequestBody UserHandleBo bo) {
+        ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
+        bo.setUserId(loginUser.getUser().getUserId());
+        return toAjax(iUserHandleService.editUserHandle(bo) ? 1 : 0);
+    }
+
+    /**
+     * 批量删除用户经办名单
+     */
+    @ApiOperation("批量删除用户经办名单")
+    @PostMapping("/delete")
+    public AjaxResult<Void> batchDel(@RequestBody List<Long> ids) {
+        return toAjax(iUserHandleService.batchDelUserHandle(ids) ? 1 : 0);
+    }
+
+    /**
+     * 经办名单导入
+     */
+    @ApiOperation("经办名单导入")
+    @PostMapping("/import")
+    public AjaxResult importUserHandle(MultipartFile file) {
+        List<UserHandleImportBo> userHandles = EasyPoiUtil.importExcel(file,0,1,UserHandleImportBo.class);
+        ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
+        iUserHandleService.importUserHandle(userHandles,loginUser.getUser().getUserId());
+        return AjaxResult.success();
+    }
+
+}

+ 0 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/grade/service/impl/UserPeriodServiceImpl.java

@@ -352,7 +352,6 @@ public class UserPeriodServiceImpl extends ServiceImpl<UserPeriodMapper, UserPer
         }
         return true;
     }
-
     /**
      * 保存前的数据校验
      *

+ 37 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserHandleBo.java

@@ -0,0 +1,37 @@
+package com.zhongzheng.modules.user.bo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @author yangdamao
+ * @date 2024年01月17日 15:42
+ */
+@Data
+public class UserHandleBo implements Serializable {
+
+    private Long id;
+    /** 用户ID */
+    @ApiModelProperty("用户ID")
+    private Long userId;
+    /** 经办姓名 */
+    @ApiModelProperty("经办姓名")
+    private String handleName;
+    /** 经办性别:1男,2女 */
+    @ApiModelProperty("经办性别:1男,2女")
+    private Integer handleSex;
+    /** 经办身份证 */
+    @ApiModelProperty("经办身份证")
+    private String handleCard;
+    /** 经办手机号 */
+    @ApiModelProperty("经办手机号")
+    private String handlePhone;
+    /** 经办学历 */
+    @ApiModelProperty("经办学历")
+    private String handleEdu;
+    /** 经办公司 */
+    @ApiModelProperty("经办公司")
+    private String handleCompany;
+}

+ 53 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserHandleImportBo.java

@@ -0,0 +1,53 @@
+package com.zhongzheng.modules.user.bo;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+/**
+ * @author yangdamao
+ * @date 2024年01月17日 15:42
+ */
+@Data
+@NoArgsConstructor
+@Accessors(chain = true)
+public class UserHandleImportBo implements Serializable {
+
+    /** 用户ID */
+    @ApiModelProperty("用户ID")
+    private Long userId;
+
+    /** 经办姓名 */
+    @ApiModelProperty("经办姓名")
+    @Excel(name = "*姓名")
+    private String handleName;
+
+    /** 经办性别:1男,2女 */
+    @ApiModelProperty("经办姓名")
+    @Excel(name = "*性别")
+    private String handleSexStr;
+
+    /** 经办身份证 */
+    @ApiModelProperty("经办身份证")
+    @Excel(name = "*身份证号")
+    private String handleCard;
+
+    /** 经办手机号 */
+    @ApiModelProperty("经办手机号")
+    @Excel(name = "*手机号码")
+    private String handlePhone;
+
+    /** 经办学历 */
+    @ApiModelProperty("经办学历")
+    @Excel(name = "*教育层数")
+    private String handleEdu;
+
+    /** 经办公司 */
+    @ApiModelProperty("经办公司")
+    @Excel(name = "*所属公司")
+    private String handleCompany;
+}

+ 37 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserHandleQueryBo.java

@@ -0,0 +1,37 @@
+package com.zhongzheng.modules.user.bo;
+
+import com.zhongzheng.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * @author yangdamao
+ * @date 2024年01月17日 15:21
+ */
+@Data
+public class UserHandleQueryBo extends BaseEntity {
+
+    /** 分页大小 */
+    @ApiModelProperty("分页大小")
+    private Integer pageSize;
+    /** 当前页数 */
+    @ApiModelProperty("当前页数")
+    private Integer pageNum;
+    /** 排序列 */
+    @ApiModelProperty("排序列")
+    private String orderByColumn;
+    /** 排序的方向desc或者asc */
+    @ApiModelProperty(value = "排序的方向", example = "asc,desc")
+    private String isAsc;
+
+    @ApiModelProperty("学历")
+    private String edu;
+
+    @ApiModelProperty("关键字")
+    private String keyWord;
+
+    @ApiModelProperty("用户ID")
+    private Long userId;
+}

+ 51 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/domain/UserHandle.java

@@ -0,0 +1,51 @@
+package com.zhongzheng.modules.user.domain;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+/**
+ * 企业经办名单
+ *
+ * @author ruoyi
+ * @date 2021-06-24
+ */
+@Data
+@NoArgsConstructor
+@Accessors(chain = true)
+@TableName("user_handle")
+public class UserHandle implements Serializable {
+
+private static final long serialVersionUID=1L;
+
+    @TableId(value = "id")
+    private Long id;
+    /** 用户ID */
+    private Long userId;
+    /** 经办姓名 */
+    private String handleName;
+    /** 经办性别:1男,2女 */
+    private Integer handleSex;
+    /** 经办身份证 */
+    private String handleCard;
+    /** 经办手机号 */
+    private String handlePhone;
+    /** 经办学历 */
+    private String handleEdu;
+    /** 经办公司 */
+    private String handleCompany;
+    /** 状态 1正常 0关闭 -1删除*/
+    private Integer status;
+    /** 创建时间 */
+    private Long createTime;
+    /** 更新时间 */
+    private Long updateTime;
+
+}

+ 13 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/mapper/UserHandleMapper.java

@@ -0,0 +1,13 @@
+package com.zhongzheng.modules.user.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.zhongzheng.modules.user.domain.UserHandle;
+
+/**
+ *
+ *
+ * @author ruoyi
+ * @date 2021-10-09
+ */
+public interface UserHandleMapper extends BaseMapper<UserHandle> {
+}

+ 30 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/IUserHandleService.java

@@ -0,0 +1,30 @@
+package com.zhongzheng.modules.user.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.zhongzheng.modules.user.bo.UserHandleBo;
+import com.zhongzheng.modules.user.bo.UserHandleImportBo;
+import com.zhongzheng.modules.user.bo.UserHandleQueryBo;
+import com.zhongzheng.modules.user.domain.UserHandle;
+import com.zhongzheng.modules.user.vo.UserHandleVo;
+
+import java.util.List;
+
+/**
+ * 高校Service接口
+ *
+ * @author ruoyi
+ * @date 2021-10-09
+ */
+public interface IUserHandleService extends IService<UserHandle> {
+
+    List<UserHandleVo> queryUserHandleList(UserHandleQueryBo bo);
+
+    boolean saveUserHandle(UserHandleBo bo);
+
+    boolean editUserHandle(UserHandleBo bo);
+
+    boolean batchDelUserHandle(List<Long> ids);
+
+    void importUserHandle(List<UserHandleImportBo> userHandles,Long userId);
+
+}

+ 86 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/service/impl/UserHandleServiceImpl.java

@@ -0,0 +1,86 @@
+package com.zhongzheng.modules.user.service.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.zhongzheng.common.exception.CustomException;
+import com.zhongzheng.common.utils.DateUtils;
+import com.zhongzheng.modules.user.bo.UserHandleBo;
+import com.zhongzheng.modules.user.bo.UserHandleImportBo;
+import com.zhongzheng.modules.user.bo.UserHandleQueryBo;
+import com.zhongzheng.modules.user.domain.UserHandle;
+import com.zhongzheng.modules.user.mapper.UserHandleMapper;
+import com.zhongzheng.modules.user.service.IUserHandleService;
+import com.zhongzheng.modules.user.vo.UserHandleVo;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * 高校Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2021-10-09
+ */
+@Service
+public class UserHandleServiceImpl extends ServiceImpl<UserHandleMapper, UserHandle> implements IUserHandleService {
+
+    @Override
+    public List<UserHandleVo> queryUserHandleList(UserHandleQueryBo bo) {
+        List<UserHandle> list = list(new LambdaQueryWrapper<UserHandle>()
+                .eq(UserHandle::getStatus, 1)
+                .eq(StringUtils.isNotBlank(bo.getEdu()), UserHandle::getHandleEdu, bo.getEdu())
+                .and(ObjectUtils.isNotNull(bo.getKeyWord()), x -> x.like(UserHandle::getHandleName, bo.getKeyWord())
+                        .or().like(UserHandle::getHandleCard, bo.getKeyWord()).or().like(UserHandle::getHandlePhone, bo.getKeyWord()))
+                .orderByDesc(UserHandle::getCreateTime));
+        if (CollectionUtils.isEmpty(list)){
+            return new ArrayList<>();
+        }
+        return list.stream().map(item -> BeanUtil.toBean(item,UserHandleVo.class)).collect(Collectors.toList());
+    }
+
+    @Override
+    public boolean saveUserHandle(UserHandleBo bo) {
+        UserHandle userHandle = BeanUtil.toBean(bo, UserHandle.class);
+        userHandle.setCreateTime(DateUtils.getNowTime());
+        userHandle.setUpdateTime(DateUtils.getNowTime());
+        return save(userHandle);
+    }
+
+    @Override
+    public boolean editUserHandle(UserHandleBo bo) {
+        UserHandle userHandle = BeanUtil.toBean(bo, UserHandle.class);
+        userHandle.setUpdateTime(DateUtils.getNowTime());
+        return updateById(userHandle);
+    }
+
+    @Override
+    public boolean batchDelUserHandle(List<Long> ids) {
+        return update(new LambdaUpdateWrapper<UserHandle>()
+        .in(UserHandle::getId,ids)
+        .set(UserHandle::getStatus,-1)
+        .set(UserHandle::getCreateTime,DateUtils.getNowTime()));
+    }
+
+    @Override
+    public void importUserHandle(List<UserHandleImportBo> userHandles,Long userId) {
+        if (CollectionUtils.isEmpty(userHandles)){
+            throw new CustomException("导入文件有误!请检查文件");
+        }
+        List<UserHandle> handles = userHandles.stream().map(item -> {
+            UserHandle userHandle = BeanUtil.toBean(item, UserHandle.class);
+            userHandle.setHandleSex(StringUtils.isNotBlank(item.getHandleSexStr()) && item.getHandleSexStr().equals("男") ? 1 : 2);
+            userHandle.setUserId(userId);
+            userHandle.setCreateTime(DateUtils.getNowTime());
+            userHandle.setUpdateTime(DateUtils.getNowTime());
+            return userHandle;
+        }).collect(Collectors.toList());
+        saveBatch(handles);
+    }
+}

+ 53 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/vo/UserHandleVo.java

@@ -0,0 +1,53 @@
+package com.zhongzheng.modules.user.vo;
+
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+
+/**
+ * 企业经办名单
+ *
+ * @author ruoyi
+ * @date 2021-06-24
+ */
+@Data
+public class UserHandleVo implements Serializable {
+
+    private Long id;
+    /** 用户ID */
+    @ApiModelProperty("用户ID")
+    private Long userId;
+    /** 经办姓名 */
+    @ApiModelProperty("经办姓名")
+    private String handleName;
+    /** 经办性别:1男,2女 */
+    @ApiModelProperty("经办姓名")
+    private Integer handleSex;
+    /** 经办身份证 */
+    @ApiModelProperty("经办身份证")
+    private String handleCard;
+    /** 经办手机号 */
+    @ApiModelProperty("经办手机号")
+    private String handlePhone;
+    /** 经办学历 */
+    @ApiModelProperty("经办学历")
+    private String handleEdu;
+    /** 经办公司 */
+    @ApiModelProperty("经办公司")
+    private String handleCompany;
+    /** 是否完成 1完成 0未完成 */
+    @ApiModelProperty("是否完成 1完成 0未完成")
+    private Integer status;
+    /** 创建时间 */
+    @ApiModelProperty("创建时间")
+    private Long createTime;
+    /** 更新时间 */
+    @ApiModelProperty("更新时间")
+    private Long updateTime;
+
+}

+ 7 - 0
zhongzheng-system/src/main/resources/mapper/modules/user/UserHandleMapper.xml

@@ -0,0 +1,7 @@
+<?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="com.zhongzheng.modules.user.mapper.UserHandleMapper">
+
+</mapper>