Browse Source

1.修改维修原因维护

PTD
Marvin 2 years ago
parent
commit
0d46d951ce
  1. 24
      AMESCoreStudio.Web/Controllers/PPSController.cs
  2. 7
      AMESCoreStudio.Web/HttpApis/AMES/IPPS.cs
  3. 2
      AMESCoreStudio.Web/Views/PPS/PPS013.cshtml
  4. 68
      AMESCoreStudio.WebApi/Controllers/AMES/RMAReasonsController.cs

24
AMESCoreStudio.Web/Controllers/PPSController.cs

@ -1686,6 +1686,30 @@ namespace AMESCoreStudio.Web.Controllers
return View("PPS013U", model);
}
[ResponseCache(Duration = 0)]
[HttpGet]
public async Task<IActionResult> GetRMAReasonsByGroupClassAsync(string rmaGroupNo,string rmaClassNo, int page = 0, int limit = 10)
{
if (rmaGroupNo == null || rmaGroupNo == "0")
{
rmaGroupNo = "*";
}
if (rmaClassNo == null || rmaClassNo == "0")
{
rmaClassNo = "*";
}
var result = await _ppsApi.GetRMAReasonByGroupClass(rmaGroupNo,rmaClassNo, page, limit);
if (result.DataTotal > 0)
{
return Json(new Table() { code = 0, msg = "", data = result.Data, count = result.DataTotal });
}
return Json(new Table() { count = 0, data = null });
}
[ResponseCache(Duration = 0)]
[HttpGet]
public async Task<IActionResult> GetRMAReasonsByClassAsync(string rmaClassNo, int page = 0, int limit = 10)

7
AMESCoreStudio.Web/HttpApis/AMES/IPPS.cs

@ -534,6 +534,13 @@ namespace AMESCoreStudio.Web
[WebApiClient.Attributes.HttpGet("api/RMAReasons/Class/{no}")]
ITask<List<RMAReason>> GetRMAReasonsByClass(string no, int page = 0, int limit = 10);
/// <summary>
/// 根据類別代碼獲取維修原因資料
/// </summary>
/// <returns></returns>
[WebApiClient.Attributes.HttpGet("api/RMAReasons/GetRMAReasonByGroupClass")]
ITask<ResultModel<dynamic>> GetRMAReasonByGroupClass(string groupNo,string classNo, int page = 0, int limit = 10);
#endregion
#region PPS014 維修方式維護

2
AMESCoreStudio.Web/Views/PPS/PPS013.cshtml

@ -169,6 +169,6 @@
}
];
//基本数据表格
var table = hg.table.datatable('test', '維修原因維護', '/PPS/GetRMAReasonsByClass/' + rmaClassNo.value, {}, tableCols, toolbar, true, 'full-100', ['filter', 'print', 'exports']);
var table = hg.table.datatable('test', '維修原因維護', '/PPS/GetRMAReasonsByGroupClass/', {}, tableCols, toolbar, true, 'full-100', ['filter', 'print', 'exports']);
</script>
}

68
AMESCoreStudio.WebApi/Controllers/AMES/RMAReasonsController.cs

@ -80,6 +80,74 @@ namespace AMESCoreStudio.WebApi.Controllers.AMES
return result;
}
/// <summary>
/// 根据维修群组+類別代碼獲取該類別维修原因資料
/// </summary>
/// <param name="groupNo"></param>
/// <param name="classNo"></param>
/// <param name="page"></param>
/// <param name="limit"></param>
/// <returns></returns>
// GET: api/RMAReasons/Class/S
[Route("[action]")]
[HttpGet]
public async Task<ResultModel<dynamic>> GetRMAReasonByGroupClass(string groupNo,string classNo, int page = 0, int limit = 10)
{
ResultModel<dynamic> result = new ResultModel<dynamic>();
var q = from q1 in _context.RMAReasons
join q2 in _context.RMAClasses on q1.RMAClassNo equals q2.RMAClassNo
join q3 in _context.RMAGroups on q2.RMAGroupNo equals q3.RMAGroupNo
select new
{
q3.RMAGroupNo,
q2.RMAClassNo,
q1.RMAReasonNo,
q1.RMAReasonDesc,
q1.RMAReasonDescEn
};
if (groupNo != null)
{
if (groupNo != "*")
{
q = q.Where(p => p.RMAGroupNo.Equals(groupNo));
}
}
if (classNo != null)
{
if (classNo != "*")
{
q = q.Where(p => p.RMAClassNo.Equals(classNo));
}
}
//紀錄筆數
result.DataTotal = q.Count();
if (page > 0)
{
q = q.OrderBy(p => p.RMAClassNo + p.RMAReasonNo).Skip((page - 1) * limit).Take(limit);
}
else
{
q = q.OrderBy(p => p.RMAClassNo + p.RMAReasonNo);
}
result.Data = await q.ToListAsync();
if (result == null)
{
result.Msg = "查無資料";
result.Success = false;
return result;
}
result.Success = true;
result.Msg = "OK";
return result;
}
/// <summary>
/// 根据维修類別代碼NO獲取該類別维修原因資料
/// </summary>

Loading…
Cancel
Save