Forráskód Böngészése

Merge branch 'master' of https://git.dev.tencent.com/xuhuo1234/saga

mengxiangge 6 éve
szülő
commit
e199cf31a8

+ 1 - 0
MBI/FirmLib/Com.FirmLib.UI/Com.FirmLib.UI.csproj

@@ -124,6 +124,7 @@
     <Compile Include="Common\Enums.cs" />
     <Compile Include="Common\IdNameItem.cs" />
     <Compile Include="Common\InfoPointTemplateManager.cs" />
+    <Compile Include="Common\TResult.cs" />
     <Compile Include="Common\TryCatchWrapper.cs" />
     <Compile Include="Common\UrlFileKeyParse.cs" />
     <Compile Include="Extension\MessageTipExtension.cs" />

+ 49 - 0
MBI/FirmLib/Com.FirmLib.UI/Common/TResult.cs

@@ -0,0 +1,49 @@
+/*-------------------------------------------------------------------------
+ * 功能描述:TResult
+ * 作者:xulisong
+ * 创建时间: 2019/6/27 10:50:29
+ * 版本号:v1.0
+ *  -------------------------------------------------------------------------*/
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Com.FirmLib.UI.Common
+{
+    public class TResult
+    {
+        public TResult(bool isSuccessed)
+        {
+            IsSuccessed = isSuccessed;
+        }
+        public TResult(bool isSuccessed,string message):this(isSuccessed)
+        {
+            Message = message;
+        }
+        public bool IsSuccessed { get;private set; }
+        public string Id { get; set; }
+        public string Message { get; set; }
+
+        /// <summary>
+        /// tag
+        /// </summary>
+        public object Tag { get; set; }
+
+        public static implicit operator bool(TResult result)
+        {
+            return result.IsSuccessed;
+        }
+        public static implicit operator TResult(bool d)
+        {
+            return new TResult(d);
+        }
+
+        public override string ToString()
+        {
+            return Message??string.Empty;
+        }
+    }
+}

+ 19 - 7
MBI/FirmLib/Com.FirmLib.UI/Manufacturer/VmProductType.cs

@@ -17,6 +17,7 @@ using System.Windows;
 using Com.FirmLib.Bll;
 using Com.FirmLib.Entity;
 using Com.FirmLib.UI.BllCommon;
+using Com.FirmLib.UI.Common;
 using Com.FirmLib.UI.Manufacturer.Model;
 using FWindSoft.Data;
 using FWindSoft.DataFramework;
@@ -209,13 +210,15 @@ namespace Com.FirmLib.UI.Manufacturer
                         return;
                     }
                 }
-                if (CreateProductTypes())
+
+                var result = CreateProductTypes();
+                if (result)
                 {
                     MessageTip.Show(this.GetWindow(), "保存成功");
                 }
                 else
                 {
-                    MessageTip.Show(this.GetWindow(), "保存失败");
+                    MessageTip.Show(this.GetWindow(), $"保存失败,【{result}】");
                 }
             }
             catch (Exception e)
@@ -327,25 +330,34 @@ namespace Com.FirmLib.UI.Manufacturer
         /// 保存类型信息,存在则修改,不存在则添加
         /// </summary>
         /// <returns></returns>
-        private bool CreateProductTypes()
+        private TResult CreateProductTypes()
         {
-          
+
+            List<bool> results = new List<bool>();
+            TResult result = null;
             foreach (var item in TypeItems)
             {
+                bool flag = false;
                 ProductTypeItem dataItem = ConvertDataItem(item);
                 if (string.IsNullOrEmpty(item.ProductTypeId))
                 {
                     //添加
                     dataItem.ProductId = Product.Value.ToString();
-                    BllFactory<ProductTypeBll>.Instance.Add(dataItem);
+                    flag=BllFactory<ProductTypeBll>.Instance.Add(dataItem);
                 }
                 else
                 {
                     //修改
-                    BllFactory<ProductTypeBll>.Instance.Update(dataItem);
+                    flag = BllFactory<ProductTypeBll>.Instance.Update(dataItem);
+                }
+
+                if (!flag)
+                {
+                    result = new TResult(flag, BllFactory<ProductTypeBll>.Instance.ErrorMessage);
+                    break;
                 }
             }
-            return true;
+            return result??true;
         }
 
         private ProductTypeItem ConvertDataItem(TypeShowItem showItem)