)>}]
شركة التطبيقات المتكاملة لتصميم وبرمجة البرمجيات الخاصة ش.ش.و.
Integrated Applications Programming Company
Home » Code Library » MaintenanceReportController (Ia.Ftn.Wa.Controllers)

Public general use code classes and xml files that we've compiled and used over the years:

    1: using Microsoft.AspNetCore.Authorization;
    2: using Microsoft.AspNetCore.Identity;
    3: using Microsoft.AspNetCore.Mvc;
    4: using System.Diagnostics;
    5: using System.Net;
    6:  
    7: namespace Ia.Ftn.Wa.Controllers
    8: {
    9:     ////////////////////////////////////////////////////////////////////////////
   10:  
   11:     /// <summary publish="true">
   12:     ///
   13:     /// </summary>
   14:     /// 
   15:     /// <remarks> 
   16:     /// Copyright � 2006-2025 Jasem Y. Al-Shamlan (info@ia.com.kw), Integrated Applications - Kuwait. All Rights Reserved.
   17:     /// </remarks> 
   18:     [Authorize]
   19:     public class MaintenanceReportController : Controller
   20:     {
   21:         private readonly UserManager<Ia.Ftn.Cl.Models.StaffIdentityUser> userManager;
   22:  
   23:         /////////////////////////////////////////////////////////////////////////////////
   24:  
   25:         /// <summary>
   26:         ///
   27:         /// </summary>
   28:         public MaintenanceReportController(UserManager<Ia.Ftn.Cl.Models.StaffIdentityUser> _userManager)
   29:         {
   30:             userManager = _userManager;
   31:         }
   32:  
   33:         /////////////////////////////////////////////////////////////////////////////////
   34:         /////////////////////////////////////////////////////////////////////////////////
   35:  
   36:         /// <summary>
   37:         ///
   38:         /// </summary>
   39:         [HttpGet]
   40:         [Route("/maintenance/report")]
   41:         public IActionResult Index()
   42:         {
   43:             var reportViewModel = new Ia.Ftn.Wa.Models.Maintenance.ReportViewModel();
   44:  
   45:             reportViewModel.CurrentStaffIdentityUser = Ia.Ftn.Cl.Models.Data.StaffIdentityUser.CurrentStaffIdentityUser(userManager, User);
   46:  
   47:             Ia.Ftn.Wa.Models.Maintenance.Report.ViewModel(ref reportViewModel);
   48:  
   49:             return View("Index", reportViewModel);
   50:         }
   51:  
   52:         /////////////////////////////////////////////////////////////////////////////////
   53:  
   54:         /// <summary>
   55:         ///
   56:         /// </summary>
   57:         [HttpPost]
   58:         [Route("/maintenance/report")]
   59:         public IActionResult Index(Ia.Ftn.Wa.Models.Maintenance.ReportViewModel reportViewModel, string commandName, string reportId)
   60:         {
   61:             reportViewModel.CurrentStaffIdentityUser = Ia.Ftn.Cl.Models.Data.StaffIdentityUser.CurrentStaffIdentityUser(userManager, User);
   62:  
   63:             Ia.Ftn.Wa.Models.Maintenance.Report.Post(ref reportViewModel, commandName, reportId);
   64:  
   65:             Ia.Ftn.Wa.Models.Maintenance.Report.ViewModel(ref reportViewModel);
   66:  
   67:             return View("Index", reportViewModel);
   68:         }
   69:  
   70:         /////////////////////////////////////////////////////////////////////////////////
   71:         /////////////////////////////////////////////////////////////////////////////////
   72:  
   73:         /// <summary>
   74:         ///
   75:         /// </summary>
   76:         [HttpGet]
   77:         [Route("/maintenance/report/history")]
   78:         public IActionResult History(string reportId)
   79:         {
   80:             var reportViewModel = new Ia.Ftn.Wa.Models.Maintenance.ReportViewModel();
   81:  
   82:             if (!string.IsNullOrEmpty(reportId))
   83:             {
   84:                 reportViewModel.CurrentStaffIdentityUser = Ia.Ftn.Cl.Models.Data.StaffIdentityUser.CurrentStaffIdentityUser(userManager, User);
   85:                 reportViewModel.ReportId = int.TryParse(reportId, out int id) ? id : -1;
   86:  
   87:                 Ia.Ftn.Wa.Models.Maintenance.Report.HistoryViewModel(ref reportViewModel, reportId);
   88:  
   89:                 return View("History", reportViewModel);
   90:             }
   91:             else return RedirectToAction("Index", reportViewModel);
   92:         }
   93:  
   94:         /////////////////////////////////////////////////////////////////////////////////
   95:  
   96:         /// <summary>
   97:         ///
   98:         /// </summary>
   99:         [HttpPost]
  100:         [Route("/maintenance/report/history")]
  101:         public IActionResult History(Ia.Ftn.Wa.Models.Maintenance.ReportViewModel reportViewModel, string commandName, string reportId, string reportHistoryId)
  102:         {
  103:             reportViewModel.CurrentStaffIdentityUser = Ia.Ftn.Cl.Models.Data.StaffIdentityUser.CurrentStaffIdentityUser(userManager, User);
  104:             reportViewModel.ReportId = int.TryParse(reportId, out int id) ? id : -1;
  105:  
  106:             Ia.Ftn.Wa.Models.Maintenance.Report.HistoryPost(ref reportViewModel, commandName, reportHistoryId);
  107:  
  108:             Ia.Ftn.Wa.Models.Maintenance.Report.HistoryViewModel(ref reportViewModel, reportId);
  109:  
  110:             return View("History", reportViewModel);
  111:         }
  112:  
  113:         /////////////////////////////////////////////////////////////////////////////////
  114:         /////////////////////////////////////////////////////////////////////////////////
  115:  
  116:         /// <summary>
  117:         ///
  118:         /// </summary>
  119:         [HttpGet]
  120:         [Route("/maintenance/report/insert")]
  121:         public IActionResult Insert()
  122:         {
  123:             var reportViewModel = new Ia.Ftn.Wa.Models.Maintenance.ReportViewModel();
  124:  
  125:             reportViewModel.CurrentStaffIdentityUser = Ia.Ftn.Cl.Models.Data.StaffIdentityUser.CurrentStaffIdentityUser(userManager, User);
  126:  
  127:             Ia.Ftn.Wa.Models.Maintenance.Report.InsertViewModel(ref reportViewModel);
  128:  
  129:             return View("Insert", reportViewModel);
  130:         }
  131:  
  132:         /////////////////////////////////////////////////////////////////////////////////
  133:  
  134:         /// <summary>
  135:         ///
  136:         /// </summary>
  137:         [HttpPost]
  138:         [Route("/maintenance/report/insert")]
  139:         public IActionResult Insert(Ia.Ftn.Wa.Models.Maintenance.ReportViewModel reportViewModel, string commandName)
  140:         {
  141:             reportViewModel.CurrentStaffIdentityUser = Ia.Ftn.Cl.Models.Data.StaffIdentityUser.CurrentStaffIdentityUser(userManager, User);
  142:  
  143:             Ia.Ftn.Wa.Models.Maintenance.Report.InsertPost(ref reportViewModel, commandName);
  144:  
  145:             Ia.Ftn.Wa.Models.Maintenance.Report.InsertViewModel(ref reportViewModel);
  146:  
  147:             return View("Insert", reportViewModel);
  148:         }
  149:  
  150:         /////////////////////////////////////////////////////////////////////////////////
  151:         /////////////////////////////////////////////////////////////////////////////////
  152:  
  153:         /// <summary>
  154:         ///
  155:         /// </summary>
  156:         [HttpGet]
  157:         [Route("/maintenance/report/field-tnmd-supplier")]
  158:         public IActionResult FieldTnmdSupplier()
  159:         {
  160:             var fieldTnmdSupplierViewModel = new Ia.Ftn.Wa.Models.Maintenance.FieldTnmdSupplierViewModel();
  161:  
  162:             var url = Ia.Ftn.Wa.Models.Maintenance.FieldTnmdSupplier.Post(ref fieldTnmdSupplierViewModel, string.Empty);
  163:  
  164:             Ia.Ftn.Wa.Models.Maintenance.FieldTnmdSupplier.ViewModel(ref fieldTnmdSupplierViewModel);
  165:  
  166:             return View("FieldTnmdSupplier", fieldTnmdSupplierViewModel);
  167:         }
  168:  
  169:         /////////////////////////////////////////////////////////////////////////////////
  170:  
  171:         /// <summary>
  172:         ///
  173:         /// </summary>
  174:         [HttpPost]
  175:         [Route("/maintenance/report/field-tnmd-supplier")]
  176:         public IActionResult FieldTnmdSupplier(Ia.Ftn.Wa.Models.Maintenance.FieldTnmdSupplierViewModel fieldTnmdSupplierViewModel, string commandName)
  177:         {
  178:             var url = Ia.Ftn.Wa.Models.Maintenance.FieldTnmdSupplier.Post(ref fieldTnmdSupplierViewModel, commandName);
  179:  
  180:             if (!string.IsNullOrEmpty(url))
  181:             {
  182:                 return Redirect(WebUtility.UrlDecode(url));
  183:             }
  184:  
  185:             Ia.Ftn.Wa.Models.Maintenance.FieldTnmdSupplier.ViewModel(ref fieldTnmdSupplierViewModel);
  186:  
  187:             return View("FieldTnmdSupplier", fieldTnmdSupplierViewModel);
  188:         }
  189:  
  190:         /////////////////////////////////////////////////////////////////////////////////
  191:         /////////////////////////////////////////////////////////////////////////////////
  192:  
  193:         /// <summary>
  194:         ///
  195:         /// </summary>
  196:         [HttpGet]
  197:         [Route("/maintenance/report/performance")]
  198:         public IActionResult Performance()
  199:         {
  200:             var performanceViewModel = new Ia.Ftn.Wa.Models.Maintenance.PerformanceViewModel();
  201:  
  202:             Ia.Ftn.Wa.Models.Maintenance.Performance.Post(ref performanceViewModel);
  203:  
  204:             Ia.Ftn.Wa.Models.Maintenance.Performance.ViewModel(ref performanceViewModel);
  205:  
  206:             return View("Performance", performanceViewModel);
  207:         }
  208:  
  209:         /////////////////////////////////////////////////////////////////////////////////
  210:  
  211:         /// <summary>
  212:         ///
  213:         /// </summary>
  214:         [HttpPost]
  215:         [Route("/maintenance/report/performance")]
  216:         public IActionResult Performance(Ia.Ftn.Wa.Models.Maintenance.PerformanceViewModel performanceViewModel)
  217:         {
  218:             //var currentStaffIdentityUser = Ia.Ftn.Cl.Models.Data.StaffIdentityUser.CurrentStaffIdentityUser(userManager, User);
  219:  
  220:             Ia.Ftn.Wa.Models.Maintenance.Performance.Post(ref performanceViewModel);
  221:  
  222:             Ia.Ftn.Wa.Models.Maintenance.Performance.ViewModel(ref performanceViewModel);
  223:  
  224:             return View("Performance", performanceViewModel);
  225:         }
  226:  
  227:         /////////////////////////////////////////////////////////////////////////////////
  228:         /////////////////////////////////////////////////////////////////////////////////
  229:  
  230:         /// <summary>
  231:         ///
  232:         /// </summary>
  233:         [ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)]
  234:         public IActionResult Error()
  235:         {
  236:             return View(new Ia.Ftn.Wa.Models.ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier });
  237:         }
  238:  
  239:         /////////////////////////////////////////////////////////////////////////////////
  240:         /////////////////////////////////////////////////////////////////////////////////
  241:     }
  242:  
  243:     /////////////////////////////////////////////////////////////////////////////////
  244:     /////////////////////////////////////////////////////////////////////////////////
  245: }