示例#1
0
        public IHttpActionResult getSingleTransaction(long id)
        {
            DataTable transaction = new DataTable();

            using (var context = new DhoniEnterprisesEntities())
            {
                //transaction = DataTableSerializer.LINQToDataTable(context.uspGetTransaction(id));
                var basic    = context.uspGetTransaction(id);
                var comm     = basic.GetNextResult <DataTable>();
                var contract = basic.GetNextResult <DataTable>();
                var sec      = basic.GetNextResult <DataTable>();
                var ship     = basic.GetNextResult <DataTable>();
                var status   = basic.GetNextResult <DataTable>();
                var notes    = basic.GetNextResult <DataTable>();
                return(Ok(new
                {
                    success = true,
                    basic = DataTableSerializer.LINQToDataTable(basic),
                    comm = DataTableSerializer.LINQToDataTable(comm),
                    contract = DataTableSerializer.LINQToDataTable(contract),
                    sec = DataTableSerializer.LINQToDataTable(sec),
                    ship = DataTableSerializer.LINQToDataTable(ship),
                    status = DataTableSerializer.LINQToDataTable(status),
                    notes = DataTableSerializer.LINQToDataTable(notes)
                }));
            }
        }
        public IHttpActionResult UpdateBusinessPartner([FromBody] JObject businessPartner)
        {
            using (var context = new DhoniEnterprisesEntities())
            {
                int userID = BasicAuthHttpModule.getCurrentUserId();
                if (userID != -1)
                {
                    var       generalDetails = businessPartner["businessPartner"];
                    var       bpId           = (long?)generalDetails["bp_ID"];
                    DataTable dt             = new DataTable();
                    context.uspUpdateBusinessPartner(
                        bpId,
                        Convert.ToBoolean(generalDetails["bp_isSeller"]),
                        Convert.ToBoolean(generalDetails["bp_isBroker"]),
                        Convert.ToBoolean(generalDetails["bp_isShipper"]),
                        Convert.ToBoolean(generalDetails["bp_isBuyer"]),
                        Convert.ToBoolean(generalDetails["bp_onDoniContract"]), userID,
                        Convert.ToInt32(generalDetails["bp_credibilityIndex"]),
                        generalDetails["bp_Name"].ToString(), generalDetails["bp_website"].ToString(),
                        generalDetails["bp_address"].ToString(), generalDetails["bp_country"].ToString());

                    return(Ok(new { success = true, message = "Business Partner Updated!" }));
                }
                else
                {
                    return(Ok(new { success = false, message = "No User Logged In!" }));
                }
            }
        }
        public static bool AuthenticateUser(string credentials)
        {
            var encoding = Encoding.GetEncoding("iso-8859-1");

            credentials = encoding.GetString(Convert.FromBase64String(credentials));
            var credentialsArray = credentials.Split(':');
            var email            = credentialsArray[0];
            var password         = credentialsArray[1];


            /* REPLACE THIS WITH REAL AUTHENTICATION
             * ----------------------------------------------*/
            using (var dbContext = new DhoniEnterprisesEntities())
            {
                var loggedUser = (from user in dbContext.AppUsers where user.UserEmail.Equals(email) select user).FirstOrDefault();
                if (loggedUser == null)
                {
                    return(false);
                }

                string hashedPassword = Security.HashSHA1(password + loggedUser.UserGuid);
                if (hashedPassword != loggedUser.UserPass)
                {
                    return(false);
                }
            }

            var identity = new GenericIdentity(email);

            SetPrincipal(new GenericPrincipal(identity, null));

            return(true);
        }
        public IHttpActionResult getBPDropDown([FromBody] JObject bpType)
        {
            var       BPType = Convert.ToString(bpType["type"]);
            DataTable data   = new DataTable();

            using (var context = new DhoniEnterprisesEntities())
            {
                if (BPType == "Buyer")
                {
                    data = DataTableSerializer.LINQToDataTable(context.uspGetDropDownBuyer());
                }
                else if (BPType == "Seller")
                {
                    data = DataTableSerializer.LINQToDataTable(context.uspGetDropDownSeller());
                }
                else if (BPType == "Shipper")
                {
                    data = DataTableSerializer.LINQToDataTable(context.uspGetDropDownShipper());
                }
                else if (BPType == "Broker")
                {
                    data = DataTableSerializer.LINQToDataTable(context.uspGetDropDownBroker());
                }

                return(Ok(new
                {
                    success = true,
                    data = data,
                    type = BPType
                }));
            }
        }
        public IHttpActionResult GetBusinessPartnerFull(long id)
        {
            DataTable general        = new DataTable();
            DataTable bankInfo       = new DataTable();
            DataTable contactNumbers = new DataTable();
            DataTable contactPerson  = new DataTable();
            DataTable emails         = new DataTable();
            DataTable products       = new DataTable();

            using (var context = new DhoniEnterprisesEntities())
            {
                general        = DataTableSerializer.LINQToDataTable(context.uspGetBPGeneral(id));
                bankInfo       = DataTableSerializer.LINQToDataTable(context.uspGetBPBank(id));
                contactNumbers = DataTableSerializer.LINQToDataTable(context.uspGetBPContactNumber(id));
                contactPerson  = DataTableSerializer.LINQToDataTable(context.uspGetBPContact(id));
                emails         = DataTableSerializer.LINQToDataTable(context.uspGetBPEmails(id));
                products       = DataTableSerializer.LINQToDataTable(context.uspGetBPProducts(id));
                return(Ok(new
                {
                    success = true,
                    gen = general,
                    bank = bankInfo,
                    contNum = contactNumbers,
                    contPers = contactPerson,
                    emails = emails,
                    products = products
                }));
            }
        }
