public static ActionResponse OutcomeAdd(DS_Outcome dS_Outcome) { string Id = Convert.ToInt32(dS_Outcome.DS_StockID.Value) + "" + Convert.ToInt32(dS_Outcome.ID); dS_Outcome.ID = Convert.ToDecimal(Id); foreach (var item in dS_Outcome.DS_OutcomeItems) { string Idd = Convert.ToInt32(dS_Outcome.DS_StockID.Value) + "" + Convert.ToInt32(item.ID); item.ID = Convert.ToDecimal(Idd); item.DS_OutcomeID = Convert.ToDecimal(Id); item.QualityID = Convert.ToDecimal(5); } try { var ctx = new MainDataContext(); var model = Mapper.Map <Entity.DS_Outcome>(dS_Outcome); using (var transaction = ctx.Database.BeginTransaction()) { ctx.Set <Entity.DS_Outcome>().Add(model); var result = ctx.SaveChanges(); transaction.Commit(); _logger.Info($"Save({string.Join(",", dS_Outcome.ID)})"); return(ActionResponse.Succeed()); } } catch (Exception ex) { _logger.Error($"Save({string.Join(",", dS_Outcome.ID)}), Exception: {ex}"); return(ActionResponse.Failure(ex.Message)); } }
public List <DS_Outcome> GetOutcomeList() { List <DS_Outcome> models = new List <DS_Outcome>(); try { using (SqlConnection connection = new SqlConnection(connectionString)) { //AND SendingStatus = 0 connection.Open(); string sqlQuery = @"SELECT TOP(100) * FROM CASPELERP.DS_Outcome WHERE DS_StockID = @Id AND StatusID = @StatusId AND SendingStatus = 0"; SqlCommand command = new SqlCommand(sqlQuery, connection); command.Parameters.AddWithValue("@Id", Id); command.Parameters.AddWithValue("@StatusId", OutcomeStatusId); SqlDataReader dataReader = command.ExecuteReader(); while (dataReader.Read()) { DS_Outcome model = new DS_Outcome { ID = ReplaceNullDecimal(dataReader["ID"]), StatusID = ReplaceNullDecimal(dataReader["StatusID"]), OwnerID = ReplaceNullDecimal(dataReader["OwnerID"]), BranchID = ReplaceNullDecimal(dataReader["BranchID"]), CurrencyID = ReplaceNullDecimal(dataReader["CurrencyID"]), CustomerID = ReplaceNullDecimal(dataReader["CustomerID"]), PhysicalPersonID = ReplaceNullDecimal(dataReader["PhysicalPersonID"]), ExternalDocNumber = ReplaceNullString(dataReader["ExternalDocNumber"]), ExternalDocDate = ReplaceNullDateTime(dataReader["ExternalDocDate"]), CreateDate = ReplaceNullDateTime(dataReader["CreateDate"]), OutcomeDate = ReplaceNullDateTime(dataReader["OutcomeDate"]), DS_StockID = ReplaceNullDecimal(dataReader["DS_StockID"]), RefOutcomeTypeID = ReplaceNullDecimal(dataReader["RefOutcomeTypeID"]), Description = ReplaceNullString(dataReader["Description"]), DocDueDate = ReplaceNullDateTime(dataReader["DocDueDate"]), PJProjectID = ReplaceNullDecimal(dataReader["PJProjectID"]), OperationalDay = ReplaceNullDateTime(dataReader["OperationalDay"]), RefAddressID = ReplaceNullDecimal(dataReader["RefAddressID"]), StructID = ReplaceNullDecimal(dataReader["StructID"]), }; int outcomeId = Convert.ToInt32(model.ID); OutcomeUpdateStatus(outcomeId); model.DS_OutcomeItems = GetOutcomeItems(model.ID); models.Add(model); } _logger.Info($"GetOutcomeList({string.Join(",", Id)})"); return(models); } } catch (Exception ex) { _logger.Error($"GetOutcomeList({string.Join(",", Id)}), Exception: {ex.Message}"); return(models); } }
public List <DS_Outcome> GetOutcomeList() { List <string> Ids = Id.Split(',').ToList(); string[] paramNames = Ids.Select( (s, i) => "@Id" + i.ToString() ).ToArray(); string inClause = string.Join(", ", paramNames); List <DS_Outcome> models = new List <DS_Outcome>(); try { using (SqlConnection connection = new SqlConnection(connectionString)) { connection.Open(); string sqlQuery = @"SELECT * FROM CASPELERP.DS_Outcome WHERE DS_StockID NOT IN ({0}) AND RefOutcomeTypeID = 14 AND SendingStatus = 0"; using (SqlCommand command = new SqlCommand(string.Format(sqlQuery, inClause), connection)) { for (int i = 0; i < paramNames.Length; i++) { command.Parameters.AddWithValue(paramNames[i], Ids[i]); } SqlDataReader dataReader = command.ExecuteReader(); while (dataReader.Read()) { DS_Outcome model = new DS_Outcome { ID = ReplaceNullDecimal(dataReader["ID"]), ExternalDocDate = ReplaceNullDateTime(dataReader["ExternalDocDate"]), CreateDate = ReplaceNullDateTime(dataReader["CreateDate"]), }; int outcomeId = Convert.ToInt32(model.ID); OutcomeUpdateStatus(outcomeId); model.DS_OutcomeItems = GetOutcomeItems(model.ID); models.Add(model); } } _logger.Info($"GetOutcomeList({string.Join(",", Id)})"); return(models); } } catch (Exception ex) { _logger.Error($"GetOutcomeList({string.Join(",", Id)}), Exception: {ex.Message}"); return(models); } }