示例#1
0
        public JobCard SearchJobCardByJobCardNumber(string jobCardNumber)
        {
            JobCard jobCard = new JobCard();

            jobCard = databaseContext.GetJobCardByJobCardNumber(jobCardNumber);
            return(jobCard);
        }
        public JobCardViewModel GetJobCard(int Id)
        {
            JobCard jobCard = _unitOfWork.JobCardRepository.GetById(Id);

            if (jobCard == null)
            {
                return(null);
            }
            List <JobPartsViewModel> jobPartsViews = new List <JobPartsViewModel>();

            foreach (JobParts jobPart in jobCard.JobParts)
            {
                JobPartsViewModel jobPartView = new JobPartsViewModel(jobPart)
                {
                    SparePart = new SparePartsViewModel(jobPart.SparePart)
                };
                jobPartsViews.Add(jobPartView);
            }

            EmployeeViewModel employee = new EmployeeViewModel(jobCard.Employee);

            JobCardViewModel jobCardView = new JobCardViewModel(jobCard)
            {
                JobParts = jobPartsViews,
                Employee = employee
            };

            return(jobCardView);
        }
示例#3
0
        public ActionResult Create([Bind(Include = "JobID,PartsUsed,FeesIncluded,TotalAmount,PhoneNo,Email")] JobCard jobCard)
        {
            try
            {
                WebMail.SmtpServer = "smtp.gmail.com";
                WebMail.SmtpPort   = 587;
                WebMail.SmtpUseDefaultCredentials = true;
                WebMail.EnableSsl = true;
                WebMail.UserName  = "******";
                WebMail.Password  = "******";
                WebMail.From      = "*****@*****.**";
                WebMail.Send(to: jobCard.Email,
                             subject: "Good day Customer",
                             body: "Your Invoice has been successfully completed." + "<br/>" + "Thank You for purchasing at Specialised Scanned Solutions." + "<br/>" +
                             "Parts Used:  " + jobCard.PartsUsed + "<br/>" +
                             "Fees Included:  R" + jobCard.FeesIncluded + "<br/>" +
                             "Total Amount:  R" + jobCard.TotalAmount + "<br/>" +
                             "Phone Number:  " + jobCard.PhoneNo + "<br/>" +
                             "Email Address:  " + jobCard.Email,
                             isBodyHtml: true);
            }
            catch (Exception)
            {
            }

            if (ModelState.IsValid)
            {
                db.Stocks.Add(jobCard);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(jobCard));
        }
示例#4
0
        public IHttpActionResult PutJobCard(int id, JobCard jobCard)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != jobCard.JobCardId)
            {
                return(BadRequest());
            }

            db.Entry(jobCard).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!JobCardExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
示例#5
0
        private bool AddBadliAttData(string _empDate, int _empID, DateTime _Date, int _userID, JobCardApp jcApp)
        {
            bool check = false;

            try
            {
                //Normal Duty
                using (var context = new TAS2013Entities())
                {
                    AttData _attdata = context.AttDatas.FirstOrDefault(aa => aa.EmpDate == _empDate);
                    JobCard _jcCard  = context.JobCards.FirstOrDefault(aa => aa.WorkCardID == jcApp.CardType);
                    if (_attdata != null)
                    {
                        _attdata.DutyCode    = "D";
                        _attdata.StatusAB    = false;
                        _attdata.StatusLeave = false;
                        _attdata.StatusP     = true;
                        _attdata.Remarks     = _attdata.Remarks + "[Badli][Manual]";
                        _attdata.StatusMN    = true;
                    }
                    context.SaveChanges();
                    if (context.SaveChanges() > 0)
                    {
                        check = true;
                    }
                    context.Dispose();
                }
            }
            catch (Exception ex)
            {
            }
            return(check);
        }