示例#6
0
        public IHttpActionResult changePassword([FromBody] JObject passDetails)
        {
            using (var context = new DhoniEnterprisesEntities())
            {
                var passwordDetails = passDetails["passwordDetails"];
                var oldPass         = passwordDetails["oldPassword"];
                var newPass         = passwordDetails["newPassword"];
                var confirmPass     = passwordDetails["confirmPassword"];
                if (Convert.ToString(newPass) != Convert.ToString(confirmPass))
                {
                    return(Ok(new { success = false, message = "Passwords do not match" }));
                }


                int userID = BasicAuthHttpModule.getCurrentUserId();

                var    userDetails    = (from user in context.AppUsers where user.UserID.Equals(userID) select user).FirstOrDefault();
                string hashedPassword = Security.Security.HashSHA1(Convert.ToString(oldPass) + Convert.ToString(userDetails.UserGuid));
                if (hashedPassword != userDetails.UserPass)
                {
                    return(Ok(new { success = false, message = "Passwords is not correct!" }));
                }
                else
                {
                    Guid   userGuid      = System.Guid.NewGuid();
                    string newHashedPass = Security.Security.HashSHA1(Convert.ToString(newPass) + userGuid);
                    context.AppUserChangePasword(userID, newHashedPass, userGuid);
                    return(Ok(new { success = true, message = "Your Password has been Changed!" }));
                }
            }
        }
