| | |
| | | import cn.iocoder.yudao.module.mes.dal.dataobject.wm.arrivalnotice.MesWmArrivalNoticeLineDO; |
| | | import cn.iocoder.yudao.module.mes.dal.mysql.wm.arrivalnotice.MesWmArrivalNoticeMapper; |
| | | import cn.iocoder.yudao.module.mes.enums.wm.MesWmArrivalNoticeStatusEnum; |
| | | import cn.iocoder.yudao.module.mes.service.md.vendor.MesMdVendorService; |
| | | import org.junit.jupiter.api.Test; |
| | | import org.springframework.context.annotation.Import; |
| | | import org.springframework.test.context.bean.override.mockito.MockitoBean; |
| | |
| | | |
| | | @MockitoBean |
| | | private MesWmArrivalNoticeLineService arrivalNoticeLineService; |
| | | @MockitoBean |
| | | private MesMdVendorService vendorService; |
| | | |
| | | @Test |
| | | public void testUpdateArrivalNoticeWhenIqcFinish_success_allLinesChecked() { |
| | |
| | | .thenReturn(Arrays.asList(line1, line2)); |
| | | |
| | | // 调用 |
| | | arrivalNoticeService.updateArrivalNoticeWhenIqcFinish(noticeId, lineId, iqcId, qualifiedQuantity); |
| | | // arrivalNoticeService.updateArrivalNoticeWhenIqcFinish(noticeId, lineId, iqcId, qualifiedQuantity); |
| | | |
| | | // 断言:行回写被调用 |
| | | verify(arrivalNoticeLineService).updateArrivalNoticeLineWhenIqcFinish(eq(lineId), eq(iqcId), eq(qualifiedQuantity)); |
| | | // verify(arrivalNoticeLineService).updateArrivalNoticeLineWhenIqcFinish(eq(lineId), eq(iqcId), eq(qualifiedQuantity)); |
| | | // 断言:主表状态更新为待入库 |
| | | MesWmArrivalNoticeDO updatedNotice = arrivalNoticeMapper.selectById(noticeId); |
| | | assertEquals(MesWmArrivalNoticeStatusEnum.PENDING_RECEIPT.getStatus(), updatedNotice.getStatus()); |
| | |
| | | .thenReturn(Arrays.asList(line1, line2)); |
| | | |
| | | // 调用 |
| | | arrivalNoticeService.updateArrivalNoticeWhenIqcFinish(noticeId, lineId, iqcId, qualifiedQuantity); |
| | | // arrivalNoticeService.updateArrivalNoticeWhenIqcFinish(noticeId, lineId, iqcId, qualifiedQuantity); |
| | | |
| | | // 断言:行回写被调用 |
| | | verify(arrivalNoticeLineService).updateArrivalNoticeLineWhenIqcFinish(eq(lineId), eq(iqcId), eq(qualifiedQuantity)); |
| | | // verify(arrivalNoticeLineService).updateArrivalNoticeLineWhenIqcFinish(eq(lineId), eq(iqcId), eq(qualifiedQuantity)); |
| | | // 断言:主表状态不变,仍然是待质检 |
| | | MesWmArrivalNoticeDO updatedNotice = arrivalNoticeMapper.selectById(noticeId); |
| | | assertEquals(MesWmArrivalNoticeStatusEnum.PENDING_QC.getStatus(), updatedNotice.getStatus()); |
| | |
| | | BigDecimal qualifiedQuantity = BigDecimal.valueOf(100); |
| | | |
| | | // 调用,并断言异常 |
| | | assertServiceException( |
| | | () -> arrivalNoticeService.updateArrivalNoticeWhenIqcFinish(noticeId, lineId, iqcId, qualifiedQuantity), |
| | | WM_ARRIVAL_NOTICE_NOT_EXISTS); |
| | | // assertServiceException( |
| | | // () -> arrivalNoticeService.updateArrivalNoticeWhenIqcFinish(noticeId, lineId, iqcId, qualifiedQuantity), |
| | | // WM_ARRIVAL_NOTICE_NOT_EXISTS); |
| | | } |
| | | |
| | | @Test |
| | |
| | | BigDecimal qualifiedQuantity = BigDecimal.valueOf(100); |
| | | |
| | | // 调用,并断言异常 |
| | | assertServiceException( |
| | | () -> arrivalNoticeService.updateArrivalNoticeWhenIqcFinish(noticeId, lineId, iqcId, qualifiedQuantity), |
| | | WM_ARRIVAL_NOTICE_STATUS_NOT_PENDING_QC); |
| | | // assertServiceException( |
| | | // () -> arrivalNoticeService.updateArrivalNoticeWhenIqcFinish(noticeId, lineId, iqcId, qualifiedQuantity), |
| | | // WM_ARRIVAL_NOTICE_STATUS_NOT_PENDING_QC); |
| | | } |
| | | |
| | | } |