修改移动考勤服务
parent
9ac6586e86
commit
8c11119fcc
|
@ -2,6 +2,8 @@ package com.yanzhu.manage.domain;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
import com.yanzhu.common.core.annotation.Excel;
|
import com.yanzhu.common.core.annotation.Excel;
|
||||||
import com.yanzhu.common.core.web.domain.BaseEntity;
|
import com.yanzhu.common.core.web.domain.BaseEntity;
|
||||||
|
@ -43,6 +45,16 @@ public class ProMobileAttendanceConfig extends BaseEntity
|
||||||
@Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd")
|
@Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
private Date endDate;
|
private Date endDate;
|
||||||
|
|
||||||
|
private List<ProMobileAttendanceConfigGroup> groupList;
|
||||||
|
|
||||||
|
public List<ProMobileAttendanceConfigGroup> getGroupList() {
|
||||||
|
return groupList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setGroupList(List<ProMobileAttendanceConfigGroup> groupList) {
|
||||||
|
this.groupList = groupList;
|
||||||
|
}
|
||||||
|
|
||||||
/** 地址 */
|
/** 地址 */
|
||||||
@Excel(name = "地址")
|
@Excel(name = "地址")
|
||||||
private String address;
|
private String address;
|
||||||
|
|
|
@ -58,4 +58,14 @@ public interface ProMobileAttendanceConfigGroupMapper
|
||||||
* @return 结果
|
* @return 结果
|
||||||
*/
|
*/
|
||||||
public int deleteProMobileAttendanceConfigGroupByIds(Long[] ids);
|
public int deleteProMobileAttendanceConfigGroupByIds(Long[] ids);
|
||||||
}
|
|
||||||
|
/**
|
||||||
|
* 根据配置ID删除移动端考勤配置分组信息
|
||||||
|
*
|
||||||
|
* @param cfgId 配置ID
|
||||||
|
* @return 结果
|
||||||
|
*/
|
||||||
|
public int deleteProMobileAttendanceConfigGroupByCfgId(Long cfgId);
|
||||||
|
|
||||||
|
public int insertProMobileAttendanceConfigGroupBatch(List<ProMobileAttendanceConfigGroup> groupList);
|
||||||
|
}
|
|
@ -38,6 +38,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
<if test="groupId != null">#{groupId},</if>
|
<if test="groupId != null">#{groupId},</if>
|
||||||
</trim>
|
</trim>
|
||||||
</insert>
|
</insert>
|
||||||
|
<insert id="insertProMobileAttendanceConfigGroupBatch">
|
||||||
|
insert into pro_mobile_attendance_config_group (cfg_id, group_id)
|
||||||
|
values
|
||||||
|
<foreach collection="groupList" item="item" index="index" separator=";">
|
||||||
|
(#{item.cfgId}, #{item.groupId})
|
||||||
|
</foreach>
|
||||||
|
</insert>
|
||||||
|
|
||||||
<update id="updateProMobileAttendanceConfigGroup" parameterType="ProMobileAttendanceConfigGroup">
|
<update id="updateProMobileAttendanceConfigGroup" parameterType="ProMobileAttendanceConfigGroup">
|
||||||
update pro_mobile_attendance_config_group
|
update pro_mobile_attendance_config_group
|
||||||
|
@ -58,4 +65,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
#{id}
|
#{id}
|
||||||
</foreach>
|
</foreach>
|
||||||
</delete>
|
</delete>
|
||||||
|
|
||||||
|
<delete id="deleteProMobileAttendanceConfigGroupByCfgId" parameterType="Long">
|
||||||
|
delete from pro_mobile_attendance_config_group where cfg_id = #{cfgId}
|
||||||
|
</delete>
|
||||||
</mapper>
|
</mapper>
|
|
@ -1,108 +0,0 @@
|
||||||
package com.yanzhu.manage.controller.remoteAttendance;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
import java.io.IOException;
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
|
||||||
|
|
||||||
import com.yanzhu.common.core.utils.poi.ExcelUtil;
|
|
||||||
import com.yanzhu.common.core.web.controller.BaseController;
|
|
||||||
import com.yanzhu.common.core.web.domain.AjaxResult;
|
|
||||||
import com.yanzhu.common.core.web.page.TableDataInfo;
|
|
||||||
import com.yanzhu.common.log.annotation.Log;
|
|
||||||
import com.yanzhu.common.log.enums.BusinessType;
|
|
||||||
import com.yanzhu.common.security.annotation.RequiresPermissions;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
|
||||||
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.DeleteMapping;
|
|
||||||
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.yanzhu.manage.domain.ProMobileAttendanceConfigGroup;
|
|
||||||
import com.yanzhu.manage.service.IProMobileAttendanceConfigGroupService;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 移动端考勤配置分组信息Controller
|
|
||||||
*
|
|
||||||
* @author yanzhu
|
|
||||||
* @date 2025-08-29
|
|
||||||
*/
|
|
||||||
@RestController
|
|
||||||
@RequestMapping("/mobileAttendanceConfigGroup")
|
|
||||||
public class ProMobileAttendanceConfigGroupController extends BaseController
|
|
||||||
{
|
|
||||||
@Autowired
|
|
||||||
private IProMobileAttendanceConfigGroupService proMobileAttendanceConfigGroupService;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 查询移动端考勤配置分组信息列表
|
|
||||||
*/
|
|
||||||
@RequiresPermissions("manage:mobileAttendanceConfigGroup:list")
|
|
||||||
@GetMapping("/list")
|
|
||||||
public TableDataInfo list(ProMobileAttendanceConfigGroup proMobileAttendanceConfigGroup)
|
|
||||||
{
|
|
||||||
startPage();
|
|
||||||
List<ProMobileAttendanceConfigGroup> list = proMobileAttendanceConfigGroupService.selectProMobileAttendanceConfigGroupList(proMobileAttendanceConfigGroup);
|
|
||||||
return getDataTable(list);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 导出移动端考勤配置分组信息列表
|
|
||||||
*/
|
|
||||||
@RequiresPermissions("manage:mobileAttendanceConfigGroup:export")
|
|
||||||
@Log(title = "移动端考勤配置分组信息", businessType = BusinessType.EXPORT)
|
|
||||||
@PostMapping("/export")
|
|
||||||
public void export(HttpServletResponse response, ProMobileAttendanceConfigGroup proMobileAttendanceConfigGroup)
|
|
||||||
{
|
|
||||||
List<ProMobileAttendanceConfigGroup> list = proMobileAttendanceConfigGroupService.selectProMobileAttendanceConfigGroupList(proMobileAttendanceConfigGroup);
|
|
||||||
ExcelUtil<ProMobileAttendanceConfigGroup> util = new ExcelUtil<ProMobileAttendanceConfigGroup>(ProMobileAttendanceConfigGroup.class);
|
|
||||||
util.exportExcel(response, list, "移动端考勤配置分组信息数据");
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取移动端考勤配置分组信息详细信息
|
|
||||||
*/
|
|
||||||
@RequiresPermissions("manage:mobileAttendanceConfigGroup:query")
|
|
||||||
@GetMapping(value = "/{id}")
|
|
||||||
public AjaxResult getInfo(@PathVariable("id") Long id)
|
|
||||||
{
|
|
||||||
return success(proMobileAttendanceConfigGroupService.selectProMobileAttendanceConfigGroupById(id));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 新增移动端考勤配置分组信息
|
|
||||||
*/
|
|
||||||
@RequiresPermissions("manage:mobileAttendanceConfigGroup:add")
|
|
||||||
@Log(title = "移动端考勤配置分组信息", businessType = BusinessType.INSERT)
|
|
||||||
@PostMapping
|
|
||||||
public AjaxResult add(@RequestBody ProMobileAttendanceConfigGroup proMobileAttendanceConfigGroup)
|
|
||||||
{
|
|
||||||
return toAjax(proMobileAttendanceConfigGroupService.insertProMobileAttendanceConfigGroup(proMobileAttendanceConfigGroup));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 修改移动端考勤配置分组信息
|
|
||||||
*/
|
|
||||||
@RequiresPermissions("manage:mobileAttendanceConfigGroup:edit")
|
|
||||||
@Log(title = "移动端考勤配置分组信息", businessType = BusinessType.UPDATE)
|
|
||||||
@PutMapping
|
|
||||||
public AjaxResult edit(@RequestBody ProMobileAttendanceConfigGroup proMobileAttendanceConfigGroup)
|
|
||||||
{
|
|
||||||
return toAjax(proMobileAttendanceConfigGroupService.updateProMobileAttendanceConfigGroup(proMobileAttendanceConfigGroup));
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 删除移动端考勤配置分组信息
|
|
||||||
*/
|
|
||||||
@RequiresPermissions("manage:mobileAttendanceConfigGroup:remove")
|
|
||||||
@Log(title = "移动端考勤配置分组信息", businessType = BusinessType.DELETE)
|
|
||||||
@DeleteMapping("/{ids}")
|
|
||||||
public AjaxResult remove(@PathVariable Long[] ids)
|
|
||||||
{
|
|
||||||
return toAjax(proMobileAttendanceConfigGroupService.deleteProMobileAttendanceConfigGroupByIds(ids));
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -4,6 +4,8 @@ import java.util.List;
|
||||||
|
|
||||||
import com.yanzhu.common.core.context.SecurityContextHolder;
|
import com.yanzhu.common.core.context.SecurityContextHolder;
|
||||||
import com.yanzhu.common.core.utils.DateUtils;
|
import com.yanzhu.common.core.utils.DateUtils;
|
||||||
|
import com.yanzhu.manage.domain.ProMobileAttendanceConfigGroup;
|
||||||
|
import com.yanzhu.manage.mapper.ProMobileAttendanceConfigGroupMapper;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import com.yanzhu.manage.mapper.ProMobileAttendanceConfigMapper;
|
import com.yanzhu.manage.mapper.ProMobileAttendanceConfigMapper;
|
||||||
|
@ -22,6 +24,8 @@ public class ProMobileAttendanceConfigServiceImpl implements IProMobileAttendanc
|
||||||
@Autowired
|
@Autowired
|
||||||
private ProMobileAttendanceConfigMapper proMobileAttendanceConfigMapper;
|
private ProMobileAttendanceConfigMapper proMobileAttendanceConfigMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private ProMobileAttendanceConfigGroupMapper proMobileAttendanceConfigGroupMapper;
|
||||||
/**
|
/**
|
||||||
* 查询移动端考勤配置
|
* 查询移动端考勤配置
|
||||||
*
|
*
|
||||||
|
@ -57,7 +61,17 @@ public class ProMobileAttendanceConfigServiceImpl implements IProMobileAttendanc
|
||||||
{
|
{
|
||||||
proMobileAttendanceConfig.setCreateBy(SecurityContextHolder.getUserName());
|
proMobileAttendanceConfig.setCreateBy(SecurityContextHolder.getUserName());
|
||||||
proMobileAttendanceConfig.setCreateTime(DateUtils.getNowDate());
|
proMobileAttendanceConfig.setCreateTime(DateUtils.getNowDate());
|
||||||
return proMobileAttendanceConfigMapper.insertProMobileAttendanceConfig(proMobileAttendanceConfig);
|
int cnt= proMobileAttendanceConfigMapper.insertProMobileAttendanceConfig(proMobileAttendanceConfig);
|
||||||
|
if(cnt>0){
|
||||||
|
List<ProMobileAttendanceConfigGroup> groupList = proMobileAttendanceConfig.getGroupList();
|
||||||
|
if(groupList!=null && groupList.size()>0){
|
||||||
|
for(ProMobileAttendanceConfigGroup group:groupList){
|
||||||
|
group.setCfgId(proMobileAttendanceConfig.getId());
|
||||||
|
}
|
||||||
|
proMobileAttendanceConfigGroupMapper.insertProMobileAttendanceConfigGroupBatch(groupList);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return cnt;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -71,7 +85,20 @@ public class ProMobileAttendanceConfigServiceImpl implements IProMobileAttendanc
|
||||||
{
|
{
|
||||||
proMobileAttendanceConfig.setUpdateBy(SecurityContextHolder.getUserName());
|
proMobileAttendanceConfig.setUpdateBy(SecurityContextHolder.getUserName());
|
||||||
proMobileAttendanceConfig.setUpdateTime(DateUtils.getNowDate());
|
proMobileAttendanceConfig.setUpdateTime(DateUtils.getNowDate());
|
||||||
return proMobileAttendanceConfigMapper.updateProMobileAttendanceConfig(proMobileAttendanceConfig);
|
int cnt= proMobileAttendanceConfigMapper.updateProMobileAttendanceConfig(proMobileAttendanceConfig);
|
||||||
|
if(cnt>0){
|
||||||
|
List<ProMobileAttendanceConfigGroup> groupList = proMobileAttendanceConfig.getGroupList();
|
||||||
|
// 先根据配置ID删除原有的关联数据
|
||||||
|
proMobileAttendanceConfigGroupMapper.deleteProMobileAttendanceConfigGroupByCfgId(proMobileAttendanceConfig.getId());
|
||||||
|
// 再重新插入新的关联数据
|
||||||
|
if(groupList!=null && groupList.size()>0){
|
||||||
|
for(ProMobileAttendanceConfigGroup group:groupList){
|
||||||
|
group.setCfgId(proMobileAttendanceConfig.getId());
|
||||||
|
}
|
||||||
|
proMobileAttendanceConfigGroupMapper.insertProMobileAttendanceConfigGroupBatch(groupList);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return cnt;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue