package com.chinaztt.mes.quality.controller;
|
|
import com.alibaba.excel.EasyExcel;
|
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.TestStandardDTO;
|
import com.chinaztt.mes.quality.excel.TestStandardData;
|
import com.chinaztt.mes.quality.excel.TestStandardUploadListener;
|
import com.chinaztt.mes.quality.state.standard.constant.StandardStateStringValues;
|
import com.chinaztt.ztt.common.core.util.R;
|
import com.chinaztt.ztt.common.log.annotation.SysLog;
|
import com.chinaztt.mes.quality.entity.TestStandard;
|
import com.chinaztt.mes.quality.service.TestStandardService;
|
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 java.util.List;
|
|
|
/**
|
* 检测标准
|
*
|
* @author cxf
|
* @date 2021-04-22 09:03:06
|
*/
|
@RestController
|
@AllArgsConstructor
|
@RequestMapping("/testStandard")
|
@Api(value = "testStandard", tags = "检测标准管理")
|
public class TestStandardController {
|
|
private final TestStandardService testStandardService;
|
|
/**
|
* 分页查询
|
*
|
* @param page 分页对象
|
* @param testStandardDTO 检测标准
|
* @return
|
*/
|
@ApiOperation(value = "分页查询", notes = "分页查询")
|
@GetMapping("/page")
|
public R getTestStandardPage(Page page, TestStandardDTO testStandardDTO) {
|
return R.ok(testStandardService.pageInfo(page, QueryWrapperUtil.gen(testStandardDTO)));
|
}
|
|
|
/**
|
* 通过id查询检测标准
|
*
|
* @param id id
|
* @return R
|
*/
|
@ApiOperation(value = "通过id查询", notes = "通过id查询")
|
@GetMapping("/{id}")
|
public R getById(@PathVariable("id") Long id) {
|
return R.ok(testStandardService.getInfoById(id));
|
}
|
|
/**
|
* 新增检测标准
|
*
|
* @param testStandard 检测标准
|
* @return R
|
*/
|
@ApiOperation(value = "新增检测标准", notes = "新增检测标准")
|
@SysLog("新增检测标准")
|
@PostMapping
|
public R save(@RequestBody TestStandard testStandard) {
|
return R.ok(testStandardService.save(testStandard));
|
}
|
|
/**
|
* 修改检测标准
|
*
|
* @param testStandard 检测标准
|
* @return R
|
*/
|
@ApiOperation(value = "修改检测标准", notes = "修改检测标准")
|
@SysLog("修改检测标准")
|
@PutMapping
|
public R updateById(@RequestBody TestStandard testStandard) {
|
return R.ok(testStandardService.updateById(testStandard));
|
}
|
|
/**
|
* 通过id删除检测标准
|
*
|
* @param ids id
|
* @return R
|
*/
|
@ApiOperation(value = "通过id删除检测标准", notes = "通过id删除检测标准")
|
@SysLog("通过id删除检测标准")
|
@DeleteMapping
|
public R removeById(@RequestBody List<Long> ids) {
|
return testStandardService.removeByIds(ids);
|
}
|
|
/**
|
* 通过id复制检测标准
|
*
|
* @param id id
|
* @return R
|
*/
|
@ApiOperation(value = "通过id复制检测标准", notes = "通过id复制检测标准")
|
@SysLog("通过id复制检测标准")
|
@PostMapping("/{id}")
|
public R copyTestById(@PathVariable Long id) {
|
return R.ok(testStandardService.copyTestById(id));
|
}
|
/**
|
* 批准
|
* @param ids
|
* @return
|
*/
|
@PostMapping("/state/accept")
|
public R accept(@RequestBody List<Long> ids){
|
for (Long id : ids) {
|
TestStandard testStandard = testStandardService.getById(id);
|
testStandard.setState(StandardStateStringValues.ACCEPTED);
|
//testStandardService.updateById(testStandard);
|
testStandardService.approveTestStandard(testStandard);
|
}
|
return R.ok();
|
}
|
|
/**
|
* 拒绝
|
* @param ids
|
* @return
|
*/
|
@PostMapping("/state/reject")
|
public R reject(@RequestBody List<Long> ids){
|
for (Long id : ids) {
|
TestStandard testStandard = testStandardService.getById(id);
|
testStandard.setState(StandardStateStringValues.CANCELLED);
|
testStandardService.updateById(testStandard);
|
}
|
return R.ok();
|
}
|
|
/**
|
* 取消
|
* @param ids
|
* @return
|
*/
|
@PostMapping("/state/cancel")
|
public R cancel(@RequestBody List<Long> ids){
|
for (Long id : ids) {
|
TestStandard testStandard = testStandardService.getById(id);
|
testStandard.setState(StandardStateStringValues.DRAFT);
|
testStandardService.updateById(testStandard);
|
}
|
return R.ok();
|
}
|
|
/**
|
* 失效
|
* @param ids
|
* @return
|
*/
|
@PostMapping("/state/disabled")
|
public R disabled(@RequestBody List<Long> ids){
|
for (Long id : ids) {
|
TestStandard testStandard = testStandardService.getById(id);
|
testStandard.setState(StandardStateStringValues.DISABLED);
|
testStandardService.updateById(testStandard);
|
}
|
return R.ok();
|
}
|
|
/**
|
* 导入检测标准
|
* @param file 导入文件
|
* @return
|
* @throws Exception
|
*/
|
@ApiOperation("导入检测标准")
|
@PostMapping("/upload")
|
public R upload(@RequestParam("file") MultipartFile file) throws Exception {
|
EasyExcel.read(file.getInputStream(), TestStandardData.class, new TestStandardUploadListener(testStandardService)).sheet().doRead();
|
return R.ok();
|
}
|
|
/**
|
* 通过编号查询检测标准
|
*
|
* @param no no
|
* @return R
|
*/
|
@ApiOperation(value = "通过no查询", notes = "通过no查询")
|
@GetMapping("/getByNo/{no}")
|
public R getByNo(@PathVariable("no") String no) {
|
return R.ok(testStandardService.getByNo(no));
|
}
|
|
|
}
|