songhuangfeng123
2022-07-28 e2380fc99bb36cadfa8e2b5c22fcf17310a8dbfd
goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/controller/RewardPunishmentDetailController.java
@@ -5,8 +5,14 @@
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;
@@ -14,11 +20,14 @@
import com.gkhy.safePlatform.commons.enums.ResultCodes;
import com.gkhy.safePlatform.targetDuty.model.dto.req.RewardPunishmentDetailQueryCriteria;
import java.util.Arrays;
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;
import java.util.List;
/**
 * 奖惩记录(RewardPunishmentDetail)表控制层
@@ -34,6 +43,12 @@
     */
    @Resource
    private RewardPunishmentDetailService rewardPunishmentDetailService;
    @Autowired
    public HttpServletRequest request;
    @Autowired
    public HttpServletResponse response;
    /**
     * 分页查询所有数据
@@ -73,10 +88,20 @@
        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));
            return new ResultVO<>(ResultCodes.OK,rewardPunishmentDetailService.saveBatch(list));
        } else {
            rewardPunishmentDetailService.update(rewardPunishmentDetail,new UpdateWrapper<RewardPunishmentDetail>().eq("id",rewardPunishmentDetail.getId()));
            rewardPunishmentDetailService.updateBatchById(list);
            return new ResultVO<>(ResultCodes.OK);
        }
    }
@@ -94,4 +119,33 @@
        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();
    }
}