/// <summary> /// 当前等级和类型的车型档次配置 /// </summary> /// <param name="type"></param> /// <param name="vehicleLevel"></param> /// <returns></returns> public VehicleLevelModel SelectSprayPaintVehicleByLevel(string type, string vehicleLevel) { var result = new VehicleLevelModel(); try { var configs = GRAlwaysOnReadDbScopeManager.Execute(conn => DalSprayPaintVehicle.SelectSprayPaintVehicleByLevel(conn, type, vehicleLevel)); if (configs != null && configs.Any()) { result = Convert2VehicleLevels(configs).FirstOrDefault(s => s.VehicleLevel.Equals(vehicleLevel)); var serviceInfo = GetPaintServiceInfo(); var paintService = CFAlwaysOnReadDbScopeManager.Execute(conn => DalSprayPaintVehicle.SelectPaintServiceInfo(conn, result.VehicleLevel)); foreach (var service in paintService) { PaintService info = new PaintService { VehicleLevel = result.VehicleLevel, ServiceId = service.ServiceId, DisplayIndex = service.DisplayIndex, ServiceName = serviceInfo.FirstOrDefault(p => p.ServiceId.Equals(service.ServiceId))?.ServersName }; result.PaintService.Add(info); } } } catch (Exception ex) { Logger.Error("SelectSprayPaintVehicleByLevel", ex); } return(result); }
/// <summary> /// 分批次根据vehicleId获取喷漆等级 /// </summary> /// <param name="vehicleIds"></param> /// <returns></returns> private IEnumerable <Tuple <string, string> > GetSprayPaintLevelByVehicleIds(IEnumerable <string> vehicleIds) { IEnumerable <Tuple <string, string> > result = null; try { result = CFAlwaysOnReadDbScopeManager.Execute(conn => DalSprayPaintVehicle.SelectSprayPaintLevelsByVehicleIds(conn, vehicleIds)); } catch (Exception ex) { _logger.Error(ex.Message, ex); } return(result); }
/// <summary> /// 根据tids查询车型信息 /// </summary> /// <param name="tids"></param> /// <returns></returns> private IEnumerable <VehicleInfoDetail> GetVehicleInfoDetailsByTids(IEnumerable <int> tids) { IEnumerable <VehicleInfoDetail> result = null; try { result = GRAlwaysOnReadDbScopeManager.Execute(conn => DalSprayPaintVehicle.SelectVehicleInfoByTids(conn, tids)); } catch (Exception ex) { _logger.Error(ex.Message, ex); } return(result); }
public List <PaintServiceLog> SelectPaintServiceInfo(string vehicleLevel) { var result = new List <PaintServiceLog>(); try { result = CFAlwaysOnReadDbScopeManager.Execute(conn => DalSprayPaintVehicle.SelectPaintServiceInfo(conn, vehicleLevel)); } catch (Exception ex) { Logger.Log(Level.Error, ex, "SelectPaintServiceInfo"); } return(result); }
public List <VehicleLevelLog> SeletePaintVehicleByInitalWord(string vehicleLevel, string initalWord) { var result = new List <VehicleLevelLog>(); try { result = CFAlwaysOnReadDbScopeManager.Execute(conn => DalSprayPaintVehicle.SeletePaintVehicleByInitalWord(conn, vehicleLevel, initalWord)); } catch (Exception ex) { Logger.Log(Level.Error, ex, "SeletePaintVehicleByInitalWord"); } return(result); }
public List <VehicleLevelModel> SelectSprayPaintVehicle() { var result = CFAlwaysOnReadDbScopeManager.Execute(conn => DalSprayPaintVehicle.SelectVehicleLevel(conn)); var serviceInfo = GetPaintServiceInfo(); foreach (var item in result) { var paintService = CFAlwaysOnReadDbScopeManager.Execute(conn => DalSprayPaintVehicle.SelectPaintServiceInfo(conn, item.VehicleLevel)); foreach (var service in paintService) { PaintService info = new PaintService { VehicleLevel = item.VehicleLevel, ServiceId = service.ServiceId, DisplayIndex = service.DisplayIndex, ServiceName = serviceInfo.FirstOrDefault(p => p.ServiceId.Equals(service.ServiceId))?.ServersName }; item.PaintService.Add(info); } } return(result); }
/// <summary> /// 获取指定类型车型数据 包含不支持喷漆 /// </summary> /// <returns></returns> private List <VehicleLevelModel> SelectSprayPaintVehicleByType(List <VehicleLevelViewModel> vehicInfo, string type) { var vehicleLevels = new List <VehicleLevelModel>(); if (vehicInfo != null && vehicInfo.Any()) { if (type == PaintVehicleLevelTypeEnum.Offline.ToString()) { vehicleLevels = Convert2VehicleLevels(vehicInfo); foreach (var item in vehicleLevels) { item.VehicleInfo = item.VehicleInfo.Where(x => string.IsNullOrEmpty(x.Type) || x.Type == type).ToList(); } } else { vehicleLevels = Convert2VehicleLevels(vehicInfo, PaintVehicleLevelTypeEnum.Offline.ToString()); } var serviceInfo = GetPaintServiceInfo(); foreach (var item in vehicleLevels) { var paintService = CFAlwaysOnReadDbScopeManager.Execute(conn => DalSprayPaintVehicle.SelectPaintServiceInfo(conn, item.VehicleLevel)); foreach (var service in paintService) { PaintService info = new PaintService { VehicleLevel = item.VehicleLevel, ServiceId = service.ServiceId, DisplayIndex = service.DisplayIndex, ServiceName = serviceInfo.FirstOrDefault(p => p.ServiceId.Equals(service.ServiceId))?.ServersName }; item.PaintService.Add(info); } } } return(vehicleLevels); }
/// <summary> /// 更新喷漆车型档次分类 /// </summary> /// <param name="vehicleLevel"></param> /// <param name="vehicleIds"></param> /// <param name="initalWord"></param> /// <param name="operateUser"></param> /// <returns></returns> public bool UpdatePaintVehicleLevel(string vehicleLevel, string vehicleIds, string initalWord, string operateUser) { var result = false; try { var oldValue = SeletePaintVehicleByInitalWord(vehicleLevel, initalWord); dbScopeManagerCF.CreateTransaction(conn => { if (oldValue.Any()) { var isDeleteSuccess = DalSprayPaintVehicle.DeletePaintVehicleDataByInitalWord(conn, vehicleLevel, initalWord); if (isDeleteSuccess) { var toDelete = new List <VehicleLevelLog>(); if (!string.IsNullOrWhiteSpace(vehicleIds)) { foreach (var item in oldValue) { if (!vehicleIds.Split(',').Contains(item.VehicleId)) { toDelete.Add(item); } } } else { toDelete = oldValue; } if (toDelete.Any()) { foreach (var value in toDelete) { var log = new PaintVehicleOprLog { LogType = "PaintVehicleLevelConfig", VehicleLevel = value.VehicleLevel, VehicleId = value.VehicleId, OldValue = JsonConvert.SerializeObject(value), NewValue = null, Remarks = "Delete", OperateUser = operateUser, }; InsertLog("PaintVehicle", log); } } } } if (!string.IsNullOrWhiteSpace(vehicleIds)) { result = DalSprayPaintVehicle.AddPaintVehicleLevel(conn, vehicleLevel, vehicleIds); if (result) { Thread.Sleep(1000); var newValue = SeletePaintVehicleByInitalWord(vehicleLevel, initalWord); var toAdd = new List <VehicleLevelLog>(); foreach (var newData in newValue) { if (!oldValue.Any(p => p.VehicleId.Equals(newData.VehicleId))) { toAdd.Add(newData); } } if (toAdd.Any()) { foreach (var value in toAdd) { var log = new PaintVehicleOprLog { LogType = "PaintVehicleLevelConfig", VehicleLevel = value.VehicleLevel, VehicleId = value.VehicleId, OldValue = null, NewValue = JsonConvert.SerializeObject(value), Remarks = "Add", OperateUser = operateUser, }; InsertLog("PaintVehicle", log); } } } } else { result = true; } }); } catch (Exception ex) { Logger.Log(Level.Error, ex, "UpdatePaintVehicleLevel"); } return(result); }
public List <TreeItem> SelectVehicleInfo(string initialWord) { return(GRAlwaysOnReadDbScopeManager.Execute(conn => DalSprayPaintVehicle.SelectVehicleInfo(conn, initialWord))); }
/// <summary> /// 更新喷漆车型服务 /// </summary> /// <param name="vehicleLevel"></param> /// <param name="paintService"></param> /// <param name="operateUser"></param> /// <returns></returns> public bool UpdatePaintVehicleService(string vehicleLevel, string paintService, string operateUser) { var result = false; var paintServiceModel = new List <PaintService>(); if (!string.IsNullOrWhiteSpace(paintService)) { paintServiceModel = JsonConvert.DeserializeObject <List <PaintService> >(paintService); } try { var oldValue = SelectPaintServiceInfo(vehicleLevel); dbScopeManagerCF.CreateTransaction(conn => { if (oldValue.Any()) { var isDeleteSuccess = DalSprayPaintVehicle.DeletePaintService(conn, vehicleLevel); var toDelete = new List <PaintServiceLog>(); foreach (var oldData in oldValue) { if (!paintServiceModel.Any(p => p.ServiceId.Equals(oldData.ServiceId))) { toDelete.Add(oldData); } } if (isDeleteSuccess) { foreach (var value in toDelete) { var log = new PaintVehicleOprLog { LogType = "PaintVehicleServiceConfig", VehicleLevel = value.VehicleLevel, VehicleId = null, OldValue = JsonConvert.SerializeObject(value), NewValue = null, Remarks = "Delete", OperateUser = operateUser, }; InsertLog("PaintVehicle", log); } } } if (!string.IsNullOrWhiteSpace(paintService) && paintServiceModel.Any()) { foreach (var service in paintServiceModel) { result = DalSprayPaintVehicle.AddPaintVehicleServiceConfig(conn, service); } if (result) { Thread.Sleep(1000); var newValue = SelectPaintServiceInfo(vehicleLevel); var toAdd = new List <PaintServiceLog>(); foreach (var newData in newValue) { if (!oldValue.Any(p => p.ServiceId.Equals(newData.ServiceId))) { toAdd.Add(newData); } } foreach (var value in toAdd) { var log = new PaintVehicleOprLog { LogType = "PaintVehicleServiceConfig", VehicleLevel = value.VehicleLevel, VehicleId = null, OldValue = null, NewValue = JsonConvert.SerializeObject(value), Remarks = "Add", OperateUser = operateUser, }; InsertLog("PaintVehicle", log); } } } else { result = true; } }); } catch (Exception ex) { Logger.Log(Level.Error, ex, "UpdatePaintVehicleService"); } return(result); }
/// <summary> /// 获取指定首字母开头的车型档次,未指定则获取全部 /// </summary> /// <param name="initalWord"></param> /// <returns></returns> private List <VehicleLevelViewModel> GetVehicleLevels(string initalWord = "") => CFAlwaysOnReadDbScopeManager.Execute(conn => DalSprayPaintVehicle.SelectVehicleLevel(conn, initalWord));
/// <summary> /// 更新喷漆车型档次分类 /// </summary> /// <param name="vehicleLevel"></param> /// <param name="vehicleIds"></param> /// <param name="initalWord"></param> /// <param name="operateUser"></param> /// <returns></returns> public bool UpdatePaintVehicleLevel(string vehicleLevel, string vehicleIds, string initalWord, string type, string operateUser) { var result = false; try { var oldValue = SeletePaintVehicleByInitalWord(vehicleLevel, initalWord, type); var isValiad = type == PaintVehicleLevelTypeEnum.Offline.ToString() && dbScopeManagerCF.Execute(conn => DalSprayPaintVehicle.IsRepeatPaintVehicleLevelConfig(conn, vehicleIds, type)); var isDeleteSuccess = false; var isAddSuccess = false; if (isValiad) { result = false; } else { dbScopeManagerCF.CreateTransaction(conn => { if (type == PaintVehicleLevelTypeEnum.Online.ToString()) { //删除线下占用的车型喷漆 DalSprayPaintVehicle.DeletePaintVehicleDataByType(conn, vehicleIds, PaintVehicleLevelTypeEnum.Offline.ToString()); } if (oldValue.Any()) { isDeleteSuccess = DalSprayPaintVehicle.DeletePaintVehicleDataByInitalWord(conn, vehicleLevel, initalWord, type); } if (!string.IsNullOrWhiteSpace(vehicleIds)) { result = DalSprayPaintVehicle.AddPaintVehicleLevel(conn, vehicleLevel, vehicleIds, type); isAddSuccess = result; } else { result = true; } }); } if (isDeleteSuccess) { var toValue = new List <VehicleLevelLog>(); if (!string.IsNullOrWhiteSpace(vehicleIds)) { foreach (var item in oldValue) { if (!vehicleIds.Split(',').Contains(item.VehicleId)) { toValue.Add(item); } } } else { toValue = oldValue; } SavePaintVehicleLevelLog(toValue, "Delete", vehicleIds, operateUser); } if (isAddSuccess) { Thread.Sleep(1000); var toValue = new List <VehicleLevelLog>(); var newValue = SeletePaintVehicleByInitalWord(vehicleLevel, initalWord, type); foreach (var newData in newValue) { { if (!oldValue.Any(p => p.VehicleId.Equals(newData.VehicleId))) { toValue.Add(newData); } } } SavePaintVehicleLevelLog(newValue, "Add", vehicleIds, operateUser); } } catch (Exception ex) { Logger.Error("UpdatePaintVehicleLevel", ex); } return(result); }