Пример #1
0
        public ActionResult Register()
        {
            SLW_DatabaseInfo     db        = new SLW_DatabaseInfo();
            List <ClientCompany> companies = db.GetClientDetails("");

            return(View(companies));
        }
Пример #2
0
        public HttpResponseMessage ForTypeApprovals([FromBody] Message message)
        {
            SLW_DatabaseInfo db = new SLW_DatabaseInfo();

            db.NotifySpecific(message.message, message.target_user, Constants.notifyTypeApproval);
            return(Request.CreateResponse(HttpStatusCode.OK, ""));
        }
Пример #3
0
        public HttpResponseMessage NewOngoingTask([FromBody] dynamic data)
        {
            SLW_DatabaseInfo db     = new SLW_DatabaseInfo();
            KeyDetail        detail = db.GetKeyDetail((string)data.access_key);

            if (detail.data_present)
            {
                UnassignedTask unassigned = db.GetSingleUnassignedTask((string)data.application_id);
                db.DeleteUnassignedTask((string)data.application_id);

                UserDetails userDetailsAdmin = db.GetUserDetails(detail.username);
                db.NewOngoingTask((string)data.application_id, (string)data.assigned_to, unassigned.username, (string)data.status, unassigned.created_date_raw, userDetailsAdmin.fullname, userDetailsAdmin.username);
                db.UpdateApplicationStatus((string)data.application_id, Commons.Constants.PENDING_TYPE, DateTime.Now);
                OngoingTask ongoing     = db.GetSingleOngoingTask((string)data.application_id);
                UserDetails userDetails = db.GetUserDetails(ongoing.assigned_to);
                ongoing.assigned_to = userDetails.fullname;
                db.SaveActivity(new UserActivity(detail.username, Commons.Constants.ACTIVITY_NEW_ONGOING, (string)data.application_id, (string)data.assigned_to, 1));
                Form form = db.GetApplication((string)data.application_id);

                Email.Send(userDetails.email, "New Type Approval Application", "Type approval application " + form.application_id + " for Device with Model number " + form.product_identification + " from " + ongoing.submitted_by + " is assigned to you for processing.");
                return(Request.CreateResponse(HttpStatusCode.OK, ongoing));
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.Forbidden, "invalid key"));
            }
        }
Пример #4
0
        public HttpResponseMessage TypeApprovalDetails([FromUri] string Dealer = "", [FromUri] string Model = "", [FromUri] string make = "", [FromUri] string remarks = "")
        {
            SLW_DatabaseInfo db = new SLW_DatabaseInfo();

            if (Dealer == null)
            {
                Dealer = "";
            }

            if (Model == null)
            {
                Model = "";
            }

            if (make == null)
            {
                make = "";
            }

            if (remarks == null)
            {
                remarks = "";
            }

            List <TypeApprovalDetails> data = db.GetTypeApprovalInfo(Dealer, Model, make, remarks);

            return(Request.CreateResponse(HttpStatusCode.OK, data));
        }
Пример #5
0
        public HttpResponseMessage ReassignTask([FromBody] dynamic data)
        {
            SLW_DatabaseInfo db     = new SLW_DatabaseInfo();
            KeyDetail        detail = db.GetKeyDetail((string)data.access_key);

            if (detail.data_present)
            {
                OngoingTask prev_ongoing = db.GetSingleOngoingTask((string)data.application_id);
                db.ReassignTask((string)data.application_id, (string)data.assign_to);
                OngoingTask ongoing         = db.GetSingleOngoingTask((string)data.application_id);
                UserDetails prevUserDetails = db.GetUserDetails(prev_ongoing.assigned_to);
                UserDetails userDetails     = db.GetUserDetails(ongoing.assigned_to);

                Form form = db.GetApplication((string)data.application_id);
                ongoing.assigned_to = userDetails.fullname;
                db.SaveActivity(new UserActivity(detail.username, Commons.Constants.ACTIVITY_REASSIGN_TASK, (string)data.application_id, (string)data.assign_to, 1));

                Email.Send(userDetails.email, "New Type Approval Application", "Type approval application " + form.application_id + " for Device with Model number " + form.product_identification + " from " + ongoing.submitted_by + " is assigned to you for processing.");
                Email.Send(prevUserDetails.email, "Assigned Type Approval Application", "Application " + form.application_id + " that had been assigned to you has been reassigned.");

                return(Request.CreateResponse(HttpStatusCode.OK, ongoing));
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.Unauthorized, "invalid key"));
            }
        }
