public async Task <HttpResponseMessage> Select(MT_Notifications NSMD) { Db = con.SurgeryCenterDb(NSMD.Slug); NotificationsResponse Response = new NotificationsResponse(); try { MT_Notifications notification = new MT_Notifications(); Query ObjQuery = Db.Collection("MT_Notifications").WhereEqualTo("NFT_Is_Deleted", false).WhereEqualTo("NFT_Is_Active", true).WhereEqualTo("NFT_Unique_ID", NSMD.NFT_Unique_ID); QuerySnapshot ObjQuerySnap = await ObjQuery.GetSnapshotAsync(); if (ObjQuerySnap != null) { notification = ObjQuerySnap.Documents[0].ConvertTo <MT_Notifications>(); Response.Status = con.StatusSuccess; Response.Message = con.MessageSuccess; Response.Data = notification; } } catch (Exception ex) { Response.Status = con.StatusFailed; Response.Message = con.MessageFailed + ", Exception : " + ex.Message; } return(ConvertToJSON(Response)); }
public async Task <HttpResponseMessage> DeleteAssignedNotification(MT_Virtual_Consultant_Booking VCMD) { Db = con.SurgeryCenterDb(VCMD.Slug); VCBookingResponse Response = new VCBookingResponse(); try { MT_Notifications Notification = new MT_Notifications(); MT_Virtual_Consultant_Booking Booking = new MT_Virtual_Consultant_Booking(); List <MT_Notifications> NotiList = new List <MT_Notifications>(); Query Qry = Db.Collection("MT_Virtual_Consultant_Booking").WhereEqualTo("VCB_Unique_ID", VCMD.VCB_Unique_ID).WhereEqualTo("VCB_Is_Deleted", false).WhereEqualTo("VCB_Is_Active", true); QuerySnapshot ObjQuerySnap = await Qry.GetSnapshotAsync(); if (ObjQuerySnap != null) { Booking = ObjQuerySnap.Documents[0].ConvertTo <MT_Virtual_Consultant_Booking>(); if (VCMD.VCB_Notifications_Array != null && Booking.VCB_Notifications != null) { foreach (MT_Notifications noti in Booking.VCB_Notifications) { if (VCMD.VCB_Notifications_Array.Contains <string>(noti.NFT_Unique_ID) == false) { NotiList.Add(noti); } } } } Dictionary <string, object> initialData = new Dictionary <string, object> { { "VCB_Modify_Date", con.ConvertTimeZone(VCMD.VCB_TimeZone, Convert.ToDateTime(VCMD.VCB_Modify_Date)) }, { "VCB_TimeZone", VCMD.VCB_TimeZone }, { "VCB_Notifications", NotiList } }; //Main section DocumentReference docRef = Db.Collection("MT_Virtual_Consultant_Booking").Document(VCMD.VCB_Unique_ID); WriteResult Result = await docRef.UpdateAsync(initialData); if (Result != null) { Response.Status = con.StatusSuccess; Response.Message = con.MessageSuccess; Response.Data = VCMD; } else { Response.Status = con.StatusNotInsert; Response.Message = con.MessageNotInsert; Response.Data = null; } } catch (Exception ex) { Response.Status = con.StatusFailed; Response.Message = con.MessageFailed + ", Exception : " + ex.Message; } return(ConvertToJSON(Response)); }
public async Task <HttpResponseMessage> GetNotiListFilterWithPO(MT_Notifications NSMD) { Db = con.SurgeryCenterDb(NSMD.Slug); NotificationsResponse Response = new NotificationsResponse(); try { List <MT_Notifications> NotiList = new List <MT_Notifications>(); Query ObjQuery = Db.Collection("MT_Notifications").WhereEqualTo("NFT_Is_Deleted", false).WhereEqualTo("NFT_Is_Active", true).WhereEqualTo("NFT_Surgery_Physician_Id", NSMD.NFT_Surgery_Physician_Id).OrderByDescending("NFT_Create_Date"); QuerySnapshot ObjQuerySnap = await ObjQuery.GetSnapshotAsync(); if (ObjQuerySnap != null) { foreach (DocumentSnapshot Docsnap in ObjQuerySnap.Documents) { NotiList.Add(Docsnap.ConvertTo <MT_Notifications>()); } Response.Status = con.StatusSuccess; Response.Message = con.MessageSuccess; Response.DataList = NotiList; } } catch (Exception ex) { Response.Status = con.StatusFailed; Response.Message = con.MessageFailed + ", Exception : " + ex.Message; } return(ConvertToJSON(Response)); }
public async Task <HttpResponseMessage> DeleteAction(MT_Notifications NSMD) { Db = con.SurgeryCenterDb(NSMD.Slug); NotificationsResponse Response = new NotificationsResponse(); try { List <Notification_Action> ActionList = new List <Notification_Action>(); Query ObjQuery = Db.Collection("MT_Notifications").WhereEqualTo("NFT_Is_Deleted", false).WhereEqualTo("NFT_Is_Active", true).WhereEqualTo("NFT_Unique_ID", NSMD.NFT_Unique_ID); QuerySnapshot ObjQuerySnap = await ObjQuery.GetSnapshotAsync(); if (ObjQuerySnap != null) { MT_Notifications noti = ObjQuerySnap.Documents[0].ConvertTo <MT_Notifications>(); if (noti.NFT_Actions != null) { foreach (Notification_Action action in noti.NFT_Actions) { if (action.NFA_Unique_ID != NSMD.NFT_Actions[0].NFA_Unique_ID) { ActionList.Add(action); } } } } Dictionary <string, object> initialData = new Dictionary <string, object> { { "NFT_Actions", ActionList }, }; DocumentReference docRef = Db.Collection("MT_Notifications").Document(NSMD.NFT_Unique_ID); WriteResult Result = await docRef.UpdateAsync(initialData); if (Result != null) { Response.Status = con.StatusSuccess; Response.Message = con.MessageSuccess; Response.Data = NSMD; } else { Response.Status = con.StatusNotInsert; Response.Message = con.MessageNotInsert; Response.Data = null; } } catch (Exception ex) { Response.Status = con.StatusFailed; Response.Message = con.MessageFailed + ", Exception : " + ex.Message; } return(ConvertToJSON(Response)); }
public async Task <HttpResponseMessage> Update(MT_Notifications NSMD) { Db = con.SurgeryCenterDb(NSMD.Slug); NotificationsResponse Response = new NotificationsResponse(); try { List <Notification_Action> ActionList = new List <Notification_Action>(); Dictionary <string, object> initialData = new Dictionary <string, object> { { "NFT_Category_ID", NSMD.NFT_Category_ID }, { "NFT_Category_Name", NSMD.NFT_Category_Name }, { "NFT_Category_Type_ID", NSMD.NFT_Category_Type_ID }, { "NFT_Category_Type_Name", NSMD.NFT_Category_Type_Name }, { "NFT_Name", NSMD.NFT_Name }, { "NFT_Description", NSMD.NFT_Description }, { "NFT_Modify_Date", con.ConvertTimeZone(NSMD.NFT_TimeZone, Convert.ToDateTime(NSMD.NFT_Modify_Date)) }, { "NFT_TimeZone", NSMD.NFT_TimeZone } }; DocumentReference docRef = Db.Collection("MT_Notifications").Document(NSMD.NFT_Unique_ID); WriteResult Result = await docRef.UpdateAsync(initialData); if (Result != null) { Response.Status = con.StatusSuccess; Response.Message = con.MessageSuccess; Response.Data = NSMD; } else { Response.Status = con.StatusNotInsert; Response.Message = con.MessageNotInsert; Response.Data = null; } } catch (Exception ex) { Response.Status = con.StatusFailed; Response.Message = con.MessageFailed + ", Exception : " + ex.Message; } return(ConvertToJSON(Response)); }
public async Task <HttpResponseMessage> SelectAction(MT_Notifications NSMD) { Db = con.SurgeryCenterDb(NSMD.Slug); NotificationsResponse Response = new NotificationsResponse(); try { List <Notification_Action> ActionList = new List <Notification_Action>(); Query ObjQuery = Db.Collection("MT_Notifications").WhereEqualTo("NFT_Is_Deleted", false).WhereEqualTo("NFT_Is_Active", true).WhereEqualTo("NFT_Unique_ID", NSMD.NFT_Unique_ID); QuerySnapshot ObjQuerySnap = await ObjQuery.GetSnapshotAsync(); if (ObjQuerySnap != null) { MT_Notifications noti = ObjQuerySnap.Documents[0].ConvertTo <MT_Notifications>(); if (noti.NFT_Actions != null) { foreach (Notification_Action action in noti.NFT_Actions) { if (action.NFA_Unique_ID == NSMD.NFT_Actions[0].NFA_Unique_ID) { ActionList.Add(action); } } } noti.NFT_Actions = ActionList; Response.Data = noti; Response.Status = con.StatusSuccess; Response.Message = con.MessageSuccess; } } catch (Exception ex) { Response.Status = con.StatusFailed; Response.Message = con.MessageFailed + ", Exception : " + ex.Message; } return(ConvertToJSON(Response)); }
public async Task <HttpResponseMessage> CreateAsync(MT_Notifications NSMD) { Db = con.SurgeryCenterDb(NSMD.Slug); NotificationsResponse Response = new NotificationsResponse(); try { List <Notification_Action> ActionList = new List <Notification_Action>(); UniqueID = con.GetUniqueKey(); NSMD.NFT_Unique_ID = UniqueID; NSMD.NFT_Create_Date = con.ConvertTimeZone(NSMD.NFT_TimeZone, Convert.ToDateTime(NSMD.NFT_Create_Date)); NSMD.NFT_Modify_Date = con.ConvertTimeZone(NSMD.NFT_TimeZone, Convert.ToDateTime(NSMD.NFT_Modify_Date)); NSMD.NFT_Actions = ActionList; DocumentReference docRef = Db.Collection("MT_Notifications").Document(UniqueID); WriteResult Result = await docRef.SetAsync(NSMD); if (Result != null) { Response.Status = con.StatusSuccess; Response.Message = con.MessageSuccess; Response.Data = NSMD; } else { Response.Status = con.StatusNotInsert; Response.Message = con.MessageNotInsert; Response.Data = null; } } catch (Exception ex) { Response.Status = con.StatusFailed; Response.Message = con.MessageFailed + ", Exception : " + ex.Message; } return(ConvertToJSON(Response)); }