|
|
|
|
@ -110,7 +110,7 @@ public class AmsRepairOrderServiceImpl implements IAmsRepairOrderService
|
|
|
|
|
amsRepairOrder.setCreateTime(now);
|
|
|
|
|
|
|
|
|
|
// 重置受控的维修中及维修完成字段,以防篡改
|
|
|
|
|
amsRepairOrder.setRepairerType(REPAIRER_TYPE_INTERNAL);
|
|
|
|
|
amsRepairOrder.setRepairerType(null);
|
|
|
|
|
amsRepairOrder.setRepairUserId(null);
|
|
|
|
|
amsRepairOrder.setRepairUserName(null);
|
|
|
|
|
amsRepairOrder.setRepairOrgName(null);
|
|
|
|
|
@ -160,8 +160,7 @@ public class AmsRepairOrderServiceImpl implements IAmsRepairOrderService
|
|
|
|
|
amsRepairOrder.setUpdateTime(DateUtils.getNowDate());
|
|
|
|
|
|
|
|
|
|
// 重置受控字段
|
|
|
|
|
amsRepairOrder.setRepairerType(StringUtils.isEmpty(current.getRepairerType())
|
|
|
|
|
? REPAIRER_TYPE_INTERNAL : current.getRepairerType());
|
|
|
|
|
amsRepairOrder.setRepairerType(current.getRepairerType());
|
|
|
|
|
amsRepairOrder.setRepairUserId(null);
|
|
|
|
|
amsRepairOrder.setRepairUserName(null);
|
|
|
|
|
amsRepairOrder.setRepairOrgName(null);
|
|
|
|
|
@ -400,9 +399,14 @@ public class AmsRepairOrderServiceImpl implements IAmsRepairOrderService
|
|
|
|
|
{
|
|
|
|
|
throw new ServiceException("维修完成时间不能为空");
|
|
|
|
|
}
|
|
|
|
|
if (order.getRepairStartTime() != null && amsRepairOrder.getRepairFinishTime().before(order.getRepairStartTime()))
|
|
|
|
|
if (order.getRepairStartTime() != null)
|
|
|
|
|
{
|
|
|
|
|
throw new ServiceException("维修完成时间不能早于维修开始时间");
|
|
|
|
|
Date startZero = DateUtils.truncate(order.getRepairStartTime(), java.util.Calendar.DATE);
|
|
|
|
|
Date finishZero = DateUtils.truncate(amsRepairOrder.getRepairFinishTime(), java.util.Calendar.DATE);
|
|
|
|
|
if (finishZero.before(startZero))
|
|
|
|
|
{
|
|
|
|
|
throw new ServiceException("维修完成时间不能早于维修开始时间");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 3. 悲观锁锁定资产
|
|
|
|
|
@ -417,7 +421,11 @@ public class AmsRepairOrderServiceImpl implements IAmsRepairOrderService
|
|
|
|
|
|
|
|
|
|
assetStatusTransitionService.finishRepair(order.getAssetId(), order.getBeforeAssetStatus(), context);
|
|
|
|
|
|
|
|
|
|
// 5. 填充完成属性
|
|
|
|
|
// 5. 使用维修完成时间更新资产的上次维保日期last_maintenance_date
|
|
|
|
|
amsAssetMapper.updateAssetMaintenanceDate(order.getAssetId(), amsRepairOrder.getRepairFinishTime(),
|
|
|
|
|
operateContext.getOperateLoginName(), DateUtils.getNowDate());
|
|
|
|
|
|
|
|
|
|
// 6. 填充完成属性
|
|
|
|
|
order.setRepairFinishTime(amsRepairOrder.getRepairFinishTime());
|
|
|
|
|
order.setRepairResult(StringUtils.trim(amsRepairOrder.getRepairResult()));
|
|
|
|
|
order.setRepairCost(amsRepairOrder.getRepairCost());
|
|
|
|
|
|