|
|
@ -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>
|
|
|
|