| | |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.framework.web.domain.AjaxResult; |
| | | import com.ruoyi.procurementrecord.pojo.ProcurementRecordStorage; |
| | | import com.ruoyi.procurementrecord.service.ProcurementRecordService; |
| | | import com.ruoyi.procurementrecord.service.impl.ProcurementRecordServiceImpl; |
| | | import com.ruoyi.quality.dto.QualityInspectDto; |
| | | import com.ruoyi.quality.pojo.QualityInspect; |
| | | import com.ruoyi.quality.pojo.QualityInspectFile; |
| | |
| | | import com.ruoyi.quality.service.IQualityInspectParamService; |
| | | import com.ruoyi.quality.service.IQualityInspectService; |
| | | import com.ruoyi.quality.service.IQualityUnqualifiedService; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.util.CollectionUtils; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | |
| | | |
| | | @Resource |
| | | private IQualityInspectFileService qualityInspectFileService; |
| | | @Autowired |
| | | private ProcurementRecordService procurementRecordService; |
| | | |
| | | |
| | | /** |
| | |
| | | */ |
| | | @PostMapping("/add") |
| | | public AjaxResult add(@RequestBody QualityInspectDto qualityInspectDto) { |
| | | String validationMessage = validateInspect(qualityInspectDto, false); |
| | | if (validationMessage != null) { |
| | | return AjaxResult.error(validationMessage); |
| | | } |
| | | return AjaxResult.success(qualityInspectService.add(qualityInspectDto)); |
| | | } |
| | | |
| | |
| | | //删除检验附件 |
| | | qualityInspectFileService.remove(Wrappers.<QualityInspectFile>lambdaQuery() |
| | | .in(QualityInspectFile::getInspectId,ids)); |
| | | //删除入库记录 |
| | | procurementRecordService.remove(Wrappers.<ProcurementRecordStorage>lambdaQuery().in(ProcurementRecordStorage::getQualityInspectId,ids)); |
| | | //删除检验单 |
| | | return AjaxResult.success(qualityInspectService.removeBatchByIds(ids)); |
| | | } |
| | |
| | | */ |
| | | @PostMapping("/update") |
| | | public AjaxResult update(@RequestBody QualityInspectDto qualityInspectDto) { |
| | | String validationMessage = validateInspect(qualityInspectDto, true); |
| | | if (validationMessage != null) { |
| | | return AjaxResult.error(validationMessage); |
| | | } |
| | | QualityInspect stored = qualityInspectService.getById(qualityInspectDto.getId()); |
| | | if (stored == null) { |
| | | return AjaxResult.error("检验记录不存在"); |
| | | } |
| | | if (Integer.valueOf(1).equals(stored.getInspectState())) { |
| | | return AjaxResult.error("已提交的检验记录不能修改"); |
| | | } |
| | | return AjaxResult.success(qualityInspectService.updateQualityInspect(qualityInspectDto)); |
| | | } |
| | | |
| | |
| | | |
| | | /** |
| | | * 提交 |
| | | * @param id |
| | | * @param qualityInspect |
| | | * @return |
| | | */ |
| | | @PostMapping("/submit") |
| | | public AjaxResult submit(Integer id) { |
| | | return AjaxResult.success(qualityInspectService.submit(id)); |
| | | public AjaxResult submit(@RequestBody QualityInspect qualityInspect) { |
| | | return AjaxResult.success(qualityInspectService.submit(qualityInspect)); |
| | | } |
| | | |
| | | /** |
| | | * 下载 |
| | | * @param response |
| | | * @param id |
| | | * @param qualityInspect |
| | | */ |
| | | @PostMapping("/down") |
| | | public void down(HttpServletResponse response,Integer id) { |
| | | qualityInspectService.down(response, id); |
| | | public void down(HttpServletResponse response,@RequestBody QualityInspect qualityInspect) { |
| | | qualityInspectService.down(response, qualityInspect); |
| | | } |
| | | |
| | | private String validateInspect(QualityInspectDto inspect, boolean requireId) { |
| | | if (inspect == null) { |
| | | return "检验数据不能为空"; |
| | | } |
| | | if (requireId && inspect.getId() == null) { |
| | | return "检验记录ID不能为空"; |
| | | } |
| | | if (inspect.getInspectType() == null || inspect.getInspectType() < 0 || inspect.getInspectType() > 2) { |
| | | return "检验类别不正确"; |
| | | } |
| | | if (inspect.getProductId() == null) { |
| | | return "请选择产品"; |
| | | } |
| | | if (inspect.getCheckTime() == null) { |
| | | return "请选择检测日期"; |
| | | } |
| | | if (inspect.getQuantity() == null || inspect.getQuantity().signum() <= 0) { |
| | | return "检验数量必须大于0"; |
| | | } |
| | | if (!"合格".equals(inspect.getCheckResult()) && !"不合格".equals(inspect.getCheckResult())) { |
| | | return "请选择有效的检测结果"; |
| | | } |
| | | if (inspect.getInspectType() == 1 && StringUtils.isBlank(inspect.getProcess())) { |
| | | return "过程检验必须选择工序"; |
| | | } |
| | | if (CollectionUtils.isEmpty(inspect.getQualityInspectParams())) { |
| | | return "当前产品未配置检验指标,请先维护指标"; |
| | | } |
| | | for (QualityInspectParam parameter : inspect.getQualityInspectParams()) { |
| | | if (StringUtils.isBlank(parameter.getParameterItem())) { |
| | | return "检验项目不能为空"; |
| | | } |
| | | if (StringUtils.isBlank(parameter.getTestValue())) { |
| | | return "请填写“" + parameter.getParameterItem() + "”的检验值"; |
| | | } |
| | | } |
| | | return null; |
| | | } |
| | | } |