Пример #1
0
        public ActionResult <Dailycall> Post(Dailycall dailyCall)
        {
            try
            {
                string isSaved = new DailyCallManager().DailyCallManagement(dailyCall);

                if (isSaved.Trim() == "1")
                {
                    return(Ok("1"));
                }
                else
                {
                    return(Ok(isSaved.Trim()));
                }
            }
            catch (Exception ex)
            {
                return(Ok(ex.ToString()));
            }
        }
Пример #2
0
 public string DailyCallManagement(Dailycall dailyCall)
 {
     return(dailyCallGateway.DailyCallManagement(dailyCall));
 }
Пример #3
0
        public string DailyCallManagement(Dailycall dailyCall)
        {
            SqlTransaction transaction;
            string         connString = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory())
                                        .AddJsonFile("appsettings.json", false)
                                        .Build().GetConnectionString("DevConnection").ToString();
            SqlConnection sqlConnection = new SqlConnection(connString);

            sqlConnection.Open();
            transaction = sqlConnection.BeginTransaction();
            SqlCommand cmd = new SqlCommand("API_DailyCallManagement", sqlConnection, transaction);

            cmd.CommandType = CommandType.StoredProcedure;
            try
            {
                SqlParameter DailyCallID = cmd.Parameters.Add("@DailyCallID", SqlDbType.BigInt);
                DailyCallID.Direction = ParameterDirection.Input;
                DailyCallID.Value     = dailyCall.DailyCallID;

                SqlParameter CustomerID = cmd.Parameters.Add("@CustomerID", SqlDbType.BigInt);
                CustomerID.Direction = ParameterDirection.Input;
                CustomerID.Value     = Convert.ToInt64(dailyCall.CustomerID);

                SqlParameter VisitTime = cmd.Parameters.Add("@VisitTime", SqlDbType.Time);
                VisitTime.Direction = ParameterDirection.Input;
                VisitTime.Value     = dailyCall.VisitTime;

                SqlParameter FeedBackID = cmd.Parameters.Add("FeedBackID", SqlDbType.BigInt);
                FeedBackID.Direction = ParameterDirection.Input;
                FeedBackID.Value     = Convert.ToInt64(dailyCall.FeedBackID);

                SqlParameter Remarks = cmd.Parameters.Add("@Remarks", SqlDbType.VarChar, 2500);
                Remarks.Direction = ParameterDirection.Input;
                Remarks.Value     = dailyCall.Remarks;

                SqlParameter Condition = cmd.Parameters.Add("@Condition", SqlDbType.VarChar, 10);
                Condition.Direction = ParameterDirection.Input;
                Condition.Value     = dailyCall.Condition;

                SqlParameter Flag = cmd.Parameters.Add("@Flag", SqlDbType.VarChar, 10);
                Flag.Direction = ParameterDirection.Output;

                cmd.ExecuteNonQuery();
                if (cmd.Parameters["@Flag"].Value.ToString().Trim() == "Er")
                {
                    transaction.Rollback();
                    return("0");
                }

                string dailyCallid = cmd.Parameters["@Flag"].Value.ToString().Trim();

                foreach (var promoteProduct in dailyCall.PromotedProduct)
                {
                    if (!PromotaedProductManagement((Product)promoteProduct, dailyCallid, sqlConnection, transaction))
                    {
                        transaction.Rollback();
                        return("0");
                    }
                }

                transaction.Commit();
            }
            catch (Exception ex)
            {
                transaction.Rollback();
                return(ex.ToString());
            }
            finally
            {
                cmd.Dispose();
                sqlConnection.Close();
                sqlConnection.Dispose();
                dailyCall = null;
            }
            return("1");
        }