package org.jeecg.modules.arj.controller; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.apache.shiro.SecurityUtils; import org.jeecg.common.system.vo.LoginUser; import org.jeecg.modules.arj.config.AjaxResult; import org.jeecg.modules.arj.entity.Head; import org.jeecg.modules.arj.mapper.HeadMapper; import org.jeecg.modules.arj.service.*; import org.jeecg.modules.arj.vo.JianbjVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @Api(tags = "A1剪板机接口") @RestController @RequestMapping("/jianbjVo") public class JianbjVoController { @Autowired private HeadService headService; @Autowired private HeadMapper headMapper; @Autowired private JianbjCheckService jianbjCheckService; @Autowired private JianbjRdService iJianbjRdService; @Autowired private JianbjSelfService iJianbjSelfService; @Autowired private JianbjTrjlService iJianbjTrjlService; @Autowired private JianbjRd2Service jianbjRd2Service ; @Autowired private JianbjFpService jianbjFpService ; /** * 通过ID查询单条数据 * * @param id 主键 * @return 实例对象 */ @ApiOperation("通过ID查询单条数据") @GetMapping("/id") public AjaxResult queryById( String id){ JianbjVo jianbjVo = new JianbjVo(); Head head = headService.queryById(id); jianbjVo.setHead(head); jianbjVo.setJianbjRd(iJianbjRdService.queryByHeadId(head.getId())); jianbjVo.setJianbjCheck(jianbjCheckService.queryByHeadId(head.getId())); jianbjVo.setJianbjSelf(iJianbjSelfService.queryByHeadId(head.getId())); jianbjVo.setJianbjTrjl(iJianbjTrjlService.queryByHeadId(head.getId())); jianbjVo.setJianbjRd2List(jianbjRd2Service.queryByHeadId(head.getId())); jianbjVo.setJianbjFpList(jianbjFpService.queryByHeadId(head.getId())); return AjaxResult.success(jianbjVo); } /** * 新增数据 * * @param jianbjVo 实例对象 * @return 实例对象 */ @ApiOperation("新增数据") @PostMapping public AjaxResult add( @RequestBody JianbjVo jianbjVo) throws Exception { Head h = headService.insert(jianbjVo.getHead()); extracted(jianbjVo, h); return AjaxResult.success(h.getId()); } /** * 更新数据 * * @param jianbjVo 实例对象 * @return 实例对象 */ @ApiOperation("更新数据") @PostMapping("/edit") public AjaxResult edit( @RequestBody JianbjVo jianbjVo){ Head h = jianbjVo.getHead(); h.setId(""); Head hh = headService.insert(h); extracted(jianbjVo, hh); return AjaxResult.success(hh.getId()); } private void extracted(JianbjVo jianbjVo, Head h) { if (jianbjVo.getJianbjCheck() != null) { jianbjVo.getJianbjCheck().stream().forEach(item -> item.setHeadId(h.getId())); jianbjCheckService.saveOrUpdateBatch(jianbjVo.getJianbjCheck()); } if (jianbjVo.getJianbjRd() != null) { jianbjVo.getJianbjRd().stream().forEach(item -> item.setHeadId(h.getId())); iJianbjRdService.saveOrUpdateBatch(jianbjVo.getJianbjRd()); } if (jianbjVo.getJianbjSelf() != null) { jianbjVo.getJianbjSelf().stream().forEach(item -> item.setHeadId(h.getId())); iJianbjSelfService.saveOrUpdateBatch(jianbjVo.getJianbjSelf()); } if (jianbjVo.getJianbjTrjl() != null) { jianbjVo.getJianbjTrjl().stream().forEach(item -> item.setHeadId(h.getId())); iJianbjTrjlService.saveOrUpdateBatch(jianbjVo.getJianbjTrjl()); } if(jianbjVo.getJianbjRd2List() != null) { jianbjVo.getJianbjRd2List().stream().forEach(item -> item.setHeadId(h.getId())); jianbjRd2Service.saveOrUpdateBatch(jianbjVo.getJianbjRd2List()); } if(jianbjVo.getJianbjFpList() != null) { jianbjVo.getJianbjFpList().stream().forEach(item -> item.setHeadId(h.getId())); jianbjFpService.saveOrUpdateBatch(jianbjVo.getJianbjFpList()); } } /** * 获取最新数据 * * @return 实例对象 */ @ApiOperation("获取最新数据") @PostMapping("/last") public AjaxResult getlastRecord(@RequestBody(required=false) String leixing){ JSONObject j = JSONObject.parseObject(leixing); HashMap myMap = new HashMap(){{ put("0","一"); put("2","二"); put("3","三"); put("4","四"); put("5","五"); put("6","六"); put("7","七"); put("8","八"); put("9","九"); }}; Head head = headService.queryLeixingChanxian("A1",j==null?"":myMap.get(j.getString(leixing))); JianbjVo jianbjVo = new JianbjVo(); if( head == null ) return AjaxResult.error("访问无数据"); jianbjVo.setHead(head); jianbjVo.setJianbjRd(iJianbjRdService.queryByHeadId(head.getId())); jianbjVo.setJianbjCheck(jianbjCheckService.queryByHeadId(head.getId())); jianbjVo.setJianbjSelf(iJianbjSelfService.queryByHeadId(head.getId())); jianbjVo.setJianbjTrjl(iJianbjTrjlService.queryByHeadId(head.getId())); jianbjVo.setJianbjRd2List(jianbjRd2Service.queryByHeadId(head.getId())); jianbjVo.setJianbjFpList(jianbjFpService.queryByHeadId(head.getId())); return AjaxResult.success(jianbjVo); } @PostMapping("/page") public AjaxResult findPage( @RequestParam(defaultValue = "1") Integer pageNum , @RequestParam(defaultValue = "10") Integer pageSize) { List headList = headMapper.queryPage2((pageNum-1)*pageSize,pageSize); IPage iPage = new Page(); List records = new ArrayList<>(); for(Head h:headList){ JianbjVo jianbjVo = new JianbjVo(); Head head = headService.queryById(h.getId()); if( head == null ) return AjaxResult.error("访问无数据"); jianbjVo.setHead(head); jianbjVo.setJianbjRd(iJianbjRdService.queryByHeadId(head.getId())); jianbjVo.setJianbjCheck(jianbjCheckService.queryByHeadId(head.getId())); jianbjVo.setJianbjSelf(iJianbjSelfService.queryByHeadId(head.getId())); jianbjVo.setJianbjTrjl(iJianbjTrjlService.queryByHeadId(head.getId())); jianbjVo.setJianbjRd2List(jianbjRd2Service.queryByHeadId(head.getId())); jianbjVo.setJianbjFpList(jianbjFpService.queryByHeadId(head.getId())); records.add(jianbjVo); } int n = headMapper.queryCount() ; iPage.setPages(n%pageSize==0?n/pageSize:n/pageSize+1); iPage.setRecords(records); iPage.setTotal(headMapper.queryCount()); iPage.setSize(pageSize); iPage.setCurrent(pageNum); return AjaxResult.success(iPage); } /** * 通过主键删除数据 * * @param id 主键 * @return 是否成功 */ @ApiOperation("通过主键删除数据") @DeleteMapping public AjaxResult deleteById(String id){ return AjaxResult.success(headService.deleteById(id)); } }