コード例 #1
0
        public async Task <ActionResult> Create([Bind(Include = "freelancerID,freelancerName,freelancerSurname,freelancerEmail,freelancerPhone,freelancerAddress,city,postalCode,freelancerWebsite,occupation,bio,imageURL, ImageFile")] FreelancerClient freelancerClient)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    string fileName  = Path.GetFileNameWithoutExtension(freelancerClient.ImageFile.FileName);
                    string extension = Path.GetExtension(freelancerClient.ImageFile.FileName);
                    fileName = fileName + DateTime.Now.ToString("yymmssff") + extension;
                    freelancerClient.imageURL = "~/images/" + fileName;

                    fileName = Path.Combine(Server.MapPath("~/images/"), fileName);
                    freelancerClient.ImageFile.SaveAs(fileName);

                    db.FreelancerClients.Add(freelancerClient);
                    await db.SaveChangesAsync();

                    return(RedirectToAction("Create", "Users", new { newUserId = freelancerClient.freelancerID, role = "member" }));
                }
                catch (Exception Ex)
                {
                    ViewBag.ErrorMessage = Ex.Message;
                    return(View("Error"));
                }
            }

            ViewBag.occupation = new SelectList(db.Departments, "departmentCode", "departmentName", freelancerClient.occupation);
            return(View(freelancerClient));
        }
コード例 #2
0
        public ActionResult SummaryReport()
        {
            int id = Convert.ToInt32(Session["memberId"].ToString());
            List <ServiceRequest> services           = db.ServiceRequests.Where(a => a.Job.freelancerID == id && a.verified == true).ToList();
            FreelancerClient      freelancerObj      = db.FreelancerClients.Find(id);
            CompetitiveSummary    competitiveSummary = new CompetitiveSummary(freelancerObj);
            ProfitSummary         profitSummary      = new ProfitSummary(id, services);

            if (freelancerObj != null)
            {
                profitSummary.setProfitSummary();
                competitiveSummary.calculateCompetitiveSummary();
            }

            SummaryReportData summary = new SummaryReportData()
            {
                marketRevenue    = Math.Round(competitiveSummary.getRevenue(), 2),
                marketShare      = Math.Round(competitiveSummary.getMarketShare(), 2),
                numFreelancers   = competitiveSummary.getFreelancers(),
                servicesRendered = services.Count(),
                totalCustomers   = services.Count(),
                weeklyEarnings   = profitSummary.weeklyEarnings,
                totalEarnings    = profitSummary.totalEarnings
            };

            return(View(summary));
        }
コード例 #3
0
        public async Task <ActionResult> DeleteConfirmed(int id)
        {
            FreelancerClient freelancerClient = await db.FreelancerClients.FindAsync(id);

            db.FreelancerClients.Remove(freelancerClient);
            await db.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
コード例 #4
0
        public ActionResult FreelancerRequests()
        {
            int id = Convert.ToInt32(Session["memberID"].ToString());

            FreelancerClient freelancer = db.FreelancerClients.Find(id);
            var requests = db.ServiceRequests.Where(a => a.serviceDescription != "Service booked through available ads" && a.Category == freelancer.occupation).ToList();

            return(View(requests));
        }
コード例 #5
0
        public async Task <ActionResult> Edit([Bind(Include = "freelancerID,freelancerName,freelancerSurname,freelancerEmail,freelancerPhone,freelancerAddress,city,postalCode,freelancerWebsite,occupation,bio,imageURL")] FreelancerClient freelancerClient)
        {
            if (ModelState.IsValid)
            {
                db.Entry(freelancerClient).State = EntityState.Modified;
                await db.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            ViewBag.occupation = new SelectList(db.Departments, "departmentCode", "departmentName", freelancerClient.occupation);
            return(View(freelancerClient));
        }
コード例 #6
0
        // GET: FreelancerClients/Details/5
        public async Task <ActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            FreelancerClient freelancerClient = await db.FreelancerClients.FindAsync(id);

            if (freelancerClient == null)
            {
                return(HttpNotFound());
            }
            return(View(freelancerClient));
        }
コード例 #7
0
        // GET: FreelancerClients/Edit/5
        public async Task <ActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            FreelancerClient freelancerClient = await db.FreelancerClients.FindAsync(id);

            if (freelancerClient == null)
            {
                return(HttpNotFound());
            }
            ViewBag.occupation = new SelectList(db.Departments, "departmentCode", "departmentName", freelancerClient.occupation);
            return(View(freelancerClient));
        }
コード例 #8
0
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            FreelancerClient userObj = db.FreelancerClients.Find(id);

            if (userObj == null)
            {
                return(HttpNotFound());
            }
            ViewBag.occupation = new SelectList(db.Departments, "departmentCode", "departmentName", userObj.occupation);

            return(View(userObj));
        }
コード例 #9
0
        public ActionResult Edit([Bind(Include = "freelancerID,freelancerName,freelancerSurname,freelancerEmail,freelancerPhone,freelancerAddress,city,postalCode,freelancerWebsite,occupation,bio,imageURL")] FreelancerClient freelancer)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    freelancer.occupation      = "CRP";
                    db.Entry(freelancer).State = EntityState.Modified;
                    db.SaveChanges();

                    return(RedirectToAction("Index", "MemberHome"));
                }
            } catch (Exception Ex)
            {
                ViewBag.ErrorMessage = Ex.Message;
                return(View("Error"));
            }
            return(Content("There's a error in this method"));
        }