static void Main(string[] args) { CalendarWork working_calendar = new CalendarWork(); CalendarService working_calendar_service = working_calendar.SetUpAccess(); var list = working_calendar_service.CalendarList.List().Execute(); var cal_to_use = list.Items.SingleOrDefault(c => c.Summary == "*****@*****.**");//needs true user handle //Calendar tadocal = working_calendar.CreateTaDoCalendar(); //working_calendar.insert_calendar_trial( working_calendar_service, tadocal ); //working_calendar.RequestAListOfEvents(working_calendar_service, "primary");//list of next 20 events from primary calendar //working_calendar.RequestAListOfEvents(working_calendar_service, tadocal.Id);//fails //***some user interrupt has resulted in entering quick-input/to-do string...simulated by this prompt: Console.WriteLine("What's your Ta-Do?"); HopperNode newtado = new HopperNode(Console.ReadLine()); Event myevent = working_calendar.CreateEvent(newtado); working_calendar.AddEventToCalendar(working_calendar_service, myevent, cal_to_use.Id); //working_calendar.insert_event_trial(working_calendar_service, newtado); }
public CheckInResult CheckIn(string user, string token, string agencyId) { var log = new MongoHistoryAPI() { APIUrl = "/api/calendar/checkin", CreateTime = DateTime.Now, Sucess = 1 }; var result = new CheckInResult() { id = "1", msg = "success" }; try { if (!mongoHelper.checkLoginSession(user, token)) { throw new Exception(MRes.MSG_WRONG_TOKEN); } var checkStaff = db.MStaffs.Where(p => p.MUser == user).FirstOrDefault(); if (checkStaff == null) { throw new Exception("Sai thông tin"); } var checkAgency = db.MAgencies.Find(agencyId); if (checkAgency == null) { throw new Exception("Sai đại lý"); } var dateCode = DateTime.Now.ToString("ddMMyyyy"); var checkWork = db.CalendarWorks.Where(p => p.AgencyId == agencyId && p.StaffId == checkStaff.Id && p.CDate == dateCode).FirstOrDefault(); if (checkWork == null) { var work = new CalendarWork() { AgencyId = agencyId, CDate = dateCode, CDay = DateTime.Now.Day, ChangeTime = DateTime.Now, CMonth = DateTime.Now.Month, CountWork = 1, CYear = DateTime.Now.Year, FistTime = DateTime.Now, Id = Guid.NewGuid().ToString(), Perform = 0, StaffId = checkStaff.Id, DayOfWeek = mapDayOfWeeks[DateTime.Now.DayOfWeek] }; db.CalendarWorks.Add(work); db.SaveChanges(); result.perform = 0; result.workId = work.Id; result.des = "Ghé thăm lúc " + DateTime.Now.ToString("HH:mm") + " ngày " + DateTime.Now.ToString("dd/MM/yyyy"); } else { result.perform = checkWork.Perform; result.workId = checkWork.Id; result.des = "Ghé thăm giần nhất lúc " + checkWork.ChangeTime.Value.ToString("HH:mm") + " ngày " + checkWork.ChangeTime.Value.ToString("dd/MM/yyyy"); checkWork.ChangeTime = DateTime.Now; db.Entry(checkWork).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); } } catch (Exception e) { result.id = "0"; result.msg = e.Message; log.Sucess = 0; } log.ReturnInfo = new JavaScriptSerializer().Serialize(result); mongoHelper.createHistoryAPI(log); return(result); }
public ResultInfo CheckInOutPlan() { var log = new MongoHistoryAPI() { APIUrl = "/api/checkin/checkinoutplan", CreateTime = DateTime.Now, Sucess = 1 }; var result = new ResultInfo() { id = "1", msg = "success" }; var requestContent = Request.Content.ReadAsStringAsync().Result; try { var jsonserializer = new JavaScriptSerializer(); var paser = jsonserializer.Deserialize <CheckInOutPlanRequest>(requestContent); log.Content = new JavaScriptSerializer().Serialize(paser); if (!mongoHelper.checkLoginSession(paser.user, paser.token)) { throw new Exception("Wrong token and user login!"); } var staff = db.HaiStaffs.Where(p => p.UserLogin == paser.user).FirstOrDefault(); if (staff == null) { throw new Exception("Chỉ nhân viên công ty mới được sử dụng"); } // check var day = DateTime.Now.Day; var month = DateTime.Now.Month; var year = DateTime.Now.Year; var calendarType = db.CalendarTypes.Where(p => p.Id == paser.ctype).FirstOrDefault(); if (calendarType == null) { throw new Exception("Sai ke hoach"); } // check ke hoach nay da co chua if (String.IsNullOrEmpty(paser.code)) { var checkCalendar = db.CalendarWorks.Where(p => p.CMonth == month && p.CYear == year && p.CDay == day && p.StaffId == staff.Id && p.TypeId == calendarType.Id).FirstOrDefault(); if (checkCalendar != null) { throw new Exception("Ke hoach nay da ton tai"); } // tao lich CalendarWork plan = new CalendarWork() { Id = Guid.NewGuid().ToString(), CDate = "D" + day + "", CDay = day, CMonth = month, CYear = year, InPlan = 0, Perform = 1, CIn = 0, COut = 0, AllTime = 0, Distance = 0, TypeId = calendarType.Id, Notes = "CHECKIN NGOAI KE HOACH", StaffId = staff.Id, DayInWeek = GetDayOfWeek(day, month, year), LatCheck = paser.lat, LngCheck = paser.lng, TimeCheck = DateTime.Now, Flexible = 0 }; db.CalendarWorks.Add(plan); db.SaveChanges(); } else { var cinfo = db.CInfoCommons.Where(p => p.CCode == paser.code).FirstOrDefault(); if (cinfo == null) { throw new Exception("Sai mã khách hàng"); } var checkCalendar = db.CalendarWorks.Where(p => p.CMonth == month && p.CYear == year && p.CDay == day && p.StaffId == staff.Id && p.AgencyCode == paser.code).FirstOrDefault(); if (checkCalendar != null) { throw new Exception("Ke hoach nay da ton tai"); } // tao lich CalendarWork calendar = new CalendarWork() { Id = Guid.NewGuid().ToString(), AgencyCode = cinfo.CCode, AgencyType = cinfo.CType, CDate = "D" + day + "", CDay = day, CMonth = month, CYear = year, InPlan = 0, Perform = 0, CIn = 0, COut = 0, AllTime = 0, Distance = 0, TypeId = calendarType.Id, // Notes = "Ngoai ke hoach", StaffId = staff.Id, DayInWeek = GetDayOfWeek(day, month, year), LatCheck = paser.lat, LngCheck = paser.lng, TimeCheck = DateTime.Now, Flexible = 0 }; db.CalendarWorks.Add(calendar); db.SaveChanges(); } } catch (Exception e) { result.id = "0"; result.msg = e.Message; log.Sucess = 0; } log.ReturnInfo = new JavaScriptSerializer().Serialize(result); mongoHelper.createHistoryAPI(log); return(result); }
public ResultInfo CalendarCreate() { var log = new MongoHistoryAPI() { APIUrl = "/api/checkin/calendarcreate", CreateTime = DateTime.Now, Sucess = 1 }; var result = new ResultInfo() { id = "1", msg = "success" }; var requestContent = Request.Content.ReadAsStringAsync().Result; try { var jsonserializer = new JavaScriptSerializer(); var paser = jsonserializer.Deserialize <CalendarCreateRequest>(requestContent); log.Content = new JavaScriptSerializer().Serialize(paser); if (!mongoHelper.checkLoginSession(paser.user, paser.token)) { throw new Exception("Wrong token and user login!"); } var staff = db.HaiStaffs.Where(p => p.UserLogin == paser.user).FirstOrDefault(); if (staff == null) { throw new Exception("Chỉ nhân viên công ty mới được quyền tạo"); } var checkCalendar = db.CalendarInfoes.Where(p => p.CMonth == paser.month && p.CYear == paser.year && p.StaffId == staff.Id).FirstOrDefault(); if (checkCalendar != null) { throw new Exception("Kế hoạch này đã được tạo"); } // lap lich // luu lich voi trang thai chua xac nhan var checkInHistory = new CalendarInfo() { Id = Guid.NewGuid().ToString(), CMonth = paser.month, CYear = paser.year, CStatus = 0, CreateTime = DateTime.Now, StaffId = staff.Id }; db.CalendarInfoes.Add(checkInHistory); db.SaveChanges(); // lich chi tiet foreach (var item in paser.items) { if (item.agencies == null || item.agencies.Count() == 0) { CalendarWork plan = new CalendarWork() { Id = Guid.NewGuid().ToString(), CDate = "D" + item.day + "", CMonth = paser.month, CYear = paser.year, CDay = item.day, InPlan = 1, Perform = 1, CIn = 0, COut = 0, AllTime = 0, Distance = 0, TypeId = item.status, Notes = item.notes, StaffId = staff.Id, DayInWeek = GetDayOfWeek(item.day, paser.month, paser.year), Flexible = 0 }; db.CalendarWorks.Add(plan); db.SaveChanges(); } else { foreach (var cus in item.agencies) { var checkCus = db.CInfoCommons.Where(p => p.CCode == cus).FirstOrDefault(); if (checkCus != null) { CalendarWork plan = new CalendarWork() { Id = Guid.NewGuid().ToString(), CDate = "D" + item.day + "", CMonth = paser.month, CYear = paser.year, CDay = item.day, InPlan = 1, Perform = 0, CIn = 0, COut = 0, AllTime = 0, Distance = 0, AgencyCode = checkCus.CCode, AgencyType = checkCus.CType, TypeId = item.status, Notes = item.notes, StaffId = staff.Id, DayInWeek = GetDayOfWeek(item.day, paser.month, paser.year), Flexible = 0 }; db.CalendarWorks.Add(plan); db.SaveChanges(); } } } } } catch (Exception e) { result.id = "0"; result.msg = e.Message; log.Sucess = 0; } log.ReturnInfo = new JavaScriptSerializer().Serialize(result); mongoHelper.createHistoryAPI(log); return(result); }
public ResultInfo UpdateCalendar() { var log = new MongoHistoryAPI() { APIUrl = "/api/checkin/updatecalendar", CreateTime = DateTime.Now, Sucess = 1 }; var result = new ResultInfo() { id = "1", msg = "success" }; try { var requestContent = Request.Content.ReadAsStringAsync().Result; var jsonserializer = new JavaScriptSerializer(); var paser = jsonserializer.Deserialize <CalendarUpdateRequest>(requestContent); log.Content = new JavaScriptSerializer().Serialize(paser); if (!mongoHelper.checkLoginSession(paser.user, paser.token)) { throw new Exception("Wrong token and user login!"); } var staff = db.HaiStaffs.Where(p => p.UserLogin == paser.user).FirstOrDefault(); if (staff == null) { throw new Exception("Chỉ nhân viên công ty mới được quyền tạo"); } // check next month var checkCalendar = db.CalendarInfoes.Where(p => p.CMonth == paser.month && p.CYear == paser.year && p.StaffId == staff.Id).FirstOrDefault(); if (checkCalendar == null) { throw new Exception("Lịch không tồn tại"); } if (checkCalendar.CStatus == 1) { throw new Exception("Lịch đã đi vào hoặt động, không cho phép chỉnh sửa"); } checkCalendar.CStatus = 0; db.Entry(checkCalendar).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); // chinh sua // xoa du lieu cu var oldCalendar = db.CalendarWorks.Where(p => p.CMonth == paser.month && p.CDay == paser.item.day && p.StaffId == staff.Id).ToList(); foreach (var item in oldCalendar) { db.CalendarWorks.Remove(item); db.SaveChanges(); } // them cai moi if (paser.item.agencies == null || paser.item.agencies.Count() == 0) { CalendarWork plan = new CalendarWork() { Id = Guid.NewGuid().ToString(), CDate = "D" + paser.item.day + "", CMonth = paser.month, CYear = paser.year, CDay = paser.item.day, InPlan = 1, Perform = 0, CIn = 0, COut = 0, AllTime = 0, Distance = 0, TypeId = paser.item.status, Notes = paser.item.notes, StaffId = staff.Id, DayInWeek = GetDayOfWeek(paser.item.day, paser.month, paser.year) }; db.CalendarWorks.Add(plan); db.SaveChanges(); } else { foreach (var cus in paser.item.agencies) { var checkCus = db.CInfoCommons.Where(p => p.CCode == cus).FirstOrDefault(); if (checkCus != null) { CalendarWork plan = new CalendarWork() { Id = Guid.NewGuid().ToString(), CDate = "D" + paser.item.day + "", CMonth = paser.month, CYear = paser.year, CDay = paser.item.day, InPlan = 1, Perform = 0, CIn = 0, COut = 0, AllTime = 0, Distance = 0, AgencyCode = checkCus.CCode, AgencyType = checkCus.CType, TypeId = paser.item.status, Notes = paser.item.notes, StaffId = staff.Id, DayInWeek = GetDayOfWeek(paser.item.day, paser.month, paser.year) }; db.CalendarWorks.Add(plan); db.SaveChanges(); } } } // xong } catch (Exception e) { result.id = "0"; result.msg = e.Message; log.Sucess = 0; } log.ReturnInfo = new JavaScriptSerializer().Serialize(result); mongoHelper.createHistoryAPI(log); return(result); }
public ResultInfo CheckInFlexible() { var log = new MongoHistoryAPI() { APIUrl = "/api/checkin/checkinflexible", CreateTime = DateTime.Now, Sucess = 1 }; var result = new ResultInfo() { id = "1", msg = "success" }; var requestContent = Request.Content.ReadAsStringAsync().Result; try { var jsonserializer = new JavaScriptSerializer(); var paser = jsonserializer.Deserialize <CheckInFlexibleRequest>(requestContent); log.Content = new JavaScriptSerializer().Serialize(paser); if (!mongoHelper.checkLoginSession(paser.user, paser.token)) { throw new Exception("Wrong token and user login!"); } var staff = db.HaiStaffs.Where(p => p.UserLogin == paser.user).FirstOrDefault(); if (staff == null) { throw new Exception("Chỉ nhân viên công ty mới được sử dụng"); } if (checkTT(paser.user)) { throw new Exception("Không dành cho nhân viên thị trường"); } var calendarType = db.CalendarTypes.Where(p => p.Id == paser.typeId).FirstOrDefault(); if (calendarType == null) { throw new Exception("Sai ke hoach"); } var day = DateTime.Now.Day; var month = DateTime.Now.Month; var year = DateTime.Now.Year; // tao lich CalendarWork plan = new CalendarWork() { Id = Guid.NewGuid().ToString(), CDate = "D" + day + "", CDay = day, CMonth = month, CYear = year, InPlan = 0, Perform = 0, CIn = 0, COut = 0, AllTime = 0, Distance = 0, TypeId = calendarType.Id, Notes = "CHECKIN KHONG CO DINH", StaffId = staff.Id, DayInWeek = GetDayOfWeek(day, month, year), LatCheck = paser.lat, LngCheck = paser.lng, TimeCheck = DateTime.Now, AddressInfo = paser.address, AgencyCode = "KVL", AgencyType = "KVL", Content = paser.content, Country = paser.country, Province = paser.province, Ward = paser.ward, District = paser.district, Flexible = 1 }; db.CalendarWorks.Add(plan); db.SaveChanges(); } catch (Exception e) { result.id = "0"; result.msg = e.Message; log.Sucess = 0; } log.ReturnInfo = new JavaScriptSerializer().Serialize(result); mongoHelper.createHistoryAPI(log); return(result); }