|
@@ -2,11 +2,15 @@ package cn.ezhizao.project.business.socialSecurity.controller;
|
|
|
|
|
|
import cn.ezhizao.common.utils.PdfUtil;
|
|
|
import cn.ezhizao.common.utils.SecurityUtils;
|
|
|
+import cn.ezhizao.common.utils.poi.ExcelUtil;
|
|
|
+import cn.ezhizao.framework.aspectj.lang.annotation.Log;
|
|
|
+import cn.ezhizao.framework.aspectj.lang.enums.BusinessType;
|
|
|
import cn.ezhizao.framework.web.controller.BaseController;
|
|
|
import cn.ezhizao.framework.web.domain.AjaxResult;
|
|
|
import cn.ezhizao.framework.web.page.TableDataInfo;
|
|
|
import cn.ezhizao.project.business.company.domain.BizCompany;
|
|
|
import cn.ezhizao.project.business.company.service.IBizCompanyService;
|
|
|
+import cn.ezhizao.project.business.finance.IndividualIncomeTaxIsZero.domain.BizFinancialIndividualIncomeTaxDetailIsZero;
|
|
|
import cn.ezhizao.project.business.housingFund.domain.BizHousingFundConfirmDetail;
|
|
|
import cn.ezhizao.project.business.housingFund.domain.BizHousingFundConfirmDetailEmployee;
|
|
|
import cn.ezhizao.project.business.salary.domain.BizFinancialSalaryDetail;
|
|
@@ -15,6 +19,8 @@ import cn.ezhizao.project.business.socialSecurity.domain.*;
|
|
|
import cn.ezhizao.project.business.socialSecurity.service.*;
|
|
|
import cn.ezhizao.project.business.workOrder.domain.BizWorkOrderRecord;
|
|
|
import cn.ezhizao.project.business.workOrder.service.IBizWorkOrderRecordService;
|
|
|
+import cn.ezhizao.project.system.domain.SysUser;
|
|
|
+import cn.ezhizao.project.system.mapper.SysUserMapper;
|
|
|
import cn.hutool.core.io.IoUtil;
|
|
|
import cn.hutool.poi.excel.ExcelWriter;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
@@ -30,6 +36,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.security.access.prepost.PreAuthorize;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
+import org.springframework.web.multipart.MultipartFile;
|
|
|
import org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
@@ -63,6 +70,8 @@ public class SocialSecurityConfirmController extends BaseController {
|
|
|
IBizSocialSecurityConfirmDetailService socialSecurityConfirmDetailService;
|
|
|
@Resource
|
|
|
IBizSocialSecurityConfirmDetailEmployeeService socialSecurityConfirmDetailEmployeeService;
|
|
|
+ @Resource
|
|
|
+ SysUserMapper sysUserMapper;
|
|
|
|
|
|
/**
|
|
|
* 生成pdf
|
|
@@ -264,6 +273,27 @@ public class SocialSecurityConfirmController extends BaseController {
|
|
|
return toAjax(socialSecurityConfirmDetailService.save(detail) && addRecord(detail.getSocialSecurityConfirmId(), detail.getYear(), detail.getMonth(), SecurityUtils.getUserId(), "填写社保人员信息"));
|
|
|
}
|
|
|
|
|
|
+ @Log(title = "社保导入", businessType = BusinessType.IMPORT)
|
|
|
+ @PreAuthorize("@ss.hasPermi('business:socialSecurityConfirm:import')")
|
|
|
+ @PostMapping("/importData")
|
|
|
+ public AjaxResult importData(MultipartFile file, @RequestParam String year, @RequestParam String month) throws Exception
|
|
|
+ {
|
|
|
+ ExcelUtil<BizSocialSecurityConfirmDetailEmployee> util = new ExcelUtil<>(BizSocialSecurityConfirmDetailEmployee.class);
|
|
|
+ List<BizSocialSecurityConfirmDetailEmployee> detailList = util.importExcel(file.getInputStream());
|
|
|
+ String message=socialSecurityConfirmService.importSalary(detailList,year,month,getTenantId()==null?0:getTenantId());
|
|
|
+ return success(message);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 导出社保模板
|
|
|
+ */
|
|
|
+ @Log(title = "导出社保模板", businessType = BusinessType.EXPORT)
|
|
|
+ @PostMapping("/exportSocialSecurityTemplate")
|
|
|
+ public void exportSalaryTemplate(HttpServletResponse response) throws NoSuchFieldException, IllegalAccessException {
|
|
|
+ ExcelUtil<BizSocialSecurityConfirmDetailEmployee> util = new ExcelUtil<BizSocialSecurityConfirmDetailEmployee>(BizSocialSecurityConfirmDetailEmployee.class);
|
|
|
+ util.importTemplateExcel(response, "社保模板");
|
|
|
+ }
|
|
|
+
|
|
|
@PreAuthorize("@ss.hasPermi('business:socialSecurityConfirm:edit')")
|
|
|
@PostMapping("/updateDetail")
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@@ -281,6 +311,8 @@ public class SocialSecurityConfirmController extends BaseController {
|
|
|
return toAjax(socialSecurityConfirmDetailService.updateById(detail) && addRecord(detail.getSocialSecurityConfirmId(), detail.getYear(), detail.getMonth(), SecurityUtils.getUserId(), "修改社保人员信息"));
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+
|
|
|
@PreAuthorize("@ss.hasPermi('business:socialSecurityConfirm:edit')")
|
|
|
@PostMapping("/checkEmployees")
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@@ -407,7 +439,53 @@ public class SocialSecurityConfirmController extends BaseController {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- @ApiOperation("导出公积金人员信息")
|
|
|
+ /**
|
|
|
+ * 导出列表
|
|
|
+ */
|
|
|
+ @PreAuthorize("@ss.hasPermi('business:socialSecurityConfirm:export')")
|
|
|
+ @Log(title = "个税详情", businessType = BusinessType.EXPORT)
|
|
|
+ @PostMapping("/export")
|
|
|
+ public void export(HttpServletResponse response, BizSocialSecurityConfirm financialSocialSecurityConfirm) throws NoSuchFieldException, IllegalAccessException
|
|
|
+ {
|
|
|
+ setTenantId(financialSocialSecurityConfirm);
|
|
|
+ List<BizSocialSecurityConfirm> list = socialSecurityConfirmService.getListByBean(financialSocialSecurityConfirm);
|
|
|
+ for (BizSocialSecurityConfirm l: list){
|
|
|
+ l.setCurrentPeriod(financialSocialSecurityConfirm.getYear()+"-"+financialSocialSecurityConfirm.getMonth());
|
|
|
+ BizSocialSecurityConfirmDetail detail = new BizSocialSecurityConfirmDetail();
|
|
|
+ detail.setSocialSecurityConfirmId(l.getId());
|
|
|
+ detail.setYear(financialSocialSecurityConfirm.getYear());
|
|
|
+ detail.setMonth(financialSocialSecurityConfirm.getMonth());
|
|
|
+ List<BizSocialSecurityConfirmDetail> details = socialSecurityConfirmDetailService.getListByBean(detail);
|
|
|
+ if(details.size() == 0){
|
|
|
+ l.setStatusText("未开始");
|
|
|
+ l.setServiceName("");
|
|
|
+ }else{
|
|
|
+ detail=details.get(0);
|
|
|
+ SysUser sysUser = sysUserMapper.selectUserById(detail.getVerifierId());
|
|
|
+ l.setServiceName(sysUser==null?"":sysUser.getNickName());
|
|
|
+ switch (detail.getStatus()){
|
|
|
+ case 0:
|
|
|
+ l.setStatusText("未开始");
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ l.setStatusText("待审核");
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ l.setStatusText("已完成");
|
|
|
+ break;
|
|
|
+ case 4:
|
|
|
+ l.setStatusText("驳回待处理");
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ExcelUtil<BizSocialSecurityConfirm> util = new ExcelUtil<BizSocialSecurityConfirm>(BizSocialSecurityConfirm.class);
|
|
|
+ util.exportExcel(response, list, "社保人员确认数据");
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation("导出社保人员信息")
|
|
|
@PostMapping("/exportSocialSecurityExcel")
|
|
|
public void exportDetailExcel(@RequestParam Long id, HttpServletResponse response) {
|
|
|
BizSocialSecurityConfirmDetail socialSecurityConfirm = socialSecurityConfirmDetailService.getById(id);
|
|
@@ -423,22 +501,24 @@ public class SocialSecurityConfirmController extends BaseController {
|
|
|
return;
|
|
|
}
|
|
|
ExcelWriter writer = cn.hutool.poi.excel.ExcelUtil.getWriter(true);
|
|
|
- writer.merge(0, 0, 0, 4, "公积金人员信息", true);
|
|
|
- writer.merge(1, 1, 0, 2, company.getName(), false);
|
|
|
- writer.merge(1, 1, 3, 4, socialSecurityConfirm.getYear() + "年 第" + socialSecurityConfirm.getMonth() + "期", false);
|
|
|
+ writer.merge(0, 0, 0, 5, "社保员信息", true);
|
|
|
+ writer.merge(1, 1, 0, 3, company.getName(), false);
|
|
|
+ writer.merge(1, 1, 4, 5, socialSecurityConfirm.getYear() + "年 第" + socialSecurityConfirm.getMonth() + "期", false);
|
|
|
writer.writeCellValue(0, 2, "员工名");
|
|
|
writer.writeCellValue(1, 2, "电话号码");
|
|
|
- writer.writeCellValue(2, 2, "基数");
|
|
|
- writer.writeCellValue(3, 2, "医疗基数");
|
|
|
- writer.writeCellValue(4, 2, "备注");
|
|
|
+ writer.writeCellValue(2, 2, "采暖费");
|
|
|
+ writer.writeCellValue(3, 2, "基数");
|
|
|
+ writer.writeCellValue(4, 2, "医疗基数");
|
|
|
+ writer.writeCellValue(5, 2, "备注");
|
|
|
|
|
|
int row = 0;
|
|
|
for (int i = 0; i < socialSecurityConfirm.getDetails().size(); i++) {
|
|
|
writer.writeCellValue(0, i + 3, socialSecurityConfirm.getDetails().get(i).getEmployeeName());
|
|
|
writer.writeCellValue(1, i + 3, socialSecurityConfirm.getDetails().get(i).getPhone());
|
|
|
- writer.writeCellValue(2, i + 3, socialSecurityConfirm.getDetails().get(i).getCardinalNumber());
|
|
|
- writer.writeCellValue(3, i + 3, socialSecurityConfirm.getDetails().get(i).getMedicalCardinalNumber());
|
|
|
- writer.writeCellValue(4, i + 3, socialSecurityConfirm.getDetails().get(i).getRemark());
|
|
|
+ writer.writeCellValue(2, i + 3, socialSecurityConfirm.getDetails().get(i).getHeatingFee());
|
|
|
+ writer.writeCellValue(3, i + 3, socialSecurityConfirm.getDetails().get(i).getCardinalNumber());
|
|
|
+ writer.writeCellValue(4, i + 3, socialSecurityConfirm.getDetails().get(i).getMedicalCardinalNumber());
|
|
|
+ writer.writeCellValue(5, i + 3, socialSecurityConfirm.getDetails().get(i).getRemark());
|
|
|
|
|
|
row = i + 1;
|
|
|
}
|
|
@@ -456,6 +536,7 @@ public class SocialSecurityConfirmController extends BaseController {
|
|
|
writer.setColumnWidth(2, 10);
|
|
|
writer.setColumnWidth(3, 10);
|
|
|
writer.setColumnWidth(4, 10);
|
|
|
+ writer.setColumnWidth(5, 10);
|
|
|
|
|
|
//设置标题单元格 样式
|
|
|
Font headFont = writer.createFont();
|