package com.gkhy.safePlatform.targetDuty.controller;
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
|
import com.gkhy.safePlatform.targetDuty.entity.RewardPunishmentDetail;
|
import com.gkhy.safePlatform.targetDuty.model.dto.resp.ExamineTemplateDto;
|
import com.gkhy.safePlatform.targetDuty.model.dto.resp.RewardPunishmentDetailExcel;
|
import com.gkhy.safePlatform.targetDuty.service.RewardPunishmentDetailService;
|
import com.gkhy.safePlatform.targetDuty.utils.DateUtils;
|
import com.gkhy.safePlatform.targetDuty.utils.poihelper.ExcelUtil;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.*;
|
import com.gkhy.safePlatform.commons.query.PageQuery;
|
import com.gkhy.safePlatform.commons.utils.PageUtils;
|
import com.gkhy.safePlatform.commons.vo.ResultVO;
|
import com.gkhy.safePlatform.commons.enums.ResultCodes;
|
import com.gkhy.safePlatform.targetDuty.model.dto.req.RewardPunishmentDetailQueryCriteria;
|
|
import java.io.IOException;
|
import java.net.URLEncoder;
|
import java.util.*;
|
import java.util.stream.Collectors;
|
import javax.annotation.Resource;
|
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletResponse;
|
import java.io.Serializable;
|
|
/**
|
* 奖惩记录(RewardPunishmentDetail)表控制层
|
*
|
* @author xurui
|
* @since 2022-07-21 10:15:45
|
*/
|
@RestController
|
@RequestMapping("rewardPunishmentDetail")
|
public class RewardPunishmentDetailController {
|
/**
|
* 服务对象
|
*/
|
@Resource
|
private RewardPunishmentDetailService rewardPunishmentDetailService;
|
|
@Autowired
|
public HttpServletRequest request;
|
|
@Autowired
|
public HttpServletResponse response;
|
|
/**
|
* 分页查询所有数据
|
*
|
* @param pageQuery 查询实体
|
* @return 所有数据
|
*/
|
@PostMapping(value = "/page/list")
|
public ResultVO selectAll(@RequestBody PageQuery<RewardPunishmentDetailQueryCriteria> pageQuery){
|
PageUtils.checkCheck(pageQuery);
|
return this.rewardPunishmentDetailService.queryAll(pageQuery);
|
}
|
|
|
/**
|
* 通过主键查询单条数据
|
*
|
* @param id 主键
|
* @return 单条数据
|
*/
|
@GetMapping(value = "/selectOne/{id}")
|
public ResultVO selectOne(@PathVariable Serializable id) {
|
return new ResultVO<>(ResultCodes.OK,this.rewardPunishmentDetailService.getById(id));
|
}
|
|
/**
|
* 新增或者修改数据
|
*
|
* @param rewardPunishmentDetail 实体对象
|
* @return 修改结果
|
*/
|
@PostMapping(value = "/addOrUpdate")
|
public ResultVO update(@RequestBody RewardPunishmentDetail rewardPunishmentDetail) {
|
if(rewardPunishmentDetail.getPersonId() == null){
|
return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL,"缺少personId");
|
}
|
if(rewardPunishmentDetail.getRewardPunishmentStandardId() == null){
|
return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL,"缺少rewardPunishmentStandardId");
|
}
|
|
// List<Long> pIdList = Arrays.stream(rewardPunishmentDetail.getPersonId().split(",")).map(s-> Long.parseLong(s.trim()))
|
// .collect(Collectors.toList());
|
//
|
// List<RewardPunishmentDetail> list = new ArrayList<>();
|
// pIdList.forEach(f->{
|
// RewardPunishmentDetail new1 = BeanCopyUtils.copyBean(rewardPunishmentDetail, RewardPunishmentDetail.class);
|
// new1.setPersonId(f+"");
|
// list.add(new1);
|
// });
|
if (rewardPunishmentDetail.getId() == null) {
|
return new ResultVO<>(ResultCodes.OK,rewardPunishmentDetailService.save(rewardPunishmentDetail));
|
} else {
|
rewardPunishmentDetailService.updateById(rewardPunishmentDetail);
|
return new ResultVO<>(ResultCodes.OK);
|
}
|
}
|
|
/**
|
* 删除数据
|
*
|
* @param ids 主键结合
|
* @return 删除结果
|
*/
|
@RequestMapping(value = "/delete",method = RequestMethod.POST)
|
public ResultVO delete(@RequestBody Long[] ids) {
|
if(ids == null){
|
return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL);
|
}
|
List<Long> idList = Arrays.asList(ids);
|
this.rewardPunishmentDetailService.removeByIds(idList);
|
return new ResultVO<>(ResultCodes.OK);
|
}
|
|
|
|
/**
|
* 导出一览数据
|
*
|
*/
|
@GetMapping(value = "/exportData")
|
public void exportData(RewardPunishmentDetailQueryCriteria queryCriteria) throws IOException {
|
Map<String,String> map = new LinkedHashMap<>();
|
map.put("1","奖惩日期");
|
map.put("2","奖惩类型");
|
map.put("3","被奖惩者");
|
map.put("4","奖惩内容");
|
map.put("5","奖惩依据");
|
|
String key = DateUtils.date2String(new Date(), DateUtils.PATTERN_ALLTIME_NOSIGN) ;
|
String fileName = URLEncoder.encode("奖惩记录"+key+".xls", "UTF-8");
|
response.setContentType("application/vnd.ms-excel");
|
response.setHeader("Content-Disposition", "attachment;filename=" + fileName + ".xlsx");
|
response.setHeader("Access-Control-Expose-Headers", "Content-Disposition");
|
|
|
List<RewardPunishmentDetailExcel> respList = BeanCopyUtils.copyBeanList(rewardPunishmentDetailService.queryAllRelation(queryCriteria), RewardPunishmentDetailExcel.class);
|
|
ExcelUtil.exportExcel(map,respList , response.getOutputStream(),DateUtils.PATTERN_STANDARD);
|
response.getOutputStream().close();
|
}
|
|
}
|