package com.chinaztt.mes.quality.controller;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.chinaztt.mes.common.wrapper.QueryWrapperUtil;
|
import com.chinaztt.mes.quality.dto.ApplyPartDTO;
|
import com.chinaztt.mes.quality.dto.QualityCheckRateInputDTO;
|
import com.chinaztt.mes.quality.entity.ApplyPart;
|
import com.chinaztt.mes.quality.service.ApplyPartService;
|
import com.chinaztt.mes.quality.service.ApplyService;
|
import com.chinaztt.ztt.common.core.util.R;
|
import com.chinaztt.ztt.common.log.annotation.SysLog;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import lombok.AllArgsConstructor;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.util.List;
|
|
|
/**
|
* 检测申请材料表
|
*
|
* @author cxf
|
* @date 2021-04-01 13:34:51
|
*/
|
@RestController
|
@AllArgsConstructor
|
@RequestMapping("/applyPart")
|
@Api(value = "applyPart", tags = "检测申请材料表管理")
|
public class ApplyPartController {
|
|
private final ApplyPartService applyPartService;
|
private final ApplyService applyService;
|
|
/**
|
* 所有查询
|
*
|
* @param applyPartDTO 检测申请材料表
|
* @return
|
*/
|
@ApiOperation(value = "所有查询", notes = "所有查询")
|
@GetMapping("/list")
|
public R getApplyPartList(ApplyPartDTO applyPartDTO) {
|
return R.ok(applyPartService.list(QueryWrapperUtil.gen(applyPartDTO)));
|
}
|
|
/**
|
* 分页查询
|
*
|
* @param page 分页对象
|
* @param applyPartDTO 检测申请材料表
|
* @return
|
*/
|
@ApiOperation(value = "分页查询", notes = "分页查询")
|
@GetMapping("/page")
|
@PreAuthorize("@pms.hasPermission('quality_applypart_view')")
|
public R getApplyPartPage(Page page, ApplyPartDTO applyPartDTO) {
|
return R.ok(applyPartService.getApplyPartPage(page, QueryWrapperUtil.gen(applyPartDTO)));
|
}
|
|
/**
|
* 分页查询未被汇报的申请材料
|
*
|
* @param page 分页对象
|
* @param applyPartDTO 检测申请材料表
|
* @return
|
*/
|
@ApiOperation(value = "分页查询未被汇报的申请材料", notes = "分页查询未被汇报的申请材料")
|
@GetMapping("/page/forReport")
|
@PreAuthorize("@pms.hasPermission('quality_applypart_view')")
|
public R getApplyPartPageForReport(Page page, ApplyPartDTO applyPartDTO) {
|
return R.ok(applyPartService.getApplyPartPageForReport(page, QueryWrapperUtil.gen(applyPartDTO)));
|
}
|
|
/**
|
* 分页查询不合格的申请材料
|
*
|
* @param page 分页对象
|
* @param applyPartDTO 检测申请材料表
|
* @return
|
*/
|
@ApiOperation(value = "分页查询不合格的申请材料", notes = "分页查询不合格的申请材料")
|
@GetMapping("/page/forUnqualified")
|
@PreAuthorize("@pms.hasPermission('quality_applypart_view')")
|
public R getApplyPartPageForUnqualified(Page page, ApplyPartDTO applyPartDTO) {
|
Long unqualifiedProcessId = applyPartDTO.getUnqualifiedProcessId();
|
applyPartDTO.setUnqualifiedProcessId(null);
|
return R.ok(applyPartService.getApplyPartPageForUnqualified(page, QueryWrapperUtil.gen(applyPartDTO), unqualifiedProcessId));
|
}
|
|
/**
|
* 通过id查询检测申请材料表
|
*
|
* @param id id
|
* @return R
|
*/
|
@ApiOperation(value = "通过id查询", notes = "通过id查询")
|
@GetMapping("/{id}")
|
@PreAuthorize("@pms.hasPermission('quality_applypart_view')")
|
public R getById(@PathVariable("id") Long id) {
|
return R.ok(applyPartService.getApplyPartDtoById(id));
|
}
|
|
/**
|
* 新增检测申请材料表(库存)
|
*
|
* @param applyPartList 检测申请材料表
|
* @return R
|
*/
|
@ApiOperation(value = "新增检测申请材料表(库存)", notes = "新增检测申请材料表(库存)")
|
@SysLog("新增检测申请材料表(库存)")
|
@PostMapping
|
@PreAuthorize("@pms.hasPermission('quality_applypart_add')")
|
public R save(@RequestBody List<ApplyPartDTO> applyPartList) {
|
return R.ok(applyService.saveApplyPartList(applyPartList));
|
}
|
|
/**
|
* 新增检测申请材料表(erp同步)
|
*
|
* @param applyPartList 检测申请材料表
|
* @return R
|
*/
|
@ApiOperation(value = "新增检测申请材料表(erp同步)", notes = "新增检测申请材料表(erp同步)")
|
@SysLog("新增检测申请材料表(erp同步)")
|
@PostMapping("/erp")
|
public R saveApply(@RequestBody List<ApplyPart> applyPartList) {
|
return R.ok(applyPartService.saveApply(applyPartList));
|
}
|
|
/**
|
* 修改检测申请材料表(0普通编辑,1用来做标记合格不合格,2绑定汇报)
|
*
|
* @param applyPartList 检测申请材料表
|
* @return R
|
*/
|
@ApiOperation(value = "修改检测申请材料表", notes = "修改检测申请材料表")
|
@SysLog("修改检测申请材料表")
|
@PutMapping("/batch/{type}")
|
@PreAuthorize("@pms.hasPermission('quality_applypart_edit')")
|
public R batchUpdateApplyPart(@RequestBody List<ApplyPart> applyPartList, @PathVariable Long type) {
|
return applyPartService.batchUpdateApplyPart(applyPartList, type);
|
}
|
|
/**
|
* 修改检测申请材料表(0普通编辑,1用来做标记合格不合格,2绑定汇报)
|
*
|
* @param applyPartList 检测申请材料表
|
* @return R
|
*/
|
@ApiOperation(value = "修改检测申请材料表", notes = "修改检测申请材料表")
|
@SysLog("修改检测申请材料表")
|
@PutMapping("/batchV2/{type}")
|
@PreAuthorize("@pms.hasPermission('quality_applypart_edit')")
|
public R batchUpdateApplyPartV2(@RequestBody List<ApplyPart> applyPartList, @PathVariable Long type) {
|
return applyPartService.batchUpdateApplyPartV2(applyPartList, type);
|
}
|
|
/**
|
* 标记检测结果后同步erp库存
|
*
|
* @param applyPartList 检测申请材料表
|
* @return R
|
*/
|
@ApiOperation(value = "标记检测结果后同步erp库存", notes = "标记检测结果后同步erp库存")
|
@SysLog("标记检测结果后同步erp库存")
|
@PostMapping("/synchronizationErp")
|
public R synchronizationErp(@RequestBody List<ApplyPart> applyPartList) {
|
return R.ok(applyPartService.synchronizationErpStock(applyPartList));
|
}
|
|
/**
|
* 修改检测申请材料表
|
*
|
* @param applyPart 检测申请材料表
|
* @return R
|
*/
|
@ApiOperation(value = "修改检测申请材料表", notes = "修改检测申请材料表")
|
@SysLog("修改检测申请材料表")
|
@PutMapping
|
@PreAuthorize("@pms.hasPermission('quality_applypart_edit')")
|
public R updateById(@RequestBody ApplyPart applyPart) {
|
return R.ok(applyPartService.updateById(applyPart));
|
}
|
|
/**
|
* 通过id删除检测申请材料表
|
*
|
* @param id id
|
* @return R
|
*/
|
@ApiOperation(value = "通过id删除检测申请材料表", notes = "通过id删除检测申请材料表")
|
@SysLog("通过id删除检测申请材料表")
|
@DeleteMapping("/{id}")
|
@PreAuthorize("@pms.hasPermission('quality_applypart_del')")
|
public R removeById(@PathVariable Long id) {
|
if(applyPartService.isApplyReportIsSubmitByApplyPartId(id)){
|
return R.failed("检测汇报已提交,冻结删除操作!");
|
}else{
|
return R.ok(applyPartService.removeById(id));
|
}
|
}
|
|
/**
|
* 通过id删除检测报告材料表
|
*
|
* @param id id
|
* @return R
|
*/
|
@ApiOperation(value = "通过id删除检测报告材料表", notes = "通过id删除检测报告材料表")
|
@SysLog("通过id删除检测报告材料表")
|
@DeleteMapping("/forReport/{id}")
|
@PreAuthorize("@pms.hasPermission('quality_applypart_del')")
|
public R removeByIdForReport(@PathVariable Long id) {
|
return R.ok(applyPartService.removeByIdForReport(id));
|
}
|
|
/**
|
* 根据零件系统唯一编号查询对应的制造订单的检测标准
|
*
|
* @param systemNo systemNo
|
* @return R
|
*/
|
@ApiOperation(value = "根据零件系统唯一编号查询对应的制造订单的检测标准", notes = "根据零件系统唯一编号查询对应的制造订单的检测标准")
|
@GetMapping("/findTestStandardNoBySystemNo/{systemNo}")
|
public R findTestStandardNoBySystemNo(@PathVariable("systemNo") String systemNo) {
|
return R.ok(applyPartService.findTestStandardNoBySystemNo(systemNo));
|
}
|
|
|
|
/**
|
* 质检合格率统计报表
|
*
|
* @param qualityCheckRateInputDTO
|
* @return R
|
*/
|
@ApiOperation(value = "质检合格率统计报表", notes = "质检合格率统计报表")
|
@SysLog("质检合格率统计报表")
|
@GetMapping("/getQualityCheckRate")
|
public R getQualityCheckRate(Page page, QualityCheckRateInputDTO qualityCheckRateInputDTO) {
|
return R.ok(applyPartService.getQualityCheckRate(page,qualityCheckRateInputDTO));
|
}
|
|
|
/**
|
* 质检合格率统计柱状图
|
*
|
* @param qualityCheckRateInputDTO
|
* @return R
|
*/
|
@ApiOperation(value = "质检合格率统计柱状图", notes = "质检合格率统计柱状图")
|
@SysLog("质检合格率统计柱状图")
|
@PostMapping("/getQualityCheckRatePicture")
|
public R getQualityCheckRatePicture(@RequestBody QualityCheckRateInputDTO qualityCheckRateInputDTO) {
|
return R.ok(applyPartService.getQualityCheckRatePicture(qualityCheckRateInputDTO));
|
}
|
|
/**
|
* 待检零件分页查询
|
* @param page
|
*/
|
@ApiOperation(value = "待检零件分页查询", notes = "待检零件分页查询")
|
@GetMapping("/getTestApplyPage")
|
public R<IPage<ApplyPartDTO>> getTestApplyPage(Page page, ApplyPartDTO applyPartDTO, Integer queryType) {
|
return R.ok(applyPartService.getTestApplyPage(page, QueryWrapperUtil.gen(applyPartDTO), queryType));
|
}
|
}
|