package org.jeecg.modules.arj.controller;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
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.jeecg.modules.arj.config.AjaxResult;
|
import org.jeecg.modules.arj.entity.*;
|
import org.jeecg.modules.arj.mapper.*;
|
import org.jeecg.modules.arj.service.*;
|
import org.jeecg.modules.arj.vo.FeipinVo;
|
import org.jeecg.modules.arj.vo.ShengchanVo;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.data.domain.PageImpl;
|
import org.springframework.data.domain.PageRequest;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.util.ArrayList;
|
import java.util.HashMap;
|
import java.util.List;
|
|
@Api(tags = "A7生产情况统计接口")
|
@RestController
|
@RequestMapping("/ShengchanVo")
|
public class ShengchanVoController {
|
|
@Autowired
|
private HeadService headService;
|
// @Autowired
|
// private LineFeipintongjiService feipintongjiService;
|
@Autowired
|
private LineChanliangtongjiService chanliangtongjiService;
|
|
@Autowired
|
private FeipinHanjiService feipinHanjiService;
|
@Autowired
|
private FeipinFanbianService feipinFanbianService;
|
|
|
|
@Autowired
|
private HeadMapper headMapper;
|
|
@Autowired
|
private FeipinZhijianService feipinZhijianService ;
|
|
|
@Autowired
|
private FeipinFengkouMapper feipinFengkouMapper;
|
@Autowired
|
private FeipinYintieMapper feipinYintieMapper;
|
@Autowired
|
private FeipinFanbianMapper feipinFanbianMapper;
|
@Autowired
|
private FeipinHanjiMapper feipinHanjiMapper;
|
|
@Autowired
|
private LineChanliangtongjiMapper lineChanliangtongjiMapper ;
|
|
@Autowired
|
private FeipinZhijianMapper feipinZhijianMapper ;
|
@Autowired
|
private FeipinJiguanMapper feipinJiguanMapper;
|
@Autowired
|
private FeipinJianguanMapper feipinJianguanMapper;
|
|
@Autowired
|
private FeipinJianbanMapper feipinJianbanMapper;
|
|
@Autowired
|
private FeipinGuanMapper feipinGuanMapper;
|
|
/**
|
* 通过ID查询单条数据
|
*
|
* @param id 主键
|
* @return 实例对象.
|
*/
|
@ApiOperation("通过ID查询单条数据")
|
@GetMapping("/id")
|
public AjaxResult queryById(String id){
|
ShengchanVo shengchanVo = new ShengchanVo();
|
Head head = headService.queryById(id);
|
shengchanVo.setHead(head);
|
shengchanVo.setChanliangtongjiList(chanliangtongjiService.queryByHeadId(head.getId()));
|
shengchanVo.setFeipinHanji(feipinHanjiService.queryByHeadId(head.getId()));
|
shengchanVo.setFeipinZhijian(feipinZhijianService.queryByHeadId(head.getId()));
|
shengchanVo.setFeipinFanbian(feipinFanbianService.queryByHeadId(head.getId()));
|
shengchanVo.setFeipinJianban(feipinJianbanMapper.selectOne(new QueryWrapper<FeipinJianban>().eq("head_id",head.getId())));
|
shengchanVo.setFeipinYintie(feipinYintieMapper.selectOne(new QueryWrapper<FeipinYintie>().eq("head_id",head.getId())));
|
shengchanVo.setFeipinGuan(feipinGuanMapper.selectOne(new QueryWrapper<FeipinGuan>().eq("head_id",head.getId())));
|
shengchanVo.setFeipinJianguan(feipinJianguanMapper.selectOne(new QueryWrapper<FeipinJianguan>().eq("head_id",head.getId())));
|
shengchanVo.setFeipinJiguan(feipinJiguanMapper.selectOne(new QueryWrapper<FeipinJiguan>().eq("head_id",head.getId())));
|
shengchanVo.setFeipinFengkou(feipinFengkouMapper.selectOne(new QueryWrapper<FeipinFengkou>().eq("head_id",head.getId())));
|
return AjaxResult.success(shengchanVo);
|
}
|
|
/**
|
* 分页查询
|
*
|
* @param head 筛选条件
|
* @param pageRequest 分页对象
|
* @return 查询结果
|
*/
|
@ApiOperation("分页查询")
|
@GetMapping
|
public AjaxResult paginQuery(Head head, PageRequest pageRequest){
|
//1.分页参数
|
long current = pageRequest.getPageNumber();
|
long size = pageRequest.getPageSize();
|
//2.分页查询
|
/*把Mybatis的分页对象做封装转换,MP的分页对象上有一些SQL敏感信息,还是通过spring的分页模型来封装数据吧*/
|
com.baomidou.mybatisplus.extension.plugins.pagination.Page<Head> pageResult = headService.paginQuery(head, current,size);
|
//3. 分页结果组装
|
List<Head> dataList = pageResult.getRecords();
|
long total = pageResult.getTotal();
|
PageImpl<Head> retPage = new PageImpl<Head>(dataList,pageRequest,total);
|
return AjaxResult.success(retPage);
|
}
|
|
/**
|
* 新增数据
|
*
|
* @param shengchanVo 实例对象
|
* @return 实例对象
|
*/
|
@ApiOperation("新增数据")
|
@PostMapping
|
public AjaxResult add( @RequestBody ShengchanVo shengchanVo){
|
|
Head h = headService.insert(shengchanVo.getHead());
|
if (shengchanVo.getChanliangtongjiList() != null) {
|
shengchanVo.getChanliangtongjiList().setHeadId(h.getId());
|
chanliangtongjiService.save(shengchanVo.getChanliangtongjiList());
|
}
|
if (shengchanVo.getFeipinHanji() != null) {
|
shengchanVo.getFeipinHanji().setHeadId(h.getId());
|
feipinHanjiService.save(shengchanVo.getFeipinHanji());
|
}
|
if (shengchanVo.getFeipinFanbian() != null) {
|
shengchanVo.getFeipinFanbian().setHeadId(h.getId());
|
feipinFanbianService.save(shengchanVo.getFeipinFanbian());
|
}
|
if (shengchanVo.getFeipinYintie() != null) {
|
shengchanVo.getFeipinYintie().setHeadId(h.getId());
|
feipinYintieMapper.insert(shengchanVo.getFeipinYintie());
|
}
|
if (shengchanVo.getFeipinGuan() != null) {
|
shengchanVo.getFeipinGuan().setHeadId(h.getId());
|
feipinGuanMapper.insert(shengchanVo.getFeipinGuan());
|
}
|
if (shengchanVo.getFeipinJianban() != null) {
|
shengchanVo.getFeipinJianban().setHeadId(h.getId());
|
feipinJianbanMapper.insert(shengchanVo.getFeipinJianban());
|
}
|
if (shengchanVo.getFeipinJianguan() != null) {
|
shengchanVo.getFeipinJianguan().setHeadId(h.getId());
|
feipinJianguanMapper.insert(shengchanVo.getFeipinJianguan());
|
}
|
|
if (shengchanVo.getFeipinJiguan() != null) {
|
shengchanVo.getFeipinJiguan().setHeadId(h.getId());
|
feipinJiguanMapper.insert(shengchanVo.getFeipinJiguan());
|
}
|
|
|
if (shengchanVo.getFeipinFengkou() != null) {
|
shengchanVo.getFeipinFengkou().setHeadId(h.getId());
|
feipinFengkouMapper.insert(shengchanVo.getFeipinFengkou());
|
}
|
|
if (shengchanVo.getFeipinZhijian() != null) {
|
shengchanVo.getFeipinZhijian().setHeadId(h.getId());
|
feipinZhijianService.save(shengchanVo.getFeipinZhijian());
|
}
|
|
|
return AjaxResult.success(h.getId());
|
}
|
|
|
/**
|
* 获取最新数据
|
*
|
* @return 实例对象
|
*/
|
@ApiOperation("获取最新数据")
|
@PostMapping("/last")
|
public AjaxResult getlastRecord(@RequestBody String leixing) {
|
|
//Head head = headService.queryLast("A7");
|
|
JSONObject j = JSONObject.parseObject(leixing);
|
HashMap<String, String > myMap = new HashMap<String, String>(){{
|
put("0","一");
|
put("2","二");
|
put("3","三");
|
put("4","四");
|
put("5","五");
|
put("6","六");
|
put("7","七");
|
put("8","八");
|
put("9","九");
|
}};
|
|
Head head = headService.queryLeixingChanxian("A7",myMap.get(j.getString("leixing")));
|
ShengchanVo shengchanVo = new ShengchanVo();
|
|
if (head == null) return AjaxResult.error("访问无数据");
|
|
shengchanVo.setHead(head);
|
shengchanVo.setFeipinZhijian(feipinZhijianService.queryByHeadId(head.getId()));
|
shengchanVo.setChanliangtongjiList(chanliangtongjiService.queryByHeadId(head.getId()));
|
shengchanVo.setFeipinHanji(feipinHanjiService.queryByHeadId(head.getId()));
|
shengchanVo.setFeipinFanbian(feipinFanbianService.queryByHeadId(head.getId()));
|
shengchanVo.setFeipinJianban(feipinJianbanMapper.selectOne(new QueryWrapper<FeipinJianban>().eq("head_id",head.getId())));
|
shengchanVo.setFeipinYintie(feipinYintieMapper.selectOne(new QueryWrapper<FeipinYintie>().eq("head_id",head.getId())));
|
shengchanVo.setFeipinGuan(feipinGuanMapper.selectOne(new QueryWrapper<FeipinGuan>().eq("head_id",head.getId())));
|
shengchanVo.setFeipinJianguan(feipinJianguanMapper.selectOne(new QueryWrapper<FeipinJianguan>().eq("head_id",head.getId())));
|
shengchanVo.setFeipinJiguan(feipinJiguanMapper.selectOne(new QueryWrapper<FeipinJiguan>().eq("head_id",head.getId())));
|
shengchanVo.setFeipinFengkou(feipinFengkouMapper.selectOne(new QueryWrapper<FeipinFengkou>().eq("head_id",head.getId())));
|
|
return AjaxResult.success(shengchanVo);
|
}
|
|
@PostMapping("/page")
|
public AjaxResult findPage( @RequestParam(defaultValue = "1") Integer pageNum , @RequestParam(defaultValue = "10") Integer pageSize) {
|
|
|
List<Head> headList = headMapper.queryPage2((pageNum - 1) * pageSize, pageSize);
|
IPage iPage = new Page();
|
List<ShengchanVo> records = new ArrayList<>();
|
for (Head h : headList) {
|
|
ShengchanVo shengchanVo = new ShengchanVo();
|
Head head = headService.queryById(h.getId());
|
if (head == null) return AjaxResult.error("访问无数据");
|
|
shengchanVo.setHead(head);
|
shengchanVo.setFeipinZhijian(feipinZhijianService.queryByHeadId(head.getId()));
|
shengchanVo.setChanliangtongjiList(chanliangtongjiService.queryByHeadId(head.getId()));
|
shengchanVo.setFeipinHanji(feipinHanjiService.queryByHeadId(head.getId()));
|
shengchanVo.setFeipinFanbian(feipinFanbianService.queryByHeadId(head.getId()));
|
shengchanVo.setFeipinJianban(feipinJianbanMapper.selectOne(new QueryWrapper<FeipinJianban>().eq("head_id",head.getId())));
|
shengchanVo.setFeipinYintie(feipinYintieMapper.selectOne(new QueryWrapper<FeipinYintie>().eq("head_id",head.getId())));
|
shengchanVo.setFeipinGuan(feipinGuanMapper.selectOne(new QueryWrapper<FeipinGuan>().eq("head_id",head.getId())));
|
shengchanVo.setFeipinJianguan(feipinJianguanMapper.selectOne(new QueryWrapper<FeipinJianguan>().eq("head_id",head.getId())));
|
shengchanVo.setFeipinJiguan(feipinJiguanMapper.selectOne(new QueryWrapper<FeipinJiguan>().eq("head_id",head.getId())));
|
shengchanVo.setFeipinFengkou(feipinFengkouMapper.selectOne(new QueryWrapper<FeipinFengkou>().eq("head_id",head.getId())));
|
|
|
records.add(shengchanVo);
|
}
|
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 shengchanVo 实例对象
|
* @return 实例对象
|
*/
|
@ApiOperation("更新数据")
|
@PostMapping("/edit")
|
public AjaxResult edit(@RequestBody ShengchanVo shengchanVo){
|
|
Head h2 = shengchanVo.getHead();
|
h2.setId("");
|
Head h = headService.insert(h2);
|
|
if (shengchanVo.getChanliangtongjiList() != null) {
|
shengchanVo.getChanliangtongjiList().setHeadId(h.getId());
|
chanliangtongjiService.saveOrUpdate(shengchanVo.getChanliangtongjiList());
|
}
|
if (shengchanVo.getFeipinHanji() != null) {
|
shengchanVo.getFeipinHanji().setHeadId(h.getId());
|
feipinHanjiService.saveOrUpdate(shengchanVo.getFeipinHanji());
|
}
|
if (shengchanVo.getFeipinFanbian() != null) {
|
shengchanVo.getFeipinFanbian().setHeadId(h.getId());
|
feipinFanbianService.saveOrUpdate(shengchanVo.getFeipinFanbian());
|
}
|
if (shengchanVo.getFeipinYintie() != null) {
|
shengchanVo.getFeipinYintie().setHeadId(h.getId());
|
feipinYintieMapper.insert(shengchanVo.getFeipinYintie());
|
}
|
if (shengchanVo.getFeipinGuan() != null) {
|
shengchanVo.getFeipinGuan().setHeadId(h.getId());
|
feipinGuanMapper.insert(shengchanVo.getFeipinGuan());
|
}
|
if (shengchanVo.getFeipinJianban() != null) {
|
shengchanVo.getFeipinJianban().setHeadId(h.getId());
|
feipinJianbanMapper.insert(shengchanVo.getFeipinJianban());
|
}
|
if (shengchanVo.getFeipinJianguan() != null) {
|
shengchanVo.getFeipinJianguan().setHeadId(h.getId());
|
feipinJianguanMapper.insert(shengchanVo.getFeipinJianguan());
|
}
|
|
if (shengchanVo.getFeipinJiguan() != null) {
|
shengchanVo.getFeipinJiguan().setHeadId(h.getId());
|
feipinJiguanMapper.insert(shengchanVo.getFeipinJiguan());
|
}
|
|
|
if (shengchanVo.getFeipinFengkou() != null) {
|
shengchanVo.getFeipinFengkou().setHeadId(h.getId());
|
feipinFengkouMapper.insert(shengchanVo.getFeipinFengkou());
|
}
|
|
if (shengchanVo.getFeipinZhijian() != null) {
|
shengchanVo.getFeipinZhijian().setHeadId(h.getId());
|
feipinZhijianService.saveOrUpdate(shengchanVo.getFeipinZhijian());
|
}
|
|
|
return AjaxResult.success(h.getId());
|
|
}
|
|
/**
|
* 通过主键删除数据
|
*
|
* @param id 主键
|
* @return 是否成功
|
*/
|
@ApiOperation("通过主键删除数据")
|
@DeleteMapping
|
public AjaxResult deleteById(String id){
|
return AjaxResult.success(headService.deleteById(id));
|
}
|
|
/**
|
* 废品统计信息
|
|
*/
|
@ApiOperation("统计废品数据")
|
@PostMapping("/feipinTotal")
|
public AjaxResult feipinTotal(){
|
|
Head head = headService.queryLast("A7");
|
|
if (head == null) return AjaxResult.error("访问无数据");
|
|
FeipintTotal feipintTotal = new FeipintTotal();
|
feipintTotal.setHead_id(head.getId());
|
feipintTotal.setZj_total(feipinZhijianService.queryByHeadId(head.getId())!=null?feipinZhijianService.queryByHeadId(head.getId()).getTotal():0);
|
|
feipintTotal.setHj_total(feipinHanjiService.queryByHeadId(head.getId())!=null?feipinHanjiService.queryByHeadId(head.getId()).getTotal():0);
|
feipintTotal.setFb_total(feipinFanbianService.queryByHeadId(head.getId())!=null?feipinFanbianService.queryByHeadId(head.getId()).getTotal():0);
|
feipintTotal.setJb_total(feipinJianbanMapper.selectOne(new QueryWrapper<FeipinJianban>().eq("head_id",head.getId())) != null?
|
feipinJianbanMapper.selectOne(new QueryWrapper<FeipinJianban>().eq("head_id",head.getId())).getTotal():0);
|
feipintTotal.setYt_total(feipinYintieMapper.selectOne(new QueryWrapper<FeipinYintie>().eq("head_id",head.getId())) != null ?
|
feipinYintieMapper.selectOne(new QueryWrapper<FeipinYintie>().eq("head_id",head.getId())).getTotal():0);
|
feipintTotal.setFp_total(feipinGuanMapper.selectOne(new QueryWrapper<FeipinGuan>().eq("head_id",head.getId()))!=null ?
|
feipinGuanMapper.selectOne(new QueryWrapper<FeipinGuan>().eq("head_id",head.getId())).getTotal():0);
|
feipintTotal.setJianguan_total(feipinJianguanMapper.selectOne(new QueryWrapper<FeipinJianguan>().eq("head_id",head.getId())) != null?
|
feipinJianguanMapper.selectOne(new QueryWrapper<FeipinJianguan>().eq("head_id",head.getId())).getTotal():0);
|
feipintTotal.setJg_total(feipinJiguanMapper.selectOne(new QueryWrapper<FeipinJiguan>().eq("head_id",head.getId())) != null?
|
feipinJiguanMapper.selectOne(new QueryWrapper<FeipinJiguan>().eq("head_id",head.getId())).getTotal():0);
|
feipintTotal.setFk_total(feipinFengkouMapper.selectOne(new QueryWrapper<FeipinFengkou>().eq("head_id",head.getId())) != null ?
|
feipinFengkouMapper.selectOne(new QueryWrapper<FeipinFengkou>().eq("head_id",head.getId())).getTotal():0);
|
|
if( head == null ) return AjaxResult.error("访问无数据");
|
return AjaxResult.success(feipintTotal);
|
}
|
/**
|
* 当天统计信息
|
|
*/
|
@ApiOperation("统计当天数据")
|
@PostMapping("/dayTongj")
|
public AjaxResult dayTongj(){
|
|
return AjaxResult.success(lineChanliangtongjiMapper.queryDay());
|
}
|
|
/**
|
* 本周统计信息
|
|
*/
|
@ApiOperation("统计本周数据")
|
@PostMapping("/weekTongj")
|
public AjaxResult weekTongj(){
|
|
return AjaxResult.success(lineChanliangtongjiMapper.queryWeek());
|
}
|
|
/**
|
* 月统计信息
|
|
*/
|
@ApiOperation("统计月数据")
|
@PostMapping("/monthTongj")
|
public AjaxResult monthTongj(int n){
|
List<LineChanliangtongji> list = lineChanliangtongjiMapper.queryMonth();
|
if( n == 0 ) return AjaxResult.success(lineChanliangtongjiMapper.queryMonth()) ;
|
else
|
return AjaxResult.success(lineChanliangtongjiMapper.queryMonthN(n));
|
}
|
|
/**
|
* 本周废品统计信息
|
|
*/
|
@ApiOperation("统计本周废品数据")
|
@PostMapping("/weekFeiPinTongj")
|
public AjaxResult weekFeiPinTongj(String leixing){
|
FeipinVo feipinVo = new FeipinVo() ;
|
if( leixing == null?true:leixing.equals("A3")) {
|
feipinVo.setFeipinFanbian(feipinFanbianMapper.queryWeek());
|
feipinVo.setFeipinFengkou(feipinFengkouMapper.queryWeek());
|
}
|
if( leixing == null?true:leixing.equals("A2"))
|
feipinVo.setFeipinHanji(feipinHanjiMapper.queryWeek());
|
if( leixing == null?true:leixing.equals("A1"))
|
feipinVo.setFeipinJianban(feipinJianbanMapper.queryWeek());
|
if( leixing == null?true:leixing.equals("A4"))
|
feipinVo.setFeipinJiguan(feipinJiguanMapper.queryWeek());
|
if( leixing == null?true:leixing.equals("A5"))
|
feipinVo.setFeipinJianguan(feipinJianguanMapper.queryWeek());
|
if( leixing == null) {
|
feipinVo.setFeipinYintie(feipinYintieMapper.queryWeek());
|
feipinVo.setFeipinGuan(feipinGuanMapper.queryWeek());
|
}
|
return AjaxResult.success(feipinVo);
|
}
|
|
/**
|
* 本周废品统计信息
|
|
*/
|
@ApiOperation("统计月废品数据")
|
@PostMapping("/monthFeiPinTongj")
|
public AjaxResult monthFeiPinTongj(String leixing,int n){
|
FeipinVo feipinVo = new FeipinVo() ;
|
if( n == 0){
|
if( leixing == null?true:leixing.equals("A3")) {
|
feipinVo.setFeipinFanbian(feipinFanbianMapper.queryMonth());
|
feipinVo.setFeipinFengkou(feipinFengkouMapper.queryMonth());
|
}
|
if( leixing == null?true:leixing.equals("A2"))
|
feipinVo.setFeipinHanji(feipinHanjiMapper.queryMonth());
|
if( leixing == null?true:leixing.equals("A1"))
|
feipinVo.setFeipinJianban(feipinJianbanMapper.queryMonth());
|
if( leixing == null?true:leixing.equals("A4"))
|
feipinVo.setFeipinJiguan(feipinJiguanMapper.queryMonth());
|
if( leixing == null?true:leixing.equals("A5"))
|
feipinVo.setFeipinJianguan(feipinJianguanMapper.queryMonth());
|
if( leixing == null) {
|
feipinVo.setFeipinYintie(feipinYintieMapper.queryMonth());
|
feipinVo.setFeipinGuan(feipinGuanMapper.queryMonth());
|
}}
|
else{
|
if( leixing == null?true:leixing.equals("A3")) {
|
feipinVo.setFeipinFanbian(feipinFanbianMapper.queryMonthN(n));
|
feipinVo.setFeipinFengkou(feipinFengkouMapper.queryMonthN(n));
|
}
|
if( leixing == null?true:leixing.equals("A2"))
|
feipinVo.setFeipinHanji(feipinHanjiMapper.queryMonthN(n));
|
if( leixing == null?true:leixing.equals("A1"))
|
feipinVo.setFeipinJianban(feipinJianbanMapper.queryMonthN(n));
|
if( leixing == null?true:leixing.equals("A4"))
|
feipinVo.setFeipinJiguan(feipinJiguanMapper.queryMonthN(n));
|
if( leixing == null?true:leixing.equals("A5"))
|
feipinVo.setFeipinJianguan(feipinJianguanMapper.queryMonthN(n));
|
if( leixing == null) {
|
feipinVo.setFeipinYintie(feipinYintieMapper.queryMonthN(n));
|
feipinVo.setFeipinGuan(feipinGuanMapper.queryMonthN(n));
|
}
|
}
|
return AjaxResult.success(feipinVo);
|
}
|
}
|