public virtual ActionResult GetJsonTransRoom(string roomId) { MRoom room = _mRoomRepository.Get(roomId); TTransRoom troom = _tTransRoomRepository.GetByRoom(room); DateTime? TransDate = DateTime.Today; if (troom == null) { troom = new TTransRoom(); troom.SetAssignedIdTo(Guid.NewGuid().ToString()); troom.RoomStatus = EnumTransRoomStatus.New.ToString(); troom.RoomInDate = DateTime.Now; } else { TransDate = troom.TransId.TransDate; } var t = new { troom.Id, troom.RoomInDate, troom.RoomOutDate, troom.RoomStatus, troom.RoomBookDate, troom.RoomCommissionService, troom.RoomCommissionProduct, TransDate, IsVipRoom = room.RoomStatus.Equals(EnumRoomStatus.VIP.ToString()).ToString() }; return(Json(t, JsonRequestBehavior.AllowGet)); }
public ActionResult DeleteTransRoom(TTrans Trans) { _tTransRoomRepository.DbContext.BeginTransaction(); TTrans t = _tTransRepository.Get(Trans.Id); if (t != null) { //delete trans room TTransRoom troom = _tTransRoomRepository.Get(t.Id); if (troom != null) { _tTransRoomRepository.Delete(troom); } TTransDet det; for (int i = 0; i < t.TransDets.Count; i++) { det = t.TransDets[i]; _tTransDetRepository.Delete(det); } _tTransRepository.Delete(t); } string Message = string.Empty; bool Success = true; try { _tTransRoomRepository.DbContext.CommitTransaction(); TempData[EnumCommonViewData.SaveState.ToString()] = EnumSaveState.Success; } catch (Exception ex) { Success = false; Message = ex.GetBaseException().Message; _tTransRoomRepository.DbContext.RollbackTransaction(); TempData[EnumCommonViewData.SaveState.ToString()] = EnumSaveState.Failed; return(Content(ex.GetBaseException().Message)); } var e = new { Success, Message, RoomStatus = EnumTransRoomStatus.New.ToString() }; //return Json(e, JsonRequestBehavior.AllowGet); return(Content("Data Billing berhasil dihapus.")); }
private static IList <RoomViewModel> GetRoomViewModel(ITTransRoomRepository transRoomRepository, IList <MRoom> listRoom) { IList <RoomViewModel> result = new List <RoomViewModel>(); RoomViewModel rvm = null; MRoom r = null; TTransRoom troom = null; for (int i = 0; i < listRoom.Count; i++) { rvm = new RoomViewModel(); r = listRoom[i]; rvm.SetAssignedIdTo(r.Id); rvm.RoomName = r.RoomName; rvm.RoomInUsed = transRoomRepository.GetByRoom(r) != null; result.Add(rvm); } return(result); }
private ActionResult CancelTransRoom(TTrans Trans, FormCollection formCollection) { _tTransRoomRepository.DbContext.BeginTransaction(); TTransRoom troom = _tTransRoomRepository.Get(formCollection["TransId"]); if (troom != null) { _tTransRoomRepository.Delete(troom); } TTrans trans = _tTransRepository.Get(formCollection["TransId"]); if (trans != null) { _tTransRepository.Delete(trans); } string Message = string.Empty; bool Success = true; try { _tTransRoomRepository.DbContext.CommitTransaction(); TempData[EnumCommonViewData.SaveState.ToString()] = EnumSaveState.Success; } catch (Exception ex) { Success = false; Message = ex.GetBaseException().Message; _tTransRoomRepository.DbContext.RollbackTransaction(); TempData[EnumCommonViewData.SaveState.ToString()] = EnumSaveState.Failed; } var e = new { Success, Message, RoomStatus = EnumTransRoomStatus.New.ToString() }; return(Json(e, JsonRequestBehavior.AllowGet)); }
public static BillingFormViewModel CreateBillingViewModel(IMRoomRepository mRoomRepository, IMEmployeeRepository mEmployeeRepository, IMCustomerRepository mCustomerRepository, ITTransRoomRepository transRoomRepository) { BillingFormViewModel viewModel = new BillingFormViewModel(); viewModel.SpaManRoomList = GetRoomViewModel(transRoomRepository, mRoomRepository.GetListByRoomType(EnumRoomType.SpaMan)); viewModel.SpaWomanRoomList = GetRoomViewModel(transRoomRepository, mRoomRepository.GetListByRoomType(EnumRoomType.SpaWomen)); viewModel.ReflexyRoomList = GetRoomViewModel(transRoomRepository, mRoomRepository.GetListByRoomType(EnumRoomType.Reflexy)); //var listCustomer = mCustomerRepository.GetAll(); //MCustomer mCustomer = new MCustomer(); ////mCustomer.SupplierName = "-Pilih Supplier-"; //listCustomer.Insert(0, mCustomer); //var custs = from cust in listCustomer // select new { Id = cust.Id, Name = cust.PersonId != null ? cust.PersonId.PersonName : "-Pilih Konsumen-" }; //viewModel.CustomerList = new SelectList(custs, "Id", "Name"); //var listEmployee = mEmployeeRepository.GetAll(); //MEmployee employee = new MEmployee(); ////mCustomer.SupplierName = "-Pilih Supplier-"; //listEmployee.Insert(0, employee); //var employees = from emp in listEmployee // select new { Id = emp.Id, Name = emp.PersonId != null ? emp.PersonId.PersonName : "-Pilih Terapis-" }; //viewModel.TherapistList = new SelectList(employees, "Id", "Name"); TTrans trans = new TTrans(); trans.SetAssignedIdTo(Guid.NewGuid().ToString()); trans.TransDiscount = 0; trans.TransDate = DateTime.Today; viewModel.Trans = trans; TTransRoom transRoom = new TTransRoom(); transRoom.RoomInDate = DateTime.Now; transRoom.RoomOutDate = DateTime.Now; viewModel.TransRoom = transRoom; return(viewModel); }
private ReportDataSource GetTransRoom(string TransId) { TTransRoom troom = _tTransRoomRepository.Get(TransId); IList <TTransRoom> listTransroom = new List <TTransRoom>(); listTransroom.Add(troom); var listRoom = from det in listTransroom select new { det.RoomId.Id, det.RoomInDate, det.RoomOutDate, det.RoomStatus, det.RoomVoucherPaid, det.RoomCashPaid, det.RoomCreditPaid, det.RoomCommissionProduct, det.RoomCommissionService } ; ReportDataSource reportDataSource = new ReportDataSource("TransRoomViewModel", listRoom.ToList()); return(reportDataSource); }
private static IList <RoomViewModel> GetRoomViewModel(ITTransRoomRepository transRoomRepository, IMCustomerRepository mCustomerRepository, IList <MRoom> listRoom) { IList <RoomViewModel> result = new List <RoomViewModel>(); RoomViewModel rvm = null; MRoom r = null; TTransRoom troom = null; for (int i = 0; i < listRoom.Count; i++) { rvm = new RoomViewModel(); r = listRoom[i]; troom = transRoomRepository.GetByRoom(r); rvm.SetAssignedIdTo(r.Id); rvm.RoomName = r.RoomName; if (troom != null) { rvm.RoomInUsed = true; rvm.CustomerName = Helper.CommonHelper.GetCustomerName(mCustomerRepository, troom.TransId.TransBy); } result.Add(rvm); } return(result); }
private void SetReportDataForPrint(string TransId) { ReportDataSource[] repCol = new ReportDataSource[3]; TTrans trans = _tTransRepository.Get(TransId); IList <TTrans> listTrans = new List <TTrans>(); listTrans.Add(trans); var list = from t in listTrans select new { t.TransFactur, t.TransDate, t.TransSubTotal, t.TransBy, t.TransDesc, t.TransDiscount, t.TransStatus, CustomerName = GetCustomerName(t.TransBy), PromoId = t.PromoId != null ? t.PromoId.PromoName : null, t.PromoValue } ; ReportDataSource reportDataSource = new ReportDataSource("TransViewModel", list.ToList()); repCol[0] = reportDataSource; IList <TTransDet> listDetail = trans.TransDets; Session["DetailRowCount"] = listDetail.Count; var listDet = from det in listDetail select new { EmployeeId = det.EmployeeId.Id, EmployeeName = det.EmployeeId.PersonId.PersonName, PacketId = det.PacketId.Id, det.PacketId.PacketName, det.TransDetPrice, det.TransDetQty, det.TransDetDisc, det.TransDetCommissionProduct, det.TransDetCommissionService, det.TransDetNo, det.TransDetTotal } ; reportDataSource = new ReportDataSource("TransDetViewModel", listDet.ToList()); repCol[1] = reportDataSource; TTransRoom troom = _tTransRoomRepository.Get(TransId); IList <TTransRoom> listTransroom = new List <TTransRoom>(); listTransroom.Add(troom); var listRoom = from det in listTransroom select new { det.RoomId.Id, det.RoomInDate, det.RoomOutDate, det.RoomStatus, det.RoomVoucherPaid, det.RoomCashPaid, det.RoomCreditPaid, det.RoomCommissionProduct, det.RoomCommissionService } ; reportDataSource = new ReportDataSource("TransRoomViewModel", listRoom.ToList()); repCol[2] = reportDataSource; Session["ReportData"] = repCol; }
private ActionResult SaveTransRoom(TTrans Trans, FormCollection formCollection) { _tTransRepository.DbContext.BeginTransaction(); if (Trans == null) { Trans = new TTrans(); } Trans.SetAssignedIdTo(formCollection["TransId"]); Trans.TransStatus = EnumTransactionStatus.Service.ToString(); if (!string.IsNullOrEmpty(formCollection["TransDiscount"])) { string TransDiscount = formCollection["TransDiscount"].Replace(",", ""); Trans.TransDiscount = Convert.ToDecimal(TransDiscount); } //get promo MPromo promo = _mPromoRepository.GetActivePromoByDate(DateTime.Today); string promoName = string.Empty; decimal promoValue = 0; if (promo != null) { Trans.PromoId = promo; Trans.PromoValue = promo.PromoValue; promoName = promo.PromoName; promoValue = promo.PromoValue ?? 0; } //Trans.TransDate = DateTime.Today; Trans.CreatedDate = DateTime.Now; Trans.CreatedBy = User.Identity.Name; Trans.DataStatus = Enums.EnumDataStatus.New.ToString(); _tTransRepository.Save(Trans); TTransRoom troom = new TTransRoom(); troom.SetAssignedIdTo(Trans.Id); if (!string.IsNullOrEmpty(formCollection["RoomInDate"])) { troom.RoomInDate = Convert.ToDateTime(string.Format("{0:dd-MMM-yyyy} {1}", Trans.TransDate, formCollection["RoomInDate"])); } if (!string.IsNullOrEmpty(formCollection["RoomOutDate"])) { troom.RoomOutDate = Convert.ToDateTime(string.Format("{0:dd-MMM-yyyy} {1}", Trans.TransDate, formCollection["RoomOutDate"])); } troom.RoomStatus = EnumTransRoomStatus.In.ToString(); if (!string.IsNullOrEmpty(formCollection["RoomId"])) { troom.RoomId = _mRoomRepository.Get(formCollection["RoomId"]); } troom.CreatedDate = DateTime.Now; troom.CreatedBy = User.Identity.Name; troom.DataStatus = EnumDataStatus.New.ToString(); _tTransRoomRepository.Save(troom); string Message = string.Empty; bool Success = true; try { _tTransRepository.DbContext.CommitTransaction(); TempData[EnumCommonViewData.SaveState.ToString()] = EnumSaveState.Success; } catch (Exception ex) { Success = false; Message = ex.GetBaseException().Message; _tTransRepository.DbContext.RollbackTransaction(); TempData[EnumCommonViewData.SaveState.ToString()] = EnumSaveState.Failed; } var e = new { Success, Message, RoomStatus = EnumTransRoomStatus.In.ToString(), PromoName = promoName + "(%)", PromoValue = promoValue }; return(Json(e, JsonRequestBehavior.AllowGet)); //return View("Status"); }
private ActionResult UpdateTransRoom(TTrans Trans, FormCollection formCollection) { _tTransRoomRepository.DbContext.BeginTransaction(); TTrans trans = _tTransRepository.Get(formCollection["TransId"]); if (!string.IsNullOrEmpty(formCollection["TransDiscount"])) { string TransDiscount = formCollection["TransDiscount"].Replace(",", ""); trans.TransDiscount = Convert.ToDecimal(TransDiscount); } else { trans.TransDiscount = null; } trans.TransPaymentMethod = EnumPaymentMethod.Tunai.ToString(); trans.TransBy = Trans.TransBy; trans.TransDate = Trans.TransDate; trans.TransFactur = Helper.CommonHelper.GetFacturNo(EnumTransactionStatus.Service); trans.WarehouseId = Helper.CommonHelper.GetDefaultWarehouse(); //update subtotal trans.TransSubTotal = trans.TransDets.Sum(x => x.TransDetTotal); _tTransRepository.Update(trans); decimal totalHpp = 0; //update stock foreach (TTransDet det in trans.TransDets) { foreach (TTransDetItem detItem in det.TTransDetItems) { SaveStockItem(trans.TransDate, trans.TransDesc, detItem.ItemId, detItem.ItemQty, false, trans.WarehouseId); //sum hpp for each stock totalHpp += UpdateStock(trans.TransDate, trans.TransDesc, trans.TransStatus, detItem.ItemId, 0, detItem.ItemQty, det, false, trans.WarehouseId); } } TTransRoom troom = _tTransRoomRepository.Get(formCollection["TransId"]); troom.RoomStatus = EnumTransRoomStatus.Paid.ToString(); if (!string.IsNullOrEmpty(formCollection["hidpaymentCash"])) { string paymentCash = formCollection["hidpaymentCash"].Replace(",", ""); troom.RoomCashPaid = Convert.ToDecimal(paymentCash); } if (!string.IsNullOrEmpty(formCollection["hidpaymentVoucher"])) { string paymentVoucher = formCollection["hidpaymentVoucher"].Replace(",", ""); troom.RoomVoucherPaid = Convert.ToDecimal(paymentVoucher); } if (!string.IsNullOrEmpty(formCollection["hidpaymentCreditCard"])) { string paymentCreditCard = formCollection["hidpaymentCreditCard"].Replace(",", ""); troom.RoomCreditPaid = Convert.ToDecimal(paymentCreditCard); } troom.RoomOutDate = Convert.ToDateTime(string.Format("{0:dd-MMM-yyyy} {1:HH:mm}", Trans.TransDate, DateTime.Now)); troom.ModifiedBy = User.Identity.Name; troom.ModifiedDate = DateTime.Now; troom.DataStatus = EnumDataStatus.Updated.ToString(); _tTransRoomRepository.Update(troom); //save journal SaveJournal(trans, totalHpp); string Message = string.Empty; bool Success = true; try { _tTransRoomRepository.DbContext.CommitTransaction(); TempData[EnumCommonViewData.SaveState.ToString()] = EnumSaveState.Success; } catch (Exception ex) { Success = false; Message = ex.GetBaseException().Message; _tTransRoomRepository.DbContext.RollbackTransaction(); TempData[EnumCommonViewData.SaveState.ToString()] = EnumSaveState.Failed; } var e = new { Success, Message, RoomStatus = EnumTransRoomStatus.Paid.ToString() }; return(Json(e, JsonRequestBehavior.AllowGet)); // return View("Status"); }
private void SetReportDataForPrint(string TransId) { ReportDataSource[] repCol = new ReportDataSource[3]; TTrans trans = _tTransRepository.Get(TransId); IList <TTrans> listTrans = new List <TTrans>(); listTrans.Add(trans); var list = from t in listTrans select new { t.TransFactur, t.TransDate, t.TransSubTotal, t.TransBy, t.TransDesc, t.TransDiscount, t.TransStatus, CustomerName = Helper.CommonHelper.GetCustomerName(_mCustomerRepository, t.TransBy), t.TransGrandTotal } ; ReportDataSource reportDataSource = new ReportDataSource("TransViewModel", list.ToList()); repCol[0] = reportDataSource; IList <TTransDet> listDetail = trans.TransDets; Session["DetailRowCount"] = listDetail.Count; var listDet = from det in listDetail select new { EmployeeId = det.EmployeeId != null ? det.EmployeeId.Id : null, EmployeeName = det.EmployeeId != null ? det.EmployeeId.PersonId.PersonName : null, ActionId = det.ActionId.Id, det.ActionId.ActionName, det.TransDetPrice, det.TransDetQty, det.TransDetDisc, TransDetCommissionProduct = 0, TransDetCommissionService = 0, det.TransDetNo, det.TransDetTotal, DoctorName = GetCommissionEmployeeName(det, EnumCommissionPeople.Doctor), TherapistName = GetCommissionEmployeeName(det, EnumCommissionPeople.Therapist), MedicianName = GetCommissionEmployeeName(det, EnumCommissionPeople.Medician) } ; reportDataSource = new ReportDataSource("TransDetViewModel", listDet.ToList()); repCol[1] = reportDataSource; TTransRoom troom = _tTransRoomRepository.Get(TransId); IList <TTransRoom> listTransroom = new List <TTransRoom>(); listTransroom.Add(troom); var listRoom = from det in listTransroom select new { det.RoomId.Id, det.RoomInDate, det.RoomOutDate, det.RoomStatus, det.RoomVoucherPaid, det.RoomCashPaid, det.RoomCreditPaid, det.RoomCommissionProduct, det.RoomCommissionService, det.ModifiedBy } ; reportDataSource = new ReportDataSource("TransRoomViewModel", listRoom.ToList()); repCol[2] = reportDataSource; Session["ReportData"] = repCol; }
private ActionResult SaveTransaction(TTrans Trans, FormCollection formCollection) { try { _tTransRepository.DbContext.BeginTransaction(); if (Trans == null) { Trans = new TTrans(); } Trans.SetAssignedIdTo(formCollection["Trans.Id"]); if (!string.IsNullOrEmpty(formCollection["Trans.WarehouseId"])) { Trans.WarehouseId = _mWarehouseRepository.Get(formCollection["Trans.WarehouseId"]); } if (!string.IsNullOrEmpty(formCollection["Trans.WarehouseIdTo"])) { Trans.WarehouseIdTo = _mWarehouseRepository.Get(formCollection["Trans.WarehouseIdTo"]); } if (!string.IsNullOrEmpty(formCollection["EmployeeId"])) { Trans.EmployeeId = _mEmployeeRepository.Get(formCollection["EmployeeId"]); } Trans.CreatedDate = DateTime.Now; Trans.CreatedBy = User.Identity.Name; Trans.DataStatus = Enums.EnumDataStatus.New.ToString(); Trans.TransDets.Clear(); ////save stock card //bool addStock = true; //bool calculateStock = false; //EnumTransactionStatus status = (EnumTransactionStatus)Enum.Parse(typeof(EnumTransactionStatus), Trans.TransStatus); //TransactionFormViewModel.GetIsCalculateStock(status, out addStock, out calculateStock); TTransDet detToInsert; //IList<TTransDet> listDet = new List<TTransDet>(); decimal total = 0; foreach (TTransDet det in ListDetTrans) { detToInsert = new TTransDet(Trans); detToInsert.SetAssignedIdTo(Guid.NewGuid().ToString()); detToInsert.ItemId = det.ItemId; detToInsert.ItemUomId = det.ItemUomId; detToInsert.TransDetQty = det.TransDetQty; detToInsert.TransDetPrice = det.TransDetPrice; detToInsert.TransDetDisc = det.TransDetDisc; detToInsert.TransDetTotal = det.TransDetTotal; detToInsert.CreatedBy = User.Identity.Name; detToInsert.CreatedDate = DateTime.Now; detToInsert.DataStatus = Enums.EnumDataStatus.New.ToString(); detToInsert.EmployeeId = Trans.EmployeeId; detToInsert.TransDetCommissionProduct = CalculateCommission(Trans.EmployeeId, det.ItemId, detToInsert.TransDetTotal); Trans.TransDets.Add(detToInsert); total += det.TransDetTotal.HasValue ? det.TransDetTotal.Value : 0; //listDet.Add(detToInsert); } Trans.TransSubTotal = total; _tTransRepository.Save(Trans); TTransRoom troom = new TTransRoom(); troom.SetAssignedIdTo(formCollection["Trans.Id"]); troom.RoomStatus = EnumTransRoomStatus.Paid.ToString(); if (!string.IsNullOrEmpty(formCollection["hidpaymentCash"])) { string paymentCash = formCollection["hidpaymentCash"].Replace(",", ""); troom.RoomCashPaid = Convert.ToDecimal(paymentCash); } if (!string.IsNullOrEmpty(formCollection["hidpaymentVoucher"])) { string paymentVoucher = formCollection["hidpaymentVoucher"].Replace(",", ""); troom.RoomVoucherPaid = Convert.ToDecimal(paymentVoucher); } if (!string.IsNullOrEmpty(formCollection["hidpaymentCreditCard"])) { string paymentCreditCard = formCollection["hidpaymentCreditCard"].Replace(",", ""); troom.RoomCreditPaid = Convert.ToDecimal(paymentCreditCard); } troom.RoomOutDate = Convert.ToDateTime(string.Format("{0:dd-MMM-yyyy} {1:HH:mm}", Trans.TransDate, DateTime.Now)); troom.CreatedBy = User.Identity.Name; troom.CreatedDate = DateTime.Now; troom.DataStatus = EnumDataStatus.New.ToString(); _tTransRoomRepository.Save(troom); _tTransRepository.DbContext.CommitTransaction(); ////_tStockCardRepository.DbContext.BeginTransaction(); //if (calculateStock) //{ // decimal totalHpp = 0; // foreach (TTransDet det in listDet) // { // //save stock // if (Trans.TransStatus.Equals(EnumTransactionStatus.Mutation.ToString())) // { // SaveStockItem(Trans.TransDate, Trans.TransDesc, det.ItemId, det.TransDetQty, false, Trans.WarehouseId); // SaveStockItem(Trans.TransDate, Trans.TransDesc, det.ItemId, det.TransDetQty, true, Trans.WarehouseIdTo); // //still to do, for mutation, price of stock must recalculate per stock, // //sum hpp for each stock for stock out // totalHpp += UpdateStock(Trans.TransDate, Trans.TransDesc, Trans.TransStatus, det.ItemId, det.TransDetPrice, det.TransDetQty, det, false, Trans.WarehouseId); // UpdateStock(Trans.TransDate, Trans.TransDesc, Trans.TransStatus, det.ItemId, det.TransDetPrice, det.TransDetQty, det, true, Trans.WarehouseIdTo); // } // else // { // SaveStockItem(Trans.TransDate, Trans.TransDesc, det.ItemId, det.TransDetQty, addStock, Trans.WarehouseId); // //sum hpp for each stock // totalHpp += UpdateStock(Trans.TransDate, Trans.TransDesc, Trans.TransStatus, det.ItemId, det.TransDetPrice, det.TransDetQty, det, addStock, Trans.WarehouseId); // } // } // //save journal // SaveJournal(Trans, totalHpp); //} //_tTransRepository.DbContext.CommitTransaction(); TempData[EnumCommonViewData.SaveState.ToString()] = EnumSaveState.Success; } catch (Exception) { _tTransRepository.DbContext.RollbackTransaction(); TempData[EnumCommonViewData.SaveState.ToString()] = EnumSaveState.Failed; } //if (!Trans.TransStatus.Equals(EnumTransactionStatus.PurchaseOrder.ToString())) //{ // return RedirectToAction(Trans.TransStatus.ToString()); //} //return RedirectToAction("Index"); return(View("Status")); }