public List <vw_CaseDefectsData> GetVictimsByCaseID(int CaseID, int SessionID)
        {
            var victims = (from _case in DataContext.Cases_Cases
                           join _session in DataContext.Cases_CaseSessions on _case.ID equals _session.CaseID
                           join _victim in DataContext.Cases_CaseVictims on _case.ID equals _victim.CaseID
                           join _personVictim in DataContext.Configurations_Persons on _victim.PersonID equals _personVictim.ID
                           join _victimsSessionLog in DataContext.Cases_VictimsSessionsLog on _victim.ID equals _victimsSessionLog.VictimID into VSLog
                           from _vslog in VSLog.DefaultIfEmpty()
                           join _PresenceStatus in DataContext.Configurations_Lookups on _vslog.PresenceStatusID equals _PresenceStatus.ID into PStatus
                           from _ps in PStatus.DefaultIfEmpty()
                           where _case.ID == CaseID && _session.ID == SessionID && _case.IsDeleted != true
                           select new vw_CaseDefectsData
            {
                ID = _victim.ID,
                PersonID = _victim.PersonID,
                Name = _personVictim.FullName,
                NationalID = _personVictim.NationalID,
                DefectType = PartyTypes.Victim,
                IsCivilRightProsecutor = _victim.IsCivilRightProsecutor,
                Presence = _vslog == null ? 0 :(PresenceStatus)_vslog.PresenceStatusID,
                JobName = _personVictim.JobTitle,
                NationalityType = _personVictim.NationalityID,
                PassportNumber = _personVictim.PassportNumber,
                Birthdate = _personVictim.Birthdate,
                Order = _victim.Order,
                Address = _personVictim.Address,
                Nationality = _personVictim.Configurations_Lookups.Name,
            }).ToList();

            return(victims);
        }
예제 #2
0
 public static void Update(int senha, PStatus status)
 {
     NonQuery($"Erro ao atualizar status de lista de espera. ({ErrorCodes.DB0040})", (c) => {
         c.CommandText = $"update {Name} set {nameof(_Status)} = @status where {nameof(Senha)} = @senha;";
         c.Parameters.AddWithValue("@senha", senha);
         c.Parameters.AddWithValue("@status", ES.ps[status]);
         return(c);
     });
 }
예제 #3
0
 //For Deep Copy
 public Product(Product other)
 {
     topSellerStatus = other.topSellerStatus;
     name            = other.name;
     type            = other.type;
     productID       = other.productID;
     location        = other.location;
     inStock         = other.inStock;
     stockCount      = other.stockCount;
     price           = other.price;
 }
예제 #4
0
 public static void Update(int senha, Fila fila, PStatus status)
 {
     NonQuery("Erro ao atualizar lista de espera.", (c) => {
         c.CommandText = $"update {Name} set {nameof(Fila)} = @fila, {nameof(_Status)} = @status " +
                         $"where {nameof(Senha)} = @senha;";
         c.Parameters.AddWithValue("@senha", senha);
         c.Parameters.AddWithValue("@fila", ES.f[fila]);
         c.Parameters.AddWithValue("@status", Get(status));
         return(c);
     });
 }
예제 #5
0
 public static void Insert(string paciente, DateTime dt, PStatus status, Fila encaminhado, bool prioridade)
 {
     NonQuery($"Erro ao inserir em lista de espera. ({ErrorCodes.DB0033})", (c) => {
         c.CommandText = $"insert into {Name} values (null, @paciente, @time, @status, @encaminhado, @prioridade);";
         c.Parameters.AddWithValue("@paciente", paciente);
         c.Parameters.AddWithValue("@time", dt.ToString("yyyy-MM-dd HH:mm:ss"));
         c.Parameters.AddWithValue("@status", Get(status));
         c.Parameters.AddWithValue("@encaminhado", ES.f[encaminhado]);
         c.Parameters.AddWithValue("@prioridade", prioridade);
         return(c);
     });
 }