示例#6
0
        private JobCardView GetViewModel(JobCard jobCard, bool includeDeleted)
        {
            JobCardView result = new JobCardView
            {
                CustomerID      = jobCard.CustomerID,
                Customers       = GetAllCustomers(includeDeleted),
                DesignerID      = jobCard.DesignerID,
                Designers       = GetAllDesigners(includeDeleted),
                IsDeleted       = jobCard.IsDeleted,
                JobCardID       = jobCard.JobCardID,
                JobTypeID       = jobCard.JobTypeID,
                JobTypes        = GetAllJobTypes(includeDeleted),
                JobDate         = jobCard.JobDate,
                MaterialID      = jobCard.MaterialID,
                Materials       = GetAllMaterials(includeDeleted),
                QuoteRef        = jobCard.QuoteRef,
                CreatedID       = jobCard.CreatedID,
                CreatedDate     = jobCard.CreatedDate,
                ApplicationDate = jobCard.ApplicationDate,
                ApplicationID   = jobCard.ApplicationID,
                CladingDate     = jobCard.CladingDate,
                CladingID       = jobCard.CladingID,
                InstallDate     = jobCard.InstalDate,
                InstallID       = jobCard.InstallID,
                InvoiceDate     = jobCard.InvoiceDate,
                InvoiceID       = jobCard.InvoiceID,
                UVPrinterID     = jobCard.UVPrinterID,
                UVPrintedDate   = jobCard.UVPrintedDate,
                TaskStep        = (TaskStep)jobCard.TaskStep,
                Description     = jobCard.Description,
            };

            return(result);
        }
示例#7
0
        private void JobCardsListView_ItemClick(object sender, ItemClickEventArgs e)
        {
            clickedJobCard = (e.ClickedItem as JobCard);
            JobCardDetailsGrid.Visibility              = Visibility.Visible;
            JobCardTitle.Text                          = (e.ClickedItem as JobCard).DisplayJobCardId;
            JobCardTierNameHyperLinkButton.Content     = (e.ClickedItem as JobCard).Tier.FullName;
            JobCardPackerNameHyperLinkButton.Content   = (e.ClickedItem as JobCard).Packer.FullName;
            JobCardOrderItemFlyNameHyperLink.Content   = (e.ClickedItem as JobCard).OrderItem.Fly.DisplayFlyNumberAndName;
            JobCardOrderItemFlySizeTextBox.Text        = (e.ClickedItem as JobCard).OrderItem.DisplayFlySizeWithHash;
            JobCardOrderItemDozensTextBox.Text         = $"{(e.ClickedItem as JobCard).OrderItem.Dozens}";
            JobCardTieCompleteTextBox.Text             = (e.ClickedItem as JobCard).TieDateCompleted == default(DateTime) ? $"Tying not yet complete" : $"Tying completed on {(e.ClickedItem as JobCard).TieDateCompleted}";
            JobCardPackCompleteTextBox.Text            = (e.ClickedItem as JobCard).PackDateComplete == default(DateTime) ? $"Packing not yet complete" : $"Packing completed on {(e.ClickedItem as JobCard).PackDateComplete}";
            JobCardAddingWorkerHyperLinkButton.Content = (e.ClickedItem as JobCard).AddedBy.FullName;
            JobCardAddingDateTextBlock.Text            = $"on {(e.ClickedItem as JobCard).DateAdded}";

            if ((e.ClickedItem as JobCard).DateAdded == (e.ClickedItem as JobCard).DateLastUpdated)
            {
                JobCardUpdateTextBox.Text = "Not yet updated";
                JobCardUpdatingWorkerHyperLinkButton.Visibility = Visibility.Collapsed;
                JobCardUpdatingDate.Visibility = Visibility.Collapsed;
            }
            else
            {
                JobCardUpdateTextBox.Text = "Updated by ";
                JobCardUpdatingWorkerHyperLinkButton.Visibility = Visibility.Visible;
                JobCardUpdatingWorkerHyperLinkButton.Content    = (e.ClickedItem as JobCard).LastUpdatedBy.FullName;
                JobCardUpdatingDate.Visibility = Visibility.Visible;
                JobCardUpdatingDate.Text       = $"on {(e.ClickedItem as JobCard).DateLastUpdated}";
            }
        }
