| | |
| | | } |
| | | } |
| | | |
| | | public List<string> groups { get; private set; } |
| | | |
| | | public bool ValidateProductName(object value, out string msg) |
| | | { |
| | | msg = null; |
| | |
| | | if (SelectedProduct != null) |
| | | { |
| | | parameters = ProductManager.GetParametersByProductName<ObservableCollection<ParameterData>>(SelectedProduct.Name); |
| | | |
| | | } |
| | | parameters = parameters ?? new ObservableCollection<ParameterData>(); |
| | | Parameters = parameters; |
| | | groups = Parameters.Where(p => !string.IsNullOrEmpty(p.PGroup)).Select(p => p.PGroup).Distinct().ToList(); |
| | | } |
| | | |
| | | public void SaveOrUpdateData(ProductData data) |
| | |
| | | var temp = XmlHelper.DeepClone(Products); |
| | | temp.Add(data); |
| | | SaveProduct(temp); |
| | | if (!string.IsNullOrEmpty(data.ParentId)) |
| | | { |
| | | var parameters = |
| | | ProductManager.GetParametersByProductName<List<ParameterData>>(data.ParentId); |
| | | foreach (var p in parameters) |
| | | { |
| | | p.ProductName = data.Name; |
| | | } |
| | | SaveParameter(data.Name, parameters); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | /// <param name="datas"></param> |
| | | private void SaveProduct(IList<ProductData> datas) |
| | | { |
| | | XmlHelper.SerializeToXml(PathHelper.ProductDataFile, datas); |
| | | XmlHelper.SerializeToXml(ProductManager.GetDataFilePath(), datas); |
| | | } |
| | | #endregion |
| | | |
| | |
| | | { |
| | | var temp = Parameters.Where(p => p != data).ToList(); |
| | | SaveParameter(temp); |
| | | LoggerHelper.Info("Product Manage", $"User: {UserInfo.User.Name} deleted Product parameter:{data.Name} in Product:{data.ProductName}"); |
| | | } |
| | | } |
| | | |
| | |
| | | /// </summary> |
| | | public void DeleteParameters() |
| | | { |
| | | var temp = Parameters.Where(p => !p.IsSelected).ToList(); |
| | | SaveParameter(temp); |
| | | var needDelet = Parameters.Where(p => p.IsSelected).ToList(); |
| | | if (needDelet.Count > 0) |
| | | { |
| | | var first = needDelet[0]; |
| | | var names = needDelet.Select(e => e.Name).ToList(); |
| | | |
| | | var temp = Parameters.Where(p => !p.IsSelected).ToList(); |
| | | SaveParameter(temp); |
| | | LoggerHelper.Info("Product Manage", $"User: {UserInfo.User.Name} deleted Product parameters:{string.Join(",", names)} in Product:{first.ProductName}"); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | /// <param name="datas"></param> |
| | | private void SaveParameter(IList<ParameterData> datas) |
| | | { |
| | | string fileName = Path.Combine(PathHelper.ProductDataFolder, "Parameter", $"Parameter_{SelectedProduct.Name}.data"); |
| | | string fileName = ProductManager.GetParamFolderByProductName(SelectedProduct.Name); |
| | | XmlHelper.SerializeToXml(fileName, datas); |
| | | } |
| | | |
| | | private void SaveParameter(string product, IList<ParameterData> datas) |
| | | { |
| | | string fileName = ProductManager.GetParamFolderByProductName(product); |
| | | XmlHelper.SerializeToXml(fileName, datas); |
| | | } |
| | | #endregion |