Пример #6
0
        public HttpResponseMessage GetSmaCertificate([FromBody] dynamic data)
        {
            SLW_DatabaseInfo db          = new SLW_DatabaseInfo();
            Certificate      certificate = db.GetSMACertificate((string)data.approval_id);

            return(Request.CreateResponse(HttpStatusCode.OK, certificate));
        }
Пример #7
0
        public HttpResponseMessage ResetPassword([FromBody] dynamic data)
        {
            SLW_DatabaseInfo db = new SLW_DatabaseInfo();

            Utilities.PasswordManager manager = new Utilities.PasswordManager();
            string password = "";

            if ((string)data.new_password == "" || (string)data.new_password == null)
            {
                password = Utilities.Generator.GeneratePassword();
            }
            else
            {
                password = (string)data.new_password;
            }

            manager.ResetPassword((string)data.username, password);
            UserDetails userDetails = db.GetUserDetails((string)data.username);

            if (userDetails == null)
            {
                return(Request.CreateResponse(HttpStatusCode.Unauthorized, "user not found"));
            }
            else
            {
                Utilities.Email.Send(userDetails.email, "Password reset", "Your password has been reset. New password: "******"");
                return(Request.CreateResponse(HttpStatusCode.OK, "password reset"));
            }
        }
Пример #8
0
        public HttpResponseMessage Delete([FromBody] Delete delete)
        {
            SLW_DatabaseInfo db         = new SLW_DatabaseInfo();
            KeyDetail        key_detail = db.GetKeyDetail(delete.key);

            if (IsKeyValid(key_detail))
            {
                int user_type_requirement     = 9;
                Utilities.PasswordManager mgr = new Utilities.PasswordManager();

                if (db.GetUserType(delete.key) == user_type_requirement)
                {
                    if (db.CheckUserExist(delete.user))
                    {
                        db.DeleteUser(delete.user);
                        db.SaveActivity(new UserActivity(delete.user, Commons.Constants.ACTIVITY_DELETE_ACCOUNT, delete.user, "", 0));
                        return(Request.CreateResponse(HttpStatusCode.OK, "user_deleted"));
                    }
                    else
                    {
                        return(Request.CreateResponse(HttpStatusCode.Unauthorized, "invalid_user"));
                    }
                }
                else
                {
                    return(Request.CreateResponse(HttpStatusCode.Unauthorized, "unauthorized"));
                }
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.Unauthorized, "access_key_invalid"));
            }
        }
Пример #9
0
        public HttpResponseMessage CreateApplication([FromBody] Form data)
        {
            if (data.application_id != null && data.application_id != "")
            {
                SLW_DatabaseInfo db = new SLW_DatabaseInfo();
                data.category = Commons.Constants.TYPE_APPROVAL;
                data.status   = Commons.Constants.INCOMPLETE_TYPE;
                db.SaveApplication(data);

                db.SaveActivity(new UserActivity(data.username, Commons.Constants.ACTIVITY_UPDATE, data.application_id, "", 1));
                return(Request.CreateResponse(HttpStatusCode.OK, "updated"));
            }
            else
            {
                string           application_id = Generator.application_id();
                SLW_DatabaseInfo db             = new SLW_DatabaseInfo();

                data.application_id = application_id;
                data.category       = Commons.Constants.TYPE_APPROVAL;
                data.status         = Commons.Constants.INCOMPLETE_TYPE;
                db.SaveApplication(data);

                db.SaveActivity(new UserActivity(data.username, Commons.Constants.ACTIVITY_NEW_APPLICATION_TYPE, data.application_id, "", 1));
                return(Request.CreateResponse(HttpStatusCode.OK, application_id));
            }
        }