예제 #6
0
 public static void Update(string paciente, bool prioridade, Fila fila, PStatus status)
 {
     NonQuery($"", (c) => {
         c.CommandText = $"update {Name} set " +
                         $"  {nameof(Prioridade)} = @prioridade, " +
                         $"  {nameof(Fila)} = @fila, " +
                         $"  {nameof(_Status)} = @status " +
                         $"where {nameof(Paciente)} = @cpf;";
         c.Parameters.AddWithValue("@cpf", paciente);
         c.Parameters.AddWithValue("@prioridade", prioridade);
         c.Parameters.AddWithValue("@fila", ES.f[fila]);
         c.Parameters.AddWithValue("@status", Get(status));
         return(c);
     });
 }
예제 #7
0
 public Product(string _name, PType _type, int _location, int _stockCount, int _price, int _productID = 0)
 {
     topSellerStatus = new TopSeller(_productID);
     name            = _name;
     type            = _type;
     productID       = _productID;
     location        = _location;
     stockCount      = _stockCount;
     price           = _price;
     if (stockCount == 0)
     {
         inStock = PStatus.Empty;
     }
     else if (stockCount <= 20)
     {
         inStock = PStatus.LowQuantity;
     }
     else
     {
         inStock = PStatus.InStock;
     }
 }
예제 #8
0
        //Methods
        public void Buy(int num = 1)
        {
            if (this.inStock == PStatus.Empty)
            {
                throw new InvalidOperationException("No Product Left to buy!");
            }
            this.StockCount = this.StockCount - num;

            if (stockCount == 0)
            {
                inStock = PStatus.Empty;
            }
            else if (stockCount <= 20)
            {
                inStock = PStatus.LowQuantity;
            }
            else
            {
                inStock = PStatus.InStock;
            }

            this.topSellerStatus.SellCounter = this.topSellerStatus.SellCounter + num;
        }
예제 #9
0
 public static string Get(PStatus status)
 {
     if (status == PStatus.Esperando)
     {
         return("Esperando");
     }
     else if (status == PStatus.EmAtendimento)
     {
         return("Em atendimento");
     }
     else if (status == PStatus.ACaminho)
     {
         return("A caminho");
     }
     else if (status == PStatus.Atendido)
     {
         return("Atendido");
     }
     else
     {
         throw new NotImplementedException();
     }
 }
예제 #10
0
        public List <vw_CaseDefectsData> GetDefendantsByCaseID(int CaseID, int SessionID)
        {
            var defendants = (from _case in DataContext.Cases_Cases
                              join _session in DataContext.Cases_CaseSessions on _case.ID equals _session.CaseID
                              join _defendant in DataContext.Cases_CaseDefendants on _case.ID equals _defendant.CaseID
                              join _defendantCaseLog in DataContext.Cases_DefendatnsCaseLog on _defendant.ID equals _defendantCaseLog.DefendantID
                              join _personDefendant in DataContext.Configurations_Persons on _defendant.PersonID equals _personDefendant.ID
                              join Look in DataContext.Configurations_Lookups on _personDefendant.NationalityID equals Look.ID
                              join _defendantsSessionLog in DataContext.Cases_DefendatnsSessionsLog on _defendant.ID equals _defendantsSessionLog.DefendantID into DSLog
                              from _dslog in DSLog.DefaultIfEmpty()
                              join _PresenceStatus in DataContext.Configurations_Lookups on _dslog.PresenceStatusID equals _PresenceStatus.ID into PStatus
                              from _ps in PStatus.DefaultIfEmpty()
                              join _PoliceStationStatus in DataContext.Configurations_Lookups on _defendantCaseLog.PoliceStationStatusID equals _PoliceStationStatus.ID

                              where _case.ID == CaseID && _case.IsDeleted != true && _session.ID == SessionID && !_defendantCaseLog.ToDate.HasValue
                              select new vw_CaseDefectsData
            {
                ID = (int)_defendant.ID,
                PersonID = _defendant.PersonID,
                Name = _personDefendant.FullName,
                NationalID = _personDefendant.NationalID,
                DefectType = PartyTypes.Defendant,
                IsCivilRightProsecutor = _defendant.IsCivilRightProsecutor,
                Presence = _dslog == null ? 0 : (PresenceStatus)_dslog.PresenceStatusID,
                Status = _defendantCaseLog.PoliceStationStatusID,
                JobName = _personDefendant.JobTitle,
                NationalityType = _personDefendant.NationalityID,
                PassportNumber = _personDefendant.PassportNumber,
                Birthdate = _personDefendant.Birthdate,
                Order = _defendant.Order,
                Nationality = Look.Name,
                Address = _personDefendant.Address,
                // Age = DateTime.Now.Year - (DateTime)_personDefendant.Year
            }).Distinct().ToList();

            return(defendants);
        }
