public int SaveCashRegister(DateTime date, short salesman, string period, decimal?cheques, decimal?talabat, decimal?online, decimal?knet, decimal?visa, decimal?expense, int?twentykd, int?tenkd, int?fivekd, int?onekd, int?halfkd, int?quarterkd, int?hundfils, int?fiftyfils, int?twentyfils, int?tenfils, int?fivefils, decimal?netBalance) { var locationId = short.Parse(Request.Cookies["locationId"].Value); var shiftType = period == "evening" ? "pm" : "am"; var shiftCount = new ShiftCount() { LocationId = locationId, ShiftType = shiftType, Salesman = salesman, StaffDate = date }; var cRegister = new CRegister() { Oid = _cashRegisterRepository.GetOid(), StaffDate = date, TransDate = DateTime.Now, Cheques = cheques ?? 0, Expense = expense ?? 0, FiftyFils = fiftyfils ?? 0, FiveFils = fivefils ?? 0, FiveKd = fivekd ?? 0, HalfKd = halfkd ?? 0, HundFils = hundfils ?? 0, Knet = knet ?? 0, LocationId = locationId, NetBalance = netBalance ?? 0, OneKd = onekd ?? 0, Online = online ?? 0, ShiftType = shiftType, QuarterKd = quarterkd ?? 0, Reserve = _locationRepository.GetReserveAmount(locationId), Salesman = salesman, Talabat = talabat ?? 0, TenFils = tenfils ?? 0, TenKd = tenkd ?? 0, TwentyFils = twentyfils ?? 0, TwentyKd = twentykd ?? 0, Visa = visa ?? 0, ShiftCount = _cashRegisterRepository.GetShiftCount(shiftCount), IsDeleted = false, IsSynced = false }; var result = _cashRegisterRepository.SaveCashRegister(cRegister); if (result != 0) { return(result); } return(-1); }
public int GetShiftCount(ShiftCount shiftCount) { var con = new SQLiteConnection(cs); con.Open(); var cmd = new SQLiteCommand(con) { CommandText = $"select * from CashRegister where (IsDeleted IS NULL OR IsDeleted = 0) AND LocatCd = {shiftCount.LocationId} and Salesman = {shiftCount.Salesman} and ShiftType = '{shiftCount.ShiftType}' and [IsSynced] IS NULL" }; var rdr = cmd.ExecuteReader(); var cRegisters = new List <CRegister>(); while (rdr.Read()) { var cRegister = new CRegister() { Oid = rdr.GetInt32(0), StaffDate = DateTime.Parse(rdr.GetString(2)), LocationId = rdr.GetInt16(3), Salesman = rdr.GetInt16(4), ShiftType = rdr.GetString(5), ShiftCount = rdr.GetInt32(6) }; cRegisters.Add(cRegister); } cmd.Dispose(); con.Close(); con.Dispose(); if (cRegisters.Any()) { var reg = cRegisters.Where(x => x.StaffDate >= shiftCount.StaffDate && x.StaffDate <= shiftCount.StaffDate); return(reg.Any() ? reg.OrderByDescending(x => x.ShiftCount).FirstOrDefault().ShiftCount + 1 : 1); } else { return(1); } }