示例#8
0
        public JobCard JobCard_GetPopulateShareProperties(JobCard jobCard)
        {
            jobCard.JPartner         = txt_JV_Partner.Text;
            jobCard.StandNo          = txt_JV_StandNo.Text;
            jobCard.SGStand          = txt_JV_SGStand.Text;
            jobCard.HouseAddress     = txt_JV_Address.Text;
            jobCard.Ward             = txt_JV_Surburb.Text;
            jobCard.Alt_Stand        = txt_JV_AltStand.Text;
            jobCard.BlockSub         = txt_JV_Block.Text;
            jobCard.MetroAuthChecked = chk_JV_MetroAucthChecked.Checked;
            jobCard.SurveyDate       = dtp_JV_SurveyDate.Value;
            jobCard.JobCardDate      = dtp_JV_JobCardDate.Value;
            jobCard.SMME             = txt_JV_Subconractor.Text;
            jobCard.MeterSerialNo    = txt_JV_MeterSerialNo.Text;
            jobCard.OrderDate        = dtp_JV_Mtr_OrderDate.Value;
            jobCard.JobCardNumber    = GobaljobCardNumber;

            if (rad_JV_StandNo_VariationOrdeY.Checked)
            {
                jobCard.VariationOrder = true;
            }

            jobCard.MeterOrder = chk_JV_MeterOrder.Checked;


            return(jobCard);
        }
示例#9
0
        private void subCheck_JobCardAdded(object sender, CollectionChangeEventArgs e)
        {
            JobCard jobCard = (JobCard)e.Element;

            listViewJobCards.AddNewItem(jobCard);
            HookJobCard(jobCard, true);
        }
