protected void WriteData(List<Jdp> jdps) { try { //List<TradeFullinfoGetResponse> trdf = jdps.Select(k => TopUtils.ParseResponse<TradeFullinfoGetResponse>(k.jdp_response)) // .Where(j => !string.IsNullOrEmpty(j.Trade.PayTime)).ToList(); List<TradeFullinfoGetResponse> trdf = jdps.Select(k => TopUtils.ParseResponse<TradeFullinfoGetResponse>(k.jdp_response)).ToList(); if (null == trdf || trdf.Count < 1) return; var trdpayed = trdf.Select(k => k.Trade).ToList(); if (null == trdpayed || trdpayed.Count < 1) return; var trdpay = Caster.CastTrades(trdpayed); if (null == trdpay || trdpay.Count < 1) return; using (var blk = new SqlBulkCopy(_con)) { blk.DestinationTableName = "T_ERP_TaoBaoATS_Trade"; blk.WriteToServerAdv<T_ERP_TaoBao_Trade>(trdpay, Exclude); blk.DestinationTableName = "T_ERP_TaoBaoATS_Order"; var ords = trdpay.SelectMany(k => k.OrderList).ToList(); blk.WriteToServerAdv<T_ERP_TaoBao_Order>(ords, Exclude); blk.DestinationTableName = "T_ERP_TaoBaoATS_PromotionDetail"; var kpromt = trdpay.Where(j => j.PromotList != null).SelectMany(k => k.PromotList); if (null != kpromt) { try { var promots = kpromt.ToList(); if (null != promots && promots.Count > 0) blk.WriteToServerAdv<T_ERP_TaoBao_PromotionDetail>(promots, Exclude); } catch (Exception ex) { throw; } } blk.DestinationTableName = "T_ERP_TaobaoATS_ServiceOrder"; var ksvcs = trdpay.Where(j => j.ServiceOrderList != null).SelectMany(k => k.ServiceOrderList); if (null != ksvcs) { try { var svcs = ksvcs.ToList(); if (null != svcs && svcs.Count > 0) blk.WriteToServerAdv<T_ERP_Taobao_ServiceOrder>(svcs, Exclude); } catch (Exception ex) { throw; } } } } catch (Exception ex) { _applog.DebugException(ex); #if DEBUG throw; #else #endif } }
private void btnImp_Click(object sender, EventArgs e) { if (MsgBox.ShowYesNoMessage("确定要导入吗?") == System.Windows.Forms.DialogResult.No) return; var dlg = new DevExpress.Utils.WaitDialogForm("正在导入,请稍候...","导入"); try { var ds = GridControl.GetDataSource<T_ERP_ProduceDosageIpt>(); if (null == ds || ds.Count < 1) return; var session = Guid.NewGuid(); List<T_ERP_ProduceDosageIptTemp> ipts = new List<T_ERP_ProduceDosageIptTemp>(); ds.ForEach(j => { var ipt = new T_ERP_ProduceDosageIptTemp { Session = session, OuterIid = j.OuterIid, OuterSkuId = j.OuterSkuId, ProcedureName = j.ProcedureName, MaterialNo = j.MaterialNo, MaterialName = j.MaterialName, Dosage = j.Dosage, Unit = j.Unit }; ipts.Add(ipt); }); using (SqlConnection destinationConnection = new SqlConnection(this.ConnString)) { destinationConnection.Open(); using (SqlBulkCopy bulkCopy = new SqlBulkCopy(destinationConnection)) { bulkCopy.DestinationTableName = "T_ERP_ProduceDosageIpt"; try { bulkCopy.WriteToServerAdv(ipts); } catch (Exception ex) { MsgBox.ShowErrMsg("导入失败;错误信息:" + ex.Message); return; } } } //导入成功,调用迁移过程 var prms = new SqlParameter[]{ new SqlParameter("@session", session), new SqlParameter("@user", this.CurUser) }; SqlHelper.ExecuteNonQuery(this.ConnString, CommandType.StoredProcedure, "P_FAS_ProduceDosageImpt", prms); } catch (Exception) { throw; } finally { dlg.Close(); } MsgBox.ShowMessage("导入已完成!"); DialogResult = System.Windows.Forms.DialogResult.OK; Close(); }
private void btnImp_Click(object sender, EventArgs e) { var dt = gridControlEx1.DataSource as DataTable; List<T_ERP_IptPriceTemp> ipts = new List<T_ERP_IptPriceTemp>(); var session = Guid.NewGuid(); using (var db = new Database(this.ConnString)) { try{ var pros = db.Fetch<UltraDbEntity.T_ERP_Procedure>(" where isnull(IsUsing,0) = 1 "); foreach (DataRow dr in dt.Rows) { pros.ForEach(j => { var ipt = new T_ERP_IptPriceTemp { //Guid = Guid.NewGuid(), //Creator = CurUser, //Updator = CurUser, //Remark = string.Empty, //Reserved1 = 0, //Reserved2 = string.Empty, //Reserved3 = false, Session = session, OuterIid = dr["商品编码"].ToString(), OuterSkuId = dr["规格编码"].ToString(), ProcedureName = j.ProcedureName, ProcedureGuid = j.Guid, CostPrice = string.IsNullOrEmpty(dr[j.ProcedureName] == null ? "" : dr[j.ProcedureName].ToString()) ? 0 : Convert.ToDecimal(dr[j.ProcedureName]) }; if (ipt.CostPrice!=0) ipts.Add(ipt); }); } }catch (Exception ex){ MsgBox.ShowErrMsg("导入失败;错误信息:" + ex.Message); return; } } //var excludes = new string[] { "Id", "Guid", "CreateDate", "UpdateDate", "IsDel", "UISelected", "IsDynamicAdd", "TimeStamp" }; using (SqlConnection destinationConnection = new SqlConnection(this.ConnString)) { destinationConnection.Open(); using (SqlBulkCopy bulkCopy = new SqlBulkCopy(destinationConnection)) { bulkCopy.DestinationTableName = "T_ERP_IptPrice"; try { bulkCopy.WriteToServerAdv(ipts); } catch (Exception ex) { MsgBox.ShowErrMsg("导入失败;错误信息:" + ex.Message); return; } } } //导入成功,调用迁移过程 var prms = new SqlParameter[]{ new SqlParameter("@session ", session) }; SqlHelper.ExecuteNonQuery(this.ConnString, CommandType.StoredProcedure, "P_ERP_ProPriceImport", prms); MsgBox.ShowMessage("导入完成"); fileBrowser1.Text = string.Empty; gridControlEx1.DataSource = null; btnImp.Enabled = false; DialogResult = System.Windows.Forms.DialogResult.OK; Close(); }
protected void WriteData(List<Jdp> jdps, ShopData shp, DateTime begin, DateTime end, string remark = "同步") { try { List<TradeFullinfoGetResponse> trdf = jdps.Select(k => TopUtils.ParseResponse<TradeFullinfoGetResponse>(k.jdp_response)) .Where(j => !string.IsNullOrEmpty(j.Trade.PayTime)).ToList(); if (null == trdf || trdf.Count < 1) return; using (var blk = new SqlBulkCopy(_con)) { blk.DestinationTableName = "T_ERP_SyncLog"; blk.WriteToServerAdv<T_ERP_SyncLog>(new List<T_ERP_SyncLog> { new T_ERP_SyncLog{ SellerNick=shp.SellerNick,MinDateTime=begin,MaxDateTime=end,Remark=remark,JdpCounts=jdps.Count,JdpResCounts=trdf.Count }}, Exclude); } var trdpayed = trdf.Select(k => k.Trade).ToList(); if (null == trdpayed || trdpayed.Count < 1) return; var trdpay = Caster.CastTrades(trdpayed); if (null == trdpay || trdpay.Count < 1) return; using (var blk = new SqlBulkCopy(_con)) { blk.DestinationTableName = "T_ERP_TaoBaoATS_Trade"; blk.WriteToServerAdv<T_ERP_TaoBao_Trade>(trdpay, Exclude); blk.DestinationTableName = "T_ERP_TaoBaoATS_Order"; var ords = trdpay.SelectMany(k => k.OrderList).ToList(); blk.WriteToServerAdv<T_ERP_TaoBao_Order>(ords, Exclude); blk.DestinationTableName = "T_ERP_TaoBaoATS_PromotionDetail"; var kpromt = trdpay.Where(j => j.PromotList != null).SelectMany(k => k.PromotList); if (null != kpromt) { try { var promots = kpromt.ToList(); if (null != promots && promots.Count > 0) blk.WriteToServerAdv<T_ERP_TaoBao_PromotionDetail>(promots, Exclude); } catch (Exception ex) { _applog.DebugException(new Exception(string.Format("SHOP:{0} Promot Error:{1}", shp.SellerNick, ex.Message))); } } blk.DestinationTableName = "T_ERP_TaobaoATS_ServiceOrder"; var ksvcs = trdpay.Where(j => j.ServiceOrderList != null).SelectMany(k => k.ServiceOrderList); if (null != ksvcs) { try { var svcs = ksvcs.ToList(); if (null != svcs && svcs.Count > 0) blk.WriteToServerAdv<T_ERP_Taobao_ServiceOrder>(svcs, Exclude); } catch (Exception ex) { _applog.DebugException(new Exception(string.Format("SHOP:{0} SvcOrder Error:{1}", shp.SellerNick, ex.Message))); } } } //登记同步时间 if (remark != "重试") _applog.DebugException(new Exception(string.Format("SHOP:{0} Begin:{1} End:{2} Count:{3}", shp.SellerNick, begin.ToDefaultStr(), end.ToDefaultStr(), jdps.Count))); else _applog.DebugException(new Exception(string.Format("RETRY\tSHOP:{1}\tCOUNT:{0}\tBegin:{2}\tEnd:{3}\tFor Retry Sync.", jdps.Count, shp.SellerNick, begin.ToDefaultStr(), end.ToDefaultStr()))); } catch (Exception ex) { _applog.DebugException(new Exception(string.Format("Shop:{0} Begin:{2} End:{3} Ex:{1}", shp.SellerNick, ex.Message, begin.ToDefaultStr(), end.ToDefaultStr()))); lock (objLock)//加入失败队列重新操作 { QueFail.Enqueue(new T_ERP_SyncLog { SellerNick = shp.SellerNick, MinDateTime = begin, MaxDateTime = end }); } #if DEBUG throw; #else #endif } }
protected void WriteRefundData(List<Jdp> jds) { List<RefundGetResponse> jdprefs = jds.Select(k => TopUtils.ParseResponse<RefundGetResponse>(k.jdp_response)) .ToList(); var refs = jdprefs.Select(k => k.Refund).ToList(); try { var trdpay = Caster.CastRefund(refs); using (var blk = new SqlBulkCopy(_con)) { blk.DestinationTableName = "T_ERP_TaoBao_Refund"; blk.WriteToServerAdv<T_ERP_TaoBao_Refund>(trdpay, new string[] { "Id", "CreateTime" }); } } catch (Exception ex) { _applog.DebugException(ex); #if DEBUG throw; #else #endif } }
protected void WriteRefundData(List<Refund> refs) { try { var trdpay = Caster.CastRefund(refs); using (var blk = new SqlBulkCopy(_con)) { blk.DestinationTableName = "T_ERP_TaoBao_Refund"; blk.WriteToServerAdv<T_ERP_TaoBao_Refund>(trdpay,new string[]{"Id","CreateTime"}); } } catch (Exception ex) { _applog.DebugException(ex); #if DEBUG throw; #else #endif } }