77 lines
9.7 KiB
C#
77 lines
9.7 KiB
C#
// using System.Net.Http.Headers;
|
|
// using BMA.EHR.Domain.Extensions;
|
|
// using Microsoft.EntityFrameworkCore;
|
|
// using Newtonsoft.Json;
|
|
|
|
// namespace BMA.EHR.Insignia.Service.Services
|
|
// {
|
|
// public class NotifyService
|
|
// {
|
|
// private readonly ApplicationDbContext _context;
|
|
// private readonly IHttpContextAccessor _httpContextAccessor;
|
|
// private readonly IConfiguration _configuration;
|
|
// private readonly AppointmentService _serviceAppoint;
|
|
// private readonly AppointmentReserveLineService _serviceAppointRe;
|
|
// public NotifyService(ApplicationDbContext context, IHttpContextAccessor httpContextAccessor, IConfiguration configuration, AppointmentService serviceAppoint, AppointmentReserveLineService serviceAppointRe) : base(httpContextAccessor)
|
|
// {
|
|
// _context = context;
|
|
// _httpContextAccessor = httpContextAccessor;
|
|
// _configuration = configuration;
|
|
// _serviceAppoint = serviceAppoint;
|
|
// _serviceAppointRe = serviceAppointRe;
|
|
// }
|
|
// public async Task<dynamic> notiAppointments()
|
|
// {
|
|
// Console.WriteLine("++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++");
|
|
// var data = await _context.Tb15AppointmentReserve.Where(x => x.AppointDate.ToDateTime(x.AppointTimeStart).Date == DateTime.Now.AddDays(1).Date).ToListAsync();
|
|
// foreach (var _data in data)
|
|
// {
|
|
// var message = new
|
|
// {
|
|
// type = "text",
|
|
// text = $"เรียน อาสาสมัคร\n พรุ่งนี้ท่านมีนัดกับโครงการศิริราชวันเฮลท์ที่ ชั้น 1 ตึกศูนย์วิจัยการแพทย์ศิริราช (SiMR) โครงการดำเนินการ เวลา {(_data.AppointDate).ToDateTime(_data.AppointTimeStart).ToShortTimeString()} - {(_data.AppointDate).ToDateTime(_data.AppointTimeEnd).ToShortTimeString()} น. ขอความกรุณา ดังนี้\n 1. 'ไม่ต้องงด' อาหารและเครื่องดื่ม\nท่านจะได้รับการตรวจน้ำตาลสะสม (A1C) และอื่น ๆ ตามปกติ ยกเว้น น้ำตาลในเลือดและอินซูลิน\n 2. ทำแบบสอบถาม ที่แถบเมนู “ทำแบบสอบถาม” ให้ครบ\n 3. แจ้งชื่อ-นามสกุล ณ จุดลงทะเบียน และแจ้งสถานะการเข้าร่วมโครงการจีโนมิกส์ประเทศไทย (จากรูปที่แคปไว้)\n 4. ดำเนินกิจกรรมทั้งหมด 6 ฐาน\n*เนื่องจากมีการวัดองค์ประกอบร่างกายด้วยเครื่อง BIA รบกวนหลีกเลี่ยงการใส่เครื่องประดับที่มีโลหะ\n\nหลังวันนัด\n 1. อาสาสมัครที่ผ่านเกณฑ์การตรวจอุจจาระ เจ้าหน้าที่จะติดต่อเพื่อนัดรับอุปกรณ์อีกครั้ง\n 2. เจ้าหน้าที่จะแจ้งผลตรวจตามที่อาสาสมัครตรวจจริงภายใน 2-3 เดือน"
|
|
// };
|
|
// if (_data.AppointTimeStart == TimeOnly.Parse("08:00"))
|
|
// {
|
|
// message = new
|
|
// {
|
|
// type = "text",
|
|
// text = $"เรียน อาสาสมัคร\n พรุ่งนี้ท่านมีนัดกับโครงการศิริราชวันเฮลท์ที่ ชั้น 1 ตึกศูนย์วิจัยการแพทย์ศิริราช (SiMR) โครงการดำเนินการ เวลา {(_data.AppointDate).ToDateTime(_data.AppointTimeStart).ToShortTimeString()} - {(_data.AppointDate).ToDateTime(_data.AppointTimeEnd).ToShortTimeString()} น. ขอความกรุณา ดังนี้\n 1. งดอาหารและเครื่องดื่ม ยกเว้นน้ำเปล่า หลังเที่ยงคืน (หากท่านไม่สะดวกงดอาหาร ท่านจะไม่ได้รับการตรวจน้ำตาลในเลือดและอินซูลิน)\n 2. ทำแบบสอบถาม ที่แถบเมนู “ทำแบบสอบถาม” ให้ครบ\n 3. แจ้งชื่อ-นามสกุล ณ จุดลงทะเบียน และแจ้งสถานะการเข้าร่วมโครงการจีโนมิกส์ประเทศไทย (จากรูปที่แคปไว้)\n 4. ดำเนินกิจกรรมทั้งหมด 6 ฐาน\n*เนื่องจากมีการวัดองค์ประกอบร่างกายด้วยเครื่อง BIA รบกวนหลีกเลี่ยงการใส่เครื่องประดับที่มีโลหะ\n\nหลังวันนัด\n 1. อาสาสมัครที่ผ่านเกณฑ์การตรวจอุจจาระ เจ้าหน้าที่จะติดต่อเพื่อนัดรับอุปกรณ์อีกครั้ง\n 2. เจ้าหน้าที่จะแจ้งผลตรวจตามที่อาสาสมัครตรวจจริงภายใน 2-3 เดือน"
|
|
// };
|
|
// }
|
|
// else if (_data.AppointTimeStart == TimeOnly.Parse("09:00"))
|
|
// {
|
|
// message = new
|
|
// {
|
|
// type = "text",
|
|
// text = $"เรียน อาสาสมัคร\n พรุ่งนี้ท่านมีนัดกับโครงการศิริราชวันเฮลท์ที่ ชั้น 1 ตึกศูนย์วิจัยการแพทย์ศิริราช (SiMR) โครงการดำเนินการ เวลา {(_data.AppointDate).ToDateTime(_data.AppointTimeStart).ToShortTimeString()} - {(_data.AppointDate).ToDateTime(_data.AppointTimeEnd).ToShortTimeString()} น. ขอความกรุณา ดังนี้\n 1. 'ไม่ต้องงด' อาหารและเครื่องดื่ม\nท่านจะได้รับการตรวจน้ำตาลสะสม (A1C) และอื่น ๆ ตามปกติ ยกเว้น น้ำตาลในเลือดและอินซูลิน\n 2. ทำแบบสอบถาม ที่แถบเมนู “ทำแบบสอบถาม” ให้ครบ\n 3. แจ้งชื่อ-นามสกุล ณ จุดลงทะเบียน และแจ้งสถานะการเข้าร่วมโครงการจีโนมิกส์ประเทศไทย (จากรูปที่แคปไว้)\n 4. ดำเนินกิจกรรมทั้งหมด 6 ฐาน\n*เนื่องจากมีการวัดองค์ประกอบร่างกายด้วยเครื่อง BIA รบกวนหลีกเลี่ยงการใส่เครื่องประดับที่มีโลหะ\n\nหลังวันนัด\n 1. อาสาสมัครที่ผ่านเกณฑ์การตรวจอุจจาระ เจ้าหน้าที่จะติดต่อเพื่อนัดรับอุปกรณ์อีกครั้ง\n 2. เจ้าหน้าที่จะแจ้งผลตรวจตามที่อาสาสมัครตรวจจริงภายใน 2-3 เดือน"
|
|
// };
|
|
// }
|
|
// Object[] messageArray = new Object[] { message };
|
|
|
|
// var profile = await _context.Tb1Profile.FirstOrDefaultAsync(x => x.UserId == _data.UserId);
|
|
// if (profile != null && profile.LineId != null)
|
|
// {
|
|
// var result = new
|
|
// {
|
|
// to = profile.LineId,
|
|
// messages = messageArray
|
|
// };
|
|
// using (var client = new HttpClient())
|
|
// {
|
|
// var json = JsonConvert.SerializeObject(result);
|
|
// var _result = new StringContent(json, null, "application/json");
|
|
// var url = "https://api.line.me/v2/bot/message/push";
|
|
// // //HTTP POST
|
|
// client.DefaultRequestHeaders.Authorization
|
|
// = new AuthenticationHeaderValue("Bearer", _configuration["ACCESS_TOKEN"]);
|
|
// var responseTask = client.PostAsync(url, _result);
|
|
// var results = responseTask.Result;
|
|
// // Console.WriteLine(results.Content.ReadAsStringAsync().Result);
|
|
// }
|
|
// }
|
|
// }
|
|
// return data;
|
|
// }
|
|
// }
|
|
// }
|