protected static FR_L2DT_GADT_1349_Array Execute(DbConnection Connection, DbTransaction Transaction, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { #region UserCode var returnValue = new FR_L2DT_GADT_1349_Array(); #region Get Languages P_L2LN_GALFTID_1530 param = new P_L2LN_GALFTID_1530(); param.Tenant_RefID = securityTicket.TenantID; var DBLanguages = cls_Get_All_Languages_ForTenantID.Invoke(Connection, Transaction, param, securityTicket).Result; var languages = DBLanguages.Select(i => new ISOLanguage() { ISO = i.ISO_639_1, LanguageID = i.CMN_LanguageID }).ToList(); #endregion Assembly asm = Assembly.GetExecutingAssembly(); XmlDocument resource = new XmlDocument(); XmlTextReader reader = new XmlTextReader(asm.GetManifestResourceStream(DMDocumentTemplates.ResourceFilePath)); resource.Load(reader); var predefinedDocumentTemplates = DMDocumentTemplates.Get_PredefinedDocumentTemplates(Connection, Transaction, securityTicket); var globalPropertyMatchingIDs = predefinedDocumentTemplates.Select(i => i.GlobalPropertyMatchingID).ToList(); var globalMatching2Dict = DBCommonsReader.Instance.GetDictObjectsFromResourceFile(globalPropertyMatchingIDs, resource, ORM_DOC_DocumentTemplate.TableName, languages); List <L2DT_GADT_1349> documentTemplatesResult = new List <L2DT_GADT_1349>(); foreach (var template in predefinedDocumentTemplates) { L2DT_GADT_1349 documentTemplate = new L2DT_GADT_1349(); documentTemplate.DOC_DocumentTemplateID = DMDocumentTemplates.Get_DocumentTemplates_for_GlobalPropertyMatchingID(Connection, Transaction, template.GlobalPropertyMatchingID, securityTicket); documentTemplate.DocumentTemplate_Name = globalMatching2Dict[template.GlobalPropertyMatchingID]; documentTemplate.GlobalPropertyMatching = template.GlobalPropertyMatchingID; documentTemplatesResult.Add(documentTemplate); } returnValue.Result = documentTemplatesResult.ToArray(); return(returnValue); #endregion UserCode }
///<summary> /// Save Product Code Type for current Tenant (from SessionSecurityTicket) ///<summary> private static Guid Save_ProductCodeTypeForTenant(DbConnection Connection, DbTransaction Transaction, String contactType, SessionSecurityTicket securityTicket) { var allProductCodeTypes = EnumUtils.GetAllEnumTypeDescriptionPairs <EProductCodeType>(); var enumType = allProductCodeTypes[contactType]; string globalPropertyMatchingID = GetEnumDescription(enumType); #region Dict_Label #region Get Languages P_L2LN_GALFTID_1530 param = new P_L2LN_GALFTID_1530(); param.Tenant_RefID = securityTicket.TenantID; var DBLanguages = cls_Get_All_Languages_ForTenantID.Invoke(Connection, Transaction, param, securityTicket).Result; var languages = DBLanguages.Select(i => new ISOLanguage() { ISO = i.ISO_639_1, LanguageID = i.CMN_LanguageID }).ToList(); #endregion Assembly asm = Assembly.GetExecutingAssembly(); XmlDocument resource = new XmlDocument(); XmlTextReader reader = new XmlTextReader(asm.GetManifestResourceStream(DMProductCodeTypes.ResourceFilePath)); resource.Load(reader); var PCTEnums = DMProductCodeTypes.Get_PredefinedProductCodeTypes(Connection, Transaction, securityTicket); var dict = DBCommonsReader.Instance.GetDictObjectsFromResourceFile(PCTEnums, resource, ORM_CMN_PRO_ProductCode_Type.TableName, languages); #endregion ORM_CMN_PRO_ProductCode_Type ORMContactType = new ORM_CMN_PRO_ProductCode_Type(); ORMContactType.CMN_PRO_ProductCode_TypeID = Guid.NewGuid(); ORMContactType.GlobalPropertyMatchingID = globalPropertyMatchingID; ORMContactType.ProductCode_TypeName = dict[globalPropertyMatchingID].Contents.FirstOrDefault().Content; ORMContactType.Creation_Timestamp = DateTime.Now; ORMContactType.Tenant_RefID = securityTicket.TenantID; ORMContactType.Save(Connection, Transaction); return(ORMContactType.CMN_PRO_ProductCode_TypeID); }
protected static FR_L2CN_GACCT_1519_Array Execute(DbConnection Connection, DbTransaction Transaction, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { #region UserCode var returnValue = new FR_L2CN_GACCT_1519_Array(); #region Get Languages P_L2LN_GALFTID_1530 param = new P_L2LN_GALFTID_1530(); param.Tenant_RefID = securityTicket.TenantID; var DBLanguages = cls_Get_All_Languages_ForTenantID.Invoke(Connection, Transaction, param, securityTicket).Result; var languages = DBLanguages.Select(i => new ISOLanguage() { ISO = i.ISO_639_1, LanguageID = i.CMN_LanguageID }).ToList(); #endregion Assembly asm = Assembly.GetExecutingAssembly(); XmlDocument resource = new XmlDocument(); XmlTextReader reader = new XmlTextReader(asm.GetManifestResourceStream(DMComunactionContactTypes.ResourceFilePath)); resource.Load(reader); var predefinedContactTypes = DMComunactionContactTypes.Get_PredefinedComunactionContactTypes(Connection, Transaction, securityTicket); var globalPropertyMatchingIDs = predefinedContactTypes.Select(i => i.GlobalPropertyMatchingID).ToList(); var globalMatching2Dict = DBCommonsReader.Instance.GetDictObjectsFromResourceFile(globalPropertyMatchingIDs, resource, ORM_CMN_PER_CommunicationContact_Type.TableName, languages); returnValue.Result = predefinedContactTypes.Select(item => new L2CN_GACCT_1519 { EnumType = item.Type, Type = item.GlobalPropertyMatchingID, Name = globalMatching2Dict[item.GlobalPropertyMatchingID] }).ToArray(); return(returnValue); #endregion UserCode }
protected static FR_Bool Execute(DbConnection Connection, DbTransaction Transaction, P_L5PA_SPED_1313 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { #region UserCode var returnValue = new FR_Bool(); returnValue.Result = false; P_L2LN_GALFTID_1530 langParam = new P_L2LN_GALFTID_1530(); langParam.Tenant_RefID = securityTicket.TenantID; var DBLanguages = cls_Get_All_Languages_ForTenantID.Invoke(Connection, Transaction, langParam, securityTicket).Result; var medPro_Credentials = cls_Get_TenantMemershipData.Invoke(Connection, Transaction, securityTicket).Result; var examination = ORM_HEC_ACT_PerformedAction.Query.Search(Connection, Transaction, new ORM_HEC_ACT_PerformedAction.Query() { IsDeleted = false, Tenant_RefID = securityTicket.TenantID, HEC_ACT_PerformedActionID = Parameter.ExaminationID }).Single(); #region save foreach (var item in Parameter.newDiagnoses) { if (medPro_Credentials.Credantial != null) { var potentialDiagnosisQuery = new ORM_HEC_DIA_PotentialDiagnosis.Query(); potentialDiagnosisQuery.IsDeleted = false; potentialDiagnosisQuery.Tenant_RefID = securityTicket.TenantID; potentialDiagnosisQuery.PotentialDiagnosisITL = item.DiagnoseITL; var potentialDiagnosis = ORM_HEC_DIA_PotentialDiagnosis.Query.Search(Connection, Transaction, potentialDiagnosisQuery).SingleOrDefault(); if (potentialDiagnosis == null) { potentialDiagnosis = new ORM_HEC_DIA_PotentialDiagnosis(); potentialDiagnosis.HEC_DIA_PotentialDiagnosisID = Guid.NewGuid(); potentialDiagnosis.ICD10_Code = item.DiagnoseICD10; Dict name = new Dict("hec_dia_potentialdiagnoses"); for (int i = 0; i < DBLanguages.Length; i++) { name.AddEntry(DBLanguages[i].CMN_LanguageID, item.DiagnoseName); } potentialDiagnosis.PotentialDiagnosis_Name = name; potentialDiagnosis.PotentialDiagnosisITL = item.DiagnoseITL; potentialDiagnosis.Tenant_RefID = securityTicket.TenantID; potentialDiagnosis.Creation_Timestamp = DateTime.Now; potentialDiagnosis.Modification_Timestamp = DateTime.Now; potentialDiagnosis.Save(Connection, Transaction); } //check if exists active patient diagnoses (same one) var patientDiagQuery = new ORM_HEC_Patient_Diagnosis.Query(); patientDiagQuery.IsDeleted = false; patientDiagQuery.Tenant_RefID = securityTicket.TenantID; patientDiagQuery.R_IsActive = true; patientDiagQuery.R_PotentialDiagnosis_RefID = potentialDiagnosis.HEC_DIA_PotentialDiagnosisID; patientDiagQuery.Patient_RefID = Parameter.PatientID; var patientDiagExists = ORM_HEC_Patient_Diagnosis.Query.Search(Connection, Transaction, patientDiagQuery).SingleOrDefault(); if (patientDiagExists == null) { ORM_HEC_Patient_Diagnosis patientDiagnoses = new ORM_HEC_Patient_Diagnosis(); patientDiagnoses.HEC_Patient_DiagnosisID = Guid.NewGuid(); patientDiagnoses.Creation_Timestamp = DateTime.Now; patientDiagnoses.Modification_Timestamp = DateTime.Now; patientDiagnoses.R_IsActive = true; patientDiagnoses.Patient_RefID = Parameter.PatientID; patientDiagnoses.Tenant_RefID = securityTicket.TenantID; patientDiagnoses.R_DiagnosedOnDate = examination.IfPerfomed_DateOfAction; patientDiagnoses.R_ScheduledExpiryDate = patientDiagnoses.R_DiagnosedOnDate.AddDays(item.days_valid); patientDiagnoses.R_PotentialDiagnosis_RefID = potentialDiagnosis.HEC_DIA_PotentialDiagnosisID; patientDiagnoses.Save(Connection, Transaction); ORM_HEC_ACT_PerformedAction_DiagnosisUpdate diagnosisUpdate = new ORM_HEC_ACT_PerformedAction_DiagnosisUpdate(); diagnosisUpdate.HEC_ACT_PerformedAction_DiagnosisUpdateID = Guid.NewGuid(); diagnosisUpdate.Creation_Timestamp = DateTime.Now; diagnosisUpdate.Modification_Timestamp = DateTime.Now; diagnosisUpdate.Tenant_RefID = securityTicket.TenantID; diagnosisUpdate.ScheduledExpiryDate = DateTime.Now.AddDays(item.days_valid); diagnosisUpdate.PotentialDiagnosis_RefID = potentialDiagnosis.HEC_DIA_PotentialDiagnosisID; diagnosisUpdate.HEC_Patient_Diagnosis_RefID = patientDiagnoses.HEC_Patient_DiagnosisID; diagnosisUpdate.HEC_ACT_PerformedAction_RefID = Parameter.ExaminationID; diagnosisUpdate.Save(Connection, Transaction); } } else { var potentialDiagnosisQuery = new ORM_HEC_DIA_PotentialDiagnosis.Query(); potentialDiagnosisQuery.IsDeleted = false; potentialDiagnosisQuery.Tenant_RefID = securityTicket.TenantID; potentialDiagnosisQuery.HEC_DIA_PotentialDiagnosisID = new Guid(item.DiagnoseITL); var potentialDiagnosis = ORM_HEC_DIA_PotentialDiagnosis.Query.Search(Connection, Transaction, potentialDiagnosisQuery).SingleOrDefault(); //check if exists active patient diagnoses (same one) var patientDiagQuery = new ORM_HEC_Patient_Diagnosis.Query(); patientDiagQuery.IsDeleted = false; patientDiagQuery.Tenant_RefID = securityTicket.TenantID; patientDiagQuery.R_IsActive = true; patientDiagQuery.R_PotentialDiagnosis_RefID = potentialDiagnosis.HEC_DIA_PotentialDiagnosisID; var patientDiagExists = ORM_HEC_Patient_Diagnosis.Query.Search(Connection, Transaction, patientDiagQuery).SingleOrDefault(); if (patientDiagExists == null) { ORM_HEC_Patient_Diagnosis patientDiagnoses = new ORM_HEC_Patient_Diagnosis(); patientDiagnoses.HEC_Patient_DiagnosisID = Guid.NewGuid(); patientDiagnoses.Creation_Timestamp = DateTime.Now; patientDiagnoses.Modification_Timestamp = DateTime.Now; patientDiagnoses.R_IsActive = true; patientDiagnoses.Patient_RefID = Parameter.PatientID; patientDiagnoses.Tenant_RefID = securityTicket.TenantID; patientDiagnoses.R_DiagnosedOnDate = DateTime.Now; patientDiagnoses.R_ScheduledExpiryDate = DateTime.Now.AddDays(item.days_valid); patientDiagnoses.R_PotentialDiagnosis_RefID = potentialDiagnosis.HEC_DIA_PotentialDiagnosisID; patientDiagnoses.Save(Connection, Transaction); ORM_HEC_ACT_PerformedAction_DiagnosisUpdate diagnosisUpdate = new ORM_HEC_ACT_PerformedAction_DiagnosisUpdate(); diagnosisUpdate.HEC_ACT_PerformedAction_DiagnosisUpdateID = Guid.NewGuid(); diagnosisUpdate.Creation_Timestamp = DateTime.Now; diagnosisUpdate.Modification_Timestamp = DateTime.Now; diagnosisUpdate.Tenant_RefID = securityTicket.TenantID; diagnosisUpdate.ScheduledExpiryDate = DateTime.Now.AddDays(item.days_valid); diagnosisUpdate.PotentialDiagnosis_RefID = potentialDiagnosis.HEC_DIA_PotentialDiagnosisID; diagnosisUpdate.HEC_Patient_Diagnosis_RefID = patientDiagnoses.HEC_Patient_DiagnosisID; diagnosisUpdate.HEC_ACT_PerformedAction_RefID = Parameter.ExaminationID; diagnosisUpdate.Save(Connection, Transaction); } } } #endregion #region negated foreach (var item in Parameter.deletedDiagnoses) { var patientDiagnosesQuery = new ORM_HEC_Patient_Diagnosis.Query(); patientDiagnosesQuery.IsDeleted = false; patientDiagnosesQuery.R_IsNegated = false; patientDiagnosesQuery.R_IsActive = true; patientDiagnosesQuery.Tenant_RefID = securityTicket.TenantID; patientDiagnosesQuery.HEC_Patient_DiagnosisID = item.PatientDiagnoseID; var patientDiagnoses = ORM_HEC_Patient_Diagnosis.Query.Search(Connection, Transaction, patientDiagnosesQuery).Single(); patientDiagnoses.R_IsNegated = true; patientDiagnoses.R_IsActive = false; patientDiagnoses.Save(Connection, Transaction); var diagnoseUpdateQuery = new ORM_HEC_ACT_PerformedAction_DiagnosisUpdate.Query(); diagnoseUpdateQuery.HEC_Patient_Diagnosis_RefID = item.PatientDiagnoseID; diagnoseUpdateQuery.IsDeleted = false; diagnoseUpdateQuery.IsDiagnosisNegated = false; diagnoseUpdateQuery.Tenant_RefID = securityTicket.TenantID; var patientUpdate = ORM_HEC_ACT_PerformedAction_DiagnosisUpdate.Query.Search(Connection, Transaction, diagnoseUpdateQuery).Single(); patientUpdate.IsDiagnosisNegated = true; patientUpdate.Save(Connection, Transaction); } returnValue.Result = true; #endregion return(returnValue); #endregion UserCode }
protected static FR_L2PP_GaPP_1554_Array Execute(DbConnection Connection, DbTransaction Transaction, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { //Leave UserCode region to enable user code saving #region UserCode var returnValue = new FR_L2PP_GaPP_1554_Array(); //Put your code here var parameterTypes = DMPatientParameterTypes.Get_PredefinedPatientParameterTypes(Connection, Transaction, securityTicket); List <L2PP_GaPP_1554> patParameters = new List <L2PP_GaPP_1554>(); P_L2LN_GALFTID_1530 param = new P_L2LN_GALFTID_1530(); param.Tenant_RefID = securityTicket.TenantID; var DBLanguages = cls_Get_All_Languages_ForTenantID.Invoke(Connection, Transaction, param, securityTicket).Result; var languages = DBLanguages.Select(i => new ISOLanguage() { ISO = i.ISO_639_1, LanguageID = i.CMN_LanguageID }).ToList(); Assembly asm = Assembly.GetExecutingAssembly(); XmlDocument resource = new XmlDocument(); var xmlpath = asm.GetManifestResourceStream(DMPatientParameterTypes.ResourceFilePath); XmlTextReader reader = new XmlTextReader(xmlpath); resource.Load(reader); var predefinedPatientParameterTypes = DMPatientParameterTypes.Get_PredefinedPatientParameterTypes(Connection, Transaction, securityTicket); var globalPropertyMatchingIDs = predefinedPatientParameterTypes.Select(i => i.GlobalPropertyMatchingID).ToList(); var globalMatching2Dict = DBCommonsReader.Instance.GetDictObjectsFromResourceFile(globalPropertyMatchingIDs, resource, ORM_HEC_Patient_Parameter.TableName, languages); foreach (var item in parameterTypes) { var patientParameter = ORM_HEC_Patient_Parameter.Query.Search(Connection, Transaction, new ORM_HEC_Patient_Parameter.Query() { Tenant_RefID = securityTicket.TenantID, IsDeleted = false, GlobalPropertyMatchingID = item.GlobalPropertyMatchingID }); if (patientParameter != null && patientParameter.Count != 0) { L2PP_GaPP_1554 patParameter = new L2PP_GaPP_1554(); patParameter.GlobalPropertyMatchingID = item.GlobalPropertyMatchingID; patParameter.PatientParameter_ID = patientParameter.Single().HEC_Patient_ParameterID; patParameters.Add(patParameter); } else { ORM_HEC_Patient_Parameter newPatparameter = new ORM_HEC_Patient_Parameter(); newPatparameter.IsVitalParameter = true; newPatparameter.ParameterType_RefID = DMPatientParameterTypes.Get_PatientParameterTypes_for_GlobalPropertyMatchingID(Connection, Transaction, item.GlobalPropertyMatchingID, securityTicket); newPatparameter.Tenant_RefID = securityTicket.TenantID; newPatparameter.PatientParameterITL = Guid.NewGuid().ToString(); newPatparameter.GlobalPropertyMatchingID = item.GlobalPropertyMatchingID; newPatparameter.IsString = true; newPatparameter.Parameter_Name = globalMatching2Dict[item.GlobalPropertyMatchingID]; newPatparameter.Save(Connection, Transaction); L2PP_GaPP_1554 patParameter = new L2PP_GaPP_1554(); patParameter.GlobalPropertyMatchingID = item.GlobalPropertyMatchingID; patParameter.PatientParameter_ID = newPatparameter.HEC_Patient_ParameterID; patParameters.Add(patParameter); } } returnValue.Result = patParameters.ToArray(); return(returnValue); #endregion UserCode }
protected static FR_L6PO_GPfCOCM_1502 Execute(DbConnection Connection, DbTransaction Transaction, P_L6PO_GPfCOCM_1502 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { #region UserCode var returnValue = new FR_L6PO_GPfCOCM_1502(); returnValue.Result = new L6PO_GPfCOCM_1502(); #region Get Languages P_L2LN_GALFTID_1530 langParam = new P_L2LN_GALFTID_1530(); langParam.Tenant_RefID = securityTicket.TenantID; var DBLanguages = cls_Get_All_Languages_ForTenantID.Invoke(Connection, Transaction, langParam, securityTicket).Result; var LanguageID = DBLanguages.Where(i => i.ISO_639_1 == "DE").SingleOrDefault().CMN_LanguageID; #endregion #region ORM_ORD_PRC_ProcurementOrder_Header var procurementHeader = new ORM_ORD_PRC_ProcurementOrder_Header(); procurementHeader.Load(Connection, Transaction, Parameter.ProcurementHeaderID); #endregion #region ORM_ORD_PRC_ProcurementOrder_Positions var paramShoppingProducts = new P_L5PO_GPPaSCIfH_1750(); paramShoppingProducts.ProcurementOrderHeaderID = Parameter.ProcurementHeaderID; var shoppingProducts = cls_Get_ProcurementPositions_and_ShoppingCartInfo_for_HeaderID.Invoke(Connection, Transaction, paramShoppingProducts, securityTicket).Result; #endregion #region Positions var positions = new List <L6PO_GPfCOCM_1502a>(); foreach (var shoppingProduct in shoppingProducts) { var product = new ORM_CMN_PRO_Product(); product.Load(Connection, Transaction, shoppingProduct.CMN_PRO_Product_RefID); if (String.IsNullOrEmpty(product.ProductITL)) { product.ProductITL = Guid.NewGuid().ToString(); product.Save(Connection, Transaction); } var catalogSubscription = new ORM_CMN_PRO_SubscribedCatalog(); catalogSubscription.Load(Connection, Transaction, product.IfImportedFromExternalCatalog_CatalogSubscription_RefID); var position = new L6PO_GPfCOCM_1502a(); position.ProductITL = product.ProductITL; position.ProductNumber = product.Product_Number; position.ProductName = product.Product_Name.GetContent(LanguageID); position.ProductDescription = product.Product_Description.GetContent(LanguageID); position.Comment = "NotDefinedBySender"; position.Quantity = shoppingProduct.Position_Quantity; position.IsProductReplacementAllowed = shoppingProduct.IsProductReplacementAllowed; position.SourceCatalogITL = catalogSubscription.CatalogCodeITL; position.UnitPrice = shoppingProduct.Position_ValuePerUnit; position.NetoPrice = shoppingProduct.Position_ValueTotal; var shoppingCart2Office = ORM_ORD_PRC_Office_ShoppingCart.Query.Search(Connection, Transaction, new ORM_ORD_PRC_Office_ShoppingCart.Query { ORD_PRC_ShoppingCart_RefID = shoppingProduct.ORD_PRC_ShoppingCart_RefID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID } ).Single(); position.Quantites = new L6PO_GPfCOCM_1502b[] { new L6PO_GPfCOCM_1502b() { OfficeID = shoppingCart2Office.CMN_STR_Office_RefID, Quantity = shoppingProduct.Position_Quantity } }; positions.Add(position); } #endregion #region Comments var procurmentNotes = ORM_ORD_PRC_ProcurementOrder_Note.Query.Search(Connection, Transaction, new ORM_ORD_PRC_ProcurementOrder_Note.Query() { ORD_PRC_ProcurementOrder_Header_RefID = procurementHeader.ORD_PRC_ProcurementOrder_HeaderID, IsDeleted = false }).ToList(); var comments = new List <L6PO_GPfCOCM_1502c>(); foreach (var note in procurmentNotes) { comments.Add( new L6PO_GPfCOCM_1502c() { OfficeID = note.CMN_STR_Office_RefID, Content = note.Comment, PublilshDate = note.NotePublishDate, SequenceNumber = note.SequenceOrderNumber, Title = note.Title } ); } #endregion returnValue.Result.ProcurProcurementHeaderID = procurementHeader.ORD_PRC_ProcurementOrder_HeaderID; returnValue.Result.OrderNumber = procurementHeader.ProcurementOrder_Number; returnValue.Result.ProcurementOrderDate = procurementHeader.ProcurementOrder_Date; returnValue.Result.Comments = comments.ToArray(); returnValue.Result.Positions = positions.ToArray(); return(returnValue); #endregion UserCode }
protected static FR_L5SO_RSP_1524 Execute(DbConnection Connection, DbTransaction Transaction, P_L5SO_RSP_1524 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { #region UserCode var returnValue = new FR_L5SO_RSP_1524(); returnValue.Result = new L5SO_RSP_1524(); var shipmentPositionToReplace = new ORM_LOG_SHP_Shipment_Position(); shipmentPositionToReplace.Load(Connection, Transaction, Parameter.PositionID); var startProduct = new ORM_CMN_PRO_Product(); startProduct.Load(Connection, Transaction, shipmentPositionToReplace.CMN_PRO_Product_RefID); var finalProduct = new ORM_CMN_PRO_Product(); finalProduct.Load(Connection, Transaction, Parameter.ProductID); shipmentPositionToReplace.ShipmentPosition_PricePerUnitValueWithoutTax = Parameter.Price; shipmentPositionToReplace.ShipmentPosition_ValueWithoutTax = Parameter.Price * (Decimal)shipmentPositionToReplace.QuantityToShip; shipmentPositionToReplace.CMN_PRO_Product_RefID = Parameter.ProductID; returnValue.Result.ReplacedPosition = new FR_Guid(shipmentPositionToReplace.Save(Connection, Transaction), shipmentPositionToReplace.LOG_SHP_Shipment_PositionID).Result; P_L2LN_GALFTID_1530 langParam = new P_L2LN_GALFTID_1530(); langParam.Tenant_RefID = securityTicket.TenantID; SessionSecurityTicket fakeTicket = new SessionSecurityTicket(); var DBLanguages = cls_Get_All_Languages_ForTenantID.Invoke(Connection, Transaction, langParam, fakeTicket).Result; var languages = DBLanguages.Select(i => new ISOLanguage() { ISO = i.ISO_639_1, LanguageID = i.CMN_LanguageID }).ToList(); var dicts = EnumUtils.GetDictObjectsForStaticListData <ECustomMessages>(ResourceFilePath.CustomMessages, ORM_LOG_SHP_Shipment_Note.TableName, languages); ORM_LOG_SHP_Shipment_Note note = new ORM_LOG_SHP_Shipment_Note(); note.LOG_SHP_Shipment_NoteID = Guid.NewGuid(); note.Shipment_Header_RefID = Parameter.ShipmentHeaderID; note.Comment = String.Format(dicts["comment.article-replaced"].Contents[1].Content, startProduct.Product_Name.Contents[0].Content, startProduct.Product_Number, finalProduct.Product_Name.Contents[0].Content, finalProduct.Product_Number); note.Tenant_RefID = securityTicket.TenantID; note.IsNotePrintedOnDeliveryPaper = true; note.Save(Connection, Transaction); returnValue.Result.ReplacedPosition = new FR_Guid(shipmentPositionToReplace.Save(Connection, Transaction), shipmentPositionToReplace.LOG_SHP_Shipment_PositionID).Result; ORM_LOG_RSV_Reservation.Query.SoftDelete(Connection, Transaction, new ORM_LOG_RSV_Reservation.Query { LOG_SHP_Shipment_Position_RefID = shipmentPositionToReplace.LOG_SHP_Shipment_PositionID, IsDeleted = false }); #region CommentedUseful #endregion cls_Update_Current_TotalValue_on_ShipmentHeader_from_Positions.Invoke(Connection, Transaction, new P_L5SO_UCTVoSHfP_1549 { ShipmentHeaderID = Parameter.ShipmentHeaderID }, securityTicket); return(returnValue); #endregion UserCode }
protected static FR_Bool Execute(DbConnection Connection, DbTransaction Transaction, P_L5ZW_SDfNC_1707 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { #region UserCode var returnValue = new FR_Bool(); returnValue.Result = false; //Put your code here #region get securityTicket and businessParticipantID by Paramter.AccountID and set defaultLanguageID Guid tenantID; Guid businessParticipantID; if (Parameter.AccountID == Guid.Empty) { return(returnValue); } ORM_USR_Account orm_account = new ORM_USR_Account(); var result = orm_account.Load(Connection, Transaction, Parameter.AccountID); if (result.Status != FR_Status.Success || orm_account.USR_AccountID == Guid.Empty) { return(returnValue); } tenantID = orm_account.Tenant_RefID; securityTicket = new CSV2Core.SessionSecurity.SessionSecurityTicket() { TenantID = tenantID }; ORM_CMN_BPT_BusinessParticipant.Query businessParticipantQuery = new ORM_CMN_BPT_BusinessParticipant.Query(); businessParticipantQuery.IfTenant_Tenant_RefID = tenantID; businessParticipantQuery.IsDeleted = false; ORM_CMN_BPT_BusinessParticipant businessParticipant = ORM_CMN_BPT_BusinessParticipant.Query.Search(Connection, Transaction, businessParticipantQuery).FirstOrDefault(); if (businessParticipant == null) { return(returnValue); } businessParticipantID = businessParticipant.CMN_BPT_BusinessParticipantID; #endregion #region get languages for tenant and set parameter dict values P_L2LN_GALFTID_1530 languageParam = new P_L2LN_GALFTID_1530() { Tenant_RefID = tenantID }; L2LN_GALFTID_1530[] languages = cls_Get_All_Languages_ForTenantID.Invoke(Connection, Transaction, languageParam, securityTicket).Result; SetParameterDictValues(Parameter, languages); List <ISOLanguage> languagesISOs = new List <ISOLanguage>(); languagesISOs.AddRange(languages.Select(l => new ISOLanguage() { ISO = l.ISO_639_1, LanguageID = l.CMN_LanguageID }).ToList()); #endregion #region save defaultLanguage // We are setting language for bp and acc var defaultLanguage = languages.FirstOrDefault(i => i.ISO_639_1.ToLower().Contains(Parameter.DefaultLanguageCode.ToLower())); if (defaultLanguage != null) { businessParticipant.DefaultLanguage_RefID = defaultLanguage.CMN_LanguageID; businessParticipant.Save(Connection, Transaction); orm_account.DefaultLanguage_RefID = defaultLanguage.CMN_LanguageID; orm_account.Save(Connection, Transaction); } #endregion #region save default country if (Parameter.DefaultCountry != null) { ORM_CMN_Country country = new ORM_CMN_Country(); country.CMN_CountryID = Guid.NewGuid(); country.Country_ISOCode_Alpha3 = Parameter.DefaultCountry.Code; country.Country_Name = new Dict() { DictionaryID = Guid.NewGuid() }; country.Creation_Timestamp = DateTime.Now; country.Default_Currency_RefID = Guid.Empty; country.Default_Language_RefID = Guid.Empty; country.Tenant_RefID = tenantID; country.IsDeleted = false; country.IsDefault = true; foreach (var languageItem in languages) { country.Country_Name.UpdateEntry(languageItem.CMN_LanguageID, Parameter.DefaultCountry.Name); } country.Save(Connection, Transaction); } #endregion #region save default currency //asign currency if (Parameter.DefaultCurrency != null) { ORM_CMN_Currency currency = new ORM_CMN_Currency(); currency.CMN_CurrencyID = Guid.NewGuid(); currency.Creation_Timestamp = DateTime.Now; currency.IsDeleted = false; currency.ISO4127 = Parameter.DefaultCurrency.Code; currency.Name = new Dict() { DictionaryID = Guid.NewGuid() }; currency.Tenant_RefID = tenantID; foreach (var language in languages) { currency.Name.UpdateEntry(language.CMN_LanguageID, Parameter.DefaultCurrency.Name); } currency.Save(Connection, Transaction); //set default currency ORM_CMN_BPT_BusinessParticipant businessPart = new ORM_CMN_BPT_BusinessParticipant(); businessPart.Load(Connection, Transaction, businessParticipantID); businessPart.DefaultCurrency_RefID = currency.CMN_CurrencyID; businessPart.Save(Connection, Transaction); } #endregion #region save organisational units if (Parameter.OrganisationalUnitParameters.Length > 0) { foreach (var item in Parameter.OrganisationalUnitParameters) { cls_Save_Office.Invoke(Connection, Transaction, item, securityTicket); } } #endregion #region save cost centers if (Parameter.CostCenterParameters.Length > 0) { foreach (var item in Parameter.CostCenterParameters) { cls_Save_CostCenter.Invoke(Connection, Transaction, item, securityTicket); } } #endregion #region save warehouses if (Parameter.WarehousesParameters.Length > 0) { #region save warehouse group P_L2WH_SWHG_1327 warehouseGroupParam = new P_L2WH_SWHG_1327(); warehouseGroupParam.Parent_RefID = Guid.Empty; warehouseGroupParam.WarehouseGroup_Name = "Waregouse group"; warehouseGroupParam.WarehouseGroup_Description = new Dict() { DictionaryID = Guid.NewGuid() }; foreach (var language in languages) { warehouseGroupParam.WarehouseGroup_Description.UpdateEntry(language.CMN_LanguageID, String.Empty); } var warehouseGroupID = cls_Save_Warehouse_Group.Invoke(Connection, Transaction, warehouseGroupParam, securityTicket).Result; #endregion foreach (var item in Parameter.WarehousesParameters) { item.LOG_WRH_WarehouseGroupID = warehouseGroupID; cls_Save_Warehouse.Invoke(Connection, Transaction, item, securityTicket); } } #endregion #region create dimension templates string jsonTemplates = ReadFromFile.LoadContentFromFile(@"Dimensions.json"); List <Dimension> dimensionTemplates = JsonConvert.DeserializeObject <List <Dimension> >(jsonTemplates); int orderSequence = 1; ORM_CMN_PRO_Dimension orm_dimension; ORM_CMN_PRO_Dimension_Value orm_dimensionValue; foreach (var template in dimensionTemplates) { orderSequence = 1; #region save dimension orm_dimension = new ORM_CMN_PRO_Dimension(); orm_dimension.Product_RefID = Guid.Empty; orm_dimension.DimensionName = new Dict() { DictionaryID = Guid.NewGuid() }; orm_dimension.IsDimensionTemplate = true; orm_dimension.Tenant_RefID = tenantID; foreach (var language in languages) { orm_dimension.DimensionName.UpdateEntry(language.CMN_LanguageID, template.Name); } orm_dimension.Save(Connection, Transaction); #endregion #region save dimension values foreach (var templateValue in template.DimansionValues) { orm_dimensionValue = new ORM_CMN_PRO_Dimension_Value(); orm_dimensionValue.Dimensions_RefID = orm_dimension.CMN_PRO_DimensionID; orm_dimensionValue.DimensionValue_Text = new Dict() { DictionaryID = Guid.NewGuid() }; orm_dimensionValue.Tenant_RefID = tenantID; orm_dimensionValue.OrderSequence = orderSequence; foreach (var language in languages) { orm_dimensionValue.DimensionValue_Text.UpdateEntry(language.CMN_LanguageID, templateValue); } orm_dimensionValue.Save(Connection, Transaction); orderSequence++; } #endregion } #endregion #region create shipment types string shipmentTypesJson = ReadFromFile.LoadContentFromFile(@"ShipmentTypes.json"); List <ShipmentTypes> shipmentTypes = JsonConvert.DeserializeObject <List <ShipmentTypes> >(shipmentTypesJson); ORM_LOG_SHP_Shipment_Type orm_shipmentType; foreach (var type in shipmentTypes) { #region save LOG_SHP_Shipment_Type orm_shipmentType = new ORM_LOG_SHP_Shipment_Type(); orm_shipmentType.ShipmentType_Name = new Dict() { DictionaryID = Guid.NewGuid() }; orm_shipmentType.ShipmentType_Description = new Dict() { DictionaryID = Guid.NewGuid() }; orm_shipmentType.Tenant_RefID = tenantID; foreach (var language in languages) { orm_shipmentType.ShipmentType_Name.UpdateEntry(language.CMN_LanguageID, type.Name); orm_shipmentType.ShipmentType_Description.UpdateEntry(language.CMN_LanguageID, string.Empty); } orm_shipmentType.Save(Connection, Transaction); #endregion } #endregion #region create number ranges string numberRangesJson = ReadFromFile.LoadContentFromFile(@"NumberRanges.json"); NumberRange numberRanges = JsonConvert.DeserializeObject <NumberRange>(numberRangesJson); ORM_CMN_NumberRange_UsageArea numberRangeUsageArea; ORM_CMN_NumberRange orm_numberRanges; foreach (var item in numberRanges.NumberRanges) { if (Parameter.IsCustomerRegistration && item.Name == "Customer orders") { continue; } if (!Parameter.IsCustomerRegistration && item.Name == "Distribution orders") { continue; } if (!Parameter.IsCustomerRegistration && item.Name == "Procurement orders") { continue; } numberRangeUsageArea = new ORM_CMN_NumberRange_UsageArea(); numberRangeUsageArea.UsageArea_Name = new Dict() { DictionaryID = Guid.NewGuid() }; numberRangeUsageArea.UsageArea_Description = new Dict() { DictionaryID = Guid.NewGuid() }; foreach (var language in languages) { numberRangeUsageArea.UsageArea_Name.UpdateEntry(language.CMN_LanguageID, item.Name); numberRangeUsageArea.UsageArea_Description.UpdateEntry(language.CMN_LanguageID, string.Empty); } numberRangeUsageArea.Tenant_RefID = tenantID; numberRangeUsageArea.GlobalStaticMatchingID = item.GlobalStaticMatchingID; numberRangeUsageArea.Save(Connection, Transaction); orm_numberRanges = new ORM_CMN_NumberRange(); orm_numberRanges.NumberRange_Name = item.Name; orm_numberRanges.Tenant_RefID = tenantID; orm_numberRanges.NumberRange_UsageArea_RefID = numberRangeUsageArea.CMN_NumberRange_UsageAreaID; orm_numberRanges.FixedPrefix = item.FixedPrefix; orm_numberRanges.Formatting_LeadingFillCharacter = item.FillCharacter; orm_numberRanges.Formatting_NumberLength = item.Length; orm_numberRanges.Value_Current = item.CurrentValue; orm_numberRanges.Value_Start = item.StartValue; orm_numberRanges.Value_End = item.EndValue; orm_numberRanges.Save(Connection, Transaction); } #endregion #region create inventory change reasons string inventoryChangeReasonsJson = ReadFromFile.LoadContentFromFile(@"InventoryChangeReasons.json"); List <InventoryChangeReasons> inventoryChangeReasons = JsonConvert.DeserializeObject <List <InventoryChangeReasons> >(inventoryChangeReasonsJson); ORM_LOG_WRH_InventoryChangeReason orm_inventoryChangeReason; foreach (var reason in inventoryChangeReasons) { #region save inventory change reason orm_inventoryChangeReason = new ORM_LOG_WRH_InventoryChangeReason(); orm_inventoryChangeReason.GlobalPropertyMatchingID = InventoryChangeReasons.InventoryChangeReasonGlobalPropertyMatchingID + "-" + reason.Name; orm_inventoryChangeReason.InventoryChange_Name = new Dict() { DictionaryID = Guid.NewGuid() }; orm_inventoryChangeReason.InventoryChange_Description = new Dict() { DictionaryID = Guid.NewGuid() }; orm_inventoryChangeReason.Tenant_RefID = tenantID; foreach (var language in languages) { orm_inventoryChangeReason.InventoryChange_Name.UpdateEntry(language.CMN_LanguageID, reason.Name); orm_inventoryChangeReason.InventoryChange_Description.UpdateEntry(language.CMN_LanguageID, string.Empty); } orm_inventoryChangeReason.Save(Connection, Transaction); #endregion } #endregion #region create shipment statuses var shipmentStatuses = Enum.GetValues(typeof(EShipmentStatus)); var shipmentStatusDicts = EnumUtils.GetDictObjectsForStaticListData <EShipmentStatus>( ResourceFilePath.ShipmentStatus, ORM_LOG_SHP_Shipment_Status.TableName, languagesISOs); var statusCodeCount = 1; ORM_LOG_SHP_Shipment_Status shipmentStatus; foreach (EShipmentStatus status in shipmentStatuses) { shipmentStatus = new ORM_LOG_SHP_Shipment_Status(); shipmentStatus.GlobalPropertyMatchingID = EnumUtils.GetEnumDescription((EShipmentStatus)status); shipmentStatus.Status_Code = statusCodeCount++; shipmentStatus.Status_Name = shipmentStatusDicts[EnumUtils.GetEnumDescription((EShipmentStatus)status)]; shipmentStatus.Tenant_RefID = tenantID; shipmentStatus.Save(Connection, Transaction); } #endregion if (Parameter.IsCustomerRegistration) { #region create procurement order statuses var procurementStatuses = Enum.GetValues(typeof(EProcurementStatus)); ORM_ORD_PRC_ProcurementOrder_Status procurementOrderStatus; foreach (EProcurementStatus status in procurementStatuses) { procurementOrderStatus = new ORM_ORD_PRC_ProcurementOrder_Status(); procurementOrderStatus.GlobalPropertyMatchingID = EnumUtils.GetEnumDescription(status); procurementOrderStatus.Tenant_RefID = tenantID; procurementOrderStatus.Save(Connection, Transaction); } #endregion } else { #region create customer order statuses var customerOrderStatuses = Enum.GetValues(typeof(ECustomerOrderStatus)); var customerOrderStatusesDicts = EnumUtils.GetDictObjectsForStaticListData <ECustomerOrderStatus>( ResourceFilePath.CustomerOrderStatus, ORM_ORD_CUO_CustomerOrder_Status.TableName, languagesISOs); var count = 1; ORM_ORD_CUO_CustomerOrder_Status customerOrderStatus; foreach (var status in customerOrderStatuses) { customerOrderStatus = new ORM_ORD_CUO_CustomerOrder_Status(); customerOrderStatus.GlobalPropertyMatchingID = EnumUtils.GetEnumDescription((ECustomerOrderStatus)status); customerOrderStatus.Status_Code = count++; customerOrderStatus.Status_Name = customerOrderStatusesDicts[EnumUtils.GetEnumDescription((ECustomerOrderStatus)status)]; customerOrderStatus.Tenant_RefID = tenantID; customerOrderStatus.Save(Connection, Transaction); } #endregion } returnValue.Result = true; return(returnValue); #endregion UserCode }
protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L5ME_SL_1047 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { //Leave UserCode region to enable user code saving #region UserCode var returnValue = new FR_Guid(); //get languages for Tenant P_L2LN_GALFTID_1530 langParam = new P_L2LN_GALFTID_1530(); langParam.Tenant_RefID = securityTicket.TenantID; var DBLanguages = cls_Get_All_Languages_ForTenantID.Invoke(Connection, Transaction, langParam, securityTicket).Result; foreach (var item in Parameter.Localization) { //Delete if (item.IsDeleted) { var localizationQuery = new ORM_HEC_DIA_Diagnosis_Localization.Query(); localizationQuery.IsDeleted = false; localizationQuery.HEC_DIA_Diagnosis_LocalizationID = item.LocalizationID; localizationQuery.Diagnosis_RefID = Parameter.DiagnoseID; var localization = ORM_HEC_DIA_Diagnosis_Localization.Query.Search(Connection, Transaction, localizationQuery).SingleOrDefault(); if (localization != null) { localization.IsDeleted = true; localization.Save(Connection, Transaction); } } else { var localizationQuery = new ORM_HEC_DIA_Diagnosis_Localization.Query(); localizationQuery.IsDeleted = false; localizationQuery.HEC_DIA_Diagnosis_LocalizationID = item.LocalizationID; localizationQuery.Diagnosis_RefID = Parameter.DiagnoseID; var localization = ORM_HEC_DIA_Diagnosis_Localization.Query.Search(Connection, Transaction, localizationQuery).SingleOrDefault(); //Edit if (localization != null) { Dict name = new Dict("hec_dia_diagnosis_localizations"); for (int i = 0; i < DBLanguages.Length; i++) { name.AddEntry(DBLanguages[i].CMN_LanguageID, item.LocalizationName); } localization.DiagnosisLocalization_Name = name; localization.Save(Connection, Transaction); } else // New { ORM_HEC_DIA_Diagnosis_Localization localizationNew = new ORM_HEC_DIA_Diagnosis_Localization(); localizationNew.HEC_DIA_Diagnosis_LocalizationID = item.LocalizationID; Dict name = new Dict("hec_dia_diagnosis_localizations"); for (int i = 0; i < DBLanguages.Length; i++) { name.AddEntry(DBLanguages[i].CMN_LanguageID, item.LocalizationName); } localizationNew.DiagnosisLocalization_Name = name; localizationNew.Tenant_RefID = securityTicket.TenantID; localizationNew.Creation_Timestamp = DateTime.Now; localizationNew.Diagnosis_RefID = Parameter.DiagnoseID; localizationNew.Save(Connection, Transaction); } } } return(returnValue); #endregion UserCode }
protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L5ME_SS_1120 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { #region UserCode var returnValue = new FR_Guid(); //Put your code here returnValue.Result = Guid.Empty; P_L2LN_GALFTID_1530 langParam = new P_L2LN_GALFTID_1530(); langParam.Tenant_RefID = securityTicket.TenantID; var DBLanguages = cls_Get_All_Languages_ForTenantID.Invoke(Connection, Transaction, langParam, securityTicket).Result; //var serializer = new JsonNetSerializer(); //var connection = new ElasticConnection((String)HttpContext.GetGlobalResourceObject("Global", "ElasticConnection"), 9200); #region Save if (Parameter.Substance_ID == Guid.Empty) { ORM_HEC_SUB_Substance newSubstance = new ORM_HEC_SUB_Substance(); newSubstance.HEC_SUB_SubstanceID = Guid.NewGuid(); newSubstance.GlobalPropertyMatchingID = Parameter.Substance_Name; newSubstance.Tenant_RefID = securityTicket.TenantID; newSubstance.Save(Connection, Transaction); ORM_HEC_SUB_Substance_Name newSubstanceName = new ORM_HEC_SUB_Substance_Name(); newSubstanceName.HEC_SUB_Substance_NameID = Guid.NewGuid(); newSubstanceName.HEC_SUB_Substance_RefID = newSubstance.HEC_SUB_SubstanceID; Dict name = new Dict("hec_sub_substance_name"); for (int i = 0; i < DBLanguages.Length; i++) { name.AddEntry(DBLanguages[i].CMN_LanguageID, Parameter.Substance_Name); } Dict nameOrigin = new Dict("hec_sub_substance_name"); for (int i = 0; i < DBLanguages.Length; i++) { nameOrigin.AddEntry(DBLanguages[i].CMN_LanguageID, Parameter.Substance_Name); } newSubstanceName.SubstanceName_Label = name; newSubstanceName.SubstanceName_Origin = nameOrigin; newSubstanceName.Tenant_RefID = securityTicket.TenantID; newSubstanceName.Save(Connection, Transaction); //#region Upload To Elastic //bool indexExists = true; //#region set Mapping //string jsonMapping = new MapBuilder<Models.Substance>() // .RootObject("substance", ro => ro // .Properties(pr => pr // .MultiField("name", mfp => mfp.Fields(f => f // .String("name", sp => sp.IndexAnalyzer("autocomplete").SearchAnalyzer(DefaultAnalyzers.standard)) // .String("lower_case_sort", sp => sp.Analyzer("caseinsensitive")) // ) // ) // )).BuildBeautified(); //#endregion //try //{ // connection.Head(new IndexExistsCommand(securityTicket.TenantID.ToString())); //} //catch (OperationException ex) //{ // if (ex.HttpStatusCode == 404) // indexExists = false; //} //if (!indexExists) //{ // #region set index settings // string settings = new IndexSettingsBuilder() // .Analysis(anl => anl // .Filter(fil => fil // .EdgeNGram("autocomplete_filter", gr => gr.MinGram(1).MaxGram(20))) // .Analyzer(a => a // .Custom("caseinsensitive", custom => custom // .Tokenizer(DefaultTokenizers.keyword) // .Filter("lowercase") // ) // .Custom("autocomplete", custom => custom // .Tokenizer(DefaultTokenizers.standard) // .Filter("lowercase", "autocomplete_filter") // ) // ) // ) // .BuildBeautified(); // #endregion // connection.Put(securityTicket.TenantID.ToString(), settings); //} //#region check if type exists //bool typeExists = true; //try //{ // connection.Head(new IndexExistsCommand(securityTicket.TenantID.ToString() + "/substance")); //} //catch (OperationException ex) //{ // if (ex.HttpStatusCode == 404) // typeExists = false; //} //#endregion //if (!typeExists) // connection.Put(new PutMappingCommand(securityTicket.TenantID.ToString(), "substance"), jsonMapping); //string bulkCommand = new BulkCommand(index: securityTicket.TenantID.ToString(), type: "substance").Refresh(); //List<Models.Substance> substanceList = new List<Models.Substance>(); //Models.Substance substance = new Models.Substance(); //substance.id = newSubstance.HEC_SUB_SubstanceID.ToString(); //substance.name = Parameter.Substance_Name; //substanceList.Add(substance); //string bulkJson = new BulkBuilder(serializer) // .BuildCollection(substanceList, (builder, pro) => builder.Index(data: pro, id: pro.id) // ); //connection.Post(bulkCommand, bulkJson); //#endregion returnValue.Result = newSubstance.HEC_SUB_SubstanceID; } #endregion else { var substanceQuery = new ORM_HEC_SUB_Substance.Query(); substanceQuery.IsDeleted = false; substanceQuery.HEC_SUB_SubstanceID = Parameter.Substance_ID; var substance = ORM_HEC_SUB_Substance.Query.Search(Connection, Transaction, substanceQuery).Single(); var substanceNameQuery = new ORM_HEC_SUB_Substance_Name.Query(); substanceNameQuery.IsDeleted = false; substanceNameQuery.HEC_SUB_Substance_RefID = Parameter.Substance_ID; var substanceName = ORM_HEC_SUB_Substance_Name.Query.Search(Connection, Transaction, substanceNameQuery).Single(); #region Delete if (Parameter.IsDeleted) { substance.IsDeleted = true; substance.Save(Connection, Transaction); substanceName.IsDeleted = true; substanceName.Save(Connection, Transaction); //// delete on Elastic //connection.Delete(securityTicket.TenantID.ToString() + "/substance/" + Parameter.Substance_ID.ToString()); } #endregion #region Edit else { Dict name = new Dict("hec_sub_substance_name"); for (int i = 0; i < DBLanguages.Length; i++) { name.AddEntry(DBLanguages[i].CMN_LanguageID, Parameter.Substance_Name); } Dict nameOrigin = new Dict("hec_sub_substance_name"); for (int i = 0; i < DBLanguages.Length; i++) { nameOrigin.AddEntry(DBLanguages[i].CMN_LanguageID, Parameter.Substance_Name); } substanceName.SubstanceName_Label = name; substanceName.SubstanceName_Origin = nameOrigin; substanceName.Save(Connection, Transaction); //string command = Commands.Index(index: securityTicket.TenantID.ToString(), type: "substance", id: Parameter.Substance_ID.ToString()).Refresh(); //Models.Substance substanceEdit = new Models.Substance(); //substanceEdit.id = Parameter.Substance_ID.ToString(); //substanceEdit.name = Parameter.Substance_Name; //string jsonData = serializer.ToJson(substanceEdit); //string response = connection.Put(command, jsonData); } returnValue.Result = substance.HEC_SUB_SubstanceID; #endregion } return(returnValue); #endregion UserCode }
protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L3MP_SP_1045 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { //Leave UserCode region to enable user code saving #region UserCode var returnValue = new FR_Guid(); //languages P_L2LN_GALFTID_1530 languageTenandID = new P_L2LN_GALFTID_1530(); languageTenandID.Tenant_RefID = securityTicket.TenantID; List <L2LN_GALFTID_1530> DBLanguages = cls_Get_All_Languages_ForTenantID.Invoke(Connection, Transaction, languageTenandID, securityTicket).Result.ToList(); ORM_CMN_PRO_Product item = new ORM_CMN_PRO_Product(); if (Parameter.CMN_PRO_ProductID != null && Parameter.CMN_PRO_ProductID != Guid.Empty) { var result = item.Load(Connection, Transaction, Parameter.CMN_PRO_ProductID); if (result.Status != FR_Status.Success) { var error = new FR_Guid(); error.ErrorMessage = "No Such ID"; error.Status = FR_Status.Error_Internal; return(error); } #region Edit Dict _extProductDictName = new Dict("cmn_pro_products"); _extProductDictName = Parameter.Product_Name_DictID; if (_extProductDictName != null) { foreach (var entry in _extProductDictName.Contents) { item.Product_Name.UpdateEntry(entry.LanguageID, entry.Content); } } Dict _extProductDictDescription = new Dict("cmn_pro_products"); _extProductDictDescription = Parameter.Product_Description; if (_extProductDictDescription != null) { foreach (var entry in _extProductDictDescription.Contents) { item.Product_Description.UpdateEntry(entry.LanguageID, entry.Content); } } item.Product_Number = Parameter.Product_Number; return(new FR_Guid(item.Save(Connection, Transaction), item.CMN_PRO_ProductID)); #endregion } else { #region Save item.CMN_PRO_ProductID = Guid.NewGuid(); item.Creation_Timestamp = DateTime.Now; item.IsDeleted = false; Dict _extProductDictName = new Dict("cmn_pro_products"); _extProductDictName = Parameter.Product_Name_DictID; if (_extProductDictName != null) { foreach (var entry in _extProductDictName.Contents) { item.Product_Name.UpdateEntry(entry.LanguageID, entry.Content); } } Dict _extProductDictDescription = new Dict("cmn_pro_products"); _extProductDictDescription = Parameter.Product_Description; if (_extProductDictDescription != null) { foreach (var entry in _extProductDictDescription.Contents) { item.Product_Description.UpdateEntry(entry.LanguageID, entry.Content); } } item.Product_Number = Parameter.Product_Number; item.Tenant_RefID = securityTicket.TenantID; item.Modification_Timestamp = DateTime.MinValue; return(new FR_Guid(item.Save(Connection, Transaction), item.CMN_PRO_ProductID)); #endregion } return(returnValue); #endregion UserCode }
protected static FR_Bool Execute(DbConnection Connection, DbTransaction Transaction, P_L5PA_SPEM_1413 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { #region UserCode var returnValue = new FR_Bool(); var medPro_Credentials = cls_Get_TenantMemershipData.Invoke(Connection, Transaction, securityTicket).Result; P_L2LN_GALFTID_1530 langParam = new P_L2LN_GALFTID_1530(); langParam.Tenant_RefID = securityTicket.TenantID; var DBLanguages = cls_Get_All_Languages_ForTenantID.Invoke(Connection, Transaction, langParam, securityTicket).Result; var examination = ORM_HEC_ACT_PerformedAction.Query.Search(Connection, Transaction, new ORM_HEC_ACT_PerformedAction.Query() { IsDeleted = false, Tenant_RefID = securityTicket.TenantID, HEC_ACT_PerformedActionID = Parameter.ExaminationID }).Single(); #region Save foreach (var item in Parameter.new_medication) { //check if dosage exists var dosageQuery = new ORM_HEC_Dosage.Query(); dosageQuery.IsDeleted = false; dosageQuery.Tenant_RefID = securityTicket.TenantID; dosageQuery.DosageText = item.dosage_text; var dosage_table = ORM_HEC_Dosage.Query.Search(Connection, Transaction, dosageQuery).SingleOrDefault(); if (dosage_table == null) { dosage_table = new ORM_HEC_Dosage(); dosage_table.HEC_DosageID = Guid.NewGuid(); dosage_table.Tenant_RefID = securityTicket.TenantID; dosage_table.Creation_Timestamp = DateTime.Now; dosage_table.Modification_Timestamp = DateTime.Now; dosage_table.DosageText = item.dosage_text; dosage_table.Save(Connection, Transaction); } ORM_HEC_ACT_PerformedAction_MedicationUpdate medicationUpdate = new ORM_HEC_ACT_PerformedAction_MedicationUpdate(); medicationUpdate.HEC_ACT_PerformedAction_MedicationUpdateID = Guid.NewGuid(); medicationUpdate.Tenant_RefID = securityTicket.TenantID; medicationUpdate.Creation_Timestamp = DateTime.Now; medicationUpdate.Modification_Timestamp = DateTime.Now; medicationUpdate.IsSubstance = !item.is_product; medicationUpdate.IsHealthcareProduct = item.is_product; medicationUpdate.IntendedApplicationDuration_in_days = item.days_valid; medicationUpdate.HEC_ACT_PerformedAction_RefID = Parameter.ExaminationID; medicationUpdate.HEC_Patient_Medication_RefID = Guid.NewGuid(); ORM_HEC_Patient_Medication patient_medications = new ORM_HEC_Patient_Medication(); patient_medications.HEC_Patient_MedicationID = medicationUpdate.HEC_Patient_Medication_RefID; patient_medications.Patient_RefID = Parameter.PatientID; patient_medications.Creation_Timestamp = DateTime.Now; patient_medications.Tenant_RefID = securityTicket.TenantID; patient_medications.Modification_Timestamp = DateTime.Now; patient_medications.R_IsActive = true; patient_medications.R_DateOfAdding = examination.IfPerfomed_DateOfAction; patient_medications.R_IsHealthcareProduct = item.is_product; patient_medications.R_IsSubstance = !item.is_product; patient_medications.R_ActiveUntill = patient_medications.R_DateOfAdding.AddDays(item.days_valid); if (item.is_product)//medication is a product { Guid Hec_ProductID = Guid.Empty; //check if product exists var productQuery = new ORM_CMN_PRO_Product.Query(); productQuery.Tenant_RefID = securityTicket.TenantID; productQuery.IsDeleted = false; productQuery.ProductITL = item.product_itl; var product = ORM_CMN_PRO_Product.Query.Search(Connection, Transaction, productQuery).SingleOrDefault(); //if product does not exist create it if (product == null) { ORM_CMN_PRO_Product cmn_pro_product = new ORM_CMN_PRO_Product(); cmn_pro_product.CMN_PRO_ProductID = Guid.NewGuid(); cmn_pro_product.Tenant_RefID = securityTicket.TenantID; cmn_pro_product.Creation_Timestamp = DateTime.Now; cmn_pro_product.Modification_Timestamp = DateTime.Now; Dict product_name = new Dict("cmn_pro_products"); for (int i = 0; i < DBLanguages.Length; i++) { product_name.AddEntry(DBLanguages[i].CMN_LanguageID, item.product_name); } cmn_pro_product.Product_Name = product_name; cmn_pro_product.ProductITL = item.product_itl; cmn_pro_product.ProducingBusinessParticipant_RefID = Guid.NewGuid(); //manufacturer cmn_pro_product.PackageInfo_RefID = Guid.NewGuid(); // package info cmn_pro_product.Save(Connection, Transaction); ORM_CMN_BPT_BusinessParticipant manufacturer = new ORM_CMN_BPT_BusinessParticipant(); manufacturer.CMN_BPT_BusinessParticipantID = cmn_pro_product.ProducingBusinessParticipant_RefID; manufacturer.DisplayName = item.product_manufacturer; manufacturer.IsCompany = true; manufacturer.IsNaturalPerson = false; manufacturer.Tenant_RefID = securityTicket.TenantID; manufacturer.Creation_Timestamp = DateTime.Now; manufacturer.Modification_Timestamp = DateTime.Now; manufacturer.Save(Connection, Transaction); ORM_CMN_PRO_PAC_PackageInfo package_info = new ORM_CMN_PRO_PAC_PackageInfo(); package_info.CMN_PRO_PAC_PackageInfoID = cmn_pro_product.PackageInfo_RefID; package_info.Tenant_RefID = securityTicket.TenantID; package_info.Creation_Timestamp = DateTime.Now; package_info.Modification_Timestamp = DateTime.Now; string amount = String.Empty; string unit = String.Empty; foreach (char c in item.product_strength) { // Do not use IsDigit as it will include more than the characters 0 through to 9 if (c >= '0' && c <= '9') { amount += c; } else { unit += c; } } package_info.PackageContent_Amount = Int32.Parse(amount); package_info.PackageContent_DisplayLabel = amount; var unitQuery = new ORM_CMN_Unit.Query(); unitQuery.IsDeleted = false; unitQuery.Tenant_RefID = securityTicket.TenantID; unitQuery.ISOCode = unit; var cmn_unit = ORM_CMN_Unit.Query.Search(Connection, Transaction, unitQuery).FirstOrDefault(); if (cmn_unit == null) { cmn_unit = new ORM_CMN_Unit(); cmn_unit.CMN_UnitID = Guid.NewGuid(); cmn_unit.Tenant_RefID = securityTicket.TenantID; cmn_unit.Creation_Timestamp = DateTime.Now; cmn_unit.Modification_Timestamp = DateTime.Now; cmn_unit.ISOCode = unit; cmn_unit.Save(Connection, Transaction); } package_info.PackageContent_MeasuredInUnit_RefID = cmn_unit.CMN_UnitID; package_info.Save(Connection, Transaction); //hec_products ORM_HEC_Product hec_product = new ORM_HEC_Product(); hec_product.HEC_ProductID = Guid.NewGuid(); hec_product.Ext_PRO_Product_RefID = cmn_pro_product.CMN_PRO_ProductID; hec_product.Tenant_RefID = securityTicket.TenantID; hec_product.Creation_Timestamp = DateTime.Now; hec_product.Modification_Timestamp = DateTime.Now; Hec_ProductID = hec_product.HEC_ProductID; var dosage_formQuery = new ORM_HEC_Product_DosageForm.Query(); dosage_formQuery.Tenant_RefID = securityTicket.TenantID; dosage_formQuery.IsDeleted = false; dosage_formQuery.GlobalPropertyMatchingID = item.product_form; var dosage_form = ORM_HEC_Product_DosageForm.Query.Search(Connection, Transaction, dosage_formQuery).SingleOrDefault(); if (dosage_form == null) { dosage_form = new ORM_HEC_Product_DosageForm(); dosage_form.HEC_Product_DosageFormID = Guid.NewGuid(); dosage_form.GlobalPropertyMatchingID = item.product_form; dosage_form.Tenant_RefID = securityTicket.TenantID; dosage_form.Creation_Timestamp = DateTime.Now; dosage_form.Modification_Timestamp = DateTime.Now; Dict form_name = new Dict("hec_product_dosageforms"); for (int i = 0; i < DBLanguages.Length; i++) { form_name.AddEntry(DBLanguages[i].CMN_LanguageID, item.product_form); } dosage_form.DosageForm_Name = form_name; dosage_form.Save(Connection, Transaction); } hec_product.ProductDosageForm_RefID = dosage_form.HEC_Product_DosageFormID; //dosage form hec_product.Save(Connection, Transaction); //product component ORM_HEC_PRO_Product_Component product_component = new ORM_HEC_PRO_Product_Component(); product_component.HEC_PRO_Product_ComponentID = Guid.NewGuid(); product_component.HEC_PRO_Component_RefID = Guid.NewGuid();//pro_component product_component.HEC_PRO_Product_RefID = hec_product.HEC_ProductID; product_component.Tenant_RefID = securityTicket.TenantID; product_component.Creation_Timestamp = DateTime.Now; product_component.Modification_Timestamp = DateTime.Now; product_component.Save(Connection, Transaction); ORM_HEC_PRO_Component pro_component = new ORM_HEC_PRO_Component(); pro_component.HEC_PRO_ComponentID = product_component.HEC_PRO_Component_RefID; pro_component.Tenant_RefID = securityTicket.TenantID; pro_component.Creation_Timestamp = DateTime.Now; pro_component.Modification_Timestamp = DateTime.Now; pro_component.Save(Connection, Transaction); ORM_HEC_PRO_Component_SubstanceIngredient component_SubstanceIngredient = new ORM_HEC_PRO_Component_SubstanceIngredient(); component_SubstanceIngredient.HEC_PRO_Component_SubstanceIngredientID = Guid.NewGuid(); component_SubstanceIngredient.Component_RefID = pro_component.HEC_PRO_ComponentID; component_SubstanceIngredient.Tenant_RefID = securityTicket.TenantID; component_SubstanceIngredient.Creation_Timestamp = DateTime.Now; component_SubstanceIngredient.Modification_Timestamp = DateTime.Now; var substanceQuery = new ORM_HEC_SUB_Substance.Query(); substanceQuery.IsDeleted = false; substanceQuery.Tenant_RefID = securityTicket.TenantID; substanceQuery.HealthcareSubstanceITL = item.substance_itl; var substance = ORM_HEC_SUB_Substance.Query.Search(Connection, Transaction, substanceQuery).SingleOrDefault(); if (substance == null) { substance = new ORM_HEC_SUB_Substance(); substance.HealthcareSubstanceITL = item.substance_itl; substance.HEC_SUB_SubstanceID = Guid.NewGuid(); substance.GlobalPropertyMatchingID = item.substance_name; substance.Tenant_RefID = securityTicket.TenantID; substance.Creation_Timestamp = DateTime.Now; substance.Modification_Timestamp = DateTime.Now; substance.Save(Connection, Transaction); ORM_HEC_SUB_Substance_Name substance_name = new ORM_HEC_SUB_Substance_Name(); substance_name.HEC_SUB_Substance_NameID = Guid.NewGuid(); substance_name.HEC_SUB_Substance_RefID = substance.HEC_SUB_SubstanceID; Dict substance_name_ = new Dict("hec_sub_substance_names"); for (int i = 0; i < DBLanguages.Length; i++) { substance_name_.AddEntry(DBLanguages[i].CMN_LanguageID, item.substance_name); } substance_name.SubstanceName_Label = substance_name_; substance_name.Tenant_RefID = securityTicket.TenantID; substance_name.Creation_Timestamp = DateTime.Now; substance_name.Modification_Timestamp = DateTime.Now; substance_name.Save(Connection, Transaction); } component_SubstanceIngredient.Substance_RefID = substance.HEC_SUB_SubstanceID; component_SubstanceIngredient.Save(Connection, Transaction); } else { var hec_productQuery = new ORM_HEC_Product.Query(); hec_productQuery.IsDeleted = false; hec_productQuery.Tenant_RefID = securityTicket.TenantID; hec_productQuery.Ext_PRO_Product_RefID = product.CMN_PRO_ProductID; var hec_product = ORM_HEC_Product.Query.Search(Connection, Transaction, hec_productQuery).Single(); Hec_ProductID = hec_product.HEC_ProductID; } medicationUpdate.HEC_Product_RefID = Hec_ProductID; patient_medications.R_HEC_Product_RefID = Hec_ProductID; patient_medications.R_DosageText = item.dosage_text; medicationUpdate.DosageText = item.dosage_text; } else// medication is a substance { medicationUpdate.IfSubstance_Strength = item.substance_strength; patient_medications.R_IfSubstance_Strength = item.substance_strength; medicationUpdate.IfSubstance_Unit_RefID = item.substance_unit; patient_medications.R_IfSubstance_Unit_RefID = item.substance_unit; patient_medications.R_DosageText = item.dosage_text; medicationUpdate.DosageText = item.dosage_text; var substanceQuery = new ORM_HEC_SUB_Substance.Query(); substanceQuery.IsDeleted = false; substanceQuery.Tenant_RefID = securityTicket.TenantID; substanceQuery.HealthcareSubstanceITL = item.substance_itl; var substance = ORM_HEC_SUB_Substance.Query.Search(Connection, Transaction, substanceQuery).SingleOrDefault(); if (substance == null) { substance = new ORM_HEC_SUB_Substance(); substance.HealthcareSubstanceITL = item.substance_itl; substance.HEC_SUB_SubstanceID = Guid.NewGuid(); substance.GlobalPropertyMatchingID = item.substance_name; substance.Tenant_RefID = securityTicket.TenantID; substance.Creation_Timestamp = DateTime.Now; substance.Modification_Timestamp = DateTime.Now; substance.Save(Connection, Transaction); ORM_HEC_SUB_Substance_Name substance_name = new ORM_HEC_SUB_Substance_Name(); substance_name.HEC_SUB_Substance_NameID = Guid.NewGuid(); substance_name.HEC_SUB_Substance_RefID = substance.HEC_SUB_SubstanceID; Dict substance_name_ = new Dict("hec_sub_substance_names"); for (int i = 0; i < DBLanguages.Length; i++) { substance_name_.AddEntry(DBLanguages[i].CMN_LanguageID, item.substance_name); } substance_name.SubstanceName_Label = substance_name_; substance_name.Tenant_RefID = securityTicket.TenantID; substance_name.Creation_Timestamp = DateTime.Now; substance_name.Modification_Timestamp = DateTime.Now; substance_name.Save(Connection, Transaction); } medicationUpdate.IfSubstance_Substance_RefiD = substance.HEC_SUB_SubstanceID; patient_medications.R_IfSubstance_Substance_RefiD = substance.HEC_SUB_SubstanceID; } patient_medications.Save(Connection, Transaction); medicationUpdate.Save(Connection, Transaction); returnValue.Result = true; } #endregion #region Delete foreach (var item in Parameter.deleted_medications) { var medicationUpdateQuery = new ORM_HEC_ACT_PerformedAction_MedicationUpdate.Query(); medicationUpdateQuery.IsDeleted = false; medicationUpdateQuery.IsMedicationDeactivated = false; medicationUpdateQuery.Tenant_RefID = securityTicket.TenantID; medicationUpdateQuery.HEC_ACT_PerformedAction_MedicationUpdateID = item.performedAction_medicationUpdate_id; var medicationUpdate = ORM_HEC_ACT_PerformedAction_MedicationUpdate.Query.Search(Connection, Transaction, medicationUpdateQuery).Single(); medicationUpdate.IsMedicationDeactivated = true; medicationUpdate.Save(Connection, Transaction); } #endregion return(returnValue); #endregion UserCode }
protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L5DI_SD_1633 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { #region UserCode var returnValue = new FR_Guid(); returnValue.Result = Guid.Empty; P_L2LN_GALFTID_1530 langParam = new P_L2LN_GALFTID_1530(); langParam.Tenant_RefID = securityTicket.TenantID; var DBLanguages = cls_Get_All_Languages_ForTenantID.Invoke(Connection, Transaction, langParam, securityTicket).Result; #region Save if (Parameter.DiagnoseID == Guid.Empty) { var potentialDiagnosis = new ORM_HEC_DIA_PotentialDiagnosis(); potentialDiagnosis.HEC_DIA_PotentialDiagnosisID = Guid.NewGuid(); potentialDiagnosis.ICD10_Code = Parameter.DiagnoseICD10; Dict name = new Dict("hec_dia_potentialdiagnoses"); for (int i = 0; i < DBLanguages.Length; i++) { name.AddEntry(DBLanguages[i].CMN_LanguageID, Parameter.Name); } potentialDiagnosis.PotentialDiagnosis_Name = name; Dict description = new Dict("hec_dia_potentialdiagnoses"); for (int i = 0; i < DBLanguages.Length; i++) { description.AddEntry(DBLanguages[i].CMN_LanguageID, Parameter.Description); } potentialDiagnosis.PotentialDiagnosis_Description = description; potentialDiagnosis.Tenant_RefID = securityTicket.TenantID; potentialDiagnosis.Creation_Timestamp = DateTime.Now; potentialDiagnosis.Modification_Timestamp = DateTime.Now; potentialDiagnosis.Save(Connection, Transaction); ORM_HEC_DIA_PotentialDiagnosis_CatalogCode catalogCode = new ORM_HEC_DIA_PotentialDiagnosis_CatalogCode(); catalogCode.HEC_DIA_PotentialDiagnosis_CatalogCodeID = Guid.NewGuid(); catalogCode.Code = Parameter.DiagnoseICD10; catalogCode.PotentialDiagnosis_RefID = potentialDiagnosis.HEC_DIA_PotentialDiagnosisID; catalogCode.PotentialDiagnosis_Catalog_RefID = Parameter.PotentialDiagnosis_CatalogID; catalogCode.Tenant_RefID = securityTicket.TenantID; catalogCode.Save(Connection, Transaction); returnValue.Result = potentialDiagnosis.HEC_DIA_PotentialDiagnosisID; } #endregion else { var potentialDiagnosisQuery = new ORM_HEC_DIA_PotentialDiagnosis.Query(); potentialDiagnosisQuery.IsDeleted = false; potentialDiagnosisQuery.HEC_DIA_PotentialDiagnosisID = Parameter.DiagnoseID; var potentialDiagnosis = ORM_HEC_DIA_PotentialDiagnosis.Query.Search(Connection, Transaction, potentialDiagnosisQuery).Single(); #region Delete if (Parameter.IsDeleted) { ORM_HEC_DIA_PotentialDiagnosis_CatalogCode catalogCode = ORM_HEC_DIA_PotentialDiagnosis_CatalogCode.Query.Search(Connection, Transaction, new ORM_HEC_DIA_PotentialDiagnosis_CatalogCode.Query { PotentialDiagnosis_RefID = potentialDiagnosis.HEC_DIA_PotentialDiagnosisID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).Single(); catalogCode.IsDeleted = false; catalogCode.Save(Connection, Transaction); potentialDiagnosis.IsDeleted = true; potentialDiagnosis.Save(Connection, Transaction); } #endregion #region Edit else { potentialDiagnosis.ICD10_Code = Parameter.DiagnoseICD10; Dict name = new Dict("hec_dia_potentialdiagnoses"); for (int i = 0; i < DBLanguages.Length; i++) { name.AddEntry(DBLanguages[i].CMN_LanguageID, Parameter.Name); } potentialDiagnosis.PotentialDiagnosis_Name = name; Dict description = new Dict("hec_dia_potentialdiagnoses"); for (int i = 0; i < DBLanguages.Length; i++) { description.AddEntry(DBLanguages[i].CMN_LanguageID, Parameter.Description); } potentialDiagnosis.PotentialDiagnosis_Description = description; potentialDiagnosis.Modification_Timestamp = DateTime.Now; potentialDiagnosis.Save(Connection, Transaction); } returnValue.Result = potentialDiagnosis.HEC_DIA_PotentialDiagnosisID; #endregion } return(returnValue); #endregion UserCode }
protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L5DI_SRMP_1425 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { #region UserCode var returnValue = new FR_Guid(); P_L2LN_GALFTID_1530 langParam = new P_L2LN_GALFTID_1530(); langParam.Tenant_RefID = securityTicket.TenantID; var DBLanguages = cls_Get_All_Languages_ForTenantID.Invoke(Connection, Transaction, langParam, securityTicket).Result; #region Save if (Parameter.HEC_MedicalPractiseID == Guid.Empty) { ORM_HEC_MedicalPractis medicalPractice = new ORM_HEC_MedicalPractis(); medicalPractice.HEC_MedicalPractiseID = Guid.NewGuid(); medicalPractice.IsHospital = Parameter.IsHospital; medicalPractice.Tenant_RefID = securityTicket.TenantID; medicalPractice.IsDeleted = false; medicalPractice.Save(Connection, Transaction); //*******************Save Medical Practice Type******************* if (Parameter.MedicalPracticeType != null && Parameter.MedicalPracticeType.Count() > 0) { foreach (var medicalPracticeTypeParam in Parameter.MedicalPracticeType) { if (!medicalPracticeTypeParam.IsDeleted) { ORM_HEC_MedicalPractice_2_PracticeType medicalPracticeType = new ORM_HEC_MedicalPractice_2_PracticeType(); medicalPracticeType.AssignmentID = Guid.NewGuid(); medicalPracticeType.HEC_MedicalPractice_Type_RefID = medicalPracticeTypeParam.HEC_MedicalPractice_TypeID; medicalPracticeType.HEC_MedicalPractice_RefID = medicalPractice.HEC_MedicalPractiseID; medicalPracticeType.Tenant_RefID = securityTicket.TenantID; medicalPracticeType.IsDeleted = false; medicalPracticeType.Save(Connection, Transaction); } } } //*******************Save Medical Practice Service******************* //on front we must find if medical practice already exist for given service name if (Parameter.MedicalService != null && Parameter.MedicalService.Count() > 0) { //ORM_HEC_MedicalService medicalService = ORM_HEC_MedicalService.Query.Search(Connection, Transaction, new ORM_HEC_MedicalService.Query //{ // HEC_MedicalServiceID = Parameter.MedicalService.HEC_MedicalServiceID, // IsDeleted = false, // Tenant_RefID = securityTicket.TenantID //}).SingleOrDefault(); foreach (var medicalServiceParam in Parameter.MedicalService) { ORM_HEC_MedicalService medicalService = new ORM_HEC_MedicalService(); if (medicalServiceParam.NewMedicalService) { medicalService.HEC_MedicalServiceID = Guid.NewGuid(); medicalService.ServiceName = medicalServiceParam.ServiceName; medicalService.Tenant_RefID = securityTicket.TenantID; medicalService.IsDeleted = false; medicalService.Save(Connection, Transaction); } ORM_HEC_MedicalPractice_OfferedService medicalPracticeOfferedService = new ORM_HEC_MedicalPractice_OfferedService(); if (!medicalServiceParam.NewMedicalService) { medicalPracticeOfferedService.MedicalService_RefID = medicalServiceParam.HEC_MedicalServiceID; } else { medicalPracticeOfferedService.MedicalService_RefID = medicalService.HEC_MedicalServiceID; } medicalPracticeOfferedService.MedicalPractice_RefID = medicalPractice.HEC_MedicalPractiseID; medicalPracticeOfferedService.IsDeleted = false; medicalPracticeOfferedService.Tenant_RefID = securityTicket.TenantID; medicalPracticeOfferedService.Save(Connection, Transaction); } } //*******************Save Contact Person************************ ORM_CMN_PER_PersonInfo personInfo = new ORM_CMN_PER_PersonInfo(); personInfo.CMN_PER_PersonInfoID = Guid.NewGuid(); personInfo.Title = Parameter.ContactPersonTitle; personInfo.FirstName = Parameter.ContactPersonFirstName; personInfo.LastName = Parameter.ContactPersonLastName; personInfo.Tenant_RefID = securityTicket.TenantID; personInfo.IsDeleted = false; personInfo.Save(Connection, Transaction); ORM_CMN_BPT_BusinessParticipant businessParticpant = new ORM_CMN_BPT_BusinessParticipant(); businessParticpant.CMN_BPT_BusinessParticipantID = Guid.NewGuid(); businessParticpant.IsNaturalPerson = true; businessParticpant.DisplayName = Parameter.ContactPersonTitle + " " + Parameter.ContactPersonFirstName + " " + Parameter.ContactPersonLastName; businessParticpant.Tenant_RefID = securityTicket.TenantID; businessParticpant.IsDeleted = false; businessParticpant.IfNaturalPerson_CMN_PER_PersonInfo_RefID = personInfo.CMN_PER_PersonInfoID; businessParticpant.Save(Connection, Transaction); medicalPractice.ContactPerson_RefID = businessParticpant.CMN_BPT_BusinessParticipantID; //*******************Customer OrganizationalUnit************************ ORM_CMN_BPT_CTM_OrganizationalUnit organizationalUnit = new ORM_CMN_BPT_CTM_OrganizationalUnit(); organizationalUnit.CMN_BPT_CTM_OrganizationalUnitID = Guid.NewGuid(); Dict medicationPracticeName = new Dict("hec_dia_potentialdiagnoses"); for (int i = 0; i < DBLanguages.Length; i++) { medicationPracticeName.AddEntry(DBLanguages[i].CMN_LanguageID, Parameter.MedicalPractiseName); } organizationalUnit.OrganizationalUnit_Name = medicationPracticeName; organizationalUnit.IsDeleted = false; organizationalUnit.Tenant_RefID = securityTicket.TenantID; organizationalUnit.Default_PhoneNumber = Parameter.Contact_Telephone; organizationalUnit.IsMedicalPractice = true; organizationalUnit.IfMedicalPractise_HEC_MedicalPractice_RefID = medicalPractice.HEC_MedicalPractiseID; organizationalUnit.Save(Connection, Transaction); //*******************AppointmentType************************ //if (Parameter.AppoitmentType != null && Parameter.AppoitmentType.Count() > 0) //{ // foreach (var item in Parameter.AppoitmentType) // { // ORM_PPS_TSK_Task_Template_CustomerOrgUnitAvailability customerOrgUnitAvailability = new ORM_PPS_TSK_Task_Template_CustomerOrgUnitAvailability(); // customerOrgUnitAvailability.PPS_TSK_Task_Template_CustomerOrgUnitAvailabilityID = Guid.NewGuid(); // customerOrgUnitAvailability.CMN_BPT_CTM_OrganizationalUnit_RefID = organizationalUnit.CMN_BPT_CTM_OrganizationalUnitID; // customerOrgUnitAvailability.PPS_TSK_Task_Template_RefID = item.PPS_TSK_Task_Template_RefID; // customerOrgUnitAvailability.Tenant_RefID = securityTicket.TenantID; // customerOrgUnitAvailability.Save(Connection, Transaction); // } //} //*******************Save Address************************ ORM_CMN_UniversalContactDetail contactDetail = new ORM_CMN_UniversalContactDetail(); contactDetail.CMN_UniversalContactDetailID = Guid.NewGuid(); contactDetail.IsCompany = true; contactDetail.Street_Name = Parameter.Street_Name; contactDetail.Street_Number = Parameter.Street_Number; contactDetail.Town = Parameter.Town; contactDetail.Contact_Website_URL = Parameter.Contact_Website_URL; contactDetail.Contact_Telephone = Parameter.Contact_Telephone; contactDetail.IsDeleted = false; contactDetail.Tenant_RefID = securityTicket.TenantID; contactDetail.Save(Connection, Transaction); ORM_CMN_COM_CompanyInfo companyInfo = new ORM_CMN_COM_CompanyInfo(); companyInfo.CMN_COM_CompanyInfoID = Guid.NewGuid(); companyInfo.Contact_UCD_RefID = contactDetail.CMN_UniversalContactDetailID; companyInfo.IsDeleted = false; companyInfo.Tenant_RefID = securityTicket.TenantID; companyInfo.Save(Connection, Transaction); medicalPractice.Ext_CompanyInfo_RefID = companyInfo.CMN_COM_CompanyInfoID; medicalPractice.Save(Connection, Transaction); //*******************Save Address************************ //ORM_CMN_UniversalContactDetail contactDetail = new ORM_CMN_UniversalContactDetail(); //contactDetail.CMN_UniversalContactDetailID = Guid.NewGuid(); //contactDetail.IsCompany = true; //contactDetail.Street_Name = Parameter.Street_Name; //contactDetail.Street_Number = Parameter.Street_Number; //contactDetail.Town = Parameter.Town; //contactDetail.Contact_Website_URL = Parameter.Contact_Website_URL; //contactDetail.Contact_Telephone = Parameter.Contact_Telephone; //contactDetail.IsDeleted = false; //contactDetail.Tenant_RefID = securityTicket.TenantID; //contactDetail.Save(Connection, Transaction); //ORM_CMN_BPT_CTM_OrganizationalUnit_Address organizationalUnitAddress = new ORM_CMN_BPT_CTM_OrganizationalUnit_Address(); //organizationalUnitAddress.UniversalContactDetail_Address_RefID = contactDetail.CMN_UniversalContactDetailID; //organizationalUnitAddress.OrganizationalUnit_RefID = organizationalUnit.CMN_BPT_CTM_OrganizationalUnitID; //organizationalUnitAddress.IsDeleted = false; //organizationalUnitAddress.Tenant_RefID = securityTicket.TenantID; //organizationalUnitAddress.Save(Connection, Transaction); returnValue.Result = medicalPractice.HEC_MedicalPractiseID; } #endregion //=====================Edit or Delete===================== else { ORM_HEC_MedicalPractis medicalPractice = ORM_HEC_MedicalPractis.Query.Search(Connection, Transaction, new ORM_HEC_MedicalPractis.Query { HEC_MedicalPractiseID = Parameter.HEC_MedicalPractiseID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).Single(); ORM_CMN_BPT_CTM_OrganizationalUnit organizationalUnit = ORM_CMN_BPT_CTM_OrganizationalUnit.Query.Search(Connection, Transaction, new ORM_CMN_BPT_CTM_OrganizationalUnit.Query { IfMedicalPractise_HEC_MedicalPractice_RefID = medicalPractice.HEC_MedicalPractiseID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).Single(); #region Edit if (Parameter.IsDeleted == false) { //*******************Edit Medical Practice Service******************* if (Parameter.MedicalService != null && Parameter.MedicalService.Count() > 0) { foreach (var medicalServiceParam in Parameter.MedicalService) { ORM_HEC_MedicalPractice_OfferedService medicalPracticeOfferedService = ORM_HEC_MedicalPractice_OfferedService.Query.Search(Connection, Transaction, new ORM_HEC_MedicalPractice_OfferedService.Query { HEC_MedicalPractice_OfferedServiceID = medicalServiceParam.HEC_MedicalPractice_OfferedServiceID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).SingleOrDefault(); ORM_HEC_MedicalService medicalService = ORM_HEC_MedicalService.Query.Search(Connection, Transaction, new ORM_HEC_MedicalService.Query { HEC_MedicalServiceID = medicalServiceParam.HEC_MedicalServiceID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).SingleOrDefault(); if (medicalServiceParam.NewMedicalService && !medicalServiceParam.IsDeleted) { medicalService = new ORM_HEC_MedicalService(); medicalService.HEC_MedicalServiceID = Guid.NewGuid(); medicalService.ServiceName = medicalServiceParam.ServiceName; medicalService.Tenant_RefID = securityTicket.TenantID; medicalService.IsDeleted = false; medicalService.Save(Connection, Transaction); } if (medicalPracticeOfferedService == null && !medicalServiceParam.IsDeleted) { medicalPracticeOfferedService = new ORM_HEC_MedicalPractice_OfferedService(); if (!medicalServiceParam.NewMedicalService) { medicalPracticeOfferedService.MedicalService_RefID = medicalServiceParam.HEC_MedicalServiceID; } else { medicalPracticeOfferedService.MedicalService_RefID = medicalService.HEC_MedicalServiceID; } medicalPracticeOfferedService.MedicalPractice_RefID = medicalPractice.HEC_MedicalPractiseID; medicalPracticeOfferedService.IsDeleted = false; medicalPracticeOfferedService.Tenant_RefID = securityTicket.TenantID; medicalPracticeOfferedService.Save(Connection, Transaction); } else if (medicalPracticeOfferedService != null && !medicalServiceParam.IsDeleted) { medicalPracticeOfferedService.MedicalService_RefID = medicalService.HEC_MedicalServiceID; medicalPracticeOfferedService.Save(Connection, Transaction); } else if (medicalPracticeOfferedService != null && medicalServiceParam.IsDeleted) { medicalPracticeOfferedService.IsDeleted = true; medicalPracticeOfferedService.Save(Connection, Transaction); } } } //*******************Edit Customer OrganizationalUnit************************ Dict medicationPracticeName = new Dict("hec_dia_potentialdiagnoses"); for (int i = 0; i < DBLanguages.Length; i++) { medicationPracticeName.AddEntry(DBLanguages[i].CMN_LanguageID, Parameter.MedicalPractiseName); } organizationalUnit.OrganizationalUnit_Name = medicationPracticeName; organizationalUnit.Default_PhoneNumber = Parameter.Contact_Telephone; organizationalUnit.Save(Connection, Transaction); //*******************Edit Contact Person************************ ORM_CMN_BPT_BusinessParticipant businessParticipant = ORM_CMN_BPT_BusinessParticipant.Query.Search(Connection, Transaction, new ORM_CMN_BPT_BusinessParticipant.Query { CMN_BPT_BusinessParticipantID = medicalPractice.ContactPerson_RefID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).Single(); businessParticipant.DisplayName = Parameter.ContactPersonTitle + " " + Parameter.ContactPersonFirstName + " " + Parameter.ContactPersonLastName; businessParticipant.Save(Connection, Transaction); ORM_CMN_PER_PersonInfo personInfo = ORM_CMN_PER_PersonInfo.Query.Search(Connection, Transaction, new ORM_CMN_PER_PersonInfo.Query { CMN_PER_PersonInfoID = businessParticipant.IfNaturalPerson_CMN_PER_PersonInfo_RefID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).Single(); personInfo.Title = Parameter.ContactPersonTitle; personInfo.FirstName = Parameter.ContactPersonFirstName; personInfo.LastName = Parameter.ContactPersonLastName; personInfo.Save(Connection, Transaction); //*******************Edit Medical Practice Type******************* foreach (var medicalPracticeTypeParam in Parameter.MedicalPracticeType) { ORM_HEC_MedicalPractice_2_PracticeType existingPracticeType = ORM_HEC_MedicalPractice_2_PracticeType.Query.Search(Connection, Transaction, new ORM_HEC_MedicalPractice_2_PracticeType.Query { HEC_MedicalPractice_RefID = medicalPractice.HEC_MedicalPractiseID, HEC_MedicalPractice_Type_RefID = medicalPracticeTypeParam.HEC_MedicalPractice_TypeID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).SingleOrDefault(); if (existingPracticeType == null && !medicalPracticeTypeParam.IsDeleted) { ORM_HEC_MedicalPractice_2_PracticeType medicalPracticeType = new ORM_HEC_MedicalPractice_2_PracticeType(); medicalPracticeType.AssignmentID = Guid.NewGuid(); medicalPracticeType.HEC_MedicalPractice_Type_RefID = medicalPracticeTypeParam.HEC_MedicalPractice_TypeID; medicalPracticeType.HEC_MedicalPractice_RefID = medicalPractice.HEC_MedicalPractiseID; medicalPracticeType.Tenant_RefID = securityTicket.TenantID; medicalPracticeType.IsDeleted = false; medicalPracticeType.Save(Connection, Transaction); } else if (existingPracticeType != null && !medicalPracticeTypeParam.IsDeleted) { existingPracticeType.HEC_MedicalPractice_Type_RefID = medicalPracticeTypeParam.HEC_MedicalPractice_TypeID; existingPracticeType.Save(Connection, Transaction); } else if (existingPracticeType != null && medicalPracticeTypeParam.IsDeleted) { existingPracticeType.IsDeleted = true; existingPracticeType.Save(Connection, Transaction); } } //*******************Edit AppointmentType******************* //if (Parameter.AppoitmentType != null && Parameter.AppoitmentType.Count() > 0) //{ // foreach (var appointmentTypeParam in Parameter.AppoitmentType) // { // ORM_PPS_TSK_Task_Template_CustomerOrgUnitAvailability existingAppointmentType = ORM_PPS_TSK_Task_Template_CustomerOrgUnitAvailability.Query.Search(Connection, Transaction, new ORM_PPS_TSK_Task_Template_CustomerOrgUnitAvailability.Query // { // CMN_BPT_CTM_OrganizationalUnit_RefID = organizationalUnit.CMN_BPT_CTM_OrganizationalUnitID, // PPS_TSK_Task_Template_RefID = appointmentTypeParam.PPS_TSK_Task_Template_RefID, // IsDeleted = false, // Tenant_RefID = securityTicket.TenantID // }).SingleOrDefault(); // if (existingAppointmentType == null & !appointmentTypeParam.IsDeleted) // { // ORM_PPS_TSK_Task_Template_CustomerOrgUnitAvailability customerOrgUnitAvailability = new ORM_PPS_TSK_Task_Template_CustomerOrgUnitAvailability(); // customerOrgUnitAvailability.PPS_TSK_Task_Template_CustomerOrgUnitAvailabilityID = Guid.NewGuid(); // customerOrgUnitAvailability.CMN_BPT_CTM_OrganizationalUnit_RefID = organizationalUnit.CMN_BPT_CTM_OrganizationalUnitID; // customerOrgUnitAvailability.PPS_TSK_Task_Template_RefID = appointmentTypeParam.PPS_TSK_Task_Template_RefID; // customerOrgUnitAvailability.Tenant_RefID = securityTicket.TenantID; // customerOrgUnitAvailability.Save(Connection, Transaction); // } // else if (existingAppointmentType != null & !appointmentTypeParam.IsDeleted) // { // existingAppointmentType.PPS_TSK_Task_Template_RefID = appointmentTypeParam.PPS_TSK_Task_Template_RefID; // existingAppointmentType.Save(Connection, Transaction); // } // else if (existingAppointmentType != null & !appointmentTypeParam.IsDeleted) // { // existingAppointmentType.IsDeleted = true; // existingAppointmentType.Save(Connection, Transaction); // } // } //} //*******************Edit Address and name************************ ORM_CMN_COM_CompanyInfo companyInfo = ORM_CMN_COM_CompanyInfo.Query.Search(Connection, Transaction, new ORM_CMN_COM_CompanyInfo.Query { CMN_COM_CompanyInfoID = medicalPractice.Ext_CompanyInfo_RefID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).Single(); ORM_CMN_UniversalContactDetail contactDetail = ORM_CMN_UniversalContactDetail.Query.Search(Connection, Transaction, new ORM_CMN_UniversalContactDetail.Query { CMN_UniversalContactDetailID = companyInfo.Contact_UCD_RefID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).Single(); contactDetail.Street_Name = Parameter.Street_Name; contactDetail.Street_Number = Parameter.Street_Number; contactDetail.Town = Parameter.Town; contactDetail.Contact_Website_URL = Parameter.Contact_Website_URL; contactDetail.Contact_Telephone = Parameter.Contact_Telephone; contactDetail.Save(Connection, Transaction); returnValue.Result = medicalPractice.HEC_MedicalPractiseID; } #endregion #region Delete else { ORM_HEC_MedicalPractice_2_PracticeType.Query.SoftDelete(Connection, Transaction, new ORM_HEC_MedicalPractice_2_PracticeType.Query { HEC_MedicalPractice_RefID = medicalPractice.HEC_MedicalPractiseID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }); ORM_PPS_TSK_Task_Template_CustomerOrgUnitAvailability.Query.SoftDelete(Connection, Transaction, new ORM_PPS_TSK_Task_Template_CustomerOrgUnitAvailability.Query { CMN_BPT_CTM_OrganizationalUnit_RefID = organizationalUnit.CMN_BPT_CTM_OrganizationalUnitID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }); ORM_HEC_MedicalPractice_OfferedService.Query.SoftDelete(Connection, Transaction, new ORM_HEC_MedicalPractice_OfferedService.Query { MedicalPractice_RefID = medicalPractice.HEC_MedicalPractiseID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }); ORM_CMN_BPT_BusinessParticipant businessParticipant = ORM_CMN_BPT_BusinessParticipant.Query.Search(Connection, Transaction, new ORM_CMN_BPT_BusinessParticipant.Query { CMN_BPT_BusinessParticipantID = medicalPractice.ContactPerson_RefID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).Single(); businessParticipant.IsDeleted = true; ORM_CMN_PER_PersonInfo personInfo = ORM_CMN_PER_PersonInfo.Query.Search(Connection, Transaction, new ORM_CMN_PER_PersonInfo.Query { CMN_PER_PersonInfoID = businessParticipant.IfNaturalPerson_CMN_PER_PersonInfo_RefID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).Single(); personInfo.IsDeleted = true; ORM_CMN_COM_CompanyInfo companyInfo = ORM_CMN_COM_CompanyInfo.Query.Search(Connection, Transaction, new ORM_CMN_COM_CompanyInfo.Query { CMN_COM_CompanyInfoID = medicalPractice.Ext_CompanyInfo_RefID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).Single(); companyInfo.IsDeleted = true; ORM_CMN_UniversalContactDetail contactDetail = ORM_CMN_UniversalContactDetail.Query.Search(Connection, Transaction, new ORM_CMN_UniversalContactDetail.Query { CMN_UniversalContactDetailID = companyInfo.Contact_UCD_RefID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }).Single(); contactDetail.IsDeleted = true; ORM_HEC_MedicalPractis.Query.SoftDelete(Connection, Transaction, new ORM_HEC_MedicalPractis.Query { HEC_MedicalPractiseID = Parameter.HEC_MedicalPractiseID, IsDeleted = false, Tenant_RefID = securityTicket.TenantID }); contactDetail.Save(Connection, Transaction); companyInfo.Save(Connection, Transaction); personInfo.Save(Connection, Transaction); businessParticipant.Save(Connection, Transaction); } #endregion returnValue.Result = medicalPractice.HEC_MedicalPractiseID; } return(returnValue); #endregion UserCode }
protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L5OP_SP_1602 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { #region UserCode var returnValue = new FR_Guid(); P_L2LN_GALFTID_1530 langParam = new P_L2LN_GALFTID_1530(); langParam.Tenant_RefID = securityTicket.TenantID; var languages = cls_Get_All_Languages_ForTenantID.Invoke(Connection, Transaction, langParam, securityTicket).Result; P_L3MP_SPBI_1602 basePracticeParam = new P_L3MP_SPBI_1602(); basePracticeParam.HEC_MedicalPractiseID = Parameter.HEC_MedicalPractiseID; basePracticeParam.Contact_EmergencyPhoneNumber = Parameter.PhoneNumber; basePracticeParam.Contact_Website_URL = Parameter.HomepageURL; basePracticeParam.PracticeEmail = Parameter.ContactEmail; basePracticeParam.PracticeName = Parameter.DisplyName; basePracticeParam.Region_Name = Parameter.AddressRegion; basePracticeParam.Street_Name = Parameter.AddressStreetName; basePracticeParam.Street_Number = Parameter.AddressStreetNumber; basePracticeParam.Town = Parameter.AddressCity; basePracticeParam.ZIP = Parameter.AddressZipCode; var practiceID = cls_Save_Practice_BaseInfo.Invoke(Connection, Transaction, basePracticeParam, securityTicket).Result; var practicesQuery = new ORM_HEC_MedicalPractis.Query(); practicesQuery.HEC_MedicalPractiseID = practiceID; var practices = ORM_HEC_MedicalPractis.Query.Search(Connection, Transaction, practicesQuery).First(); var companyInfoQuery = new ORM_CMN_COM_CompanyInfo.Query(); companyInfoQuery.CMN_COM_CompanyInfoID = practices.Ext_CompanyInfo_RefID; var companyInfo = ORM_CMN_COM_CompanyInfo.Query.Search(Connection, Transaction, companyInfoQuery).First(); var bParticipantQuery = new ORM_CMN_BPT_BusinessParticipant.Query(); bParticipantQuery.IfCompany_CMN_COM_CompanyInfo_RefID = companyInfo.CMN_COM_CompanyInfoID; var bParticipant = ORM_CMN_BPT_BusinessParticipant.Query.Search(Connection, Transaction, bParticipantQuery).First(); ORM_CMN_BPT_BusinessParticipant bpContctPerson; if (practices.ContactPerson_RefID != Guid.Empty) { var bpContctPersonQuery = new ORM_CMN_BPT_BusinessParticipant.Query(); bpContctPersonQuery.CMN_BPT_BusinessParticipantID = practices.ContactPerson_RefID; bpContctPerson = ORM_CMN_BPT_BusinessParticipant.Query.Search(Connection, Transaction, bpContctPersonQuery).First(); } else { bpContctPerson = new ORM_CMN_BPT_BusinessParticipant(); bpContctPerson.Tenant_RefID = securityTicket.TenantID; bpContctPerson.IsNaturalPerson = true; } bpContctPerson.DisplayName = Parameter.ContactPerson_Name; bpContctPerson.Save(Connection, Transaction); practices.ContactPerson_RefID = bpContctPerson.CMN_BPT_BusinessParticipantID; ORM_CMN_CAL_WeeklyOfficeHours_Template officeHours; ORM_CMN_CAL_WeeklyOfficeHours_Template consultingHours; if (practices.WeeklyOfficeHours_Template_RefID != Guid.Empty && practices.WeeklySurgeryHours_Template_RefID != Guid.Empty) { var officeHoursQuery = new ORM_CMN_CAL_WeeklyOfficeHours_Template.Query(); officeHoursQuery.CMN_CAL_WeeklyOfficeHours_TemplateID = practices.WeeklyOfficeHours_Template_RefID; officeHours = ORM_CMN_CAL_WeeklyOfficeHours_Template.Query.Search(Connection, Transaction, officeHoursQuery).First(); officeHoursQuery.CMN_CAL_WeeklyOfficeHours_TemplateID = practices.WeeklySurgeryHours_Template_RefID; consultingHours = ORM_CMN_CAL_WeeklyOfficeHours_Template.Query.Search(Connection, Transaction, officeHoursQuery).First(); } else { officeHours = new ORM_CMN_CAL_WeeklyOfficeHours_Template(); officeHours.CMN_CAL_WeeklyOfficeHours_TemplateID = Guid.NewGuid(); consultingHours = new ORM_CMN_CAL_WeeklyOfficeHours_Template(); consultingHours.CMN_CAL_WeeklyOfficeHours_TemplateID = Guid.NewGuid(); practices.WeeklyOfficeHours_Template_RefID = officeHours.CMN_CAL_WeeklyOfficeHours_TemplateID; practices.WeeklySurgeryHours_Template_RefID = consultingHours.CMN_CAL_WeeklyOfficeHours_TemplateID; } consultingHours.Tenant_RefID = securityTicket.TenantID; officeHours.Tenant_RefID = securityTicket.TenantID; consultingHours.FormattedOfficeHours = Parameter.Consultation_FormattedOfficeHours; officeHours.FormattedOfficeHours = Parameter.Working_FormattedOfficeHours; consultingHours.Save(Connection, Transaction); officeHours.Save(Connection, Transaction); ORM_CMN_COM_CompanyInfo_Type companyType; var companyTypeQuery = new ORM_CMN_COM_CompanyInfo_Type.Query(); companyTypeQuery.IsDeleted = false; companyTypeQuery.CMN_COM_CompanyInfo_TypeID = Parameter.PracticeType_RefID; companyType = ORM_CMN_COM_CompanyInfo_Type.Query.Search(Connection, Transaction, companyTypeQuery).FirstOrDefault(); if (companyType == null) { companyType = new ORM_CMN_COM_CompanyInfo_Type(); companyType.CMN_COM_CompanyInfo_TypeID = Parameter.PracticeType_RefID; companyType.CompanyType_Name = new Dict(); companyType.CompanyType_Name.DictionaryID = Guid.NewGuid(); if (languages != null) { foreach (var item in languages) { companyType.CompanyType_Name.AddEntry(item.CMN_LanguageID, STLD_PracticeType.typesItems.First(t => t.Value == Parameter.PracticeType_RefID).Text); } } } companyInfo.CompanyType_RefID = Parameter.PracticeType_RefID; ORM_HEC_PublicHealthcare_PhysitianAssociation pHealthcare; var pHealthcareQuery = new ORM_HEC_PublicHealthcare_PhysitianAssociation.Query(); pHealthcareQuery.HEC_PublicHealthcare_PhysitianAssociationID = Parameter.HealthAssociation_RefID; pHealthcare = ORM_HEC_PublicHealthcare_PhysitianAssociation.Query.Search(Connection, Transaction, pHealthcareQuery).FirstOrDefault(); if (pHealthcare == null) { pHealthcare = new ORM_HEC_PublicHealthcare_PhysitianAssociation(); pHealthcare.HEC_PublicHealthcare_PhysitianAssociationID = Parameter.HealthAssociation_RefID; pHealthcare.HealthAssociation_Name = STLD_MedicalAssociation.associationItems.First(t => t.Value == Parameter.HealthAssociation_RefID).Text; pHealthcare.Save(Connection, Transaction); } practices.AssociatedWith_PhysitianAssociation_RefID = Parameter.HealthAssociation_RefID; ORM_CMN_BPT_CTM_Customer customer; var customerQuery = new ORM_CMN_BPT_CTM_Customer.Query(); customerQuery.Ext_BusinessParticipant_RefID = bParticipant.CMN_BPT_BusinessParticipantID; var customerRes = ORM_CMN_BPT_CTM_Customer.Query.Search(Connection, Transaction, customerQuery); if (customerRes.Count == 0) { customer = new ORM_CMN_BPT_CTM_Customer(); customer.CMN_BPT_CTM_CustomerID = Guid.NewGuid(); customer.Ext_BusinessParticipant_RefID = bParticipant.CMN_BPT_BusinessParticipantID; } else { customer = ORM_CMN_BPT_CTM_Customer.Query.Search(Connection, Transaction, customerQuery).First(); } var affinityStatusQuery = new ORM_CMN_BPT_CTM_AffinityStatus.Query(); affinityStatusQuery.CMN_BPT_CTM_AffinityStatusID = Parameter.AffinityStatus_RefID; var affinityStatus = ORM_CMN_BPT_CTM_AffinityStatus.Query.Search(Connection, Transaction, affinityStatusQuery).FirstOrDefault(); if (affinityStatus == null) { affinityStatus = new ORM_CMN_BPT_CTM_AffinityStatus(); affinityStatus.CMN_BPT_CTM_AffinityStatusID = Parameter.AffinityStatus_RefID; affinityStatus.AffinityStatus_Name = new Dict(); affinityStatus.AffinityStatus_Name.DictionaryID = Guid.NewGuid(); if (languages != null) { foreach (var item in languages) { affinityStatus.AffinityStatus_Name.AddEntry(item.CMN_LanguageID, STLD_AffinityStatus.affinityItems.First(t => t.Value == Parameter.AffinityStatus_RefID).Text); } } affinityStatus.Save(Connection, Transaction); } customer.CustomerAffinityStatus_RefID = Parameter.AffinityStatus_RefID; customer.Tenant_RefID = securityTicket.TenantID; customer.Save(Connection, Transaction); ORM_CMN_COM_CompanyInfo_Address compAddress; ORM_CMN_UniversalContactDetail address; var compAddressQuery = new ORM_CMN_COM_CompanyInfo_Address.Query(); compAddressQuery.Tenant_RefID = securityTicket.TenantID; compAddressQuery.CompanyInfo_RefID = practices.Ext_CompanyInfo_RefID; var compAddressRes = ORM_CMN_COM_CompanyInfo_Address.Query.Search(Connection, Transaction, compAddressQuery); if (compAddressRes.Count > 0) { compAddress = compAddressRes.First(); var addressQuery = new ORM_CMN_UniversalContactDetail.Query(); addressQuery.CMN_UniversalContactDetailID = compAddress.Address_UCD_RefID; address = ORM_CMN_UniversalContactDetail.Query.Search(Connection, Transaction, addressQuery).First(); } else { compAddress = new ORM_CMN_COM_CompanyInfo_Address(); compAddress.CMN_COM_CompanyInfo_AddressID = Guid.NewGuid(); compAddress.IsShipping = true; compAddress.CompanyInfo_RefID = companyInfo.CMN_COM_CompanyInfoID; address = new ORM_CMN_UniversalContactDetail(); address.CMN_UniversalContactDetailID = Guid.NewGuid(); compAddress.Address_UCD_RefID = address.CMN_UniversalContactDetailID; } address.Town = Parameter.ShippingAddressCity; address.Street_Number = Parameter.ShippingAddressStreetNumber; address.Street_Name = Parameter.ShippingAddressStreetName; address.ZIP = Parameter.ShippingAddressZipCode; address.Region_Name = Parameter.ShippingAddressRegion; address.Tenant_RefID = securityTicket.TenantID; address.Save(Connection, Transaction); compAddress.Tenant_RefID = securityTicket.TenantID; compAddress.Save(Connection, Transaction); ORM_CMN_BPT_BusinessParticipant contactPBP; if (practices.ContactPerson_RefID != Guid.Empty) { var contactPBPQuery = new ORM_CMN_BPT_BusinessParticipant.Query(); contactPBPQuery.CMN_BPT_BusinessParticipantID = practices.ContactPerson_RefID; contactPBP = ORM_CMN_BPT_BusinessParticipant.Query.Search(Connection, Transaction, contactPBPQuery).First(); } else { contactPBP = new ORM_CMN_BPT_BusinessParticipant(); contactPBP.CMN_BPT_BusinessParticipantID = Guid.NewGuid(); contactPBP.IsCompany = true; practices.ContactPerson_RefID = contactPBP.CMN_BPT_BusinessParticipantID; } contactPBP.DisplayName = Parameter.ContactPerson_Name; contactPBP.Tenant_RefID = securityTicket.TenantID; contactPBP.Save(Connection, Transaction); companyInfo.Save(Connection, Transaction); practices.Save(Connection, Transaction); returnValue.Result = practices.HEC_MedicalPractiseID; return(returnValue); #endregion UserCode }
protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L5DI_SDC_1032 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { #region UserCode var returnValue = new FR_Guid(); //get languages for Tenant P_L2LN_GALFTID_1530 langParam = new P_L2LN_GALFTID_1530(); langParam.Tenant_RefID = securityTicket.TenantID; var DBLanguages = cls_Get_All_Languages_ForTenantID.Invoke(Connection, Transaction, langParam, securityTicket).Result; #region Save if (Parameter.CatalogID == Guid.Empty || Parameter.CatalogID == null) { ORM_HEC_DIA_PotentialDiagnosis_Catalog catalog = new ORM_HEC_DIA_PotentialDiagnosis_Catalog(); catalog.HEC_DIA_PotentialDiagnosis_CatalogID = Guid.NewGuid(); catalog.Creation_Timestamp = DateTime.Now; catalog.IsPrivateCatalog = Parameter.IsPrivateCatalog; catalog.Tenant_RefID = securityTicket.TenantID; catalog.GlobalPropertyMatchingID = Parameter.Catalog_Name; catalog.Catalog_DisplayName = Parameter.Catalog_Name; Dict Catalogname = new Dict("hec_dia_potentialdiagnosis_catalogs"); for (int i = 0; i < DBLanguages.Length; i++) { Catalogname.AddEntry(DBLanguages[i].CMN_LanguageID, Parameter.Catalog_Name); } catalog.Catalog_Name = Catalogname; catalog.Save(Connection, Transaction); } #endregion else { //Delete if (Parameter.isDeleted) { var catalogQuery = new ORM_HEC_DIA_PotentialDiagnosis_Catalog.Query(); catalogQuery.HEC_DIA_PotentialDiagnosis_CatalogID = Parameter.CatalogID; catalogQuery.IsDeleted = false; catalogQuery.Tenant_RefID = securityTicket.TenantID; var catalog = ORM_HEC_DIA_PotentialDiagnosis_Catalog.Query.Search(Connection, Transaction, catalogQuery).Single(); catalog.IsDeleted = true; catalog.Save(Connection, Transaction); //Delete catalog products table var catalogCodeQuery = new ORM_HEC_DIA_PotentialDiagnosis_CatalogCode.Query(); catalogCodeQuery.IsDeleted = false; catalogCodeQuery.PotentialDiagnosis_Catalog_RefID = catalog.HEC_DIA_PotentialDiagnosis_CatalogID; catalogCodeQuery.Tenant_RefID = securityTicket.TenantID; ORM_HEC_DIA_PotentialDiagnosis_CatalogCode.Query.SoftDelete(Connection, Transaction, catalogCodeQuery); } //Edit else { var catalogQuery = new ORM_HEC_DIA_PotentialDiagnosis_Catalog.Query(); catalogQuery.IsDeleted = false; catalogQuery.HEC_DIA_PotentialDiagnosis_CatalogID = Parameter.CatalogID; catalogQuery.Tenant_RefID = securityTicket.TenantID; var catalog = ORM_HEC_DIA_PotentialDiagnosis_Catalog.Query.Search(Connection, Transaction, catalogQuery).Single(); catalog.GlobalPropertyMatchingID = Parameter.Catalog_Name; catalog.Catalog_DisplayName = Parameter.Catalog_Name; catalog.IsPrivateCatalog = Parameter.IsPrivateCatalog; Dict Catalogname = new Dict("hec_dia_potentialdiagnosis_catalogs"); for (int i = 0; i < DBLanguages.Length; i++) { Catalogname.AddEntry(DBLanguages[i].CMN_LanguageID, Parameter.Catalog_Name); } catalog.Catalog_Name = Catalogname; catalog.Save(Connection, Transaction); } } return(returnValue); #endregion UserCode }
protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L3CA_IC_1527 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null) { //Leave UserCode region to enable user code saving #region UserCode var returnValue = new FR_Guid(); //Put your code here #region All tenant's languages P_L2LN_GALFTID_1530 langParam = new P_L2LN_GALFTID_1530(); langParam.Tenant_RefID = securityTicket.TenantID; var allTenantLanguages = cls_Get_All_Languages_ForTenantID.Invoke(Connection, Transaction, langParam, securityTicket).Result; #endregion #region Get catalog's language or create it // check if language with that ISO exists for Tenant (Lower, exmpl de) var languageQuery = new ORM_CMN_Language.Query(); languageQuery.ISO_639_1 = Parameter.CatalogLanguage_ISO_639_1.ToLower(); languageQuery.Tenant_RefID = securityTicket.TenantID; languageQuery.IsDeleted = false; var language = ORM_CMN_Language.Query.Search(Connection, Transaction, languageQuery).FirstOrDefault(); // if language does not exist for that Tenant if (language == null) { //check if language with that ISO exists for Tenant (Upper exmpl DE) languageQuery = new ORM_CMN_Language.Query(); languageQuery.ISO_639_1 = Parameter.CatalogLanguage_ISO_639_1.ToUpper(); languageQuery.Tenant_RefID = securityTicket.TenantID; languageQuery.IsDeleted = false; language = ORM_CMN_Language.Query.Search(Connection, Transaction, languageQuery).FirstOrDefault(); // if language does not exist for that Tenant create it if (language == null) { language = new ORM_CMN_Language(); language.CMN_LanguageID = Guid.NewGuid(); language.ISO_639_1 = Parameter.CatalogLanguage_ISO_639_1; language.Name = new Dict(ORM_CMN_Language.TableName); foreach (var item in allTenantLanguages) { language.Name.AddEntry(item.CMN_LanguageID, "CatalogLanguage - " + Parameter.CatalogLanguage_ISO_639_1); } language.Creation_Timestamp = DateTime.Now; language.Tenant_RefID = securityTicket.TenantID; language.IsDeleted = false; language.Save(Connection, Transaction); } } #endregion #region Get catalog's currency or create it // check if currency with that ISO exists for Tenant var currencyQuery = new ORM_CMN_Currency.Query(); currencyQuery.ISO4127 = Parameter.CatalogCurrency_ISO_4217.ToUpper(); currencyQuery.Tenant_RefID = securityTicket.TenantID; currencyQuery.IsDeleted = false; var currency = ORM_CMN_Currency.Query.Search(Connection, Transaction, currencyQuery).FirstOrDefault(); if (currency == null) { currencyQuery = new ORM_CMN_Currency.Query(); currencyQuery.ISO4127 = Parameter.CatalogCurrency_ISO_4217.ToLower(); currencyQuery.Tenant_RefID = securityTicket.TenantID; currencyQuery.IsDeleted = false; currency = ORM_CMN_Currency.Query.Search(Connection, Transaction, currencyQuery).FirstOrDefault(); if (currency == null) { currency = new ORM_CMN_Currency(); currency.CMN_CurrencyID = Guid.NewGuid(); currency.ISO4127 = Parameter.CatalogCurrency_ISO_4217; currency.Name = new Dict(ORM_CMN_Currency.TableName); foreach (var item in allTenantLanguages) { currency.Name.AddEntry(item.CMN_LanguageID, "CatalogCurrency - " + Parameter.CatalogCurrency_ISO_4217); } currency.Tenant_RefID = securityTicket.TenantID; currency.Creation_Timestamp = DateTime.Now; currency.Save(Connection, Transaction); } } #endregion #region save ORM_CMN_PRO_SubscribedCatalog var businessParticipant = ORM_CMN_BPT_BusinessParticipant.Query.Search(Connection, Transaction, new ORM_CMN_BPT_BusinessParticipant.Query() { IfTenant_Tenant_RefID = securityTicket.TenantID, IsDeleted = false }).Single(); var subscribedCatalog = new ORM_CMN_PRO_SubscribedCatalog(); subscribedCatalog.CMN_PRO_SubscribedCatalogID = Guid.NewGuid(); subscribedCatalog.CatalogCodeITL = Parameter.CatalogCodeITL; subscribedCatalog.SubscribedCatalog_Name = Parameter.CatalogName; subscribedCatalog.SubscribedBy_BusinessParticipant_RefID = businessParticipant != null ? businessParticipant.CMN_BPT_BusinessParticipantID : Guid.Empty; subscribedCatalog.Tenant_RefID = securityTicket.TenantID; subscribedCatalog.SubscribedCatalog_ValidFrom = Parameter.ValidFrom_Date; subscribedCatalog.SubscribedCatalog_ValidThrough = Parameter.ValidTo_Date; subscribedCatalog.SubscribedCatalog_Description = Parameter.CatalogDescription; subscribedCatalog.Creation_Timestamp = DateTime.Now; subscribedCatalog.IsDeleted = false; subscribedCatalog.SubscribedCatalog_CurrentRevision = Parameter.CatalogVersion; subscribedCatalog.IsCatalogPublic = Parameter.IsCatalogPublic; subscribedCatalog.SubscribedCatalog_Language_RefID = language.CMN_LanguageID; subscribedCatalog.SubscribedCatalog_Currency_RefID = currency.CMN_CurrencyID; #region Create Supplier var CMN_BPT_SupplierID = cls_CreateOrUpdateSupplier_for_ImportedCatalog.Invoke(Connection, Transaction, Parameter.SupplierData, securityTicket).Result; #endregion subscribedCatalog.PublishingSupplier_RefID = CMN_BPT_SupplierID; subscribedCatalog.Save(Connection, Transaction); #endregion return(returnValue); #endregion UserCode }