提交 867aab5f authored 作者: 000516's avatar 000516 提交者: Coding

添加地点、考勤规则功能

Merge Request: 添加地点、考勤规则功能 Created By: @李秋林 Accepted By: @李秋林 URL: https://g-pkkp8204.coding.net/p/wangxiaolu-sfa/d/wangxiaolu-sfa-module-system/git/merge/25?initial=true
package com.sfa.system.controller.core;
import java.util.List;
import com.sfa.common.core.web.controller.BaseController;
import com.sfa.common.log.annotation.Log;
import com.sfa.common.log.enums.BusinessType;
import com.sfa.common.security.annotation.RequiresPermissions;
import com.sfa.common.security.utils.SecurityUtils;
import com.sfa.system.pojo.request.MdmKqRuleVo;
import com.sfa.system.pojo.response.MdmKqRuleDto;
import com.sfa.system.service.core.IMdmKqRuleService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.sfa.common.log.annotation.Log;
import com.sfa.common.log.enums.BusinessType;
import com.sfa.common.security.annotation.RequiresPermissions;
import com.sfa.common.core.web.controller.BaseController;
import org.springframework.web.bind.annotation.*;
/**
* 考勤规则Controller
......@@ -32,38 +23,8 @@ import com.sfa.common.core.web.controller.BaseController;
@RequestMapping("/kq_rule")
public class KqRuleCoreController extends BaseController {
@Autowired
private IMdmKqRuleService IMdmKqRuleService;
private IMdmKqRuleService mdmKqRuleService;
/**
* 查询考勤规则列表
*/
@RequiresPermissions("gen:rule:list")
@PostMapping("/list")
public List<MdmKqRuleDto> list(@RequestBody MdmKqRuleVo mdmKqRuleVo) {
return IMdmKqRuleService.selectMdmKqRuleList(mdmKqRuleVo);
}
// /**
// * 导出考勤规则列表
// */
// @RequiresPermissions("gen:rule:export")
// @Log(title = "考勤规则", businessType = BusinessType.EXPORT)
// @PostMapping("/export")
// public void export(HttpServletResponse response, MdmKqRuleVo mdmKqRuleVo)
// {
// List<MdmKqRuleVo> list = mdmKqRuleService.selectMdmKqRuleList(mdmKqRule);
// ExcelUtil<MdmKqRule> util = new ExcelUtil<MdmKqRule>(MdmKqRule.class);
// util.exportExcel(response, list, "考勤规则数据");
// }
/**
* 获取考勤规则详细信息
*/
@RequiresPermissions("gen:rule:query")
@GetMapping(value = "/{ruleId}")
public MdmKqRuleDto getInfo(@PathVariable("ruleId") Long ruleId) {
return IMdmKqRuleService.selectMdmKqRuleByRuleId(ruleId);
}
/**
* 新增考勤规则
......@@ -76,7 +37,7 @@ public class KqRuleCoreController extends BaseController {
String username = SecurityUtils.getUsername();
mdmKqRuleVo.setCreateBy(username);
mdmKqRuleVo.setCreateUserId(userId);
IMdmKqRuleService.insertMdmKqRule(mdmKqRuleVo);
mdmKqRuleService.insertMdmKqRule(mdmKqRuleVo);
}
/**
......@@ -90,7 +51,7 @@ public class KqRuleCoreController extends BaseController {
String username = SecurityUtils.getUsername();
mdmKqRuleVo.setUpdateBy(username);
mdmKqRuleVo.setUpdateUserId(userId);
IMdmKqRuleService.updateMdmKqRule(mdmKqRuleVo);
mdmKqRuleService.updateMdmKqRule(mdmKqRuleVo);
}
// /**
......
......@@ -36,7 +36,7 @@ public class SysUserCoreController {
@PostMapping
public void add(@Validated @RequestBody UserVo userVo) {
deptDao.checkDeptDataScope(userVo.getDeptId());
roleDao.checkRoleDataScope(userVo.getRoleIds());
roleDao.checkRoleDataScope(userVo.getRuleId());
userVo.setCreateUserId(SecurityUtils.getUserId());
userVo.setCreateBy(SecurityUtils.getUsername());
userVo.setPassword(SecurityUtils.encryptPassword(userVo.getPassword()));
......@@ -52,7 +52,7 @@ public class SysUserCoreController {
@PutMapping
public void edit(@Validated @RequestBody UserVo userVo) {
deptDao.checkDeptDataScope(userVo.getDeptId());
roleDao.checkRoleDataScope(userVo.getRoleIds());
roleDao.checkRoleDataScope(userVo.getRoleId());
userVo.setUpdateUserId(SecurityUtils.getUserId());
userVo.setUpdateBy(SecurityUtils.getUsername());
sysUserService.updateUser(userVo);
......
package com.sfa.system.controller.query;
import com.sfa.common.core.web.controller.BaseController;
import com.sfa.common.security.annotation.RequiresPermissions;
import com.sfa.system.pojo.request.MdmKqRuleVo;
import com.sfa.system.pojo.response.MdmKqRuleDto;
import com.sfa.system.service.core.IMdmKqRuleService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.time.LocalTime;
import java.util.List;
/**
* @author : liqiulin
* @date : 2024-11-04 11
* @describe :
*/
@RestController
@RequestMapping("/kq_rule")
public class KqRuleQueryController extends BaseController {
@Autowired
private IMdmKqRuleService mdmKqRuleService;
/**
* 查询考勤规则列表
*/
// todo @RequiresPermissions("gen:rule:list")
@PostMapping("/list")
public List<MdmKqRuleDto> list(@RequestBody MdmKqRuleVo mdmKqRuleVo) {
return mdmKqRuleService.selectMdmKqRuleList(mdmKqRuleVo);
}
// /**
// * 导出考勤规则列表
// */
// @RequiresPermissions("gen:rule:export")
// @Log(title = "考勤规则", businessType = BusinessType.EXPORT)
// @PostMapping("/export")
// public void export(HttpServletResponse response, MdmKqRuleVo mdmKqRuleVo)
// {
// List<MdmKqRuleVo> list = mdmKqRuleService.selectMdmKqRuleList(mdmKqRule);
// ExcelUtil<MdmKqRule> util = new ExcelUtil<MdmKqRule>(MdmKqRule.class);
// util.exportExcel(response, list, "考勤规则数据");
// }
/**
* 获取考勤规则详细信息
*/
// todo @RequiresPermissions("gen:rule:query")
@GetMapping(value = "/{ruleId}")
public MdmKqRuleDto getInfo(@PathVariable("ruleId") Long ruleId) {
MdmKqRuleDto mdmKqRuleDto = mdmKqRuleService.selectMdmKqRuleByRuleId(ruleId);
mdmKqRuleDto.setCurrently(LocalTime.now());
return mdmKqRuleDto;
}
}
package com.sfa.system.controller.query;
import com.sfa.common.security.annotation.InnerAuth;
import com.sfa.system.api.pojo.response.SiteDto;
import com.sfa.system.service.query.ISiteQueryService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import java.util.List;
......@@ -26,7 +25,12 @@ public class SiteQueryController {
*/
@GetMapping("/region")
public List<SiteDto> regionList(String provinceNum,String cityNum){
List<SiteDto> siteDtos = siteQueryService.regionList(provinceNum,cityNum);
return siteDtos;
return siteQueryService.regionList(provinceNum,cityNum);
}
@InnerAuth
@PostMapping("/county")
public SiteDto getCountyName(@RequestBody SiteDto siteDto){
return siteQueryService.getCountyName(siteDto.getProvinceName(),siteDto.getCityName(),siteDto.getCountyName());
}
}
......@@ -156,7 +156,7 @@ public class SysUserQueryController extends BaseController
}
/**
* 获取用户信息
* 登录后获取用户信息
*
* @return 用户信息
*/
......@@ -176,6 +176,7 @@ public class SysUserQueryController extends BaseController
}
/**
* 管理后台-用户列表-查看用户详情
* 根据用户编号获取详细信息
*/
@RequiresPermissions("system:user:query")
......
......@@ -14,4 +14,5 @@ public interface IMdmCityDao {
SiteDto selectOneCity(String provinceNum, String cityNum);
SiteDto getCountyName(String provinceName,String cityName,String countyName);
}
......@@ -99,4 +99,5 @@ public interface ISysPostDao
public int updatePost(SysPost post);
SysPostDto selectPostByPostCode(String postCode);
SysPostDto selectByPostId(Long postId);
}
......@@ -2,9 +2,8 @@ package com.sfa.system.domain.dao.impl;
import com.sfa.common.core.enums.ECode;
import com.sfa.common.core.exception.CheckedException;
import com.sfa.common.core.utils.bean.BeanTransitions;
import com.sfa.common.core.utils.bean.BeanUtils;
import com.sfa.system.api.domain.MdmCity;
import com.sfa.system.domain.entity.MdmCity;
import com.sfa.system.api.pojo.response.SiteDto;
import com.sfa.system.domain.dao.IMdmCityDao;
import com.sfa.system.domain.mapper.MdmCityMapper;
......@@ -50,5 +49,11 @@ public class MdmCityDaoImpl implements IMdmCityDao {
return BeanUtils.transitionDto(cityDo, SiteDto.class);
}
@Override
public SiteDto getCountyName(String provinceName,String cityName,String countyName) {
MdmCity cityDo = mdmCityMapper.selectOneByCountyName(provinceName,cityName,countyName);
return BeanUtils.transitionDto(cityDo, SiteDto.class);
}
}
......@@ -188,4 +188,10 @@ public class SysPostDaoImpl implements ISysPostDao
return BeanUtils.transitionDto(sysPost,SysPostDto.class);
}
@Override
public SysPostDto selectByPostId(Long postId) {
SysPost sysPost = postMapper.selectById(postId);
return BeanUtils.transitionDto(sysPost,SysPostDto.class);
}
}
......@@ -251,7 +251,7 @@ public class SysUserDaoImpl implements ISysUserDao {
SysUser user = new SysUser();
BeanUtils.copyProperties(userVo, user);
// 补充岗位
// 补充角色
SysRole sysRole = roleMapper.selectById(user.getRoleId());
user.setRoleName(sysRole.getRoleName());
......
package com.sfa.system.domain.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
/**
* 省市区地址表
* @TableName mdm_city
*/
@TableName(value ="mdm_city")
@Data
public class MdmCity implements Serializable {
/**
* 省编码
*/
private String provinceNum;
/**
* 省名称
*/
private String provinceName;
/**
* 城市编号
*/
private String cityNum;
/**
* 城市名称
*/
private String cityName;
/**
* 区/县编码
*/
private String countyNum;
/**
* 区/县名称
*/
private String countyName;
/**
* 编码
*/
private String num;
/**
* 名称
*/
private String name;
@TableField(exist = false)
private static final long serialVersionUID = 1L;
}
\ No newline at end of file
......@@ -43,6 +43,7 @@ public class MdmKqRule extends BaseDo
private LocalTime secBegintime;
/** 午班打卡允许结束时间 */
@TableField(updateStrategy = FieldStrategy.IGNORED)
private LocalTime secEndtime;
/** 下班打卡允许开始时间 */
......
......@@ -38,7 +38,7 @@ public class SysPost extends BaseDo
private Integer postSort;
/** 考勤规则ID */
private String ruleNum;
private Long ruleId;
/** 考勤规则名称 */
private String ruleName;
......
package com.sfa.system.domain.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.sfa.system.api.domain.MdmCity;
import com.sfa.system.domain.entity.MdmCity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
......@@ -12,7 +12,7 @@ import java.util.List;
* @author a02200059
* @description 针对表【mdm_city(省市区地址表)】的数据库操作Mapper
* @createDate 2024-10-31 16:23:12
* @Entity com.sfa.system.api.domain.MdmCity
* @Entity com.sfa.system.domain.entity.MdmCity
*/
@Mapper
@Repository
......@@ -23,6 +23,8 @@ public interface MdmCityMapper extends BaseMapper<MdmCity> {
List<MdmCity> selectCountys(String cityNum);
MdmCity selectOneCity(@Param("provinceNum") String provinceNum,@Param("cityNum") String cityNum);
MdmCity selectOneByCountyName(@Param("provinceName") String provinceName,@Param("cityName") String cityName,@Param("countyName") String countyName);
}
......
......@@ -44,21 +44,14 @@ public class MdmKqRuleDto {
/** 下班打卡允许结束时间 */
private LocalTime thiEndtime;
/** 创建者 */
private String createBy;
/** 创建时间 */
private Date createTime;
/** 更新者 */
private String updateBy;
/** 备注 */
private String remark;
/** 更新时间 */
private Date updateTime;
private LocalTime currently;
/** 记录版本 */
private Long flag;
/** 备注 */
private String remark;
/** 删除标识 */
private String delFlag;
}
......@@ -34,7 +34,7 @@ public class SysPostDto {
private Integer postSort;
/** 考勤规则ID */
private String ruleNum;
private Long ruleId;
/** 考勤规则名称 */
private String ruleName;
......
......@@ -30,14 +30,11 @@ public class SysUserCoreServiceImpl implements ISysUserCoreService {
@Override
public void insertUser(UserVo userVo) {
addCity(userVo);
SysPostDto sysPostDto = sysPostDao.selectPostByPostCode(userVo.getPostCode());
SysPostDto sysPostDto = sysPostDao.selectByPostId(userVo.getPostId());
// 关联岗位、考勤规则
if (Objects.nonNull(sysPostDto)) {
userVo.setPostCode(sysPostDto.getPostCode())
.setPostName(sysPostDto.getPostName())
.setRuleNum(sysPostDto.getRuleNum())
.setRuleName(sysPostDto.getRuleName());
}
userVo.setPostName(sysPostDto.getPostName())
.setRuleId(sysPostDto.getRuleId())
.setRuleName(sysPostDto.getRuleName());
sysUserDao.insertUser(userVo);
}
......@@ -47,13 +44,10 @@ public class SysUserCoreServiceImpl implements ISysUserCoreService {
sysUserDao.checkUserDataScope(userVo.getUserId());
addCity(userVo);
// 关联岗位、考勤规则
SysPostDto sysPostDto = sysPostDao.selectPostByPostCode(userVo.getPostCode());
if (Objects.nonNull(sysPostDto)) {
userVo.setPostCode(sysPostDto.getPostCode())
.setPostName(sysPostDto.getPostName())
.setRuleNum(sysPostDto.getRuleNum())
.setRuleName(sysPostDto.getRuleName());
}
SysPostDto sysPostDto = sysPostDao.selectByPostId(userVo.getPostId());
userVo.setPostName(sysPostDto.getPostName())
.setRuleId(sysPostDto.getRuleId())
.setRuleName(sysPostDto.getRuleName());
sysUserDao.updateUser(userVo);
}
......
......@@ -11,4 +11,6 @@ import java.util.List;
*/
public interface ISiteQueryService {
List<SiteDto> regionList(String provinceNum,String cityNum);
SiteDto getCountyName(String provinceName,String cityName,String countyName);
}
......@@ -29,4 +29,10 @@ public class SiteQueryServiceImpl implements ISiteQueryService {
public List<SiteDto> regionList(String provinceNum,String cityNum) {
return iMdmCityDao.regionList(provinceNum, cityNum);
}
@Override
public SiteDto getCountyName(String provinceName,String cityName,String countyName) {
return iMdmCityDao.getCountyName(provinceName,cityName,countyName);
}
}
......@@ -4,7 +4,7 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.sfa.system.domain.mapper.MdmCityMapper">
<resultMap id="BaseResultMap" type="com.sfa.system.api.domain.MdmCity">
<resultMap id="BaseResultMap" type="com.sfa.system.domain.entity.MdmCity">
<result property="provinceNum" column="province_num" jdbcType="VARCHAR"/>
<result property="provinceName" column="province_name" jdbcType="VARCHAR"/>
<result property="cityNum" column="city_num" jdbcType="VARCHAR"/>
......@@ -13,7 +13,7 @@
<result property="countyName" column="county_name" jdbcType="VARCHAR"/>
</resultMap>
<resultMap id="RegionMap" type="com.sfa.system.api.domain.MdmCity">
<resultMap id="RegionMap" type="com.sfa.system.domain.entity.MdmCity">
<result property="num" column="num" jdbcType="VARCHAR"/>
<result property="name" column="name" jdbcType="VARCHAR"/>
</resultMap>
......@@ -40,5 +40,13 @@
from mdm_city where city_num = #{cityNum} and province_num = #{provinceNum}
</select>
<select id="selectOneByCountyName" resultMap="BaseResultMap">
select <include refid="Base_Column_List"/>
from mdm_city
where province_name = #{provinceName}
and city_name = #{cityName}
and county_name = #{countyName}
</select>
</mapper>
......@@ -8,7 +8,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<id property="postId" column="post_id" />
<result property="postCode" column="post_code" />
<result property="postName" column="post_name" />
<result property="ruleNum" column="rule_num" />
<result property="ruleId" column="rule_id" />
<result property="ruleName" column="rule_name" />
<result property="postSort" column="post_sort" />
<result property="status" column="status" />
......@@ -22,7 +22,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</resultMap>
<sql id="selectPostVo">
select post_id, post_code, post_name, rule_num, rule_name, post_sort, status, create_by, create_user_id, create_time, update_by, update_user_id, update_time, remark
select post_id, post_code, post_name, rule_id, rule_name, post_sort, status, create_by, create_user_id, create_time, update_by, update_user_id, update_time, remark
from sys_post
</sql>
......
......@@ -30,9 +30,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="workProvinceName" column="work_province_name" />
<result property="workCityNum" column="work_city_num" />
<result property="workCityName" column="work_city_name" />
<result property="postCode" column="post_code" />
<result property="postId" column="post_id" />
<result property="postName" column="post_name" />
<result property="ruleNum" column="rule_num" />
<result property="ruleId" column="rule_id" />
<result property="ruleName" column="rule_name" />
<association property="dept" javaType="com.sfa.system.api.domain.SysDept" resultMap="deptResult" />
......@@ -60,7 +60,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<sql id="selectUserVo">
select u.user_id, u.dept_id, u.user_name, u.nick_name,u.password, u.avatar, u.phonenumber, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark,
u.role_id,u.role_name,u.post_code,u.post_name,u.rule_num,u.rule_name,u.work_province_num,u.work_province_name,u.work_city_num,u.work_city_name,
u.role_id,u.role_name,u.post_id,u.post_name,u.rule_id,u.rule_name,u.work_province_num,u.work_province_name,u.work_city_num,u.work_city_name,
d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.status as dept_status,
r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.status as role_status
from sys_user u
......@@ -224,7 +224,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="selectUserPage" parameterType="com.sfa.system.api.domain.SysUser" resultMap="SysUserResult">
select u.user_id, u.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.sex, u.status,
u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark,u.post_code,u.post_name,u.rule_num,u.rule_name, d.dept_name, d.leader from sys_user
u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark,u.post_id,u.post_name,u.rule_id,u.rule_name, d.dept_name, d.leader from sys_user
u
left join sys_dept d on u.dept_id = d.dept_id
where u.del_flag = '0'
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论