/// <summary> 获取DocumentRedInfo表信息 /// </summary> /// <param name="dr">IDataReader</param> /// <returns></returns> private static DocumentRedInfo ReaderDocumentRedInfo(IDataReader dr) { var documentRedInfo = new DocumentRedInfo { RedId = dr["RedId"] == DBNull.Value ? Guid.Empty : new Guid(dr["RedId"].ToString()), FilialeId = dr["FilialeId"] == DBNull.Value ? Guid.Empty : new Guid(dr["FilialeId"].ToString()), ThirdCompanyId = dr["ThirdCompanyId"] == DBNull.Value ? Guid.Empty : new Guid(dr["ThirdCompanyId"].ToString()), TradeCode = dr["TradeCode"] == DBNull.Value ? string.Empty : dr["TradeCode"].ToString(), DateCreated = dr["DateCreated"] == DBNull.Value ? DateTime.Parse("1900-01-01") : DateTime.Parse(dr["DateCreated"].ToString()), Transactor = dr["Transactor"] == DBNull.Value ? string.Empty : dr["Transactor"].ToString(), Description = dr["Description"] == DBNull.Value ? string.Empty : dr["Description"].ToString(), AccountReceivable = dr["AccountReceivable"] == DBNull.Value ? 0 : decimal.Parse(dr["AccountReceivable"].ToString()), SubtotalQuantity = dr["SubtotalQuantity"] == DBNull.Value ? 0 : decimal.Parse(dr["SubtotalQuantity"].ToString()), RedType = dr["RedType"] == DBNull.Value ? 0 : int.Parse(dr["RedType"].ToString()), DocumentType = dr["DocumentType"] == DBNull.Value ? 0 : int.Parse(dr["DocumentType"].ToString()), State = dr["State"] == DBNull.Value ? 0 : int.Parse(dr["State"].ToString()), WarehouseId = dr["WarehouseId"] == DBNull.Value ? Guid.Empty : new Guid(dr["WarehouseId"].ToString()), AuditTime = dr["AuditTime"] == DBNull.Value ? DateTime.Parse("1900-01-01") : Convert.ToDateTime(dr["AuditTime"]), StorageType = dr["StorageType"] == DBNull.Value ? 0 : int.Parse(dr["StorageType"].ToString()), LinkTradeCode = dr["LinkTradeCode"] == DBNull.Value ? string.Empty : dr["LinkTradeCode"].ToString(), LinkTradeId = dr["LinkTradeId"] == DBNull.Value ? Guid.Empty : new Guid(dr["LinkTradeId"].ToString()), LinkDateCreated = dr["LinkDateCreated"] == DBNull.Value ? DateTime.Parse("1900-01-01") : Convert.ToDateTime(dr["LinkDateCreated"]), LinkDescription = dr["LinkDescription"] == DBNull.Value ? string.Empty : dr["LinkDescription"].ToString(), Memo = dr["Memo"] == DBNull.Value ? string.Empty : dr["Memo"].ToString(), //IsOut = dr["IsOut"] != DBNull.Value && bool.Parse(dr["IsOut"].ToString()) }; return(documentRedInfo); }
/// <summary> /// 红冲单添加 /// </summary> /// <param name="documentRedInfo">红冲单据模型</param> public bool InsertDocumentRed(DocumentRedInfo documentRedInfo) { #region 红冲单据 //红冲单据 const string SQL_INSERT_STORAGERECORD = @"INSERT INTO [DocumentRed] ([RedId] ,[FilialeId] ,[ThirdCompanyId] ,[TradeCode] ,[DateCreated] ,[Transactor] ,[Description] ,[AccountReceivable] ,[SubtotalQuantity] ,[RedType] ,[DocumentType] ,[State] ,[WarehouseId] ,[AuditTime] ,[StorageType] ,[LinkTradeCode] ,[LinkTradeId] ,[LinkDateCreated] ,[LinkDescription] ,[Memo] ,[IsOut]) VALUES (@RedId,@FilialeId,@ThirdCompanyId,@TradeCode,@DateCreated,@Transactor,@Description,@AccountReceivable,@SubtotalQuantity,@RedType, @DocumentType,@State,@WarehouseId,@AuditTime,@StorageType,@LinkTradeCode,@LinkTradeId,@LinkDateCreated,@LinkDescription,@Memo,@IsOut)"; var parms = new[] { new SqlParameter("@RedId", documentRedInfo.RedId), new SqlParameter("@FilialeId", documentRedInfo.FilialeId), new SqlParameter("@ThirdCompanyId", documentRedInfo.ThirdCompanyId), new SqlParameter("@TradeCode", documentRedInfo.TradeCode), new SqlParameter("@DateCreated", documentRedInfo.DateCreated), new SqlParameter("@Transactor", documentRedInfo.Transactor), new SqlParameter("@Description", documentRedInfo.Description), new SqlParameter("@AccountReceivable", Math.Round(documentRedInfo.AccountReceivable, 2)), new SqlParameter("@SubtotalQuantity", documentRedInfo.SubtotalQuantity), new SqlParameter("@RedType", documentRedInfo.RedType), new SqlParameter("@DocumentType", documentRedInfo.DocumentType), new SqlParameter("@State", documentRedInfo.State), new SqlParameter("@WarehouseId", documentRedInfo.WarehouseId), new SqlParameter("@AuditTime", documentRedInfo.AuditTime), new SqlParameter("@StorageType", documentRedInfo.StorageType), new SqlParameter("@LinkTradeCode", documentRedInfo.LinkTradeCode), new SqlParameter("@LinkTradeId", documentRedInfo.LinkTradeId), new SqlParameter("@LinkDateCreated", documentRedInfo.LinkDateCreated), new SqlParameter("@LinkDescription", documentRedInfo.LinkDescription), new SqlParameter("@Memo", documentRedInfo.Memo), new SqlParameter("@IsOut", documentRedInfo.IsOut) }; #endregion return(SqlHelper.ExecuteNonQuery(GlobalConfig.ERP_DB_NAME, false, SQL_INSERT_STORAGERECORD, parms) > 0); }
/// <summary> /// 根据单据红冲ID获取记录信息 /// </summary> /// <param name="redId">记录Id</param> /// <returns></returns> public DocumentRedInfo GetDocumentRed(Guid redId) { var parm = new SqlParameter("@RedId", SqlDbType.UniqueIdentifier) { Value = redId }; var stockInfo = new DocumentRedInfo(); using (var rdr = SqlHelper.ExecuteReader(GlobalConfig.ERP_DB_NAME, true, string.Format("{0} WHERE RedId=@RedId", SELECE), parm)) { if (rdr.Read()) { stockInfo = ReaderDocumentRedInfo(rdr); } } return(stockInfo); }
/// <summary> /// 获取红冲单 /// </summary> /// <param name="redId"></param> /// <returns></returns> public DocumentRedInfo GetDocumentRedByNewRedId(Guid redId) { var parm = new[] { new SqlParameter("@RedId", SqlDbType.UniqueIdentifier) { Value = redId }, new SqlParameter("@DocumentType", SqlDbType.Int) { Value = (Int32)DocumentType.RedDocument } }; var stockInfo = new DocumentRedInfo(); using (var rdr = SqlHelper.ExecuteReader(GlobalConfig.ERP_DB_NAME, true, string.Format("{0} WHERE LinkTradeCode =(SELECT LinkTradeCode FROM DocumentRed WHERE RedId=@RedId) and DocumentType=@DocumentType", SELECE), parm)) { if (rdr.Read()) { stockInfo = ReaderDocumentRedInfo(rdr); } } return(stockInfo); }