| | |
| | | */ |
| | | package org.springblade.modules.social.controller; |
| | | |
| | | import com.alibaba.excel.EasyExcel; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import io.swagger.annotations.ApiParam; |
| | | import lombok.AllArgsConstructor; |
| | | import org.apache.commons.codec.Charsets; |
| | | import org.springblade.common.excel.RowWriteHandler; |
| | | import org.springblade.core.boot.ctrl.BladeController; |
| | | import org.springblade.core.excel.util.ExcelUtil; |
| | | import org.springblade.core.mp.support.Condition; |
| | | import org.springblade.core.mp.support.Query; |
| | | import org.springblade.core.tool.api.R; |
| | | import org.springblade.core.tool.utils.DateUtil; |
| | | import org.springblade.core.tool.utils.Func; |
| | | import org.springblade.modules.social.entity.Social; |
| | | import org.springblade.modules.social.excel.SocialExcel; |
| | | import org.springblade.modules.social.excel.SocialImporter; |
| | | import org.springblade.modules.social.service.ISocialService; |
| | | import org.springblade.modules.social.vo.SocialVO; |
| | | import org.springblade.modules.system.excel.UserExcel; |
| | | import org.springblade.modules.system.service.MyAsyncService; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import org.springframework.web.multipart.MultipartFile; |
| | | |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import javax.validation.Valid; |
| | | import java.io.IOException; |
| | | import java.net.URLEncoder; |
| | | import java.text.ParseException; |
| | | import java.text.SimpleDateFormat; |
| | | import java.util.ArrayList; |
| | | import java.util.Arrays; |
| | | import java.util.List; |
| | | |
| | | /** |
| | |
| | | public class SocialController extends BladeController { |
| | | |
| | | private final ISocialService socialService; |
| | | |
| | | private final MyAsyncService myAsyncService; |
| | | |
| | | /** |
| | | * 详情 |
| | |
| | | @ApiOperationSupport(order = 4) |
| | | @ApiOperation(value = "新增", notes = "传入social") |
| | | public R save(@Valid @RequestBody Social social) { |
| | | //更新用户是否缴纳社保状态 |
| | | socialService.upSoil(social.getCardid()); |
| | | return R.status(socialService.save(social)); |
| | | //新增社保缴纳记录 |
| | | boolean save = socialService.save(social); |
| | | if (save){ |
| | | String sql = |
| | | "insert into sys_socil(id,namb,sex,nation,telephone,cardid,residence,amount,insuredtime,deptid) " + |
| | | "values(" + "'" + social.getId() + "'" |
| | | + "," + "'" + social.getNamb() + "'" |
| | | + "," + "'" + social.getSex() + "'" + |
| | | "," + "'" + social.getNation() + "'" + |
| | | "," + "'" + social.getTelephone() + "'" + |
| | | "," + "'" + social.getCardid() + "'" + |
| | | "," + "'" + social.getResidence() + "'" + |
| | | "," + "'" + social.getAmount() + "'" + |
| | | "," + "'" + new SimpleDateFormat("yyyy-MM-dd").format(social.getInsuredtime()) + "'" + |
| | | "," + "'" + social.getDeptid() + "'" + ")"; |
| | | myAsyncService.dataSync(sql); |
| | | } |
| | | //返回 |
| | | return R.status(save); |
| | | } |
| | | |
| | | /** |
| | |
| | | @PostMapping("/remove") |
| | | @ApiOperationSupport(order = 8) |
| | | @ApiOperation(value = "删除", notes = "传入ids") |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) { |
| | | return R.status(socialService.removeByIds(Func.toLongList(ids))); |
| | | boolean remove = socialService.removeByIds(Func.toLongList(ids)); |
| | | if (remove) { |
| | | List<String> list = Arrays.asList(ids.split(",")); |
| | | list.forEach(s -> { |
| | | //内网同步删除 |
| | | String s1 = "delete from sys_socil where id = " + "'" + s + "'"; |
| | | myAsyncService.dataSync(s1); |
| | | }); |
| | | } |
| | | return R.status(remove); |
| | | } |
| | | |
| | | |
| | |
| | | @GetMapping("export-template") |
| | | @ApiOperationSupport(order = 14) |
| | | @ApiOperation(value = "导出模板") |
| | | public void exportUser(HttpServletResponse response) { |
| | | public void exportUser(HttpServletResponse response) throws IOException, ParseException { |
| | | List<SocialExcel> list = new ArrayList<>(); |
| | | ExcelUtil.export(response, "社保数据模板", "社保数据模板", list, SocialExcel.class); |
| | | SocialExcel socialExcel = new SocialExcel(); |
| | | socialExcel.setNamb("张三"); |
| | | socialExcel.setSex("男"); |
| | | socialExcel.setNation("汉"); |
| | | socialExcel.setBirthday(new SimpleDateFormat("yyyy/MM/dd").parse("1999/5/1")); |
| | | socialExcel.setTelephone("13112341234"); |
| | | socialExcel.setCardid("360XXX19XXXXXX****"); |
| | | socialExcel.setResidence("江西省南昌市***********"); |
| | | socialExcel.setAddress("江西省南昌市***********"); |
| | | socialExcel.setNature("城镇"); |
| | | socialExcel.setAmount("1000.00"); |
| | | socialExcel.setInsuredtime(new SimpleDateFormat("yyyy/MM/dd").parse("2020/5/1")); |
| | | list.add(socialExcel); |
| | | |
| | | SocialExcel socialExcel1 = new SocialExcel(); |
| | | socialExcel1.setNamb("李四"); |
| | | socialExcel1.setSex("女"); |
| | | socialExcel1.setNation("汉"); |
| | | socialExcel1.setBirthday(new SimpleDateFormat("yyyy/MM/dd").parse("1999/5/1")); |
| | | socialExcel1.setTelephone("13112341234"); |
| | | socialExcel1.setCardid("360XXX19XXXXXX****"); |
| | | socialExcel1.setResidence("江西省南昌市***********"); |
| | | socialExcel1.setAddress("江西省南昌市***********"); |
| | | socialExcel1.setNature("农村"); |
| | | socialExcel1.setAmount("1000.00"); |
| | | socialExcel1.setInsuredtime(new SimpleDateFormat("yyyy/MM/dd").parse("2020/5/1")); |
| | | list.add(socialExcel1); |
| | | String fileName = null; |
| | | try { |
| | | response.setContentType("application/vnd.ms-excel"); |
| | | response.setCharacterEncoding(org.apache.commons.codec.Charsets.UTF_8.name()); |
| | | fileName = URLEncoder.encode("社保数据模板"+ DateUtil.time(), Charsets.UTF_8.name()); |
| | | response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx"); |
| | | //修改单元格格式为文本格式 |
| | | EasyExcel.write(response.getOutputStream(), SocialExcel.class).sheet("社保数据模板").registerWriteHandler(new RowWriteHandler()).doWrite(list); |
| | | } catch (Throwable var6) { |
| | | throw var6; |
| | | } |
| | | // ExcelUtil.export(response, "社保数据模板", "社保数据模板", list, SocialExcel.class); |
| | | } |
| | | } |