public override global::System.Data.DataSet Clone() { ConsItem cln = ((ConsItem)(base.Clone())); cln.InitVars(); cln.SchemaSerializationMode = this.SchemaSerializationMode; return(cln); }
public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedDataSetSchema(global::System.Xml.Schema.XmlSchemaSet xs) { ConsItem ds = new ConsItem(); global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); global::System.Xml.Schema.XmlSchemaAny any = new global::System.Xml.Schema.XmlSchemaAny(); any.Namespace = ds.Namespace; sequence.Items.Add(any); type.Particle = sequence; global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); if (xs.Contains(dsSchema.TargetNamespace)) { global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); try { global::System.Xml.Schema.XmlSchema schema = null; dsSchema.Write(s1); for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext();) { schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); s2.SetLength(0); schema.Write(s2); if ((s1.Length == s2.Length)) { s1.Position = 0; s2.Position = 0; for (; ((s1.Position != s1.Length) && (s1.ReadByte() == s2.ReadByte()));) { ; } if ((s1.Position == s1.Length)) { return(type); } } } } finally { if ((s1 != null)) { s1.Close(); } if ((s2 != null)) { s2.Close(); } } } xs.Add(dsSchema); return(type); }
public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedTableSchema(global::System.Xml.Schema.XmlSchemaSet xs) { global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); ConsItem ds = new ConsItem(); global::System.Xml.Schema.XmlSchemaAny any1 = new global::System.Xml.Schema.XmlSchemaAny(); any1.Namespace = "http://www.w3.org/2001/XMLSchema"; any1.MinOccurs = new decimal(0); any1.MaxOccurs = decimal.MaxValue; any1.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; sequence.Items.Add(any1); global::System.Xml.Schema.XmlSchemaAny any2 = new global::System.Xml.Schema.XmlSchemaAny(); any2.Namespace = "urn:schemas-microsoft-com:xml-diffgram-v1"; any2.MinOccurs = new decimal(1); any2.ProcessContents = global::System.Xml.Schema.XmlSchemaContentProcessing.Lax; sequence.Items.Add(any2); global::System.Xml.Schema.XmlSchemaAttribute attribute1 = new global::System.Xml.Schema.XmlSchemaAttribute(); attribute1.Name = "namespace"; attribute1.FixedValue = ds.Namespace; type.Attributes.Add(attribute1); global::System.Xml.Schema.XmlSchemaAttribute attribute2 = new global::System.Xml.Schema.XmlSchemaAttribute(); attribute2.Name = "tableTypeName"; attribute2.FixedValue = "tbConsItemDataTable"; type.Attributes.Add(attribute2); type.Particle = sequence; global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); if (xs.Contains(dsSchema.TargetNamespace)) { global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); try { global::System.Xml.Schema.XmlSchema schema = null; dsSchema.Write(s1); for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext();) { schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); s2.SetLength(0); schema.Write(s2); if ((s1.Length == s2.Length)) { s1.Position = 0; s2.Position = 0; for (; ((s1.Position != s1.Length) && (s1.ReadByte() == s2.ReadByte()));) { ; } if ((s1.Position == s1.Length)) { return(type); } } } } finally { if ((s1 != null)) { s1.Close(); } if ((s2 != null)) { s2.Close(); } } } xs.Add(dsSchema); return(type); }
//重算 public static void AgainComp(string strBeginDate, string strEndDate, BusiLog bl) { //ConnectionPool.IsCenter = false; using (SqlConnection conn = ConnectionPool.BorrowConnection()) { //conn.Open(); SqlTransaction trans = conn.BeginTransaction(IsolationLevel.ReadCommitted); try { string strSysTime = SqlHelper.ExecuteScalar(trans, CommandType.Text, "select getdate()").ToString(); DateTime dtSysTime = DateTime.Parse(strSysTime); string strsql = "select * from tbConsItem where CONVERT(varchar(10),cndconsdate,121) between '" + strBeginDate + "' and '" + strEndDate + "'"; DataTable dtConsItem = SqlHelper.ExecuteDataTable(trans, CommandType.Text, strsql); if (dtConsItem.Rows.Count == 0) { throw new BusinessException("业务异常", "没有需要更新的消费记录!"); } strsql = "select * from tbOilPrice where convert(varchar(10),cndpricedate,121) <= '" + strEndDate + "' order by cndPriceDate desc"; DataTable dtPrice = SqlHelper.ExecuteDataTable(trans, CommandType.Text, strsql); if (dtPrice.Rows.Count == 0) { throw new BusinessException("业务异常", "没有需要更新的油价!"); } foreach (DataRow dr in dtConsItem.Rows) { ConsItem ci = new ConsItem(dr); DataRow[] drPrices = dtPrice.Select("cnvcGoodsName='" + ci.cnvcGoodsName + "' and cnvcGoodsType='" + ci.cnvcGoodsType + "' and cnvcUnit='KG' and cnvcDeptName='" + ci.cnvcDeptName + "' and cndpricedate<= '" + ci.cndConsDate.AddDays(1).ToString("yyyy-MM-dd") + "'", "cndPriceDate desc"); if (drPrices.Length == 0) { continue; } OilPrice op = new OilPrice(drPrices[0]); decimal dFee = ci.cnnKGCount * op.cnnOilPrice; if (ci.cnnPrice != op.cnnOilPrice && ci.cnnFee != dFee) { ConsItemHis cih = new ConsItemHis(ci.ToTable()); cih.cnnSerial = Guid.NewGuid(); cih.cndOperDate = dtSysTime; cih.cnvcOperName = bl.cnvcOperName; cih.cnvcComments = "|cnnSerial=" + ci.cnnSerial.ToString(); ci.cnnPrice = op.cnnOilPrice; ci.cnnFee = dFee; ci.cnvcComments = "老油价:" + cih.cnnPrice.ToString() + ",新油价:" + ci.cnnPrice.ToString(); decimal dAddFee = cih.cnnFee - dFee; BusiLog busiLog = new BusiLog(); busiLog.cndOperDate = dtSysTime; busiLog.cnnSerial = Guid.NewGuid(); busiLog.cnvcOperName = bl.cnvcOperName; busiLog.cnvcComments = "油价补差充值:" + ci.cnvcCardID + "|" + dAddFee.ToString(); busiLog.cnvcDeptID = bl.cnvcDeptID; busiLog.cnvcDeptName = bl.cnvcDeptName; busiLog.cnvcOperType = "BS012"; busiLog.cnvcSource = "网站"; // FillFee fee = new FillFee(); // fee.cndOperDate = dtSysTime; // fee.cnnFillFee = dAddFee; // fee.cnnSerial = busiLog.cnnSerial; // fee.cnvcAcctID = ci.cnvcAcctID; // fee.cnvcCompanyID = ci.cnvcCompanyID; // fee.cnvcCompanyName = ci.cnvcCompanyName; // fee.cnvcDeptID = ci.cnvcDeptID; // fee.cnvcDeptName = ci.cnvcDeptName; // fee.cnvcOperName = bl.cnvcOperName; SqlHelper.ExecuteNonQuery(trans, CommandType.Text, "update tbMebCompanyPrepay set cnnPrepayFee = cnnPrepayFee+" + dAddFee.ToString() + " where cnvcCompanyID='" + ci.cnvcCompanyID + "'"); //EntityMapping.Create(fee,trans); EntityMapping.Create(busiLog, trans); EntityMapping.Create(cih, trans); EntityMapping.Update(ci, trans); } } //日志 bl.cnnSerial = Guid.NewGuid(); bl.cndOperDate = dtSysTime; EntityMapping.Create(bl, trans); trans.Commit(); } catch (BusinessException bex) { trans.Rollback(); LogAdapter.WriteBusinessException(bex); throw bex; } catch (SqlException sex) { trans.Rollback(); LogAdapter.WriteDatabaseException(sex); throw sex; } catch (Exception ex) { trans.Rollback(); LogAdapter.WriteFeaturesException(ex); throw ex; } finally { ConnectionPool.ReturnConnection(conn); } } }