public JsonResult SendCarRegistration(long registrationId) { AssignUserInfo(); JsonResultBO result = new JsonResultBO(false); qlDangKyXeBusiness = Get <QL_DANGKY_XEBusiness>(); dmNguoiDungBusiness = Get <DM_NGUOIDUNGBusiness>(); sysTinNhanBusiness = Get <SYS_TINNHANBusiness>(); QL_DANGKY_XE registration = qlDangKyXeBusiness.Find(registrationId); if (registration != null && registration.IS_DELETE != true) { registration.TRANGTHAI = TRANGTHAI_DANGKY_XE_CONSTANT.DAGUI_ID; qlDangKyXeBusiness.Save(registration); result.Status = true; result.Message = "Đã gửi yêu cầu đăng ký sử dụng xe"; //gửi tin nhắn cho người có quyền xác nhận yêu cầu sử dụng xe List <long> notifyUsers = dmNguoiDungBusiness.GetListUsersByFunctionCodeAndDeptId(CONFIRM_CAR_REGISTRATION, currentUser.DeptParentID.GetValueOrDefault()); string title = "YÊU CẦU SỬ DỤNG XE"; string content = string.Format("{0} đã gửi một yêu cầu sử dụng xe", currentUser.HOTEN); sysTinNhanBusiness.sendMessageMultipleUsers(notifyUsers, currentUser, title, content, Url.Action("Details", new { id = registrationId }), string.Empty, false, registrationId, 0); } else { result.Message = "Không tìm thấy đăng ký xe"; } return(Json(result)); }
public JsonResult CancelRegistration(long registrationId) { AssignUserInfo(); JsonResultBO result = new JsonResultBO(true); qlDangKyXeBusiness = Get <QL_DANGKY_XEBusiness>(); qlChuyenBusiness = Get <QL_DANGKYXE_LAIXEBusiness>(); dmNguoiDungBusiness = Get <DM_NGUOIDUNGBusiness>(); sysTinNhanBusiness = Get <SYS_TINNHANBusiness>(); QL_DANGKY_XE registration = qlDangKyXeBusiness.Find(registrationId); if (registration != null && registration.IS_DELETE != true) { QL_DANGKYXE_LAIXE trip = qlChuyenBusiness.repository.All().Where(x => x.QL_DANGKY_XE_ID == registration.ID).FirstOrDefault(); if (trip == null || trip.TRANGTHAI == TRANGTHAI_CHUYEN_CONSTANT.MOITAO_ID) { if (trip != null) { qlChuyenBusiness.repository.Delete(trip); } registration.TRANGTHAI = TRANGTHAI_DANGKY_XE_CONSTANT.DA_HUY_ID; qlDangKyXeBusiness.Save(registration); result.Message = "Hủy yêu cầu thành công"; //gửi tin nhắn cho người có quyền xác nhận yêu cầu sử dụng xe List <long> notifyUsers = dmNguoiDungBusiness.GetListUsersByFunctionCodeAndDeptId(CONFIRM_CAR_REGISTRATION, currentUser.DeptParentID.GetValueOrDefault()); string title = "HỦY YÊU CẦU SỬ DỤNG XE"; string content = string.Format("{0} đã hủy một yêu cầu sử dụng xe", currentUser.HOTEN); sysTinNhanBusiness.sendMessageMultipleUsers(notifyUsers, currentUser, title, content, Url.Action("Details", new { id = registrationId }), string.Empty, false, registrationId, 0); } else { result.Status = false; if (trip.TRANGTHAI == TRANGTHAI_CHUYEN_CONSTANT.DANGCHAY_ID) { result.Message = "Yêu cầu đang được thực thi không thể hủy"; } else { result.Message = "Hủy yêu cầu không thành công"; } } } return(Json(result)); }
public JsonResult SaveRoomRequest(FormCollection fc) { AssignUserInfo(); SYS_TINNHANBusiness = Get <SYS_TINNHANBusiness>(); QUANLY_PHONGHOPBusiness = Get <QUANLY_PHONGHOPBusiness>(); DM_NGUOIDUNGBusiness = Get <DM_NGUOIDUNGBusiness>(); JsonResultBO result = new JsonResultBO(true); QUANLY_PHONGHOP entity = new QUANLY_PHONGHOP(); entity.ID = fc["ID"].ToIntOrZero(); entity.USER_ID = fc["USER_ID"].ToLongOrZero(); entity.MUCDICH = fc["MUCDICH"].Trim(); entity.THANHPHANTHAMDU = fc["THANHPHANTHAMDU"].Trim(); entity.GIOBATDAU = fc["GIOBATDAU"].ToIntOrZero(); entity.PHUTBATDAU = fc["PHUTBATDAU"].ToIntOrZero(); entity.GIOKETTHUC = fc["GIOKETTHUC"].ToIntOrZero(); entity.PHUTKETTHUC = fc["PHUTKETTHUC"].ToIntOrZero(); entity.CREATED_AT = DateTime.Now; entity.CREATED_BY = currentUser.ID; entity.NGAYDAT = fc["NGAYDAT"].ToDateTime(); entity.IS_DELETE = false; entity.CCTC_THANHPHAN_ID = currentUser.DeptParentID.GetValueOrDefault(); //danh sách người nhận thông báo đặt lịch họp List <long> notifyUsers = DM_NGUOIDUNGBusiness.GetListUsersByFunctionCodeAndDeptId("QUANLY_DAT_PHONGHOP", currentUser.DeptParentID.GetValueOrDefault()); string title = string.Empty; string content = string.Empty; string url = string.Empty; string bookDate = entity.NGAYDAT.Value.ToVietnameseDateFormat(); string startTime = string.Format("{0}h{1}", entity.GIOBATDAU.Value.ToString("D2"), entity.PHUTBATDAU.Value.ToString("D2")); string endTime = string.Format("{0}h{1}", entity.GIOKETTHUC.Value.ToString("D2"), entity.PHUTKETTHUC.Value.ToString("D2")); //kiểm tra trùng lịch lãnh đạo if (entity.USER_ID > 0) { List <QUANLY_PHONGHOP> bookingsOfUserInDay = QUANLY_PHONGHOPBusiness.GetBookingsOfUserInDay(entity.NGAYDAT.Value, entity.USER_ID); if (entity.ID > 0) { bookingsOfUserInDay = bookingsOfUserInDay.Where(x => x.ID != entity.ID).ToList(); } if (bookingsOfUserInDay.Any()) { int totalBookDuplicate = 0; //tổng số lịch bị trùng int totalStartMinutes = entity.GIOBATDAU.GetValueOrDefault() * 60 + entity.PHUTBATDAU.GetValueOrDefault(); int totalEndMinutes = entity.GIOKETTHUC.GetValueOrDefault() * 60 + entity.PHUTKETTHUC.GetValueOrDefault(); foreach (var booking in bookingsOfUserInDay) { int totalStartMinutesDb = booking.GIOBATDAU.GetValueOrDefault() * 60 + booking.PHUTBATDAU.GetValueOrDefault(); int totalEndMinutesDb = booking.GIOKETTHUC.GetValueOrDefault() * 60 + booking.PHUTKETTHUC.GetValueOrDefault(); //kiểm tra khoảng thời gian trùng lặp if (totalStartMinutes >= totalStartMinutesDb && totalStartMinutes <= totalStartMinutesDb) //giờ bắt đầu nằm trong khoảng họp { totalBookDuplicate++; } else if (totalStartMinutes <= totalStartMinutesDb && totalEndMinutes >= totalStartMinutesDb && totalEndMinutes <= totalEndMinutesDb) //giờ kết thúc nằm trong khoảng họp { totalBookDuplicate++; } else if (totalStartMinutes >= totalStartMinutesDb && totalEndMinutes <= totalStartMinutesDb) //giờ bắt đầu và giờ kết thúc đều nằm trong khoảng họp { totalBookDuplicate++; } } if (totalBookDuplicate > 0) { result.Message = string.Format("Trong ngày {0} lãnh đạo có {1} lịch diễn ra trong khoảng thời gian trên", bookDate, totalBookDuplicate); result.Status = false; return(Json(result)); } } } if (entity.ID > 0) { QUANLY_PHONGHOP dbEntity = QUANLY_PHONGHOPBusiness.Find(entity.ID); dbEntity.USER_ID = entity.USER_ID; dbEntity.MUCDICH = entity.MUCDICH; dbEntity.THANHPHANTHAMDU = entity.THANHPHANTHAMDU; dbEntity.GIOBATDAU = entity.GIOBATDAU; dbEntity.GIOKETTHUC = entity.GIOKETTHUC; dbEntity.NGAYDAT = entity.NGAYDAT; dbEntity.PHUTBATDAU = entity.PHUTBATDAU; dbEntity.PHUTKETTHUC = entity.PHUTKETTHUC; dbEntity.CCTC_THANHPHAN_ID = entity.CCTC_THANHPHAN_ID; QUANLY_PHONGHOPBusiness.Save(dbEntity); result.Message = "Cập nhật lịch họp thành công"; title = "THÔNG BÁO THAY ĐổI LỊCH HỌP"; content = string.Format("{0} đã thay đổi thông tin lịch họp vào ngày {1} lúc {2} đến {3}", currentUser.HOTEN, bookDate, startTime, endTime); } else { QUANLY_PHONGHOPBusiness.Save(entity); result.Message = "Thêm mới lịch họp thành công"; title = "THÔNG BÁO ĐẶT LỊCH HỌP"; content = string.Format("{0} đã đặt một lịch họp vào ngày {1} lúc {2} đến {3}", currentUser.HOTEN, bookDate, startTime, endTime); } //gửi tin nhắn cho người có nhiệm vụ đặt phòng SYS_TINNHANBusiness.sendMessageMultipleUsers(notifyUsers, currentUser, title, content, url, string.Empty, false, entity.ID, 0); return(Json(result)); }