Exemple #1
0
        public async Task <ResponseBase <Boolean> > InsertCustomer(CustomerModel data)
        {
            var response = new ResponseBase <Boolean>();
            var validate = ValidateMiddle.Result(data);

            if (validate.Status)
            {
                IRepository <OracleParameterCollection> repository = new OracleRepository();
                repository.Status.Code = Status.Ok;

                if (repository.Status.Code == Status.Ok)
                {
                    response.Data    = true;
                    response.Message = "Customer creado correctamente";
                }
                else
                {
                    response.Data    = false;
                    response.Message = repository.Status.Message;
                }
                response.Code = repository.Status.Code;
            }
            else
            {
                response.Code    = Status.InvalidData;
                response.Message = validate.Message;
            }

            return(await Task.Run(() => response));
        }
Exemple #2
0
        public async Task <ResponseBase <CustomerModel> > LoginCustomer(CustomerAuthModel data)
        {
            var response = new ResponseBase <CustomerModel>();
            var validate = ValidateMiddle.Result(data);

            if (validate.Status)
            {
                IRepository <OracleParameterCollection> repository = new OracleRepository();
                repository.Status.Code = Status.Ok;

                var user = new CustomerModel()
                {
                    CustId = -1
                };
                if (repository.Status.Code == Status.Ok)
                {
                    user.CustId   = 1;
                    response.Data = user;
                }
                else
                {
                    response.Message = repository.Status.Message;
                }
                response.Code = repository.Status.Code;
            }
            else
            {
                response.Code    = Status.InvalidData;
                response.Message = validate.Message;
            }

            return(await Task.Run(() => response));
        }
Exemple #3
0
        private ResponseBase <bool> InsertItem(ItemModel ObjItem)
        {
            var response = new ResponseBase <bool>();
            var validate = ValidateMiddle.Result(ObjItem);

            if (validate.Status)
            {
                IRepository <OracleParameterCollection> repository = new OracleRepository();
                repository.Status.Code = Status.Ok;

                if (repository.Status.Code == Status.Ok)
                {
                    response.Code = Status.Ok;
                    response.Data = true;
                }
                else
                {
                    response.Code    = repository.Status.Code;
                    response.Message = repository.Status.Message;
                    response.Data    = false;
                }
            }
            else
            {
                response.Code    = Status.InvalidData;
                response.Message = validate.Message;
            }

            return(response);
        }
Exemple #4
0
        public async Task <ResponseBase <CustomerModel> > LoginCustomer(CustomerAuthModel data)
        {
            var response = new ResponseBase <CustomerModel>();
            var validate = ValidateMiddle.Result(data);

            if (validate.Status)
            {
                IRepository <OracleParameterCollection> repository = new OracleRepository(connString, "C_DATASET");
                var user = new CustomerModel()
                {
                    CustId = -1
                };

                repository.Parameters.Add("P_USERNAME", OracleDbType.Varchar2, 200).Value   = data.Username;
                repository.Parameters.Add("P_CONTRASENA", OracleDbType.Varchar2, 200).Value = data.Password;
                repository.Parameters.Add("C_DATASET", OracleDbType.RefCursor).Direction    = ParameterDirection.Output;

                var result = repository.Get("PKG_B2C_CUSTOMER.B2C_CUSTOMER_SELECT_AUTENTICAR");
                if (repository.Status.Code == Status.Ok)
                {
                    foreach (var item in result)
                    {
                        user.CustId           = long.Parse(item["CUSTID"].ToString());
                        user.FName            = item["FNAME"].ToString();
                        user.LName            = item["LNAME"].ToString();
                        user.PhoneNumber      = item["PHONENUMBER"].ToString();
                        user.Email            = item["EMAIL"].ToString();
                        user.Password         = item["PASSWORD"].ToString();
                        user.CreditCardType   = item["CREDITCARDTYPE"].ToString();
                        user.CreditCardNumber = item["CREDITCARDNUMBER"].ToString();
                        user.Status           = item["STATUS"].ToString();
                        user.DocNumber        = item["DOCNUMBER"].ToString();
                        user.UserName         = item["USERNAME"].ToString();
                        user.TipoCliente      = item["TIPOCLIENTE"].ToString();
                    }

                    response.Data = user;
                }
                else
                {
                    response.Message = repository.Status.Message;
                }
                response.Code = repository.Status.Code;
            }
            else
            {
                response.Code    = Status.InvalidData;
                response.Message = validate.Message;
            }

            return(await Task.Run(() => response));
        }