Пример #10
0
        public static void Record(Models.UserActivity userActivity)
        {
            switch (userActivity.type)
            {
            case Constants.ACTIVITY_ACCOUNT_TYPE:
                userActivity.priority = 0;
                break;

            case Constants.ACTIVITY_APPROVAL_TYPE:
                userActivity.priority = 1;
                break;

            case Constants.ACTIVITY_CANCELLATION_TYPE:
                userActivity.priority = 1;
                break;

            case Constants.ACTIVITY_NEW_APPLICATION_TYPE:
                userActivity.priority = 1;
                break;

            case Constants.ACTIVITY_SUBMISSION_TYPE:
                userActivity.priority = 1;
                break;

            case Constants.ACTIVITY_UPDATE:
                userActivity.priority = 1;
                break;
            }

            SLW_DatabaseInfo db = new SLW_DatabaseInfo();

            db.SaveActivity(userActivity);
        }
        public HttpResponseMessage Update([FromBody] Form form)
        {
            SLW_DatabaseInfo db        = new SLW_DatabaseInfo();
            KeyDetail        keyDetail = db.GetKeyDetail(form.access_key);

            //db.SaveApplication(form);
            return(Request.CreateResponse(HttpStatusCode.OK, "updated"));;
        }
Пример #12
0
        public HttpResponseMessage RegisterCompanyUser([FromBody] CompanyUser user)
        {
            if (user != null)
            {
                //can be used to call client functions
                var connection = GlobalHost.ConnectionManager.GetHubContext <CrossDomainHub>();

                Utilities.PasswordManager mgr = new Utilities.PasswordManager();
                SLW_DatabaseInfo          db  = new SLW_DatabaseInfo();
                bool valid_user_type          = false;

                List <UserType> user_types = db.GetUserTypes();
                for (int i = 0; i < user_types.Count; i++)
                {
                    if (user_types[i].user_type == user.user_role)
                    {
                        valid_user_type = true;
                        break;
                    }
                }

                if (valid_user_type)
                {
                    if (!db.CheckUserExist(user.username))
                    {
                        string source = "";
                        if (db.CheckLocalClientExist(user.clientId))
                        {
                            source = Commons.Constants.LOCAL_SOURCE;
                        }
                        else
                        {
                            source = Commons.Constants.ASMS_SOURCE;
                        }

                        string hash = mgr.GetHash(user.password);
                        user.user_type = "company";
                        int id = db.NewCompanyUser(user.username, user.first_name, user.last_name, DateTime.Now, user.user_role, user.user_type, DateTime.Now, (DateTime)System.Data.SqlTypes.SqlDateTime.MinValue, hash, false, user.email, user.company, user.clientId, source);
                        db.SaveActivity(new UserActivity(user.username, Commons.Constants.ACTIVITY_CREATE_ACCOUNT, "", "", 0));

                        //Utilities.Email.Send(user.email, "New Account", "Your account was created sucessfully. Username: "******"");
                        return(Request.CreateResponse(HttpStatusCode.OK, id));
                    }
                    else
                    {
                        return(Request.CreateResponse(HttpStatusCode.Unauthorized, "user exists"));
                    }
                }
                else
                {
                    return(Request.CreateResponse(HttpStatusCode.Unauthorized, "invalid user type"));
                }
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest, "bad request"));
            }
        }
Пример #13
0
        public HttpResponseMessage AllCategories([FromUri] string q)
        {
            if (q == null)
            {
                q = "";
            }

            SLW_DatabaseInfo db = new SLW_DatabaseInfo();

            return(Request.CreateResponse(HttpStatusCode.OK, db.GetMultiSearchApplicationResults(q)));
        }
Пример #14
0
        public HttpResponseMessage ClientCompanyList([FromUri] string q)
        {
            SLW_DatabaseInfo     db = new SLW_DatabaseInfo();
            List <ClientCompany> clientCompanies      = db.GetClientDetails(q);
            List <ClientCompany> localClientCompanies = db.GetLocalClientCompanies(q);

            clientCompanies.AddRange(localClientCompanies);

            List <ClientCompany> combinedCompanies = clientCompanies.OrderBy(i => i.name).ToList();

            return(Request.CreateResponse(HttpStatusCode.OK, combinedCompanies));
        }