示例#7
0
        public IHttpActionResult PostaddNewTransactionBasic([FromBody] JObject transaction)
        {
            var trade = transaction["newTransaction"];

            using (var context = new DhoniEnterprisesEntities())
            {
                var id = context.uspAddTransactionBasic(
                    Convert.ToDateTime(trade["tr_date"]),
                    Convert.ToInt32(trade["tr_bpBuyerID"]),
                    Convert.ToInt32(trade["tr_bpSellerID"]),
                    Convert.ToInt32(trade["tr_productID"]),
                    Convert.ToString(trade["tr_origin"]),
                    Convert.ToInt32(trade["tr_quantity"]),
                    Convert.ToInt32(trade["tr_price"]),
                    Convert.ToString(trade["tr_packing"]),
                    Convert.ToDateTime(trade["tr_shipment_start"]),
                    Convert.ToDateTime(trade["tr_shipment_end"]),
                    Convert.ToString(trade["tr_fileID"]),
                    Convert.ToString(trade["tr_contractID"]),
                    Convert.ToString(trade["tr_other_info"]),
                    BasicAuthHttpModule.getCurrentUserId(),
                    null,
                    null,
                    null
                    );
                return(Ok(new { success = true, message = "Transaction added successfully!", transactionId = id.FirstOrDefault() }));
            }
        }
        public IHttpActionResult addBusinessPartnerContact([FromBody] JObject contact)
        {
            var cn = contact["contact"];

            if (Convert.ToString(cn["contactType"]) == "")
            {
                return(Ok(new { success = false, message = "No contact type entered!" }));
            }

            if (Convert.ToString(cn["contactNumber"]) == "")
            {
                return(Ok(new { success = false, message = "No Contact Number entered!" }));
            }



            using (var context = new DhoniEnterprisesEntities())
            {
                int userID = BasicAuthHttpModule.getCurrentUserId();
                if (userID != -1)
                {
                    var res = context.uspAddBusinessPartnerContactNumber(Convert.ToInt64(cn["bp_ID"]), Convert.ToString(cn["contactType"]), Convert.ToString(cn["contactNumber"]), userID).FirstOrDefault();
                    return(Ok(new { success = true, message = "Business Partner contact number added!", conNumID = res }));
                }
                else
                {
                    return(Ok(new { success = false, message = "No User Logged In!" }));
                }
            }
        }
示例#9
0
        public IHttpActionResult uploadTransactionDocument(string fileName, long transactionId)
        {
            if (HttpContext.Current.Request.Files.AllKeys.Any())
            {
                var    httpPostedFile = HttpContext.Current.Request.Files[0];
                var    userID         = BasicAuthHttpModule.getCurrentUserId();
                byte[] fileData       = null;
                using (var binaryReader = new BinaryReader(httpPostedFile.InputStream))
                {
                    fileData = binaryReader.ReadBytes(httpPostedFile.ContentLength);
                }



                if (httpPostedFile != null)
                {
                    using (var context = new DhoniEnterprisesEntities())
                    {
                        var fileId = context.uspTransactionFileAdd(transactionId, fileData, Convert.ToString(httpPostedFile.ContentType), fileName, userID);
                        return(Ok(new { success = true, message = "Transaction file added successfully!", fileId = fileId.FirstOrDefault() }));
                    }
                }
            }

            return(Ok(new { success = false, message = "File was not uploaded due to some error" }));
        }
        public IHttpActionResult addBusinessPartnerContactPerson([FromBody] JObject contactPerson)
        {
            var cp = contactPerson["contactPerson"];

            using (var context = new DhoniEnterprisesEntities())
            {
                int userID = BasicAuthHttpModule.getCurrentUserId();
                if (userID != -1)
                {
                    int alreadyPrimary = Convert.ToInt32(context.uspCheckBPPrimaryContactExist(Convert.ToInt32(cp["bp_ID"])).FirstOrDefault());
                    if (alreadyPrimary <= 0 || !(Convert.ToBoolean(cp["bp_Cont_IsPrimary"])))
                    {
                        DataTable dt  = new DataTable();
                        var       res = context.uspAddBusinessPartnerContact(Convert.ToInt32(cp["bp_ID"]),
                                                                             Convert.ToBoolean(cp["bp_Cont_IsPrimary"]), cp["bp_Cont_fullName"].ToString(),
                                                                             cp["bp_Cont_Designation"].ToString(), cp["bp_Cont_Email"].ToString(),
                                                                             cp["bp_Cont_PrimaryNumber"].ToString(), cp["bp_Cont_SecondaryNumber"].ToString(), userID).FirstOrDefault();
                        return(Ok(new { success = true, message = "Business Partner Contact Added!", conPerId = res }));
                    }
                    else
                    {
                        return(Ok(new { success = false, message = "This Business Partner already has one primary contact!" }));
                    }
                }
                else
                {
                    return(Ok(new { success = false, message = "No User Logged In!" }));
                }
            }
        }
