parent
1f6a10abc9
commit
a628585597
@ -0,0 +1,195 @@
|
|||||||
|
package com.ruoyi.web.controller.system;
|
||||||
|
|
||||||
|
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||||
|
import com.ruoyi.common.annotation.Log;
|
||||||
|
import com.ruoyi.common.core.controller.BaseController;
|
||||||
|
import com.ruoyi.common.core.domain.R;
|
||||||
|
import com.ruoyi.common.core.domain.entity.SysDept;
|
||||||
|
import com.ruoyi.common.core.domain.entity.SysRole;
|
||||||
|
import com.ruoyi.common.core.domain.entity.SysUser;
|
||||||
|
import com.ruoyi.common.core.service.DictService;
|
||||||
|
import com.ruoyi.common.enums.BusinessType;
|
||||||
|
import com.ruoyi.pay.domain.PayAttendance;
|
||||||
|
import com.ruoyi.pay.domain.PayButie;
|
||||||
|
import com.ruoyi.pay.domain.PayEmployeeInfo;
|
||||||
|
import com.ruoyi.pay.domain.bo.*;
|
||||||
|
import com.ruoyi.pay.domain.vo.*;
|
||||||
|
import com.ruoyi.pay.mapper.*;
|
||||||
|
import com.ruoyi.pay.service.IPayEmployeeInfoService;
|
||||||
|
import com.ruoyi.pay.service.impl.*;
|
||||||
|
import com.ruoyi.system.service.ISysDeptService;
|
||||||
|
import com.ruoyi.system.service.impl.SysRoleServiceImpl;
|
||||||
|
import com.ruoyi.system.service.impl.SysUserServiceImpl;
|
||||||
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||||
|
import org.springframework.web.bind.annotation.PathVariable;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import javax.validation.constraints.NotEmpty;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 租户数据清理——彻底清理
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Validated
|
||||||
|
@RequiredArgsConstructor
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/system/clean")
|
||||||
|
public class SysCompanyDataCleanController extends BaseController {
|
||||||
|
private final PaySalaryReportMapper salaryReportMapper;
|
||||||
|
private final PaySalaryReportServiceImpl salaryReportService;
|
||||||
|
private final PayEmployeeInfoServiceImpl payEmployeeInfoService;
|
||||||
|
private final PayButieEmplyeeServiceImpl payButieEmplyeeService;
|
||||||
|
private final PayButieServiceImpl butieService;
|
||||||
|
private final PayRequireAttendanceReportServiceImpl payRequireAttendanceReportService;
|
||||||
|
private final PayDayWorkHoursServiceImpl payDayWorkHoursService;
|
||||||
|
private final PayWorkOrderBaohuoServiceImpl payWorkOrderBaohuoService;
|
||||||
|
private final PayProductsServiceImpl payProductsService;
|
||||||
|
private final PayMaterialServiceImpl payMaterialService;
|
||||||
|
private final PayTenantServiceImpl payTenantService;
|
||||||
|
private final SysUserServiceImpl userService;
|
||||||
|
private final SysRoleServiceImpl roleService;
|
||||||
|
private final PayAttendanceServiceImpl payAttendanceService;
|
||||||
|
private final ISysDeptService deptService;
|
||||||
|
private final PaySubInfoServiceImpl subInfoService;
|
||||||
|
/**
|
||||||
|
* 数据清理
|
||||||
|
* @param ids
|
||||||
|
* @return
|
||||||
|
* @throws Exception
|
||||||
|
*/
|
||||||
|
@SaCheckPermission("pay:company:clean")
|
||||||
|
@Log(title = "公司数据清理", businessType = BusinessType.DELETE)
|
||||||
|
@Transactional
|
||||||
|
@DeleteMapping("/tenant/{ids}")
|
||||||
|
public R<Void> delete(@NotEmpty(message = "主键不能为空")
|
||||||
|
@PathVariable Long[] ids) throws Exception {
|
||||||
|
for(Long id:ids){
|
||||||
|
//删除公司下面的数据信息
|
||||||
|
//工资总表
|
||||||
|
PaySalaryReportBo salaryReportBo = new PaySalaryReportBo();
|
||||||
|
salaryReportBo.setTenantId(id);
|
||||||
|
List<PaySalaryReportVo> asWorkOrderVos = salaryReportService.queryList(salaryReportBo);
|
||||||
|
List<Long> salaryids = asWorkOrderVos.stream().map(PaySalaryReportVo::getId).collect(Collectors.toList());
|
||||||
|
if(salaryids!=null&&salaryids.size()>0){
|
||||||
|
salaryReportService.deleteWithValidByIds(salaryids,true);
|
||||||
|
}
|
||||||
|
//日工工时
|
||||||
|
PayDayWorkHoursBo riBo = new PayDayWorkHoursBo();
|
||||||
|
riBo.setTenantId(id);
|
||||||
|
List<PayDayWorkHoursVo> riVos = payDayWorkHoursService.queryList(riBo);
|
||||||
|
List<Long> riids = riVos.stream().map(PayDayWorkHoursVo::getId).collect(Collectors.toList());
|
||||||
|
if(riids!=null&&riids.size()>0) {
|
||||||
|
payDayWorkHoursService.deleteWithValidByIds(riids, true);
|
||||||
|
}
|
||||||
|
//包活工单
|
||||||
|
PayWorkOrderBaohuoBo wBo = new PayWorkOrderBaohuoBo();
|
||||||
|
wBo.setTenantId(id);
|
||||||
|
List<PayWorkOrderBaohuoVo> rlVos = payWorkOrderBaohuoService.queryList(wBo);
|
||||||
|
List<Long> wids = rlVos.stream().map(PayWorkOrderBaohuoVo::getId).collect(Collectors.toList());
|
||||||
|
if(wids!=null&&wids.size()>0) {
|
||||||
|
payWorkOrderBaohuoService.deleteWithValidByIds(wids,true);
|
||||||
|
}
|
||||||
|
//产品
|
||||||
|
PayProductsBo pBo = new PayProductsBo();
|
||||||
|
pBo.setTenantId(id);
|
||||||
|
List<PayProductsVo> xjVos = payProductsService.queryList(pBo);
|
||||||
|
List<Long> xjids = xjVos.stream().map(PayProductsVo::getId).collect(Collectors.toList());
|
||||||
|
if(xjids!=null&&xjids.size()>0) {
|
||||||
|
payProductsService.deleteWithValidByIds(xjids, true);
|
||||||
|
}
|
||||||
|
//毛料
|
||||||
|
PayMaterialBo materialBo = new PayMaterialBo();
|
||||||
|
materialBo.setTenantId(id);
|
||||||
|
List<PayMaterialVo> asEventVos = payMaterialService.queryList(materialBo);
|
||||||
|
List<Long> eids = asEventVos.stream().map( PayMaterialVo::getId).collect(Collectors.toList());
|
||||||
|
if(eids!=null&&eids.size()>0) {
|
||||||
|
payMaterialService.deleteWithValidByIds(eids, true);
|
||||||
|
}
|
||||||
|
//员工扣补
|
||||||
|
PayButieEmplyeeBo ebBo = new PayButieEmplyeeBo();
|
||||||
|
ebBo.setTenantId(id);
|
||||||
|
List<PayButieEmplyeeVo> ebVos = payButieEmplyeeService.queryList(ebBo);
|
||||||
|
List<Long> ebids = ebVos.stream().map(PayButieEmplyeeVo::getId).collect(Collectors.toList());
|
||||||
|
if(ebids!=null&&ebids.size()>0) {
|
||||||
|
payButieEmplyeeService.deleteWithValidByIds(ebids, true);
|
||||||
|
}
|
||||||
|
//补贴
|
||||||
|
PayButieBo btBo = new PayButieBo();
|
||||||
|
btBo.setTenantId(id);
|
||||||
|
List<PayButieVo> sxtVos = butieService.queryList(btBo);
|
||||||
|
List<Long> sxtids = sxtVos.stream().map(PayButieVo::getId).collect(Collectors.toList());
|
||||||
|
if(sxtids!=null&&sxtids.size()>0) {
|
||||||
|
butieService.deleteWithValidByIds(sxtids, true);
|
||||||
|
}
|
||||||
|
//应出勤
|
||||||
|
PayRequireAttendanceReportBo acBo = new PayRequireAttendanceReportBo();
|
||||||
|
acBo.setTenantId(id);
|
||||||
|
List<PayRequireAttendanceReportVo> acVos = payRequireAttendanceReportService.queryList(acBo);
|
||||||
|
List<Long> acids = acVos.stream().map(PayRequireAttendanceReportVo::getId).collect(Collectors.toList());
|
||||||
|
if(acids!=null&&acids.size()>0) {
|
||||||
|
payRequireAttendanceReportService.deleteWithValidByIds(acids, true);
|
||||||
|
}
|
||||||
|
//考勤
|
||||||
|
PayAttendanceBo aBo = new PayAttendanceBo();
|
||||||
|
aBo.setTenantId(id);
|
||||||
|
List<PayAttendanceVo> aVos = payAttendanceService.queryList(aBo);
|
||||||
|
List<Long> aids = aVos.stream().map(PayAttendanceVo::getId).collect(Collectors.toList());
|
||||||
|
if(aids!=null&&aids.size()>0) {
|
||||||
|
payAttendanceService.deleteWithValidByIds(aids, true);
|
||||||
|
}
|
||||||
|
//员工
|
||||||
|
PayEmployeeInfoBo empBo = new PayEmployeeInfoBo();
|
||||||
|
empBo.setTenantId(id);
|
||||||
|
List<PayEmployeeInfoVo> empVos = payEmployeeInfoService.queryList(empBo);
|
||||||
|
List<Long> empids = empVos.stream().map(PayEmployeeInfoVo::getId).collect(Collectors.toList());
|
||||||
|
if(empids!=null&&empids.size()>0) {
|
||||||
|
payEmployeeInfoService.deleteWithValidByIds(empids, true);
|
||||||
|
}
|
||||||
|
//部门
|
||||||
|
SysDept bmBo = new SysDept();
|
||||||
|
bmBo.setTenantId(id);
|
||||||
|
List<SysDept> pjVos = deptService.selectDeptList(bmBo);
|
||||||
|
List<Long> bmids = pjVos.stream().map(SysDept::getDeptId).collect(Collectors.toList());
|
||||||
|
if(bmids!=null&&bmids.size()>0) {
|
||||||
|
for(Long bmid:bmids){
|
||||||
|
deptService.deleteDeptById(bmid);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//------------------------------------------------------------------------------------------------------
|
||||||
|
//删除公司订阅信息
|
||||||
|
PaySubInfoBo subInfo=new PaySubInfoBo();
|
||||||
|
subInfo.setTenantId(id);
|
||||||
|
List<PaySubInfoVo> infoVos = subInfoService.queryList(subInfo);
|
||||||
|
List<Long> sids = infoVos.stream().map(PaySubInfoVo::getId).collect(Collectors.toList());
|
||||||
|
if(sids!=null&&sids.size()>0){
|
||||||
|
subInfoService.deleteWithValidByIds(sids,true);
|
||||||
|
}
|
||||||
|
//删除公司下所有用户
|
||||||
|
SysUser user = new SysUser();
|
||||||
|
user.setTenantId(id);
|
||||||
|
List<SysUser> users = userService.selectUserList(user);
|
||||||
|
if(users!=null&&users.size()>0){
|
||||||
|
List<Long> uids = users.stream().map(SysUser::getUserId).collect(Collectors.toList());
|
||||||
|
userService.deleteUserByIds(uids.toArray(uids.toArray(new Long[uids.size()])));
|
||||||
|
}
|
||||||
|
|
||||||
|
//删除公司下的所有角色
|
||||||
|
SysRole role = new SysRole();
|
||||||
|
role.setTenantId(id);
|
||||||
|
List<SysRole> roles = roleService.selectRoleList(role);
|
||||||
|
if(roles!=null&&roles.size()>0){
|
||||||
|
List<Long> rids = roles.stream().map(SysRole::getRoleId).collect(Collectors.toList());
|
||||||
|
roleService.deleteRoleByIds(rids.toArray(rids.toArray(new Long[rids.size()])));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return toAjax(payTenantService.deleteWithValidByIds(Arrays.asList(ids), true));
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in new issue