public async Task <ApiResponse> ApproveMAAsync([FromBody] MABusinessModel ma) { if (!(new string[] { "FNT", "NTNIVD", "NTIVD" }).Contains(ma.SubmoduleCode)) { return(new ApiResponse() { StatusCode = StatusCodes.Status400BadRequest, Result = false, IsSuccess = false, Message = "Invalid Application Type" }); } var result = await _maService.ApproveMAAsync(ma.MA); if (result.IsSuccess && ma.SubmoduleCode == "FNT") { await _generateDocument.GenerateRegistrationPDFDocument(_nodeServices, ma.MA.ID, "FNT", ma.MA.ModifiedByUserID); } else if (result.IsSuccess && ma.SubmoduleCode != "FNT") { await _generateDocument.GenerateRegistrationPDFDocument(_nodeServices, ma.MA.ID, "MDNT", ma.MA.ModifiedByUserID); } return(result); }
public async Task <ApiResponse> CreateMARenewalAsync([FromBody] MABusinessModel maNewApp) { var result = await _maService.CreateMARenewalAsync(maNewApp); var ma = await _maService.GetAsync(m => m.RowGuid == maNewApp.MA.RowGuid); if (ma.MAStatus?.MAStatusCode == "RQST") { await _generateDocument.GenerateRegistrationPDFDocument(_nodeServices, ma.ID, ma.MAStatus.MAStatusCode, ma.CreatedByUserID); } return(result); }
public RegistrationPDFData(MABusinessModel ma, LetterHeading letterHeading, Letter letter, int noOfFIR = 1) { this.maId = ma.MA.ID; this.company = letterHeading.CompanyName; this.logoUrl = letterHeading.LogoUrl; this.header = letter.Title; this.body = letter.Body; this.to = ma.MA.Agent?.Name; this.address = ma.MA.Agent?.Address?.City; this.date = DateTime.Now.ToString("dd-MM-yyyy"); this.productName = ma.Product?.BrandName; this.genericName = ma.Product?.GenericName; this.dosageForm = ma.Product?.DosageFormObj?.Name; this.dosageUnit = ma.Product?.DosageUnitObj?.Name; this.productStrength = ma.Product?.DosageStrengthObj?.Name; this.routeAdminstration = ma.Product?.AdminRoute?.Name; this.indication = ma.Product?.Indication; this.prescriptionStatus = ma.Product?.PharmacopoeiaStandard?.Name; //check this.packSize = ma.Product?.Presentation; //check this.generalAppearance = ma.Product?.Description; this.primaryContainer = ma.Product?.ContainerType; this.agent = ma.MA.Agent?.Name; this.supplier = ma.MA.Supplier?.Name; this.supplierAddress = ma.MA.Supplier?.Address?.City; this.applicationType = ma.MA.MAType?.Name; this.applicationNumber = ma.MA.MANumber; this.certificationNumber = ma.MA.CertificateNumber; //check this.manufacturer = ma.Product?.ProductManufacturers?.DefaultIfEmpty().FirstOrDefault(m => m?.ManufacturerType?.ManufacturerTypeCode == "FIN_PROD_MANUF")?.ManufacturerAddress.Manufacturer?.Name; //check this.shelfLife = ma.Product?.ShelfLifeObj?.Name; this.productCategory = ma.Product.ProductCategory?.Name; this.productType = ma.Product.ProductType?.Name; this.deviceClass = ma.Product.ProductMD?.DeviceClass?.Name; this.deviceGroup = ma.Product.ProductMD?.MDGrouping?.Name; this.foodIngredients = ma.Product.FoodIngredients; this.fileName = ma.MA.MAStatus.MAStatusCode == "FIR" ? noOfFIR + "_" + letter.ModuleDocument.DocumentType.Name + ".pdf" : letter.ModuleDocument.DocumentType.Name + ".pdf"; this.tempFolderName = ma.MA.RowGuid.ToString(); this.manufacturers = (bool)ma.Product?.ProductManufacturers?.Any() ? ma.Product?.ProductManufacturers?.Select(x => new Manufacturer(x))?.ToList() : new List <Manufacturer> (); this.inns = (bool)ma.Product?.ProductCompositions?.Any() ? ma.Product?.ProductCompositions?.Where(c => c.INNID != null).Select(x => new Ingredient(x))?.ToList() : new List <Ingredient> (); this.expients = (bool)ma.Product?.ProductCompositions?.Any() ? ma.Product?.ProductCompositions?.Where(c => c.ExcipientID != null).Select(x => new Ingredient(x))?.ToList() : new List <Ingredient> (); this.components = (bool)ma.Product?.DeviceAccessories?.Any() ? ma.Product?.DeviceAccessories?.Where(c => c.AccessoryType.AccessoryTypeCode == "CMP").Select(x => new DeviceAccessories(x))?.ToList() : new List <DeviceAccessories> (); this.rawMaterials = (bool)ma.Product?.DeviceAccessories?.Any() ? ma.Product?.DeviceAccessories?.Where(c => c.AccessoryType.AccessoryTypeCode == "RMT").Select(x => new DeviceAccessories(x))?.ToList() : new List <DeviceAccessories> (); this.spareParts = (bool)ma.Product?.DeviceAccessories?.Any() ? ma.Product?.DeviceAccessories?.Where(c => c.AccessoryType.AccessoryTypeCode == "SPR").Select(x => new DeviceAccessories(x))?.ToList() : new List <DeviceAccessories> ();; this.standardAccessories = (bool)ma.Product?.DeviceAccessories?.Any() ? ma.Product?.DeviceAccessories?.Where(c => c.AccessoryType.AccessoryTypeCode == "STND").Select(x => new DeviceAccessories(x))?.ToList() : new List <DeviceAccessories> ();; this.mdModelSizes = (bool)ma.Product?.MDModelSizes?.Any() ? ma.Product?.MDModelSizes.Select(x => new MDModelSize(x))?.ToList() : new List <MDModelSize> ();; this.foodCompositions = (bool)ma.Product?.FoodCompositions?.Any() ? ma.Product?.FoodCompositions?.Where(c => c.CompositionType == "COMPOSITION").Select(x => new FoodComposition(x))?.ToList() : new List <FoodComposition> (); this.foodNutritions = (bool)ma.Product?.FoodCompositions?.Any() ? ma.Product?.FoodCompositions?.Where(c => c.CompositionType == "NUTRITIONAL_FACT").Select(x => new FoodComposition(x))?.ToList() : new List <FoodComposition> (); }
public async Task <ApiResponse> ApproveMAAsync([FromBody] MABusinessModel ma, bool?isNotificationType = false) { var result = await _maService.ApproveMAAsync(ma.MA); if (result.IsSuccess && (bool)!isNotificationType) { await _generateDocument.GenerateRegistrationPDFDocument(_nodeServices, ma.MA.ID, "APR", ma.MA.ModifiedByUserID); } else if (result.IsSuccess && (bool)isNotificationType) { await _generateDocument.GenerateRegistrationPDFDocument(_nodeServices, ma.MA.ID, "NOTAPR", ma.MA.ModifiedByUserID, ma.Comment); } return(result); }
public async Task <ApiResponse> CreateMANewApplicationAsync([FromBody] MABusinessModel maNewApp) { if (ModelState.IsValid) { return(new ApiResponse { StatusCode = StatusCodes.Status400BadRequest, IsSuccess = false, Message = "Model is not valid." }); } var result = await _maService.CreateMANewApplicationAsync(maNewApp); var ma = await _maService.GetAsync(m => m.RowGuid == maNewApp.MA.RowGuid, true); if (ma?.MAStatus?.MAStatusCode == "RQST") { await _generateDocument.GenerateRegistrationPDFDocument(_nodeServices, ma.ID, ma.MAStatus.MAStatusCode, ma.CreatedByUserID); } return(result); }
public async Task <ApiResponse> UpdateMANewApplicatioAsync([FromBody] MABusinessModel maNewApp) { var result = await _maService.UpdateMAAsync(maNewApp); return(result); }
public async Task <ApiResponse> UpdateMAVariationAsync([FromBody] MABusinessModel maVariation) { var result = await _maService.UpdateMAAsync(maVariation); return(result); }