Пример #15
0
        public HttpResponseMessage Remarks([FromUri] string q)
        {
            if (q == null)
            {
                q = "";
            }

            SLW_DatabaseInfo db      = new SLW_DatabaseInfo();
            List <string>    remarks = db.GetRemarks(q);

            return(Request.CreateResponse(HttpStatusCode.OK, remarks));
        }
        public HttpResponseMessage New([FromBody] Form form)
        {
            SLW_DatabaseInfo db        = new SLW_DatabaseInfo();
            KeyDetail        keyDetail = db.GetKeyDetail(form.access_key);

            string applicationId = string.Format("{0}_{1:N}", "ta", Guid.NewGuid());

            form.application_id = applicationId;

            //db.SaveApplication(form);
            return(Request.CreateResponse(HttpStatusCode.OK, "saved: " + applicationId));;
        }
Пример #17
0
        public HttpResponseMessage Make([FromUri] string q)
        {
            if (q == null)
            {
                q = "";
            }

            SLW_DatabaseInfo db   = new SLW_DatabaseInfo();
            List <string>    make = db.GetMake(q);

            return(Request.CreateResponse(HttpStatusCode.OK, make));
        }
Пример #18
0
        public HttpResponseMessage Manufacturers([FromUri] string q)
        {
            if (q == null)
            {
                q = "";
            }

            SLW_DatabaseInfo db   = new SLW_DatabaseInfo();
            List <string>    data = db.GetManufacturersByName(q);

            return(Request.CreateResponse(HttpStatusCode.OK, data));
        }
Пример #19
0
        public HttpResponseMessage GetApplicationIDsForClient([FromBody] dynamic data)
        {
            SLW_DatabaseInfo db     = new SLW_DatabaseInfo();
            KeyDetail        detail = db.GetKeyDetail((string)data.access_key);

            if (detail.data_present)
            {
                return(Request.CreateResponse(HttpStatusCode.OK, db.GetApplicationIDsForUser((string)data.username)));
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.Unauthorized, "invalid key"));
            }
        }
Пример #20
0
        public HttpResponseMessage NewCompany([FromBody] ClientCompany data)
        {
            SLW_DatabaseInfo db = new SLW_DatabaseInfo();

            try
            {
                int client_id = db.NewLocalClientCompany(data);
                return(Request.CreateResponse(HttpStatusCode.OK, client_id));
            }
            catch (Exception e)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, "something went wrong"));
            }
        }
Пример #21
0
        public HttpResponseMessage NewGrantee([FromBody] Grantee data)
        {
            SLW_DatabaseInfo db = new SLW_DatabaseInfo();

            try
            {
                Grantee grantee = db.NewLocalGrantee(data);
                return(Request.CreateResponse(HttpStatusCode.OK, grantee));
            }
            catch (Exception e)
            {
                return(Request.CreateResponse(HttpStatusCode.InternalServerError, "something went wrong"));
            }
        }
Пример #22
0
        public HttpResponseMessage GetUsersList([FromBody] string access_key)
        {
            SLW_DatabaseInfo db         = new SLW_DatabaseInfo();
            KeyDetail        key_detail = db.GetKeyDetail(access_key);

            if (IsKeyValid(key_detail))
            {
                List <UserDetails> userDetails = db.GetAllUsersDetails();
                return(Request.CreateResponse(HttpStatusCode.OK, userDetails));
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.Unauthorized, "invalid_key"));
            }
        }
Пример #23
0
        public HttpResponseMessage GetSavedApplications([FromBody] dynamic data)
        {
            string           access_key = (string)data;
            SLW_DatabaseInfo db         = new SLW_DatabaseInfo();
            KeyDetail        detail     = db.GetKeyDetail(access_key);

            if (detail.data_present)
            {
                List <SavedApplications> savedApplications = db.GetSavedApplications(detail.username);
                return(Request.CreateResponse(HttpStatusCode.OK, savedApplications));
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.Forbidden, "invalid key"));
            }
        }
