//public static EngineResultModel Map(EngineResultDto dto)
        //{
        //    if (dto == null)
        //        return null;
        //    var model =  new EngineResultModel();
        //    typeof(EngineRepairModel).GetField(dto.ResultField).SetValue(model, dto.Result);
        //    typeof(EngineRepairModel).GetField(dto.EndTimeField).SetValue(model, dto.EndTime);
        //    model.TID = dto.TID;
        //    model.EngineCode = dto.EngineCode;
        //    return model;
        //}


        public static EngineResultDto Map(EngineResultModel result, string resultField, string endTimeField)
        {
            if (result == null)
            {
                return(null);
            }
            var dto = new EngineResultDto
            {
                TID          = result.TID,
                EngineCode   = result.EngineCode,
                ResultField  = resultField,
                EndTimeField = endTimeField
            };
            object dtoresult = typeof(EngineResultModel).GetProperty(resultField).GetValue(result, null);

            if (dtoresult != null)
            {
                if (int.TryParse(dtoresult.ToString(), out int r))
                {
                    dto.Result = r;
                }
            }
            object obj = typeof(EngineResultModel).GetProperty(endTimeField).GetValue(result, null);

            if (obj != null)
            {
                if (DateTime.TryParse(obj.ToString(), out DateTime dt))
                {
                    dto.EndTime = dt;
                }
            }
            return(dto);
        }
 public int Update(EngineResultDto dto)
 {
     if (dto == null || dto.TID < 1)
     {
         throw new System.ArgumentNullException(nameof(dto));
     }
     return(this.Invoke(c => {
         return c.Execute($"Update LEngineResult set {dto.ResultField}=@Result,{dto.EndTimeField}=@EndTime where TID={dto.TID}", dto);
     }));
 }