/// <summary> /// 指派维修员 /// </summary> /// <param name="request"></param> /// <returns></returns> public async Task <bool> AssignRepairMan(MaintenanceAssignRpRequest request) { //判断该工单状态是否可以指定维修员 var maintenanceInfo = await this.GetById(request.Id.Value); if (maintenanceInfo == null) { throw new SinoException(ErrorCode.E30016, nameof(ErrorCode.E30016).GetCode()); } if (maintenanceInfo.MaintenancStatus.Value != (int)EMaintenancStatus.Received) { var desc = maintenanceInfo.MaintenancStatus.Value.GetEnumDescription <EMaintenancStatus>(); throw new SinoException(string.Format(ErrorCode.E30017, desc), nameof(ErrorCode.E30017).GetCode()); } //进行指派操作 MaintenanceInfo maintenance = new MaintenanceInfo(); maintenance.MaintenancStatus = (int)EMaintenancStatus.AssignRP; maintenance.RepairmanId = request.RepairManId; maintenance.Id = request.Id.Value; maintenance.LastModificationTime = DateTime.Now; List <string> updateCols = new List <string>(); updateCols.Add(nameof(MaintenanceInfo.MaintenancStatus)); updateCols.Add(nameof(MaintenanceInfo.RepairmanId)); updateCols.Add(nameof(MaintenanceInfo.LastModificationTime)); var result = await _MaintenanceInfoRep.UpdateAssignFieldsById(maintenance, updateCols); return(result > 0); }
public async Task AssignRepairMan(MaintenanceAssignRpRequest request) { _logger.Info(new LogInfo() { Method = nameof(AssignRepairMan), Argument = new { request }, Description = "服务商指派维修员" }); await _MaintenanceInfoService.AssignRepairMan(request); }