mg
2022-10-12 cea9df7a2004dcd4c7e007e085c1e358ae5bb374
添加机构用户查询,新增角色类类型字段
10个文件已修改
6个文件已添加
284 ■■■■■ 已修改文件
ycl-common/src/main/java/com/ycl/dto/user/DepartUserDTO.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-common/src/main/java/com/ycl/entity/depart/UmsDepart.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-common/src/main/java/com/ycl/entity/user/UmsRole.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-common/src/main/java/com/ycl/mapper/depart/UmsDepartMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-common/src/main/java/com/ycl/service/depart/impl/UmsDepartServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-common/src/main/java/com/ycl/service/user/UmsAdminService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-common/src/main/resources/mapper/depart/UmsDepartMapper.xml 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-platform/src/main/java/com/ycl/controller/message/MessageColumnSetController.java 86 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-platform/src/main/java/com/ycl/entity/message/MessageColumnSet.java 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-platform/src/main/java/com/ycl/mapper/message/MessageColumnSetMapper.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-platform/src/main/java/com/ycl/service/message/IMessageColumnSetService.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-platform/src/main/java/com/ycl/service/message/factory/MailSender.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-platform/src/main/java/com/ycl/service/message/impl/IMessageColumnSetServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-platform/src/main/java/com/ycl/service/message/impl/IMessageServiceImpl.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ycl-common/src/main/java/com/ycl/dto/user/DepartUserDTO.java
New file
@@ -0,0 +1,22 @@
package com.ycl.dto.user;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
 * <p>
 * 类说明
 * </p>
 *
 * @author mg
 * @since 2022-10-12
 */
@Data
@ApiModel("负责人信息")
public class DepartUserDTO {
    @ApiModelProperty(value = "用户Id")
    private Long userId;
    @ApiModelProperty(value = "用户名")
    private String username;
}
ycl-common/src/main/java/com/ycl/entity/depart/UmsDepart.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.annotation.*;
import com.ycl.api.BaseEntity;
import com.ycl.dto.user.AdminDepartDTO;
import com.ycl.dto.user.DepartUserDTO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
@@ -60,4 +61,7 @@
    @TableField(exist = false)
    private List<AdminDepartDTO.UserInfoDTO> userInfoDTOS;
    @TableField(exist = false)
    private List<DepartUserDTO> departUserDTOS;
}
ycl-common/src/main/java/com/ycl/entity/user/UmsRole.java
@@ -35,6 +35,9 @@
    @ApiModelProperty(value = "名称")
    private String name;
    @ApiModelProperty(value = "角色类型")
    private String type;
    @ApiModelProperty(value = "描述")
    private String description;
ycl-common/src/main/java/com/ycl/mapper/depart/UmsDepartMapper.java
@@ -3,6 +3,8 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ycl.entity.depart.UmsDepart;
import java.util.List;
/**
 * <p>
 * 部门表 Mapper 接口
@@ -13,4 +15,6 @@
 */
public interface UmsDepartMapper extends BaseMapper<UmsDepart> {
    List<UmsDepart> selectDepartList();
}
ycl-common/src/main/java/com/ycl/service/depart/impl/UmsDepartServiceImpl.java
@@ -122,7 +122,7 @@
    @Override
    public List<UmsDepart> tree() {
        // 1.查出所有网格
        List<UmsDepart> list = list();
        List<UmsDepart> list = baseMapper.selectDepartList();
        // 2.组装成父子的树型结构
        // 2.1、找到所有的一级网格:使用jdk8的stream流进行过滤
ycl-common/src/main/java/com/ycl/service/user/UmsAdminService.java
@@ -111,4 +111,5 @@
    List<UmsAdmin> getDepartUser(Long departId);
    String getTargetTo(String ids, String sendType);
}
ycl-common/src/main/java/com/ycl/service/user/impl/UmsAdminServiceImpl.java
@@ -12,6 +12,7 @@
import com.ycl.dto.UpdateAdminPasswordParam;
import com.ycl.entity.depart.UmsDepart;
import com.ycl.entity.user.*;
import com.ycl.exception.ApiException;
import com.ycl.exception.Asserts;
import com.ycl.mapper.user.*;
import com.ycl.service.depart.UmsDepartService;
@@ -378,4 +379,22 @@
        List<UmsAdmin> adminList = baseMapper.selectList(wrapperUser);
        return adminList;
    }
    @Override
    public String getTargetTo(String ids, String sendType) {
        String str = null;
        String[] arr = ids.split(",");
        QueryWrapper<UmsAdmin> wrapperUser = new QueryWrapper<>();
        wrapperUser.in("id", arr);
        List<UmsAdmin> adminList = baseMapper.selectList(wrapperUser);
        if (adminList == null||adminList.isEmpty()) {
            throw new ApiException("未查询到用户");
        }
        if ("02".equals(sendType)) {
           str = adminList.stream().map(UmsAdmin::getEmail).collect(Collectors.joining(","));
        } else {
            str = adminList.stream().map(UmsAdmin::getMobile).collect(Collectors.joining(","));
        }
        return str;
    }
}
ycl-common/src/main/resources/mapper/depart/UmsDepartMapper.xml
@@ -14,5 +14,21 @@
        <result column="update_time" property="updateTime" />
        <result column="is_deleted" property="isDeleted" />
    </resultMap>
    <resultMap type="com.ycl.entity.depart.UmsDepart" id="UserDepartResultMap" extends="BaseResultMap">
        <collection property="userInfoDTOS" javaType="ArrayList" ofType="com.ycl.dto.user.DepartUserDTO">
            <id column="user_id" property="userId" />
            <result column="username" property="username" />
        </collection>
    </resultMap>
    <select id="selectDepartList"  resultMap="UserDepartResultMap">
        SELECT
            ud.*,ua.id user_id,ua.username
        FROM
            ums_depart ud
                LEFT JOIN ums_depart_manager udm ON ud.id = udm.depart_id
                LEFT JOIN ums_admin ua ON udm.user_id = ua.id
    </select>