示例#11
0
 public IHttpActionResult DeleteProduct(int id)
 {
     using (var context = new DhoniEnterprisesEntities())
     {
         context.uspDeleteProduct(id);
         return(Ok(new { success = true, message = "Product Successfully deleted!" }));
     }
 }
 public IHttpActionResult DeleteBusinessPartner(long id)
 {
     using (var context = new DhoniEnterprisesEntities())
     {
         context.uspDeleteBusinessPartner(id);
         return(Ok(new { success = true, message = "Business Partner Successfully deleted!" }));
     }
 }
示例#13
0
 public IHttpActionResult getUserDetails(string email)
 {
     using (var context = new DhoniEnterprisesEntities())
     {
         var curUser = DataTableSerializer.LINQToDataTable(context.uspGetAppUserByEmail(email));
         return(Ok(new { success = true, user = curUser }));
     }
 }
示例#14
0
 public IHttpActionResult GetAppUsers()
 {
     using (var context = new DhoniEnterprisesEntities())
     {
         var allUsers = DataTableSerializer.LINQToDataTable(context.getAllUsers());
         return(Ok(new { success = true, user = allUsers }));
     }
 }
示例#15
0
 public IHttpActionResult GetProductsPricesByDate([FromBody] JObject date)
 {
     using (var context = new DhoniEnterprisesEntities())
     {
         var productPrices = context.uspGetProductPriceByDate(Convert.ToDateTime(date["date"]));
         return(Ok(new { success = true, productPrices = DataTableSerializer.LINQToDataTable(productPrices) }));
     }
 }
示例#16
0
 public IHttpActionResult GetProductsPricesByDateForDashboard([FromBody] JObject date)
 {
     using (var context = new DhoniEnterprisesEntities())
     {
         int userId        = BasicAuthHttpModule.getCurrentUserId();
         var productPrices = context.uspGetProductPriceByDateForDashBoard(Convert.ToDateTime(date["date"]), userId);
         return(Ok(new { success = true, productPrices = DataTableSerializer.LINQToDataTable(productPrices) }));
     }
 }
示例#17
0
 public IHttpActionResult ActivateUser([FromBody] JObject userDetails)
 {
     using (var context = new DhoniEnterprisesEntities())
     {
         var userId = Convert.ToInt32(userDetails["userId"]);
         context.activateUser(userId);
         return(Ok(new { success = true, message = "User has been activated." }));
     }
 }
示例#18
0
 public IHttpActionResult GetProductById(int id)
 {
     using (var context = new DhoniEnterprisesEntities())
     {
         var result = (context.uspGetSingleProduct(id).AsEnumerable()).FirstOrDefault();
         de_server.Models.Product prod = new de_server.Models.Product(result.ProductId, result.ProductName, result.origin, result.quality, result.purity, result.moisture, result.splits, result.weaveled, result.damaged, result.foreignMatter, result.greenDamaged, result.otherColor, result.wrinkled);
         return(Ok(new { success = true, product = prod }));
     }
 }
 public IHttpActionResult deleteBusinessPartnerProduct([FromBody] JObject Product)
 {
     using (var context = new DhoniEnterprisesEntities())
     {
         var bpProd = Product["bpProduct"];
         var bpId   = Convert.ToInt64(bpProd["bpId"]);
         var pId    = Convert.ToInt32(bpProd["product"]);
         context.uspDeleteBusinessPartnerProducts(bpId, pId);
         return(Ok(new { success = true, message = "Business Partner product successfully deleted!" }));
     }
 }
示例#20
0
 public IHttpActionResult getTransactionNotesList(long transactionId)
 {
     using (var context = new DhoniEnterprisesEntities())
     {
         var Notes = DataTableSerializer.LINQToDataTable(context.uspGetTransactionNotes(transactionId));
         return(Ok(new
         {
             success = true,
             notes = Notes
         }));
     }
 }
