public ActionResult KendoSave([DataSourceRequest] DataSourceRequest request, tblCustomerContactPersons model)
        {
            if (model == null || !ModelState.IsValid)
            {
                return(Json(new[] { model }.ToDataSourceResult(request, ModelState)));
            }

            string message = string.Empty;

            message = model.ContactPersonId > 0 ? _dbRepository.Update(model) : _dbRepository.Insert(model);

            ModelState.Clear();
            if (!string.IsNullOrEmpty(message))
            {
                ModelState.AddModelError("Name", message);
            }

            return(Json(new[] { model }.ToDataSourceResult(request, ModelState)));
        }
        public ActionResult GeneratePartsQuotation(int CommisionId)
        {
            tblCommissioning commissioningObj = _dbRepository.SelectById(CommisionId);

            if (commissioningObj != null)
            {
                tblCustomerContactPersons contactPerson = _dbRepositoryContact.SelectById(commissioningObj.ContactPersonId);
                tblMachinePartsQuotation  quotationObj  = new tblMachinePartsQuotation();
                quotationObj.CustomerId                = commissioningObj.CustomerId;
                quotationObj.CustomerContactPId        = commissioningObj.ContactPersonId;
                quotationObj.CustomerContactPContactNo = contactPerson.ContactNo;
                quotationObj.Email             = contactPerson.ContactPersonEmail;
                quotationObj.QuotationDate     = DateTime.Now.Date;
                quotationObj.ReportServiceNo   = commissioningObj.ReportServiceNo;
                quotationObj.ServiceEngineerId = commissioningObj.ServiceEngineerId;
                quotationObj.InquiryNo         = String.Empty;
                quotationObj.InquiryDate       = DateTime.Now.Date;
                quotationObj.PaymentTerms      = String.Empty;
                quotationObj.DeliveryWeeks     = 0;
                quotationObj.FreightAmount     = 0;
                quotationObj.TotalFinalAmount  = 0;
                quotationObj.QuotationAmount   = 0;
                quotationObj.Insurance         = String.Empty;
                quotationObj.ValidityDays      = 0;
                quotationObj.CreatedBy         = SessionHelper.UserId;
                quotationObj.CreatedDate       = DateTime.Now.Date;
                quotationObj.IsPIGenerated     = false;

                string result = _dbRepositoryPartsQ.Insert(quotationObj);
                if (string.IsNullOrEmpty(result))
                {
                    return(RedirectToAction("Edit", "MachinePartsQuotation", new { id = quotationObj.MachinePartsQuotationId }));
                }
            }
            return(RedirectToAction("Edit", "Commissioning", new { id = CommisionId }));
        }
        public ActionResult FinalizePreCommission(int id)
        {
            try
            {
                tblCommissioning commissionobj = new tblCommissioning();
                //tblPreCommissioning precommiobj = _dbRepositoryPreC.GetEntities().Where(m => m.PreCommissioningId == PreCommisionId).Include(m => m.tblMachineModels).FirstOrDefault();
                tblPreCommissioningDetail precommisdetailobj = _dbRepositoryPreCD.GetEntities().FirstOrDefault(m => m.PCDetailId == id);
                tblPreCommissioning       precommiobj        = _dbRepositoryPreC.GetEntities().FirstOrDefault(m => m.PreCommissioningId == precommisdetailobj.PreCommissionId);

                if (precommisdetailobj.PCMachineId > 0)
                {
                    tblPreCommissioningMachine precommimachine = _dbPreMachine.GetEntities().Include(m => m.tblMachineModels)
                                                                 .FirstOrDefault(m => m.PCMachined == precommisdetailobj.PCMachineId);

                    commissionobj.MachineTypeId      = precommimachine.MachineTypeId;
                    commissionobj.MachineModelId     = precommimachine.MachineModeld;
                    commissionobj.MachineSerialNo    = precommimachine.MachineSerialNo;
                    commissionobj.WarrantyPeriod     = precommimachine.tblMachineModels.WarrantyPeriod;
                    commissionobj.WarrantyExpireDate = precommisdetailobj.PreCommisoningDate.AddMonths(precommimachine.tblMachineModels.WarrantyPeriod);
                }
                if (precommisdetailobj.PCAccesseriesId > 0)
                {
                    tblPreCommissioningAccessories precommiasseccory = _dbPreAccessory.GetEntities().Include(m => m.tblMachineAccessories)
                                                                       .FirstOrDefault(m => m.PCAccessoriesId == precommisdetailobj.PCAccesseriesId);

                    commissionobj.AccessoriesTypeId    = precommiasseccory.AccessoriesTypeId;
                    commissionobj.MachineAccessoriesId = precommiasseccory.MachineAccessoriesId;
                    commissionobj.AccessoriesSerialNo  = precommiasseccory.AccessoriesSerialNo;
                    commissionobj.WarrantyPeriod       = 6;
                    commissionobj.WarrantyExpireDate   = precommisdetailobj.PreCommisoningDate.AddMonths(6);
                }

                tblCustomerContactPersons contactPerson = _dbRepositoryContact.GetEntities().FirstOrDefault(m => m.ContactPersonId == precommiobj.ContactPersonId);

                commissionobj.CustomerId               = precommiobj.CustomerId;
                commissionobj.ContactPersonId          = precommiobj.ContactPersonId;
                commissionobj.ContactPersonContactNo   = contactPerson.ContactNo;
                commissionobj.PreCommissioningDetailId = precommisdetailobj.PCDetailId;
                commissionobj.ServiceEngineerId        = precommisdetailobj.ServiceEngineerId;
                commissionobj.CommissioningDate        = precommisdetailobj.PreCommisoningDate;
                commissionobj.IsConvertedToAMC         = false;
                commissionobj.IsReadyForAMC            = false;
                commissionobj.CreatedBy   = SessionHelper.UserId;
                commissionobj.CreatedDate = DateTime.Now;

                string result = _dbRepository.Insert(commissionobj);

                if (!string.IsNullOrEmpty(result))
                {
                    return(RedirectToAction("Edit", "PreCommissioning", new { id = id }));
                }
                tblWarrantyexpires warrantyObj = new tblWarrantyexpires();
                warrantyObj.CommissioningId        = commissionobj.CommissioningId;
                warrantyObj.CommissioningDate      = precommisdetailobj.PreCommisoningDate;
                warrantyObj.WarrantyExpireDate     = commissionobj.WarrantyExpireDate;
                warrantyObj.IsConvertIntoAMC       = false;
                warrantyObj.IsConvertIntoChargable = false;
                warrantyObj.CreatedBy   = SessionHelper.UserId;
                warrantyObj.CreatedDate = DateTime.Now;
                string resultWarranty = _dbRepositoryWarranty.Insert(warrantyObj);

                precommisdetailobj.IsCommisioning = true;
                _dbRepositoryPreCD.Update(precommisdetailobj);

                //precommiobj.IsCommissioningDone = true;
                //_dbRepositoryPreC.Update(precommiobj);

                return(RedirectToAction("Edit", "Commissioning", new { id = commissionobj.CommissioningId }));
            }
            catch (Exception ex)
            {
                string Message = CommonHelper.GetDeleteException(ex);
                return(RedirectToAction("Index", "Commissioning"));
            }
        }
        public ActionResult KendoDestroy([DataSourceRequest] DataSourceRequest request, tblCustomerContactPersons model)
        {
            string deleteMessage = _dbRepository.Delete(model.ContactPersonId);

            ModelState.Clear();
            if (!string.IsNullOrEmpty(deleteMessage))
            {
                ModelState.AddModelError(deleteMessage, deleteMessage);
            }

            return(Json(new[] { model }.ToDataSourceResult(request, ModelState)));
        }