package com.gkhy.safePlatform.targetDuty.controller; import java.util.Date; import java.sql.Timestamp; import com.alibaba.fastjson.JSONObject; 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.targetDuty.entity.TargetDivideDetail; import com.gkhy.safePlatform.targetDuty.entity.TargetMng; import com.gkhy.safePlatform.targetDuty.service.TargetDivideDetailService; import com.gkhy.safePlatform.targetDuty.service.TargetMngService; import org.springframework.util.StringUtils; 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.TargetMngQueryCriteria; import java.io.IOException; import java.util.*; import java.util.stream.Collectors; import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; import java.io.Serializable; /** * 目标指标(TargetMng)表控制层 * * @author xurui * @since 2022-07-20 11:49:22 */ @RestController @RequestMapping("targetMng") public class TargetMngController { /** * 服务对象 */ @Resource private TargetMngService targetMngService; @Resource private TargetDivideDetailService targetDivideDetailService; /** * 分页查询所有数据 * * @param pageQuery 查询实体 * @return 所有数据 */ @PostMapping(value = "/page/list") public ResultVO selectAll(@RequestBody PageQuery pageQuery){ if(pageQuery.getSearchParams().getTargetType() == null){ return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL,"缺少targetType"); } PageUtils.checkCheck(pageQuery.getPageIndex(), pageQuery.getPageSize()); return this.targetMngService.queryAll(pageQuery); } /** * 通过主键查询单条数据 * * @param id 主键 * @return 单条数据 */ @GetMapping(value = "/selectOne/{id}") public ResultVO selectOne(@PathVariable Serializable id) { return new ResultVO<>(ResultCodes.OK,this.targetMngService.selectOne(id)); } /** * 新增或者修改数据 * * @param targetMng 实体对象 * @return 修改结果 */ @PostMapping(value = "/addOrUpdate") public ResultVO update(@RequestBody TargetMng targetMng) { if( !StringUtils.hasText(targetMng.getqName()) || !StringUtils.hasText(targetMng.getIndexNum()) || !StringUtils.hasText(targetMng.getYear()) || !StringUtils.hasText(targetMng.getValue()) || targetMng.getTargetType() == null){ return new ResultVO<>(ResultCodes.CLIENT_PARAM_ILLEGAL,"缺少必填字段"); } if (targetMng.getId() == null) { return new ResultVO<>(ResultCodes.OK,targetMngService.save(targetMng)); } else { targetMngService.update(targetMng,new UpdateWrapper().eq("id",targetMng.getId())); return new ResultVO<>(ResultCodes.OK); } } /** * 删除数据 * * @param ids 主键结合 * @return 删除结果 */ @GetMapping(value = "/delete") public ResultVO delete(String ids) { List idList = Arrays.stream(ids.split(",")) .collect(Collectors.toList()); //删除关联表数据 this.targetDivideDetailService.remove(new QueryWrapper().in("target_id",idList)); this.targetMngService.removeByIds(idList); return new ResultVO<>(ResultCodes.OK); } // /** // * 导出 // * @param response / // * @throws IOException / // */ // public void download(HttpServletResponse response) throws IOException { // List> list = new ArrayList<>(); // for (OnlineUser user : all) { // Map map = new LinkedHashMap<>(); // map.put("用户名", user.getUserName()); // map.put("用户昵称", user.getNickName()); // map.put("登录IP", user.getIp()); // map.put("登录地点", user.getAddress()); // map.put("浏览器", user.getBrowser()); // map.put("登录日期", user.getLoginTime()); // list.add(map); // } // FileUtil.downloadExcel(list, response); // } public static void main(String[] args) { TargetMng mng = new TargetMng(); mng.setqName("12"); mng.setIndexNum("3"); mng.setYear("2021"); mng.setValue("312"); mng.setLevel(1); mng.setCompleteDate(new Timestamp(new java.util.Date().getTime())); mng.setMemo("发发发"); mng.setTargetType(0); mng.setDivideStatus(0); System.out.println(JSONObject.toJSONString(mng)); } }