Exemple #5
0
        public async Task <ResponseBase <Boolean> > UpdateCustomer(CustomerModel data)
        {
            data.Password = !string.IsNullOrWhiteSpace(data.Password) ? data.Password : "******";

            var response = new ResponseBase <Boolean>();
            var validate = ValidateMiddle.Result(data);

            if (validate.Status)
            {
                if (data.Password == "=====")
                {
                    data.Password = "";
                }
                IRepository <OracleParameterCollection> repository = new OracleRepository(connString, "P_CUSTID");

                repository.Parameters.Add("P_CUSTID", OracleDbType.Int64).Value                   = data.CustId;
                repository.Parameters.Add("P_FNAME", OracleDbType.Varchar2, 200).Value            = data.FName;
                repository.Parameters.Add("P_LNAME", OracleDbType.Varchar2, 200).Value            = data.LName;
                repository.Parameters.Add("P_PHONENUMBER", OracleDbType.Varchar2, 200).Value      = data.PhoneNumber;
                repository.Parameters.Add("P_EMAIL", OracleDbType.Varchar2, 200).Value            = data.Email;
                repository.Parameters.Add("P_PASSWORD", OracleDbType.Varchar2, 200).Value         = data.Password;
                repository.Parameters.Add("P_CREDITCARDTYPE", OracleDbType.Varchar2, 200).Value   = data.CreditCardType;
                repository.Parameters.Add("P_CREDITCARDNUMBER", OracleDbType.Varchar2, 200).Value = data.CreditCardNumber;
                repository.Parameters.Add("P_STATUS", OracleDbType.Varchar2, 200).Value           = data.Status;
                repository.Parameters.Add("P_DOCNUMBER", OracleDbType.Varchar2).Value             = data.DocNumber;
                repository.Parameters.Add("P_USERNAME", OracleDbType.Varchar2, 200).Value         = data.UserName;
                repository.Parameters.Add("P_TIPOCLIENTE", OracleDbType.Varchar2, 200).Value      = data.ClientType;
                repository.Parameters.Add("P_ROWCOUNT", OracleDbType.Int64).Direction             = ParameterDirection.Output;

                repository.SaveChanges("PKG_B2C_CUSTOMER.B2C_CUSTOMER_ACTUALIZAR");
                if (repository.Status.Code == Status.Ok)
                {
                    response.Data    = true;
                    response.Message = "Customer Actualizado correctamente";
                }
                else
                {
                    response.Data    = false;
                    response.Message = repository.Status.Message;
                }
                response.Code = repository.Status.Code;
            }
            else
            {
                response.Code    = Status.InvalidData;
                response.Message = validate.Message;
            }

            return(await Task.Run(() => response));
        }