示例#10
0
        private void HeaderControlButtonSaveAndAddClick(object sender, EventArgs e)
        {
            string message;

            if (!ValidateData(out message))
            {
                message += "\nAbort operation";
                MessageBox.Show(message, (string)new GlobalTermsProvider()["SystemName"],
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
                return;
            }
            if (GetChangeStatus())
            {
                SaveData();
            }

            if (MessageBox.Show("Directive added successfully" + "\nClear Fields before add new directive?",
                                new GlobalTermsProvider()["SystemName"].ToString(),
                                MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button2) == DialogResult.Yes)
            {
                ClearFields();
            }
            //BaseDetail bd = _currentItem.ParentBaseDetail;
            _currentItem = new JobCard();
        }
示例#11
0
        public IHttpActionResult Post([FromBody] ApproveQuote approve)
        {
            if (approve.Val)
            {
                var quote = _context.Quotations.SingleOrDefault(s => s.Id == approve.ValId);

                if (quote.Approve == false)
                {
                    JobCard jobCard = new JobCard();
                    jobCard.CreatedAt   = DateTime.Now;
                    jobCard.QuotationId = approve.ValId;
                    jobCard.CustomerId  = quote.CustomerId;
                    jobCard.JobStatusId = 3;
                    //
                    _context.JobCards.Add(jobCard);
                    _context.SaveChanges();
                }

                quote.Approve = true;
                //Mailer.SendInvoiceEmail(quote.Id, "Please have a look at this invoice.");
                //
                _context.Entry(quote).State = EntityState.Modified;
                _context.SaveChanges();

                return(Ok());
            }
            throw new HttpResponseException(HttpStatusCode.BadRequest);
        }
示例#12
0
        public static JobCard CreateJobCard(int jID)
        {
            JobCard jobCard = new JobCard();

            jobCard.JID = jID;
            return(jobCard);
        }
示例#13
0
        protected override void AnimatedThreadWorkerDoWork(object sender, DoWorkEventArgs e)
        {
            #region Загрузка элементов

            AnimatedThreadWorker.ReportProgress(0, "load directives");

            try
            {
                if (_currentItem.ItemId > 0 && _needReload)
                {
                    _currentItem = GlobalObjects.CasEnvironment.NewLoader.GetObjectById <JobCardDTO, JobCard>(_currentItem.ItemId, true);
                }
            }
            catch (Exception ex)
            {
                Program.Provider.Logger.Log("Error while loading directives", ex);
            }

            if (AnimatedThreadWorker.CancellationPending)
            {
                e.Cancel = true;
                return;
            }
            #endregion

            #region Калькуляция состояния директив

            AnimatedThreadWorker.ReportProgress(40, "calculation of directives");

            if (AnimatedThreadWorker.CancellationPending)
            {
                e.Cancel = true;
                return;
            }
            #endregion

            #region Фильтрация директив
            AnimatedThreadWorker.ReportProgress(70, "filter directives");

            if (AnimatedThreadWorker.CancellationPending)
            {
                e.Cancel = true;
                return;
            }
            #endregion

            #region Сравнение с рабочими пакетами

            AnimatedThreadWorker.ReportProgress(90, "comparison with the Work Packages");

            if (AnimatedThreadWorker.CancellationPending)
            {
                e.Cancel = true;
                return;
            }
            #endregion

            AnimatedThreadWorker.ReportProgress(100, "Complete");
        }
示例#14
0
        public ActionResult DeleteConfirmed(int id)
        {
            JobCard jobCard = db.JobCards.Find(id);

            db.JobCards.Remove(jobCard);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
示例#15
0
        public ActionResult DeleteConfirmed(int id)
        {
            JobCard jobCard = _unitOfWork.JobCards.Get((int)id);

            _unitOfWork.JobCards.Remove(jobCard);
            _unitOfWork.Complete();
            return(RedirectToAction("Index"));
        }
示例#16
0
 /// <summary>
 /// Создает форму для отображения информации о <see cref="JobCard"/>
 /// </summary>
 /// <param name="jobCard"></param>
 public MaintenanceJobCardForm(JobCard jobCard)
 {
     currentJobCard = jobCard;
     mode           = ScreenMode.Edit;
     jobCardControl = new JobCardTabPageControl(currentJobCard);
     InitializeComponent();
     UpdateInformation();
 }
示例#17
0
 /// <summary>
 /// Создает форму для добавления <see cref="JobCard"/>
 /// </summary>
 /// <param name="maintenanceSubCheck"></param>
 /// <param name="dialogFileName"></param>
 public MaintenanceJobCardForm(MaintenanceSubCheck maintenanceSubCheck, string dialogFileName)
 {
     parentMaintenanceSubCheck = maintenanceSubCheck;
     currentJobCard            = new JobCard();
     mode           = ScreenMode.Add;
     jobCardControl = new JobCardTabPageControl(maintenanceSubCheck, dialogFileName);
     InitializeComponent();
 }
示例#18
0
 public JobCardViewModel(JobCard jobCard)
 {
     Id            = jobCard.Id;
     Distance      = jobCard.Distance;
     ArrivalTime   = jobCard.ArrivalTime;
     DepartureTime = jobCard.DepartureTime;
     JobStatusId   = jobCard.JobStatusId;
     JobTypeId     = jobCard.JobTypeId;
 }
示例#19
0
 /// <summary>
 /// Создает вкладку для привязывания Non-Routine Job к рабочей карте
 /// </summary>
 /// <param name="nonRoutineJob">Non Routine Job</param>
 public JobCardTabPageControl(NonRoutineJob nonRoutineJob)
 {
     this.nonRoutineJob  = nonRoutineJob;
     currentJobCard      = new JobCard();
     currentJobCard.Date = DateTime.Today;
     mode = ScreenMode.Add;
     InitializeComponent();
     UpdateInformation();
 }
示例#20
0
 /// <summary>
 /// Создает вкладку для привязывания Abstartct Detail к рабочей карте
 /// </summary>
 /// <param name="detail"></param>
 public JobCardTabPageControl(AbstractDetail detail)
 {
     this.detail         = detail;
     currentJobCard      = new JobCard();
     currentJobCard.Date = DateTime.Today;
     mode = ScreenMode.Add;
     InitializeComponent();
     UpdateInformation();
 }
示例#21
0
        public ActionResult Edit(int?id)
        {
            if (User.IsInRole(UserRoles.Technician))
            {
                if (id == null)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
                }

                JobCard jobCard = _unitOfWork.JobCards.GetJobCardWithCustomer((int)id);
                if (jobCard == null)
                {
                    return(HttpNotFound());
                }
                //
                JobCardViewModel jvm = Mapper.Map <JobCard, JobCardViewModel>(jobCard);

                JobCard jc = new JobCard();

                jvm.Id          = jobCard.Id;
                jvm.CustomerId  = (int)jobCard.CustomerId;
                jvm.Customer    = jobCard.Customer;
                jvm.JobTypeId   = jobCard.JobTypeId;
                jvm.JobStatusId = jobCard.JobStatusId;
                //
                jvm.JobStatuses = _unitOfWork.JobStatuses.GetAll().ToList();
                jvm.JobTypes    = _unitOfWork.JobTypes.GetAll().ToList();
                jvm.Staff       = _context.Users.ToList();
                //
                return(View("Technician", jvm));
            }
            else
            {
                if (id == null)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
                }

                JobCard jobCard = _unitOfWork.JobCards.Get((int)id);
                if (jobCard == null)
                {
                    return(HttpNotFound());
                }
                //
                JobCardViewModel jvm = new JobCardViewModel();
                jvm.Id          = jobCard.Id;
                jvm.CustomerId  = (int)jobCard.CustomerId;
                jvm.JobTypeId   = jobCard.JobTypeId;
                jvm.JobStatusId = jobCard.JobStatusId;
                //
                jvm.JobStatuses = _unitOfWork.JobStatuses.GetAll().ToList();
                jvm.JobTypes    = _unitOfWork.JobTypes.GetAll().ToList();
                jvm.Staff       = _context.Users.ToList();
                //
                return(View("Admin", jvm));
            }
        }
