public int update(SaleLog model) { model.UpdatedAt = Tools.TimeStamp.GetNowTimeStamp(); List <SQLiteParameter> parameters = fillParameters(model); parameters.Add(new SQLiteParameter("@goods_id", DbType.Int32, 11) { Value = model.Id }); SQLiteParameter[] param = this.ConvertSQLiteParameters(parameters); String sql = "UPDATE sales_records SET goods_id = @goods_id, money = @money, summary = @summary, updated_at = @updated_at WHERE id = @id;"; int row = Tools.SQLiteHelper.ExecuteNonQuery(Tools.SQLiteHelper.ConnectionStringLocalTransaction, CommandType.Text, sql, param); if (row > 0) { sql = sql.Replace("@summary", String.Format("'{0}'", model.Summary)); sql = sql.Replace("@money", String.Format("{0}", model.Money)); sql = sql.Replace("@goods_id", String.Format("{0}", model.GoodsId)); sql = sql.Replace("@updated_at", String.Format("{0}", model.UpdatedAt)); sql = sql.Replace("@id", String.Format("{0}", model.Id)); this.SaveQueue(sql); } return(row); }
internal static SaleLogSet SaleLogToSaleLogSet(this SaleLog saleLog) { Mapper.Initialize(cfg => cfg.CreateMap <SaleLog, SaleLogSet>()); var result = Mapper.Map <SaleLog, SaleLogSet>(saleLog); return(result); }
public void AddSaleLog(SaleLog saleLog) { using (var cn = new SqlConnection(Settings.GetConnectionString())) { // create parameter object var parameters = new DynamicParameters(); parameters.Add("@BuyerName", saleLog.BuyerName); parameters.Add("@Email", saleLog.Email); parameters.Add("@Street1", saleLog.Street1); parameters.Add("@Street2", saleLog.Street2); parameters.Add("@City", saleLog.City); parameters.Add("@State", saleLog.State); parameters.Add("@ZipCode", saleLog.ZipCode); parameters.Add("@PurchasePrice", saleLog.PurchasePrice); parameters.Add("@PurchaseType", saleLog.PurchaseType); parameters.Add("@VehicleId", saleLog.VehicleId); parameters.Add("@Phone", saleLog.Phone); parameters.Add("@SalesUserId", saleLog.SalesUserId); parameters.Add("@PurchaseDate", saleLog.PurchaseDate); cn.Execute("AddSaleLog", parameters, commandType: CommandType.StoredProcedure); } }
public async Task GetLogsForSaleShouldGetLogsForSale() { var sale = new Sale(); this.salesEntityRetrieverMock.Setup(x => x.GetSale(It.IsAny <Guid?>())).ReturnsAsync(sale); var addedSaleLogsIds = new List <Guid?>(); for (var i = 0; i < 10; i++) { var saleLog = new SaleLog { SaleId = sale.Id }; await this.dbContext.SaleLogs.AddAsync(saleLog); addedSaleLogsIds.Add(saleLog.Id); } await this.dbContext.SaveChangesAsync(); var saleLogs = await this.saleLogsService.GetLogsForSale <GetLogsForSaleResourceModel>(sale.Id); Assert.True(saleLogs.Select(sl => addedSaleLogsIds.Contains(sl.Id)).All(x => x)); }
private void btnSave_Click(object sender, EventArgs e) { String msg = null; if (String.IsNullOrEmpty(this.txtPrice.Text.Trim())) { msg = "请填写交易金额"; } else if (this.cmbGoods.SelectedItem == null) { msg = "请选择商品信息"; } else if (String.IsNullOrEmpty(this.txtSummary.Text.Trim())) { msg = "请填写交易描述"; } if (msg != null) { MessageBox.Show(msg, "数据不完整", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } Models.SaleLog log = new SaleLog(); log.CreatedAt = Tools.TimeStamp.ConvertDateTimeInt(DateTime.Now); log.GoodsId = Convert.ToInt32(this.cmbGoods.SelectedValue); log.Money = Convert.ToDecimal(this.txtPrice.Text.Trim()); log.Summary = this.txtSummary.Text.Trim(); bll.AddLog(log); }
public int save(SaleLog model) { model.CreatedAt = Tools.TimeStamp.ConvertDateTimeInt(DateTime.Now); MySqlParameter[] param = this.ConvertMySqlParameters(this.fillParameters(model)); String sql = "INSERT INTO sales_records(goods_id, money, summary, created_at, updated_at) VALUES(@goods_id, @money, @summary, @created_at, @updated_at);"; return(Tools.MySqlHelper.ExecuteNonQuery(Tools.MySqlHelper.ConnectionStringLocalTransaction, CommandType.Text, sql, param)); }
public int update(SaleLog model) { model.UpdatedAt = Tools.TimeStamp.ConvertDateTimeInt(DateTime.Now); MySqlParameter[] param = this.ConvertMySqlParameters(this.fillParameters(model)); param[param.Length] = new MySqlParameter("@id", MySqlDbType.Int32, 11); String sql = "UPDATE sales_records SET goods_id = @goods_id, money = @money, summary = @summary, created_at = @created_at, updated_at = @updated_at SET id = @id;"; return(Tools.MySqlHelper.ExecuteNonQuery(Tools.MySqlHelper.ConnectionStringLocalTransaction, CommandType.Text, sql, param)); }
public SaleLog find(int id) { String sql = String.Format("SELECT * FROM sales_records WHERE id = {0}", id); SaleLog log = null; using (MySqlDataReader rdr = Tools.MySqlHelper.ExecuteReader(Tools.MySqlHelper.ConnectionStringLocalTransaction, CommandType.Text, sql)) { log = this.fillSaleLog(rdr); } return(log); }
private SaleLog fillSaleLog(MySqlDataReader rdr) { SaleLog category = null; if (rdr.Read()) { category = new SaleLog(); category.Id = rdr["id"] == DBNull.Value ? 0 : Convert.ToInt32(rdr["id"]); category.GoodsId = rdr["goods_id"] == DBNull.Value ? 0 : Convert.ToInt32(rdr["goods_id"]); category.Summary = rdr["summary"] == DBNull.Value ? "" : rdr["summary"].ToString(); category.Money = rdr["money"] == DBNull.Value ? 0 : Convert.ToDecimal(rdr["money"]); category.CreatedAt = rdr["created_at"] == DBNull.Value ? 0 : Convert.ToInt32(rdr["created_at"]); category.UpdatedAt = rdr["updated_at"] == DBNull.Value ? 0 : Convert.ToInt32(rdr["updated_at"]); } return(category); }
public ActionResult Purchase(SaleLogViewModel saleLogViewModel) { if (ModelState.IsValid) { var saleLogRepo = SaleLogRepositoryFactory.GetSaleLogRepository(); var vehicleRepo = VehicleRepositoryFactory.GetVehicleRepository(); var saleLog = new SaleLog() { BuyerName = saleLogViewModel.BuyerName, Email = saleLogViewModel.Email, Street1 = saleLogViewModel.Street1, Street2 = saleLogViewModel.Street2, City = saleLogViewModel.City, State = saleLogViewModel.State, ZipCode = saleLogViewModel.ZipCode, PurchasePrice = saleLogViewModel.PurchasePrice, PurchaseType = saleLogViewModel.PurchaseType, VehicleId = saleLogViewModel.VehicleId, Phone = saleLogViewModel.Phone, SalesUserId = User.Identity.GetUserId(), PurchaseDate = DateTime.Today }; // Add Sale Log Record saleLogRepo.AddSaleLog(saleLog); // Mark Vehicle as Purchased vehicleRepo.VehicleMarkPurchased(saleLogViewModel.VehicleId); return(RedirectToAction("Index", "Home")); } else // send back the View with error list { var repo = VehicleRepositoryFactory.GetVehicleRepository(); var model = new PurchaseViewModel() { vehicle = repo.GetVehicleById(saleLogViewModel.VehicleId), saleLogViewModel = saleLogViewModel }; return(View(model)); } }
private List <SaleLog> findBySql(String sql) { List <SaleLog> logs = null; using (MySqlDataReader rdr = Tools.MySqlHelper.ExecuteReader(Tools.MySqlHelper.ConnectionStringLocalTransaction, CommandType.Text, sql)) { logs = new List <SaleLog>(); while (true) { SaleLog log = this.fillSaleLog(rdr); if (log == null) { break; } logs.Add(log); } } return(logs); }
private List <SQLiteParameter> fillParameters(SaleLog model) { List <SQLiteParameter> param = new List <SQLiteParameter>() { new SQLiteParameter("@goods_id", DbType.Int32, 11), new SQLiteParameter("@money", DbType.Decimal, 11), new SQLiteParameter("@summary", DbType.String, 255), new SQLiteParameter("@created_at", DbType.Int32, 11), new SQLiteParameter("@updated_at", DbType.Int32, 11), }; param[0].Value = model.GoodsId; param[1].Value = model.Money; param[2].Value = model.Summary; param[3].Value = model.CreatedAt; param[4].Value = model.UpdatedAt; return(param); }
private List <MySqlParameter> fillParameters(SaleLog model) { MySqlParameter[] parameters = { new MySqlParameter("@goods_id", MySqlDbType.Int32, 11), new MySqlParameter("@money", MySqlDbType.Decimal, 10), new MySqlParameter("@summary", MySqlDbType.VarChar, 1000), new MySqlParameter("@created_at", MySqlDbType.Int32, 11), new MySqlParameter("@updated_at", MySqlDbType.Int32, 11), }; parameters[0].Value = model.GoodsId; parameters[1].Value = model.Money; parameters[2].Value = model.Summary; parameters[3].Value = model.CreatedAt; parameters[4].Value = model.UpdatedAt; return(parameters.ToList()); }
public int save(SaleLog model) { model.CreatedAt = Tools.TimeStamp.GetNowTimeStamp(); SQLiteParameter[] param = this.ConvertSQLiteParameters(fillParameters(model)); String sql = "INSERT INTO sales_records(goods_id, money, summary, created_at) VALUES (@goods_id, @money, @summary, @created_at);"; int row = Tools.SQLiteHelper.ExecuteNonQuery(Tools.SQLiteHelper.ConnectionStringLocalTransaction, CommandType.Text, sql, param); if (row > 0) { sql = sql.Replace("@summary", String.Format("'{0}'", model.Summary)); sql = sql.Replace("@money", String.Format("{0}", model.Money)); sql = sql.Replace("@goods_id", String.Format("{0}", model.GoodsId)); sql = sql.Replace("@created_at", String.Format("{0}", model.CreatedAt)); this.SaveQueue(sql); } return(row); }
private void btnSubmit_Click(object sender, System.EventArgs e) { if (String.IsNullOrEmpty(this.txtMoney.Text.Trim())) { MessageBox.Show("请先选择充值次数及金额!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } else if (this.card.Record == null || this.card.Record.Status == Status.Disabled) { this.card.Record = new MemberCardRecord(); this.card.Record.MemberCardId = this.card.Id; this.card.Record.CreatedAt = TimeStamp.GetNowTimeStamp(); } MemberCardCategoryValue cat = this.cmbMoney.SelectedItem as MemberCardCategoryValue; this.card.Record.Balance += cat.ValueNum; this.card.Record.BeginAt = TimeStamp.ConvertDateTimeInt(DateTime.Now.Date); this.card.Record.ExpiredAt = TimeStamp.ConvertDateTimeInt(this.validTime.Value.Date.AddHours(23)); if (this.card.Record.Id > 0 ? recordBll.EditMemberCardRecord(this.card.Record) : recordBll.AddMemberCardRecord(this.card.Record)) { SaleLog log = new SaleLog(); log.CreatedAt = TimeStamp.ConvertDateTimeInt(DateTime.Now); log.MemberId = this.card.Id; log.MemberNo = this.card.CardNo; log.GoodsId = cat.GoodsId; log.Money = Convert.ToDecimal(this.txtMoney.Text.Trim()); log.Summary = String.Format("卡号:{0}在{1}充值{2}元", this.card.CardNo, DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"), cat.Money); saleBll.AddLog(log); Callback(log.Summary); this.labMoney.Text = String.Format("帐户剩余次数:{0}次", this.card.Record.Balance.ToString()); } this.btnSubmit.Enabled = false; this.validTime.Visible = false; this.labTip.Visible = false; this.card = null; this.cmbMoney.DataSource = null; this.txtMoney.Clear(); MessageBox.Show("充值成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); }
private SaleLog fillSaleLog(SQLiteDataReader rdr) { SaleLog log = null; if (rdr.Read()) { log = new SaleLog(); log.Id = rdr["id"] == DBNull.Value ? 0 : Convert.ToInt32(rdr["id"]); log.GoodsId = rdr["goods_id"] == DBNull.Value ? 0 : Convert.ToInt32(rdr["goods_id"]); log.Summary = rdr["summary"] == DBNull.Value ? "" : rdr["summary"].ToString(); //log.MemberId = rdr["member_id"] == DBNull.Value ? 0 : Convert.ToInt32(rdr["member_id"]); //log.Summary = rdr["name"] == DBNull.Value ? "" : rdr["name"].ToString(); //log.Remark = rdr["category_id"] == DBNull.Value ? "" : rdr["category_id"].ToString(); //log.MemberNo = rdr["member_no"] == DBNull.Value ? "" : rdr["member_no"].ToString(); log.Money = rdr["money"] == DBNull.Value ? 0 : Convert.ToDecimal(rdr["money"]); log.CreatedAt = rdr["created_at"] == DBNull.Value ? 0 : Convert.ToInt64(rdr["created_at"]); log.UpdatedAt = rdr["updated_at"] == DBNull.Value ? 0 : Convert.ToInt64(rdr["updated_at"]); } return(log); }
/// <summary> /// 添加交易记录 /// </summary> private void AddRecord() { if (card.Record.Balance <= 0) { this.setLabelStatus("此卡次数不足,请充值后再试!", Color.Red, "AudioCardArrearage"); return; } this.btnSearch.Enabled = false; this.btnSubmit.Enabled = false; this.numValue.Enabled = false; Decimal num = this.numValue.Value; for (int i = 0; i < num; i++) { SaleLog log = new SaleLog(); log.CreatedAt = TimeStamp.GetNowTimeStamp(); log.Money = 0; log.GoodsId = Convert.ToInt32(ConfigurationManager.AppSettings["RecordGoodsID"]); log.MemberNo = this.card.CardNo; log.Summary = String.Format("卡号:{0}({1})在{2}进行了一笔消费", this.labNo.Text.Trim(), this.labType.Text.Trim(), DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); logBll.AddLog(log); } this.AddRecordToDataGridView(String.Format("卡号:{0}({1})在{2}进行了{3}笔消费", this.labNo.Text.Trim(), this.labType.Text.Trim(), DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), Convert.ToInt32(num))); this.card.Record.Balance -= num; recordBll.EditMemberCardRecord(this.card.Record); this.btnSearch.Enabled = true; this.btnSubmit.Enabled = true; this.numValue.Enabled = true; this.numValue.Maximum = this.card.Record.Balance; this.numValue.Value = this.numValue.Value > this.numValue.Maximum ? this.numValue.Maximum : this.numValue.Value; if (!this.timer.Enabled) { this.timer.Interval = 1000 * 20; this.timer.Start(); } }
private void btnSubmit_Click(object sender, System.EventArgs e) { String msg = null; if (String.IsNullOrEmpty(this.txtFee.Text.Trim())) { msg = "请填写销售金额!"; } else if (Convert.ToDecimal(this.txtFee.Text.Trim()) < 1) { msg = "销售金额必须大于0元!"; } if (!String.IsNullOrEmpty(msg)) { MessageBox.Show(msg, "保存失败", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } SaleLog log = new SaleLog(); log.CreatedAt = TimeStamp.GetNowTimeStamp(); log.Money = Convert.ToDecimal(this.txtFee.Text.Trim()); log.GoodsId = this.goods.Id; log.MemberNo = ""; log.Summary = String.Format("{0}出售了{1}元的{2}", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), this.txtFee.Text.Trim(), this.goods.Name); ISaleLogBLL logBll = BllFactory.GetSaleLogBll(); if (!logBll.AddLog(log)) { MessageBox.Show("商品销售记录失败!", "保存失败", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } callback(log.Summary); this.Close(); }
public void AddSaleLog(SaleLog saleLog) { int maxId = saleLogList.Max(s => s.SaleId); saleLogList.Add(new SaleLog() { SaleId = maxId + 1, BuyerName = saleLog.BuyerName, Email = saleLog.Email, Street1 = saleLog.Street1, Street2 = saleLog.Street2, City = saleLog.City, State = saleLog.State, ZipCode = saleLog.ZipCode, PurchasePrice = saleLog.PurchasePrice, PurchaseType = saleLog.PurchaseType, VehicleId = saleLog.VehicleId, Phone = saleLog.Phone, SalesUserId = saleLog.SalesUserId, PurchaseDate = saleLog.PurchaseDate }); }
public List <SaleLog> findByWhere(string where) { String sql = "SELECT * FROM sales_records WHERE " + where; sql += " order by id"; List <SaleLog> logs = null; using (SQLiteDataReader rdr = SQLiteHelper.ExecuteReader(SQLiteHelper.ConnectionStringLocalTransaction, CommandType.Text, sql)) { logs = new List <SaleLog>(); while (true) { SaleLog log = this.fillSaleLog(rdr); if (log == null) { break; } logs.Add(log); } } return(logs); }
public void CanAddSaleLog() { SaleLog saleLog = new SaleLog() { BuyerName = "Karnan", Email = "*****@*****.**", Street1 = "123 street", City = "Chicago", State = "MI", ZipCode = "98234", PurchasePrice = 25000, PurchaseType = "Dealer Finance", VehicleId = 4, Phone = "7711322322", SalesUserId = allUsers[0].Id, PurchaseDate = DateTime.Today }; var repo = new SaleLogRepository(); repo.AddSaleLog(saleLog); // Now check in the DB if the record was added }
public bool EditLog(SaleLog model) { return(dal.update(model) > 0); }
public bool AddLog(SaleLog model) { return(dal.save(model) > 0); }