예제 #11
0
        public static List <_ListaEspera> Select(Fila fila, PStatus status)
        {
            var lista = new List <_ListaEspera>();
            var c     = new MySqlCommand();

            c.CommandText =
                $"select " +
                $"  a.{nameof(Senha)}," +              // 0
                $"  a.{nameof(Paciente)}," +           // 1
                $"  a.{nameof(_DateTime)}," +          // 2
                $"  a.{nameof(_Status)}," +            // 3
                $"  a.{nameof(Prioridade)}," +         // 4
                $"  a.{nameof(Fila)}," +               // 5
                $"  b.{nameof(Pessoas.Nome)}," +       // 6
                $"  b.{nameof(Pessoas.Nascimento)} " + // 7
                $"from {Name} as a " +
                $"inner join {Pessoas.p.TableName} as b on a.{nameof(Paciente)} = b.{nameof(Pessoas.CPF)} " +
                $"where {nameof(Fila)} = @fila and {nameof(_Status)} = @status " +
                $"order by {nameof(_DateTime)} desc " +
                $"limit 500;";
            c.Parameters.AddWithValue("@fila", ES.f[fila]);
            c.Parameters.AddWithValue("@status", Get(status));
            QueryRLoop("Erro ao obter pesquisa em lista de espera.", c, (r) => {
                lista.Add(new _ListaEspera()
                {
                    Senha               = r.GetInt32(0),
                    CPF                 = r.GetString(1),
                    Atualizacao         = r.GetMySqlDateTime(2).GetDateTime(),
                    Status              = r.GetString(3),
                    Prioridade          = r.GetBoolean(4),
                    Fila                = r.GetString(5),
                    Nome                = r.GetString(6),
                    Nascimento_Paciente = r.GetMySqlDateTime(7).GetDateTime()
                });
            });
            return(lista);
        }
예제 #12
0
 public void ExecutionEnd(PStatus status)
 {
     this.Status = status;
     this.End    = DateTime.Now.ToString("dd.MM.yyyy HH:mm:ss");
     OnPropertyChanged("End");
 }
예제 #13
0
 public static void Insert(string paciente, PStatus status, Fila encaminhado, bool prioridade)
 {
     Insert(paciente, DateTime.Now, status, encaminhado, prioridade);
 }
예제 #14
0
 public static void Update(int senha, string paciente, bool prioridade, DateTime dt, Fila fila, PStatus status)
 {
     NonQuery("Erro ao atualizar lista de espera.", (c) => {
         c.CommandText = $"update {Name} set " +
                         $"  {nameof(Paciente)} = @pac, " +
                         $"  {nameof(Prioridade)} = @prio, " +
                         $"  {nameof(_DateTime)} = @time, " +
                         $"  {nameof(Fila)} = @fila, " +
                         $"  {nameof(_Status)} = @status " +
                         $"where {nameof(Senha)} = @senha;";
         c.Parameters.AddWithValue("@pac", paciente);
         c.Parameters.AddWithValue("@prio", prioridade);
         c.Parameters.AddWithValue("@time", dt.ToString("yyyy-MM-dd HH:mm:ss"));
         c.Parameters.AddWithValue("@fila", ES.f[fila]);
         c.Parameters.AddWithValue("@status", Get(status));
         c.Parameters.AddWithValue("@senha", senha);
         return(c);
     });
 }
예제 #15
0
        public static void InsertOrUpdate(string paciente, bool prioridade, Fila fila, PStatus status)
        {
            var lista = Select_Paciente(paciente);

            if (lista == null)
            {
                Insert(paciente, status, fila, prioridade);
            }
            else
            {
                Update(paciente, prioridade, fila, status);
                Update_DT_Paciente(paciente);
            }
        }