Esempio n. 1
0
        /// <summary>
        /// DataTable To List
        /// </summary>
        /// <typeparam name="TType">object type</typeparam>
        /// <param name="dt">DataTable</param>
        /// <returns></returns>
        public static List <T> DataTableToObjectList <T>(DataTable dt) where T : new()
        {
            DataColumnCollection columns = dt.Columns;
            int      columncount         = columns.Count;
            List <T> result = new List <T>();    //声明一个要返回的对象泛型
            Type     type   = typeof(T);

            PropertyInfo[] propertys = type.GetProperties(BindingFlags.IgnoreCase | BindingFlags.Instance | BindingFlags.Public | BindingFlags.SetProperty);   //获取参数对象属性集合
            foreach (DataRow r in dt.Rows)
            {
                T t = new T();
                for (int i = 0; i < propertys.Length; i++)
                {
                    DataColumn column = columns[propertys[i].Name];
                    if (column != null && r[column] != null)
                    {
                        if (propertys[i].PropertyType == typeof(int))
                        {
                            propertys[i].SetValue(t, PublicMethod.GetInt(r[column]), null);
                        }
                        if (propertys[i].PropertyType == typeof(string))
                        {
                            propertys[i].SetValue(t, r[column].ToString(), null);
                        }
                        if (propertys[i].PropertyType == typeof(DateTime))
                        {
                            propertys[i].SetValue(t, PublicMethod.GetDateTime(r[column]), null);
                        }
                    }
                }
                result.Add(t);
            }
            return(result);
        }
Esempio n. 2
0
        public string InventorySync(List <SALES_ORDER_DATAMODEL> salesOrderDatas, List <SALESOUT_DATAMODEL> salesoutDatas, List <TP_INVENTORYMODEL> inventorys)
        {
            try
            {
                foreach (var model in salesOrderDatas)
                {
                    sales_order_dataModel newmodel = new sales_order_dataModel();
                    newmodel.fid                  = PublicMethod.GetInt(model.FID);
                    newmodel.Part_name            = PublicMethod.GetString(model.PART_NAME);
                    newmodel.PRIME_COMMODITY_NAME = PublicMethod.GetString(model.PRIME_COMMODITY_NAME);
                    newmodel.fqty                 = PublicMethod.GetDecimal(model.FQTY);
                    newmodel.ftime                = PublicMethod.GetDateTime(model.FTIME);
                    newmodel.funit                = PublicMethod.GetString(model.FUNIT);
                    //LogHelper.WriteLog(JsonHelper.ToJson(newmodel));
                    sales_order_dataDal.Instance.InsertEx(newmodel);
                }

                foreach (var model in salesoutDatas)
                {
                    salesout_dataModel newmodel = new salesout_dataModel();
                    newmodel.fid                  = PublicMethod.GetInt(model.FID);
                    newmodel.fdate                = PublicMethod.GetDateTime(model.FDATE);
                    newmodel.Part_name            = model.PART_NAME;
                    newmodel.PRIME_COMMODITY_NAME = model.PRIME_COMMODITY_NAME;
                    newmodel.fqty                 = PublicMethod.GetDecimal(model.FQTY);
                    newmodel.Shipping_date        = PublicMethod.GetDateTime(model.SHIPPING_DATE);
                    newmodel.funit                = model.FUNIT;
                    newmodel.COLOR_NO             = model.COLOR_NO;
                    // LogHelper.WriteLog(JsonHelper.ToJson(newmodel));
                    salesout_dataDal.Instance.InsertEx(newmodel);
                }

                foreach (var model in inventorys)
                {
                    TP_inventoryModel newmodel = new TP_inventoryModel();
                    newmodel.fid                  = PublicMethod.GetInt(model.FID);
                    newmodel.Part_name            = model.PART_NAME;
                    newmodel.PRIME_COMMODITY_NAME = model.PRIME_COMMODITY_NAME;
                    newmodel.fqty                 = PublicMethod.GetDecimal(model.FQTY);
                    newmodel.ftime                = PublicMethod.GetDateTime(model.FTIME);
                    newmodel.funit                = model.FUNIT;
                    //LogHelper.WriteLog(JsonHelper.ToJson(newmodel));
                    TP_inventoryDal.Instance.InsertEx(newmodel);
                }

                LogHelper.WriteLog("123123");

                return(JsonHelper.ToJson(new { errCode = 0, errMsg = "上传成功!" }));
            }
            catch (Exception ex)
            {
                LogHelper.WriteLog(ex);
                throw ex;
            }
        }