Пример #24
0
        public HttpResponseMessage GetCertificate([FromBody] dynamic data)
        {
            SLW_DatabaseInfo db        = new SLW_DatabaseInfo();
            Dashboard        dashboard = new Dashboard();
            KeyDetail        detail    = db.GetKeyDetail((string)data.access_key);

            if (detail.data_present)
            {
                Certificate certificate = db.GetPersonalSMACertificate((string)data.application_id);
                return(Request.CreateResponse(HttpStatusCode.OK, certificate));
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.Forbidden, "invalid key"));
            }
        }
Пример #25
0
        public HttpResponseMessage GetUnassignedTask([FromBody] string access_key)
        {
            SLW_DatabaseInfo db     = new SLW_DatabaseInfo();
            KeyDetail        detail = db.GetKeyDetail(access_key);

            if (detail.data_present)
            {
                db.CheckForApplicationUpdatesAllUsers();
                List <UnassignedTask> unassignedTasks = db.GetUnassignedTasks();
                return(Request.CreateResponse(HttpStatusCode.OK, unassignedTasks));
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.Forbidden, "invalid key"));
            }
        }
Пример #26
0
        public HttpResponseMessage GetRecentDocuments([FromBody] string access_key)
        {
            SLW_DatabaseInfo       db = new SLW_DatabaseInfo();
            List <RecentDocuments> recentDocuments = new List <RecentDocuments>();
            KeyDetail detail = db.GetKeyDetail(access_key);

            if (detail.data_present)
            {
                recentDocuments = db.GetRecentDocuments(detail.username);
                return(Request.CreateResponse(HttpStatusCode.OK, recentDocuments));
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.Forbidden, "invalid key"));
            }
        }
Пример #27
0
        public HttpResponseMessage GetUserActivities([FromBody] string access_key)
        {
            SLW_DatabaseInfo    db             = new SLW_DatabaseInfo();
            List <UserActivity> userActivities = new List <UserActivity>();

            KeyDetail detail = db.GetKeyDetail(access_key);

            if (detail.data_present)
            {
                userActivities = db.GetUserActivities("*preview");
                return(Request.CreateResponse(HttpStatusCode.OK, userActivities));
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.Forbidden, "invalid key"));
            }
        }
Пример #28
0
        public HttpResponseMessage GetDashboardFeed([FromBody] string access_key)
        {
            SLW_DatabaseInfo db        = new SLW_DatabaseInfo();
            Dashboard        dashboard = new Dashboard();
            KeyDetail        detail    = db.GetKeyDetail(access_key);

            if (detail.data_present)
            {
                db.CheckForApplicationUpdates(detail.username);
                dashboard = db.GetDashboardData(detail.username);
                return(Request.CreateResponse(HttpStatusCode.OK, dashboard));
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.Forbidden, "invalid key"));
            }
        }
Пример #29
0
        public HttpResponseMessage GetApplicationStatus([FromBody] dynamic data)
        {
            string access_key     = (string)data.access_key;
            string application_id = (string)data.application_id;

            SLW_DatabaseInfo db     = new SLW_DatabaseInfo();
            KeyDetail        detail = db.GetKeyDetail(access_key);

            if (detail.data_present)
            {
                return(Request.CreateResponse(HttpStatusCode.OK, db.GetApplicationStatus(application_id)));
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.Unauthorized, "invalid key"));
            }
        }
        public HttpResponseMessage ClientResubmission([FromBody] dynamic data)
        {
            SLW_DatabaseInfo db        = new SLW_DatabaseInfo();
            KeyDetail        keyDetail = db.GetKeyDetail((string)data.access_key);

            if (keyDetail.data_present)
            {
                db.UpdateApplicationStatus((string)data.application_id, Commons.Constants.PENDING_RESUBMISSION, DateTime.Now);
                Utilities.FileManager.DeleteFiles((string)data.application_id);
                db.DeleteOngoingTask((string)data.application_id);
                db.DeleteUnassignedTask((string)data.application_id);
                return(Request.CreateResponse(HttpStatusCode.OK, "status updated"));
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.Unauthorized, "invalid key"));
            }
        }