public void NotifyTenantOrderComplete(MaintenanceOrder order) { var tenant = GetTenantFromUnitId(order.UnitId); string message = $"Dear, {tenant.FirstName} {tenant.LastName} your work order titled: {order.Name} has been completed"; TwilioNotification.TwilioMessage(tenant.PhoneNumber, message); }
public string UpdateOrder(string OrderID, MaintenanceOrder Order) { if (Order == null || string.IsNullOrEmpty(OrderID)) { throw new IDNullException("维修记录ID不可为空!"); } string sqlCommandText = ModuleConfiguration.SQL_CMD_UpdateMaintenanceOrder; this.dmlOperable.ExeSql(sqlCommandText, new Dictionary <string, object>() { { "@ID", long.Parse(OrderID) }, { "@OrderRefID", Order.OrderRefID }, { "@OrderDate", Order.OrderDate }, { "@InstrumentID", Order.Instrument.ID }, { "@FaultTime", Order.FaultTime }, { "@FaultCode", Order.Fault.FaultCode }, { "@FaultDescription", Order.Fault.FaultMessage }, { "@WarrantyStatus", Order.WarrantyStatus }, { "@Cost", Order.Cost }, { "@RepairResult", Order.Result.Title }, { "@RepairDescription", Order.Result.Body }, { "@UserComment", Order.Comment.Title }, { "@CommentContent", Order.Comment.Body } }); return(Order.ID); }
public ActionResult DeleteConfirmed(int id) { MaintenanceOrder maintenanceOrder = db.MaintenanceOrders.Find(id); db.MaintenanceOrders.Remove(maintenanceOrder); db.SaveChanges(); return(RedirectToAction("WorkOrders", "Manager")); }
public ActionResult Edit([Bind(Include = "OrderId,UnitId,Name,Description,DueDate")] MaintenanceOrder maintenanceOrder) { if (ModelState.IsValid) { db.Entry(maintenanceOrder).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.UnitId = new SelectList(db.HousingUnits, "UnitId", "UnitId", maintenanceOrder.UnitId); return(View(maintenanceOrder)); }
public ActionResult CompleteTask(MaintenanceOrder order) { var currentOrder = (from w in db.MaintenanceOrders where w.OrderId == order.OrderId select w).SingleOrDefault(); currentOrder.IsCompleted = order.IsCompleted; currentOrder.Description = order.Description; db.Entry(currentOrder).State = EntityState.Modified; db.SaveChanges(); NotifyTenantOrderComplete(currentOrder); return(RedirectToAction("WorkOrderList", "Workers")); }
public MaintenanceOrder GetOrder <T>(string OrderID, out T ExtraData, Func <object, T> ExtensionFunction) { MaintenanceOrder maintenanceOrder = null; ExtraData = default(T); string sqlCommandText = ModuleConfiguration.SQL_CMD_SelectMaintenanceOrderById; var dbResult = this.dmlOperable.ExeReader(sqlCommandText, new Dictionary <string, object>() { { "@ID", long.Parse(OrderID) } }); if (dbResult != null && dbResult.Count == 1) { maintenanceOrder = new MaintenanceOrder() { ID = dbResult[0]["ID"].ToString(), OrderRefID = (string)dbResult[0]["OrderRefID"], OrderDate = (DateTime?)dbResult[0]["OrderDate"], FaultTime = (DateTime?)dbResult[0]["FaultTime"], Fault = new Fault() { //FaultType = (int?)dbResult[0]["FaultType"], FaultCode = (string)dbResult[0]["FaultCode"], FaultMessage = (string)dbResult[0]["FaultDescription"] }, Instrument = new Instrument() { ID = dbResult[0]["InstrumentID"].ToString() }, WarrantyStatus = dbResult[0]["WarrantyStatus"] == null ? 0 : (int?)dbResult[0]["WarrantyStatus"], Cost = dbResult[0]["Cost"] != null?decimal.Parse(dbResult[0]["Cost"].ToString()) : 0,//(decimal?)dbResult[0]["Cost"], Result = new Comment() { Title = (string)dbResult[0]["RepairResult"], Body = (string)dbResult[0]["RepairDescription"] }, Comment = new Comment() { Title = (string)dbResult[0]["UserComment"], Body = (string)dbResult[0]["CommentContent"] } }; } if (ExtensionFunction != null) { ExtraData = ExtensionFunction(maintenanceOrder); } return(maintenanceOrder); }
public ActionResult TenantWorkOrderSubmission([Bind(Include = "OrderId,UnitId,Name,Description,DueDate")] MaintenanceOrder maintenanceOrder, Tenant tenant) { if (ModelState.IsValid) { //ADD TWILLIO API FUNCTIONALITY HERE?? maintenanceOrder.HousingUnit.UnitId = tenant.HousingUnit.UnitId; db.MaintenanceOrders.Add(maintenanceOrder); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.UnitId = new SelectList(db.HousingUnits, "UnitId", "UnitId", maintenanceOrder.UnitId); return(View(maintenanceOrder)); }
// GET: MaintenanceOrders/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } MaintenanceOrder maintenanceOrder = db.MaintenanceOrders.Find(id); if (maintenanceOrder == null) { return(HttpNotFound()); } return(View(maintenanceOrder)); }
public ActionResult FileReport([Bind(Include = "OrderId,UnitId,Name,Description,DueDate")] MaintenanceOrder maintenanceOrder) { if (ModelState.IsValid) { db.MaintenanceOrders.Add(maintenanceOrder); db.SaveChanges(); var manangerNumber = TwilioNotification.GetManagerNumber(); WorkOrderMessage(manangerNumber, maintenanceOrder.UnitId); return(RedirectToAction("TicketComplete")); } ViewBag.UnitId = new SelectList(db.HousingUnits, "UnitId", "UnitId", maintenanceOrder.UnitId); return(View(maintenanceOrder)); }
// GET: MaintenanceOrders/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } MaintenanceOrder maintenanceOrder = db.MaintenanceOrders.Find(id); if (maintenanceOrder == null) { return(HttpNotFound()); } ViewBag.UnitId = new SelectList(db.HousingUnits, "UnitId", "UnitId", maintenanceOrder.UnitId); return(View(maintenanceOrder)); }
private IQueryable <Utilizador> GetTechnicals(MaintenanceOrder order, string orderId, string technicalid) { if ((order == null) && (orderId == null || orderId == "") && (technicalid == null || technicalid == "")) { return((new List <Utilizador>()).AsQueryable()); } IQueryable <Utilizador> technicals; if (technicalid != null && technicalid != "") { technicals = evolutionWEBContext.Utilizador.Where(u => u.NumMec == technicalid); return(technicals); } if (order != null) { var technicalsId = new List <int>(); for (int i = 1; i <= 5; i++) { var prop = order.GetType().GetProperty("IdTecnico" + i.ToString()); int?name = (int?)(prop.GetValue(order, null)); if (name != null) { technicalsId.Add((int)name); } } technicals = evolutionWEBContext.Utilizador.Where(u => technicalsId.Contains(u.Id)); return(technicals); } if (orderId != null && orderId != "") { var _order = evolutionWEBContext.MaintenanceOrder.FirstOrDefault(o => o.No == orderId); if (_order != null) { technicals = evolutionWEBContext.Utilizador.Where(u => u.Code3 == _order.ShortcutDimension3Code); return(technicals); } } technicals = (new List <Utilizador>()).AsQueryable(); return(technicals); }
public ActionResult AssignWorkOrder([Bind(Include = "OrderId,WorkerId")] MaintenanceOrder order) { if (ModelState.IsValid) { int OrderFixedId = order.OrderId; var workOrder = db.MaintenanceOrders.Where(ord => ord.OrderId == OrderFixedId).Single(); workOrder.WorkerId = order.WorkerId; db.Entry(workOrder).State = EntityState.Modified; db.SaveChanges(); TwilioNotification.NotifyWorkerOfReport(); return(RedirectToAction("WorkOrders")); } return(View(order)); }
public async Task <ActionResult> Put([FromBody] MaintenanceOrder model) { var data = await _maintenanceOrderRepository.GetAsyncById(model.Id); data.Price = model.Price; data.ProviderId = model.ProviderId; data.ExecutionDate = model.ExecutionDate; data.Status = model.Status; if (data == null) { return(NotFound()); } await _maintenanceOrderRepository.UpdateAsync(data); return(NoContent()); }
public ActionResult AssignWorkOrder(int?id, Worker worker) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } MaintenanceOrder order = db.MaintenanceOrders.Find(id); if (order == null) { return(HttpNotFound()); } var allWorkers = db.Workers; //ViewBag.ZipCodeId = new SelectList(db.ZipCodes, "ZipCodeId", "ZipCodeId", employee.ZipCodeId); ViewBag.Workers = new SelectList(allWorkers, "WorkerID", "FirstName" /*, worker.FirstName*/); //ViewBag.Workers = new SelectList(db.Workers.OrderBy(w => w.WorkerId).ToList(), "Id"); return(View(order)); }
public async Task <ActionResult> UpdateOrdes(int idCustomer) { DateTime todaysDate = DateTime.Now.Date; int month = todaysDate.Month - 1; //int month = 2; //int year = 2021; int year = todaysDate.Year; foreach (EMonth item in Enum.GetValues(typeof(EMonth))) { //Si coincide el mes actual con el if (month == item.GetHashCode()) { //Obtenemos la lista de registros que correspondan al mes enviado var mCs = await _maintenanceCalendarRepository .GetAsyncAll(x => x.CustomerId == idCustomer && x.Month == item, x => x.OrderBy(x => x.Machinery.NameMachinery)); foreach (var mC in mCs) { // Por cada Calendario creamos una orden de compra MaintenanceOrder mO = new MaintenanceOrder() { CustomerId = idCustomer, ExecutionDate = null, MaintenanceCalendarId = mC.Id, RequestDate = new DateTime(year, month + 1, 1), Price = mC.Price, ProviderId = mC.ProviderId, Status = EStatus.Pendiente, }; //Buscamos regitro que coincida con MaintenanceCalendarId y en la fecha de solicitud coincida por mes y año actual var oS = await _maintenanceOrderRepository.FirstOrDefaultAsync( x => x.MaintenanceCalendarId == mC.Id && x.RequestDate.Month == month + 1 && x.RequestDate.Year == year); if (oS == null) { await _maintenanceOrderRepository.CreateAsync(mO); } } } } //int monthLast = todaysDate.Month; foreach (EMonth item in Enum.GetValues(typeof(EMonth))) { //Si coincide el mes actual con el if (month + 1 == item.GetHashCode()) { //Obtenemos la lista de registros que correspondan al mes enviado var mCs = await _maintenanceCalendarRepository .GetAsyncAll(x => x.CustomerId == idCustomer && x.Month == item, x => x.OrderBy(x => x.Machinery.NameMachinery), ""); foreach (var mC in mCs) { // Por cada Calendario creamos una orden de compra MaintenanceOrder mO = new MaintenanceOrder() { CustomerId = idCustomer, ExecutionDate = null, MaintenanceCalendarId = mC.Id, RequestDate = new DateTime(year, month + 2, 1), Price = mC.Price, ProviderId = mC.ProviderId, Status = EStatus.Pendiente, }; //Buscamos regitro que coincida con MaintenanceCalendarId y en la fecha de solicitud coincida por mes y año actual var oS = await _maintenanceOrderRepository.FirstOrDefaultAsync(x => x.MaintenanceCalendarId == mC.Id && x.RequestDate.Month == month + 2 && x.RequestDate.Year == year); if (oS == null) { await _maintenanceOrderRepository.CreateAsync(mO); } } } } return(NoContent()); }