</mapper>
ycl-platform/src/main/java/com/ycl/controller/caseHandler/BaseCaseController.java
@@ -28,7 +28,6 @@
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.UUID;
/**
@@ -259,4 +258,6 @@
        baseCaseService.endCase(caseId, result);
        return CommonResult.success("end case success~!");
    }
}
ycl-platform/src/main/java/com/ycl/controller/message/MessageColumnSetController.java
New file
@@ -0,0 +1,86 @@
package com.ycl.controller.message;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.ycl.api.CommonResult;
import com.ycl.entity.message.MessageColumnSet;
import com.ycl.service.message.IMessageColumnSetService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
 * <p>
 *   消息栏目设置  前端控制器
 * </p>
 *
 * @author mg
 * @since 2022-10-08
 */
@RestController
@RequestMapping("/message_column_set")
@Api(tags = "用户消息栏目设置")
public class MessageColumnSetController {
    @Autowired
    private IMessageColumnSetService iMessageColumnSetService;
    @ApiOperation(value = "添加栏目设置")
    @RequestMapping(value = "/addColumnSet", method = RequestMethod.POST)
    @ResponseBody
    public CommonResult addColumnSet(@Validated @RequestBody MessageColumnSet messageColumnSet) {
        return CommonResult.success(iMessageColumnSetService.save(messageColumnSet));
    }
    @ApiOperation("获取指定栏目")
    @RequestMapping(value = "/getColumnSet/{id}", method = RequestMethod.GET)
    @ResponseBody
    public CommonResult<MessageColumnSet> getMessage(@PathVariable Long id) {
        MessageColumnSet columnSet = iMessageColumnSetService.getById(id);
        return CommonResult.success(columnSet);
    }
    @ApiOperation("获取用户栏目设置")
    @RequestMapping(value = "/getUserColumnSet/{userId}", method = RequestMethod.GET)
    @ApiImplicitParams({
            @ApiImplicitParam(name = "userId", value = "用户Id",required = true, dataType = "Long")
    })
    @ResponseBody
    public CommonResult<List<MessageColumnSet>> getUserColumnSet(@PathVariable Long userId) {
        QueryWrapper<MessageColumnSet> setQueryWrapper = new QueryWrapper<>();
        setQueryWrapper.eq("user_id", userId);
        List<MessageColumnSet> sets = iMessageColumnSetService.list(setQueryWrapper);
        return CommonResult.success(sets);
    }
    @ApiOperation("修改指定栏目")
    @RequestMapping(value = "/update/{id}", method = RequestMethod.POST)
    @ResponseBody
    public CommonResult update(@PathVariable Long id, @RequestBody MessageColumnSet messageColumnSet) {
        messageColumnSet.setId(id);
        boolean success = iMessageColumnSetService.updateById(messageColumnSet);
        if (success) {
            return CommonResult.success(null);
        }
        return CommonResult.failed();
    }
    @ApiOperation("批量删除")
    @RequestMapping(value = "/delete", method = RequestMethod.POST)
    @ResponseBody
    public CommonResult delete(@RequestParam("ids") List<Long> ids) {
        boolean success = iMessageColumnSetService.removeBatchByIds(ids);
        if (success) {
            return CommonResult.success(null);
        }
        return CommonResult.failed();
    }
}
ycl-platform/src/main/java/com/ycl/entity/message/MessageColumnSet.java
New file
@@ -0,0 +1,55 @@
package com.ycl.entity.message;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotNull;
/**
 * <p>
 *  消息栏目用户设置  实体类
 * </p>
 *
 * @author mg
 * @since 2022-10-10
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("ums_message_column_set")
@ApiModel(value = "消息栏目用户设置表")
public class MessageColumnSet {
    private static final long serialVersionUID = 1L;
    /**
     * 主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    @ApiModelProperty(value = "主键")
    private Long id;
    /**
     * 用户Id
     */
    @TableField("user_id")
    @ApiModelProperty(value = "用户Id", required = true)
    private Long userId;
    /**
     *  消息栏目Id
     */
    @TableField("message_column_id")
    @ApiModelProperty(value = "消息栏目Id", required = true)
    @NotNull
    private Long messageColumnId;
    /**
     * 是否接收0-不接收1-接收
     */
    @TableField("is_receive")
    @ApiModelProperty(value = "是否接收0-不接收1-接收", required = true)
    private Integer isReceive;
}
ycl-platform/src/main/java/com/ycl/mapper/message/MessageColumnSetMapper.java
New file
@@ -0,0 +1,15 @@
package com.ycl.mapper.message;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ycl.entity.message.MessageColumnSet;
/**
 * <p>
 * 消息栏目设置 Mapper 接口
 * </p>
 *
 * @author mg
 * @since 2022-10-12
 */