示例#22
0
 /// <summary>
 /// Создает вкладку для привязывания Detail Directive к рабочей карте
 /// </summary>
 /// <param name="detailDirective"></param>
 public JobCardTabPageControl(DetailDirective detailDirective)
 {
     this.detailDirective = detailDirective;
     currentJobCard       = new JobCard();
     currentJobCard.Date  = DateTime.Today;
     mode = ScreenMode.Add;
     InitializeComponent();
     UpdateInformation();
 }
示例#23
0
 public ActionResult Edit([Bind(Include = "JobID,PartsUsed,FeesIncluded,TotalAmount,PhoneNo,Email")] JobCard jobCard)
 {
     if (ModelState.IsValid)
     {
         db.Entry(jobCard).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(jobCard));
 }
示例#24
0
        public void DeleteJobCard(JobCardView jobCard)
        {
            using (DigiFusionEntities db = new DigiFusionEntities())
            {
                JobCard jobCardDB = db.JobCards.Single(x => x.JobCardID == jobCard.JobCardID);
                jobCardDB.IsDeleted = true;

                db.SaveChanges();
            }
        }
示例#25
0
 public ActionResult Edit([Bind(Include = "JobCardId,IssuedDate,Status,DueDate,CustomerOrderId,EmployeeId")] JobCard jobCard)
 {
     if (ModelState.IsValid)
     {
         db.Entry(jobCard).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(jobCard));
 }
        public ActionResult Create(int Id)
        {
            JobCardRepository  jcRepo = new JobCardRepository();
            EmployeeRepository emRepo = new EmployeeRepository();
            JobCard            jc     = jcRepo.GetDetailsById(Id, null);
            //FillTaks(jc.WorkDescriptionId);
            JobCardDailyActivity model = new JobCardDailyActivity();

            if (jc.isProjectBased == 1)
            {
                model.JobCardDailyActivityRefNo = DatabaseCommonRepository.GetNextDocNo(38, OrganizationId);
                //FillTasks();
                FillTasks(jc.isProjectBased);
                FillEmployees();
            }
            else
            {
                model.JobCardDailyActivityRefNo = DatabaseCommonRepository.GetNextDocNo(27, OrganizationId);
            }
            model.CreatedDate = DateTime.Now;
            model.JobCardDailyActivityDate = DateTime.Now;
            model.isProjectBased           = jc.isProjectBased;
            model.CustomerName             = jc.CustomerName;
            if (model.isProjectBased == 0)
            {
                model.JobCardDailyActivityTask = new JobCardDailyActivityRepository().GetJobCardTasksForDailyActivity(Id, OrganizationId);
            }
            else
            {
                model.JobCardDailyActivityTask = new List <JobCardDailyActivityTask>();
                model.JobCardDailyActivityTask.Add(new JobCardDailyActivityTask
                {
                    TaskStartDate = model.JobCardDailyActivityDate,
                    TaskEndDate   = model.JobCardDailyActivityDate
                });
            }

            //if (model.JobCardDailyActivityTask.Count > 0)
            //{
            //    foreach (var item in model.JobCardDailyActivityTask)
            //    {
            //        item.StartTime = "00:00"; item.EndTime = "00.00";
            //    }
            //}
            //model.JobCardDailyActivityTask = new List<JobCardDailyActivityTask>();
            //model.JobCardDailyActivityTask.Add(new JobCardDailyActivityTask() { TaskStartDate = DateTime.Now, TaskEndDate = DateTime.Now});
            Employee emp = emRepo.GetEmployee(jc.EmployeeId);

            model.EmployeeId     = jc.EmployeeId;
            model.EmployeeName   = emp.EmployeeName;
            model.JobCardNo      = jc.JobCardNo;
            model.JobCardId      = Id;
            ViewBag.isTxnPending = true;
            return(View(model));
        }
