Exemple #1
0
 private void Confirm_Click(object sender, EventArgs e)
 {
     OrderTracking tracking;
     if (this.Tag == null)
     {
         tracking = new OrderTracking();
         tracking.Status = ((AppDic)this.Status.SelectedItem).Key;
         tracking.OrderId = UpdateOrder.Id;
     }
     else
     {
         tracking = (OrderTracking)this.Tag;
         tracking.Status = ((AppDic)this.Status.SelectedItem).Key;
     }
     tracking.TrackingDate = this.TrackingDate.Value.ToString(Constants.DateFormat);
     tracking.Description = this.Description.Text.Trim();
     tracking.Tracker = ((AppDic)this.Tracker.SelectedItem).Key;
     tracking.IsClosed = this.IsClosed.Checked;
     if (string.IsNullOrEmpty(tracking.Description))
     {
         return;
     }
     finOrderManager.InsertOrUpdateTracking(tracking);
     this.Close();
 }
Exemple #2
0
 private void LoadUpdateOrder(OrderTracking tracking)
 {
     if (tracking == null) return;
     this.Tag = tracking;
     this.TrackingDate.Text = tracking.TrackingDate;
     this.Description.Text = tracking.Description;
     AliHelperUtils.LoadAppDicComboBoxValue(this.Tracker, tracking.Tracker);
     AliHelperUtils.LoadAppDicComboBoxValue(this.Status, tracking.Status);
 }
Exemple #3
0
        public void InsertOrUpdateTracking(DbTransaction trans, OrderTracking tracking)
        {
            string InsSql = @"INSERT INTO OrderTracking(OrderId, TrackingDate, Description, Tracker, Status, CreatedTime, ModifiedTime) "
                            + "values(@OrderId, @TrackingDate, @Description, @Tracker, @Status, @CreatedTime, @ModifiedTime) ";
            string UpdSql = @"update OrderTracking set OrderId=@OrderId, TrackingDate=@TrackingDate, Description=@Description,"
                            + " Tracker=@Tracker, Status=@Status, ModifiedTime=@ModifiedTime "
                            + "where Id = @Id";

            string ExistRecordSql = "SELECT count(1) FROM OrderTracking WHERE Id = " + tracking.Id;

            DateTime CurrentTime = DateTime.Now;
            MySqlParameter[] parameter = new MySqlParameter[]
            {
                new MySqlParameter("@Id",tracking.Id),
                new MySqlParameter("@OrderId",tracking.OrderId),
                new MySqlParameter("@TrackingDate",tracking.TrackingDate),
                new MySqlParameter("@Description",tracking.Description),
                new MySqlParameter("@Tracker",tracking.Tracker),
                new MySqlParameter("@Status",tracking.Status),
                new MySqlParameter("@CreatedTime", CurrentTime),
                new MySqlParameter("@ModifiedTime",CurrentTime)
            };
            if (trans == null)
            {
                using (MySqlConnection connection = dbHelper.GetConnection())
                {
                    connection.Open();
                    using (DbTransaction transaction = connection.BeginTransaction())
                    {

                        int ExistTrackingId = Convert.ToInt32(dbHelper.ExecuteScalar(ExistRecordSql, null));
                        if (ExistTrackingId == 0)
                        {
                            dbHelper.ExecuteNonQuery(transaction, InsSql, parameter);
                        }
                        else
                        {
                            dbHelper.ExecuteNonQuery(transaction, UpdSql, parameter);
                        }
                        Order order = new Order();
                        order.Id = tracking.OrderId;
                        order.Status = tracking.Status;
                        order.EndDate = tracking.IsClosed?tracking.TrackingDate:string.Empty;
                        UpdateOrderStatus(transaction, order);
                        transaction.Commit();
                    }
                    connection.Close();
                }
            }
            else
            {
                int ExistTrackingId = Convert.ToInt32(dbHelper.ExecuteScalar(trans, ExistRecordSql, null));
                if (ExistTrackingId == 0)
                {
                    dbHelper.ExecuteNonQuery(trans, InsSql, parameter);
                }
                else
                {
                    dbHelper.ExecuteNonQuery(trans, UpdSql, parameter);
                }
            }
        }
Exemple #4
0
 public void InsertOrUpdateTracking(OrderTracking tracking)
 {
     InsertOrUpdateTracking(null, tracking);
 }