public interface MessageColumnSetMapper extends BaseMapper<MessageColumnSet> {
}
ycl-platform/src/main/java/com/ycl/service/message/IMessageColumnSetService.java
New file
@@ -0,0 +1,15 @@
package com.ycl.service.message;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ycl.entity.message.MessageColumnSet;
/**
 * <p>
 *  消息栏目设置
 * </p>
 *
 * @author mg
 * @since 2022-10-12
 */
public interface IMessageColumnSetService extends IService<MessageColumnSet> {
}
ycl-platform/src/main/java/com/ycl/service/message/factory/MailSender.java
@@ -3,6 +3,7 @@
import com.ycl.common.util.PropertyValueUtil;
import com.ycl.dto.message.MessageParam;
import com.ycl.entity.message.Message;
import com.ycl.exception.ApiException;
import com.ycl.service.message.Sender;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -59,10 +60,12 @@
        try {
            sender.send(messageList);
            logger.info("简单邮件已发送");
        }catch (Exception e){
            e.printStackTrace();
            logger.error("发送简单邮件时发生异常!", e);
            e.printStackTrace();
            throw new ApiException("发送简单邮件时发生异常");
        }
        return message;
    }
ycl-platform/src/main/java/com/ycl/service/message/impl/IMessageColumnSetServiceImpl.java
New file
@@ -0,0 +1,20 @@
package com.ycl.service.message.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ycl.entity.message.MessageColumnSet;
import com.ycl.mapper.message.MessageColumnSetMapper;
import com.ycl.service.message.IMessageColumnSetService;
import org.springframework.stereotype.Service;
/**
 * <p>
 * 消息栏目设置 服务实现类
 * </p>
 *
 * @author mg
 * @since 2022-10-10
 */
@Service
public class IMessageColumnSetServiceImpl extends ServiceImpl<MessageColumnSetMapper, MessageColumnSet> implements IMessageColumnSetService {
}
ycl-platform/src/main/java/com/ycl/service/message/impl/IMessageServiceImpl.java
@@ -6,6 +6,7 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ycl.dto.message.MessageParam;
import com.ycl.entity.message.Message;
import com.ycl.exception.ApiException;
import com.ycl.mapper.message.MessageMapper;
import com.ycl.service.message.IMessageService;
import com.ycl.service.message.Provider;
@@ -13,6 +14,8 @@
import com.ycl.service.message.factory.InnerFactory;
import com.ycl.service.message.factory.MailFactory;
import com.ycl.service.message.factory.SmsFactory;
import com.ycl.service.user.UmsAdminService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
@@ -25,6 +28,10 @@
 */
@Service
public class IMessageServiceImpl extends ServiceImpl<MessageMapper, Message> implements IMessageService {
    @Autowired
    private UmsAdminService adminService;
    @Override
    public Message sendMessage(MessageParam messageParam) {
        Message message = null;
@@ -38,13 +45,20 @@
            //邮件发送
            case "02":
                provider = new MailFactory();
                //id换成邮箱号
               String targetToMail = adminService.getTargetTo(messageParam.getTargetTo(), messageParam.getChannelCode());
               messageParam.setTargetTo(targetToMail);
                break;
             //短信发送
            case "03":
                provider = new SmsFactory();
                //id换成手机号
                String targetToPhone = adminService.getTargetTo(messageParam.getTargetTo(), messageParam.getChannelCode());
                messageParam.setTargetTo(targetToPhone);
                break;
            default:
                System.out.println("抛异常");
                throw new ApiException("未匹配到该类型");
        }
        Sender sender = provider.produce();
        sender.sendMessage(messageParam);