增添優化功能
This commit is contained in:
@@ -64,7 +64,7 @@ class LeaveApiService {
|
||||
// *** 關聯取得假別名稱,存到 Cache
|
||||
|
||||
// 排序:按單據日期降冪
|
||||
String queryFilter = "1^100^billdate^*^start_date BETWEEN DATE_SUB(CURDATE(), INTERVAL 7 DAY) AND DATE_ADD(CURDATE(), INTERVAL 7 DAY)^^personid^$personId";
|
||||
String queryFilter = "1^100^billdate^*^start_date BETWEEN DATE_SUB(CURDATE(), INTERVAL 21 DAY) AND DATE_ADD(CURDATE(), INTERVAL 7 DAY)^hrsm11^personid^$personId";
|
||||
|
||||
return await _apiService.fetchList<Leave>(
|
||||
tableName: "hrs_leave",
|
||||
@@ -147,4 +147,55 @@ class LeaveApiService {
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
/// 上呈請假單
|
||||
/// 上呈請假單
|
||||
/// 對應 API 規格: bpmm02_spread
|
||||
Future<bool> promoteLeave(String personId, String billNo) async {
|
||||
// 依據標準規範,參數一律使用 para0x
|
||||
final Map<String, String> params = {
|
||||
"para01": "eipm21",
|
||||
"para02": personId,
|
||||
"para03": billNo,
|
||||
};
|
||||
|
||||
try {
|
||||
// 使用與 sign_todo_api.dart 相同的 fetchProcedure 結構
|
||||
// 依據您提供的 url: ".../bpmm02_spread/1/",這裡將 endpoint 設為 "bpmm02_spread/1/"
|
||||
// (若底層機制會自動補齊後方的 /1/,可自行改為 "bpmm02_spread")
|
||||
await _apiService.fetchProcedure<dynamic>(
|
||||
procedureEndpoint: "bpmm02_spread",
|
||||
params: params,
|
||||
fromJson: (json) => json, // 僅需確認執行成功,回傳值暫不處理
|
||||
);
|
||||
|
||||
// 只要 fetchProcedure 沒有拋出異常 (且底層已處理 code == 0),即視為成功
|
||||
return true;
|
||||
} catch (e) {
|
||||
// 統一的錯誤捕獲與日誌
|
||||
print("LeaveApiService.promoteLeave 異常: $e");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/// 取得簽核進度歷程
|
||||
/// 對應 API: bpm_sign_history/2/
|
||||
Future<List<Map<String, dynamic>>> fetchSignHistory(String billNo) async {
|
||||
final Map<String, String> params = {
|
||||
"para01": "eipm21", // 來源單別 functiontag
|
||||
"para02": billNo, // 原單單號 query_id
|
||||
};
|
||||
|
||||
try {
|
||||
// 呼叫 SP,並將回傳的每一筆資料解析為 Map
|
||||
return await _apiService.fetchProcedure<Map<String, dynamic>>(
|
||||
procedureEndpoint: "bpm_sign_history",
|
||||
params: params,
|
||||
fromJson: (json) => json as Map<String, dynamic>,
|
||||
);
|
||||
} catch (e) {
|
||||
print("LeaveApiService.fetchSignHistory 異常: $e");
|
||||
return [];
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user