Exemple #5
0
        public void InsertOrUpdateOrder(Order order, string tracker)
        {
            string InsSql = @"INSERT INTO Orders(BeginDate,EndDate,Description,OrderNo,SalesMan,Status,Remark,CreatedTime,ModifiedTime) "
                            + "values(@BeginDate,@EndDate,@Description,@OrderNo,@SalesMan,@Status,@Remark,@CreatedTime,@ModifiedTime) ";
            string UpdSql = @"update Orders set OrderNo=@OrderNo, BeginDate=@BeginDate, EndDate=@EndDate, Description= @Description, "
                            + "SalesMan=@SalesMan, Status = @Status, Remark=@Remark, ModifiedTime=@ModifiedTime "
                            + "where Id = @Id";

            string ExistRecordSql = "SELECT count(1) FROM Orders WHERE Id = ";
            DateTime CurrentTime = DateTime.Now;
            MySqlParameter[] parameter = new MySqlParameter[]
            {
                new MySqlParameter("@Id",order.Id),
                new MySqlParameter("@BeginDate",order.BeginDate),
                new MySqlParameter("@EndDate",order.EndDate),
                new MySqlParameter("@Description",order.Description),
                new MySqlParameter("@OrderNo",order.OrderNo),
                new MySqlParameter("@SalesMan",order.SalesMan),
                new MySqlParameter("@Status",order.Status),
                new MySqlParameter("@Remark",order.Remark),
                new MySqlParameter("@CreatedTime", CurrentTime),
                new MySqlParameter("@ModifiedTime",CurrentTime)
            };

            using (MySqlConnection connection = dbHelper.GetConnection())
            {
                connection.Open();
                using (DbTransaction transaction = connection.BeginTransaction())
                {
                    int record = Convert.ToInt32(dbHelper.ExecuteScalar(transaction, ExistRecordSql + order.Id, null));
                    int orderId = 0;
                    if (record == 0)
                    {
                        dbHelper.ExecuteNonQuery(transaction, InsSql, parameter);
                        orderId = dbHelper.GetLastInsertId(transaction);

                    }
                    else
                    {
                        dbHelper.ExecuteNonQuery(transaction, UpdSql, parameter);
                        orderId = order.Id;
                    }
                    string TrackingCountSql = "SELECT count(1) FROM OrderTracking WHERE Id = " + orderId;
                    int rrackingCount = Convert.ToInt32(dbHelper.ExecuteScalar(transaction, TrackingCountSql, null));
                    if (rrackingCount == 0)
                    {
                        OrderTracking tracking = new OrderTracking();
                        tracking.OrderId = orderId;
                        tracking.Status = order.Status;
                        tracking.TrackingDate = order.BeginDate;
                        tracking.Description = order.Description + " - " + order.Status;
                        tracking.Tracker = tracker;
                        InsertOrUpdateTracking(transaction, tracking);
                    }
                    transaction.Commit();
                }
                connection.Close();
            }
        }
Exemple #6
0
 public List<OrderTracking> GetOrderTrackingList(int orderId)
 {
     string sql = "select * FROM OrderTracking t where OrderId = " + orderId;
     DataTable dt = dbHelper.ExecuteDataTable(sql, null);
     List<OrderTracking> list = new List<OrderTracking>();
     foreach (DataRow row in dt.Rows)
     {
         OrderTracking info = new OrderTracking();
         info.Id = Convert.ToInt32(row["Id"]);
         info.OrderId = Convert.ToInt32(row["OrderId"]);
         info.TrackingDate = (string)row["TrackingDate"];
         info.Description = (string)row["Description"];
         info.Tracker = (string)row["Tracker"];
         info.Status = (string)row["Status"];
         info.CreatedTime = Convert.ToDateTime(row["CreatedTime"]);
         info.ModifiedTime = Convert.ToDateTime(row["ModifiedTime"]);
         list.Add(info);
     }
     return list;
 }
Exemple #7
0
 public OrderTracking GetOrderTrackingById(int id)
 {
     string sql = "select t.* FROM OrderTracking t where id = " + id;
     DataTable dt = dbHelper.ExecuteDataTable(sql, null);
     List<OrderTracking> list = new List<OrderTracking>();
     foreach (DataRow row in dt.Rows)
     {
         OrderTracking info = new OrderTracking();
         info.Id = Convert.ToInt32(row["Id"]);
         info.OrderId = Convert.ToInt32(row["OrderId"]);
         info.TrackingDate = (string)row["TrackingDate"];
         info.Description = (string)row["Description"];
         info.Tracker = (string)row["Tracker"];
         info.Status = (string)row["Status"];
         info.CreatedTime = Convert.ToDateTime(row["CreatedTime"]);
         info.ModifiedTime = Convert.ToDateTime(row["ModifiedTime"]);
         list.Add(info);
     }
     if (list.Count > 0)
         return list[0];
     else
         return null;
 }
Exemple #8
0
 public void InsertOrUpdateTracking(OrderTracking o)
 {
     orderDao.InsertOrUpdateTracking(o);
     FireEditTrackingEvent(o);
 }