示例#27
0
        private void button1_Click(object sender, EventArgs e) // Search Job Card
        {
            JobCard jobCard       = new JobCard();
            string  jobCardNumber = String.Empty;

            jobCardNumber = cbx_JV_JobCardNumber.SelectedItem.ToString();
            jobCard       = jobCardProccessing.SearchJobCardByJobCardNumber(jobCardNumber);
            JobCard_SetPopulateShareProperties(jobCard);
            JobCard_SetItemsProperties(jobCard);
            GobaljobCardNumber = jobCardNumber;
        }
示例#28
0
 public void UpdateJobCard(int jobCardId, string completedDate)
 {
     using (var context = new MarigoldSystemContext())
     {
         JobCard jobCard = context.JobCards.Find(jobCardId);
         jobCard.ClosedDate = DateTime.Parse(completedDate);
         context.Entry(jobCard).Property(x => x.ClosedDate).IsModified = true;
         context.Entry(jobCard).State = System.Data.Entity.EntityState.Modified;
         context.SaveChanges();
     }
 }
示例#29
0
        public ActionResult Create([Bind(Include = "JobCardId,IssuedDate,Status,DueDate,CustomerOrderId,EmployeeId")] JobCard jobCard)
        {
            if (ModelState.IsValid)
            {
                db.JobCards.Add(jobCard);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(jobCard));
        }
示例#30
0
        public IHttpActionResult GetJobCard(int id)
        {
            JobCard jobCard = db.JobCards.Find(id);

            if (jobCard == null)
            {
                return(NotFound());
            }

            return(Ok(jobCard));
        }