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(); }
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); }
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); } } }
public void InsertOrUpdateTracking(OrderTracking tracking) { InsertOrUpdateTracking(null, tracking); }
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(); } }
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; }
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; }
public void InsertOrUpdateTracking(OrderTracking o) { orderDao.InsertOrUpdateTracking(o); FireEditTrackingEvent(o); }