package com.chinaztt.mes.quality.controller;
|
|
import com.alibaba.excel.EasyExcel;
|
import com.alibaba.excel.exception.ExcelAnalysisException;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.chinaztt.mes.common.wrapper.QueryWrapperUtil;
|
import com.chinaztt.mes.quality.dto.Quality19PrintDTO;
|
import com.chinaztt.mes.quality.entity.QualityHw19Code;
|
import com.chinaztt.mes.quality.entity.QualityHw19CodeBing;
|
import com.chinaztt.mes.quality.excel.QualityHw19CodeBingImportData;
|
import com.chinaztt.mes.quality.excel.QualityHw19CodeBingUploadListener;
|
import com.chinaztt.mes.quality.service.QualityHw19CodeBingService;
|
import com.chinaztt.ztt.common.core.util.R;
|
import com.chinaztt.ztt.common.log.annotation.SysLog;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import lombok.AllArgsConstructor;
|
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.multipart.MultipartFile;
|
|
import javax.servlet.http.HttpServletResponse;
|
import java.io.IOException;
|
|
|
/**
|
* 19条码生成绑定
|
*
|
* @author pigx code generator
|
* @date 2022-12-02 11:07:25
|
*/
|
@RestController
|
@AllArgsConstructor
|
@RequestMapping("/qualityhw19codebing" )
|
@Api(value = "qualityhw19codebing", tags = "19条码生成绑定管理")
|
public class QualityHw19CodeBingController {
|
|
private final QualityHw19CodeBingService qualityHw19CodeBingService;
|
|
/**
|
* 分页查询
|
* @param page 分页对象
|
* @param qualityHw19CodeBing 19条码生成绑定
|
* @return
|
*/
|
@ApiOperation(value = "分页查询", notes = "分页查询")
|
@GetMapping("/page" )
|
public R getQualityHw19CodeBingPage(Page page, QualityHw19CodeBing qualityHw19CodeBing) {
|
return R.ok(qualityHw19CodeBingService.page(page, QueryWrapperUtil.gen(qualityHw19CodeBing)));
|
}
|
|
|
/**
|
* 通过id查询19条码生成绑定
|
* @param id id
|
* @return R
|
*/
|
@ApiOperation(value = "通过id查询", notes = "通过id查询")
|
@GetMapping("/{id}" )
|
public R getById(@PathVariable("id" ) Long id) {
|
return R.ok(qualityHw19CodeBingService.getById(id));
|
}
|
|
/**
|
* 新增19条码生成绑定
|
* @param qualityHw19CodeBing 19条码生成绑定
|
* @return R
|
*/
|
@ApiOperation(value = "新增19条码生成绑定", notes = "新增19条码生成绑定")
|
@SysLog("新增19条码生成绑定" )
|
@PostMapping
|
public R save(@RequestBody QualityHw19CodeBing qualityHw19CodeBing) {
|
qualityHw19CodeBingService.insert(qualityHw19CodeBing);
|
return R.ok();
|
}
|
|
/**
|
* 修改19条码生成绑定
|
* @param qualityHw19CodeBing 19条码生成绑定
|
* @return R
|
*/
|
@ApiOperation(value = "修改19条码生成绑定", notes = "修改19条码生成绑定")
|
@SysLog("修改19条码生成绑定" )
|
@PutMapping
|
public R updateById(@RequestBody QualityHw19CodeBing qualityHw19CodeBing) {
|
return R.ok(qualityHw19CodeBingService.updateById(qualityHw19CodeBing));
|
}
|
|
/**
|
* 通过id删除19条码生成绑定
|
* @param id id
|
* @return R
|
*/
|
@ApiOperation(value = "通过id删除19条码生成绑定", notes = "通过id删除19条码生成绑定")
|
@SysLog("通过id删除19条码生成绑定" )
|
@DeleteMapping("/{id}" )
|
public R removeById(@PathVariable Long id) {
|
return R.ok(qualityHw19CodeBingService.removeById(id));
|
}
|
|
|
@ApiOperation(value = "打印合格证", notes = "打印合格证")
|
@SysLog("打印合格证" )
|
@GetMapping("/getPrintInfo/{id}")
|
public R<Quality19PrintDTO> getPrintInfo(@PathVariable Long id) throws Exception {
|
Quality19PrintDTO resp = qualityHw19CodeBingService.getPrintInfo(id);
|
return R.ok(resp);
|
}
|
|
/**
|
* 导入
|
* @param file 导入文件
|
* @return
|
* @throws Exception
|
*/
|
@ApiOperation("导入")
|
@PostMapping("/upload")
|
public R upload(@RequestParam("file") MultipartFile file){
|
try {
|
EasyExcel.read(file.getInputStream(), QualityHw19CodeBingImportData.class, new QualityHw19CodeBingUploadListener(qualityHw19CodeBingService)).sheet().doRead();
|
}catch(ExcelAnalysisException e){
|
throw new RuntimeException("请核实导入文件数据格式");
|
}catch (IOException e){
|
throw new RuntimeException(e);
|
}
|
return R.ok();
|
}
|
|
|
@ApiOperation(value = "模板导出", notes = "模板导出")
|
@SysLog("19条码生成模板导出" )
|
@GetMapping("/exportModel" )
|
public void exportModel(HttpServletResponse response) throws IOException {
|
qualityHw19CodeBingService.exportModel(response);
|
}
|
|
|
@ApiOperation(value = "导出", notes = "导出")
|
@SysLog("导出" )
|
@GetMapping("/exportInfo" )
|
public void exportInfo(HttpServletResponse response, QualityHw19CodeBing req) throws IOException {
|
qualityHw19CodeBingService.exportInfo(response,req);
|
}
|
}
|