public bool TryGetDrawers(DrawerFlag _flag, out List <CashDrawer> _drawers, int _id = -255, int _managerid = -255, int _employeeid = -255) { _drawers = null; lock (this.syncRoot) { List <CashDrawer> drawers = null; if (this.items.TryGetValue(_flag, out drawers)) { if (_id != -255 && _managerid == -255 && _employeeid == -255) { _drawers = drawers.FindAll(p => p.ID == _id); return(true); } else if (_id != -255 && _managerid != -255 && _employeeid == -255) { _drawers = drawers.FindAll(p => p.ID == _id && p.ManagerID == _managerid); return(true); } else if (_managerid != -255 && _id == -255 && _employeeid == -255) { _drawers = drawers.FindAll(p => p.ManagerID == _managerid); return(true); } else if (_managerid != -255 && _id == -255 && _employeeid != -255) { _drawers = drawers.FindAll(p => p.ManagerID == _managerid && p.EmpolyeeID == _employeeid); return(true); } else if (_employeeid != -255 && _id == -255 && _managerid == -255) { _drawers = drawers.FindAll(p => p.EmpolyeeID == _employeeid); return(true); } else if (_employeeid != -255 && _id != -255 && _managerid == -255) { _drawers = drawers.FindAll(p => p.EmpolyeeID == _employeeid && p.ID == _id); return(true); } else { if (_id != -255 && _managerid != -255 && _employeeid != -255) { _drawers = drawers.FindAll(p => p.ManagerID == _managerid && p.ManagerID == _managerid && p.EmpolyeeID == _employeeid); return(_drawers != null); } } _drawers = drawers; return(true); } else { return(false); } } }
public bool SignIn(DrawerFlag _flag, int _id, int _managerid, int _employeeid) { lock (this.syncRoot) { CashDrawer _drawer = null; if (TryGetDrawer(_flag, out _drawer, _id, _managerid)) { return(_drawer.SignIn(_employeeid, time)); } return(false); } }
public bool Close(DrawerFlag _flag, int _id, int _managerid) { lock (this.syncRoot) { CashDrawer _drawer = null; if (TryGetDrawer(_flag, out _drawer, _id, _managerid)) { return(_drawer.Close(time)); } return(false); } }
public bool Open(DrawerFlag _flag, int _id, int _managerid, bool useterm = false, double _beginningterm = 0.0) { lock (this.syncRoot) { CashDrawer _drawer = null; if (TryGetDrawer(_flag, out _drawer, _id)) { return(_drawer.Open(time, _managerid, useterm, _beginningterm)); } return(false); } }
public bool AddCheque(DrawerFlag _flag, int _id, int _managerid, int _employeeid, Cheque _cheque) { lock (this.syncRoot) { CashDrawer _drawer = null; if (TryGetDrawer(_flag, out _drawer, _id, _managerid, _employeeid)) { return(_drawer.AddCheque(_cheque)); } return(false); } }
public bool AddBill(DrawerFlag _flag, int _id, int _managerid, Bill _bill) { lock (this.syncRoot) { CashDrawer _drawer = null; if (TryGetDrawer(_flag, out _drawer, _id, _managerid)) { return(_drawer.AddBill(time, _bill)); } return(false); } }
public CashDrawer(DrawerFlag _flag, int _ownerid, int _managerid, long _time, double _beginningterm = 0.0) { id = new Random().Next(-1, int.MaxValue); billlogs = new List <Bill>(); operatelogs = new List <OperateLog>(); status = DrawerOperate.SetStartTerm; beginningterm = _beginningterm; operatelogs.Add(OperateLog.Create(status, _ownerid, _managerid, 0, _time)); time = _time; ownerid = _ownerid; managerid = _managerid; flag = _flag; status = DrawerOperate.Opened; cheques = new List <Cheque>(); operatelogs.Add(OperateLog.Create(status, _ownerid, _managerid, 0, _time)); xprint = 0; zprint = 0; dprint = 0; }
public CashDrawer(int _id, DrawerFlag _flag, int _ownerid, int _managerid, int _empolyeeid, long _time, double _beginningterm = 0.0) { id = _id; billlogs = new List <Bill>(); operatelogs = new List <OperateLog>(); status = DrawerOperate.SetStartTerm; beginningterm = _beginningterm; operatelogs.Add(OperateLog.Create(status, _ownerid, _managerid, _empolyeeid, _time)); cheques = new List <Cheque>(); time = _time; ownerid = _ownerid; flag = _flag; managerid = _managerid; empolyeeid = _empolyeeid; status = DrawerOperate.Opened; operatelogs.Add(OperateLog.Create(status, _ownerid, _managerid, _empolyeeid, _time)); xprint = 0; zprint = 0; dprint = 0; lastorderid = 0; lastordertime = 0; }