Exemple #6
0
        public async Task <ResponseBase <long> > InsertOrder(OrderModel data)
        {
            var response = new ResponseBase <long>();
            var validate = ValidateMiddle.Result(data);

            if (validate.Status)
            {
                IRepository <OracleParameterCollection> repository = new OracleRepository(connString, "P_ORDID");

                repository.Parameters.Add("P_CUSTID", OracleDbType.Int64).Value        = data.CustId;
                repository.Parameters.Add("P_ORDENDATE", OracleDbType.Date, 200).Value = DateTime.Now;
                repository.Parameters.Add("P_PRICE", OracleDbType.Long, 200).Value     = data.Price;
                repository.Parameters.Add("P_IDESTADO", OracleDbType.Int16).Value      = 1;
                //repository.Parameters.Add("P_STATUS", OracleDbType.Varchar2).Value = data.Status;
                repository.Parameters.Add("P_COMMENTS", OracleDbType.Varchar2).Value = data.Comments;
                repository.Parameters.Add("P_ORDID", OracleDbType.Int64).Direction   = ParameterDirection.Output;

                repository.SaveChanges("PKG_B2C_ORDERS.B2C_ORDERS_INSERT");
                if (repository.Status.Code == Status.Ok)
                {
                    var OrdId = Int64.Parse(repository.Parameters["P_ORDID"].Value.ToString());
                    foreach (var item in data.LItems)
                    {
                        item.OrdId    = OrdId;
                        item.IdEstado = 1;
                        InsertItem(item);
                    }
                    ;

                    response.Data    = OrdId;
                    response.Message = "Orden insertada correctamente";
                }
                else
                {
                    response.Data    = -1;
                    response.Message = repository.Status.Message;
                }
                response.Code = repository.Status.Code;
            }
            else
            {
                response.Code    = Status.InvalidData;
                response.Message = validate.Message;
            }

            return(await Task.Run(() => response));
        }
Exemple #7
0
        private ResponseBase <Boolean> InsertItem(ItemModel ObjItem)
        {
            var response = new ResponseBase <bool>();
            var validate = ValidateMiddle.Result(ObjItem);

            if (validate.Status)
            {
                IRepository <OracleParameterCollection> repository = new OracleRepository(connString, "P_ITEMID");

                repository.Parameters.Add("P_ORDID", OracleDbType.Int64).Value          = ObjItem.OrdId;
                repository.Parameters.Add("P_PRODID", OracleDbType.Int64).Value         = ObjItem.ProdId;
                repository.Parameters.Add("P_PRODUCTNAME", OracleDbType.Varchar2).Value = ObjItem.ProductName;
                repository.Parameters.Add("P_PARTNUM", OracleDbType.Varchar2).Value     = ObjItem.PartNum;
                repository.Parameters.Add("P_PRICE", OracleDbType.Long).Value           = ObjItem.Price;
                repository.Parameters.Add("P_QUANTITY", OracleDbType.Int16).Value       = ObjItem.Quantity;
                repository.Parameters.Add("P_IDESTADO", OracleDbType.Int16).Value       = ObjItem.IdEstado;
                repository.Parameters.Add("P_ITEMID", OracleDbType.Int64).Direction     = ParameterDirection.Output;

                repository.SaveChanges("PKG_B2C_ORDERS.B2C_ITEMS_INSERT");
                if (repository.Status.Code == Status.Ok)
                {
                    response.Code = Status.Ok;
                    response.Data = true;
                }
                else
                {
                    response.Code    = repository.Status.Code;
                    response.Message = repository.Status.Message;
                    response.Data    = false;
                }
            }
            else
            {
                response.Code    = Status.InvalidData;
                response.Message = validate.Message;
            }

            return(response);
        }
Exemple #8
0
        public async Task <ResponseBase <bool> > InsertOrder(OrderModel data)
        {
            var response = new ResponseBase <bool>();
            var validate = ValidateMiddle.Result(data);

            if (validate.Status)
            {
                IRepository <OracleParameterCollection> repository = new OracleRepository();
                repository.Status.Code = Status.Ok;

                if (repository.Status.Code == Status.Ok)
                {
                    var OrdId = 1;
                    foreach (var item in data.LItems)
                    {
                        item.OrdId    = OrdId;
                        item.IdEstado = 1;
                        InsertItem(item);
                    }
                    ;

                    response.Data    = true;
                    response.Message = "Orden insertada correctamente";
                }
                else
                {
                    response.Data    = false;
                    response.Message = repository.Status.Message;
                }
                response.Code = repository.Status.Code;
            }
            else
            {
                response.Code    = Status.InvalidData;
                response.Message = validate.Message;
            }

            return(await Task.Run(() => response));
        }