示例#21
0
 public IHttpActionResult GetAllOrigin()
 {
     using (var context = new DhoniEnterprisesEntities())
     {
         var origins = DataTableSerializer.LINQToDataTable(context.uspGetOriginList());
         return(Ok(new
         {
             success = true,
             origins = origins
         }));
     }
 }
示例#22
0
 public IHttpActionResult GetTransactionByParameter(string parameter, string textInput, DateTime?dateInput)
 {
     using (var context = new DhoniEnterprisesEntities())
     {
         var transactions = DataTableSerializer.LINQToDataTable(context.uspGetTransactionByParameter(parameter, textInput, (DateTime?)(dateInput)));
         return(Ok(new
         {
             success = true,
             transactions = transactions
         }));
     }
 }
示例#23
0
 public IHttpActionResult getTransactionFiles(long transactionId)
 {
     using (var context = new DhoniEnterprisesEntities())
     {
         var files = context.uspTransactionFileGetAll(transactionId);
         return(Ok(new
         {
             success = true,
             files = DataTableSerializer.LINQToDataTable(files)
         }));
     }
 }
示例#24
0
 public IHttpActionResult deleteTransactionFile(long fileId)
 {
     using (var context = new DhoniEnterprisesEntities())
     {
         context.uspTransactionFileDelete(fileId);
         return(Ok(new
         {
             success = true,
             fileId = fileId,
         }));
     }
 }
示例#25
0
 public IHttpActionResult GetTransactionStatus(long transactionId)
 {
     using (var context = new DhoniEnterprisesEntities())
     {
         var status = DataTableSerializer.LINQToDataTable(context.uspGetTransactionStatus(transactionId));
         return(Ok(new
         {
             success = true,
             status = status
         }));
     }
 }
示例#26
0
 public IHttpActionResult ProductPriceByDateRange(DateTime startDate, DateTime endDate)
 {
     using (var context = new DhoniEnterprisesEntities())
     {
         var productsPrices = DataTableSerializer.LINQToDataTable(context.uspProductListByDateRange(startDate, endDate));
         return(Ok(new
         {
             success = true,
             productsPrices = productsPrices
         }));
     }
 }
示例#27
0
 public IHttpActionResult GetDashboardProducts()
 {
     using (var context = new DhoniEnterprisesEntities())
     {
         int userId            = BasicAuthHttpModule.getCurrentUserId();
         var dashboardProducts = DataTableSerializer.LINQToDataTable(context.uspGetDashboardProducts(userId));
         return(Ok(new
         {
             success = true,
             dashboardProducts = dashboardProducts
         }));
     }
 }
示例#28
0
 public IHttpActionResult GetTransactionTableOnDateRange(DateTime startDate, DateTime endDate)
 {
     using (var context = new DhoniEnterprisesEntities())
     {
         DataTable transactions = new DataTable();
         transactions = DataTableSerializer.LINQToDataTable(context.uspTransactionListByDateRange(startDate, endDate));
         return(Ok(new
         {
             success = true,
             transactions = transactions
         }));
     }
 }
示例#29
0
 public IHttpActionResult DeActivateUser([FromBody] JObject userDetails)
 {
     using (var context = new DhoniEnterprisesEntities())
     {
         var userId = Convert.ToInt32(userDetails["userId"]);
         if (userId == 1)
         {
             return(Ok(new { success = false, message = "This user is a master admin and can not be deactivated." }));
         }
         context.deactivateUser(userId);
         return(Ok(new { success = true, message = "User has been deactivated." }));
     }
 }
示例#30
0
 public IHttpActionResult GetShipmentExpirationReport(DateTime startDate, DateTime endDate)
 {
     using (var context = new DhoniEnterprisesEntities())
     {
         DataTable report = new DataTable();
         report = DataTableSerializer.LINQToDataTable(context.uspGetShipmentExpirationByDateRange(startDate, endDate));
         return(Ok(new
         {
             success = true,
             report = report
         }));
     }
 }