public AdminAccountsController() { Model1 = new XPayAccount().GetType().Name; Model1FileName = AppDataFolder + "InnerAPI\\" + Model1 + ".json"; Model2 = new XPayRole().GetType().Name; Model2FileName = AppDataFolder + "InnerAPI\\" + Model2 + ".json"; FileChecker <XPayAccount> .AutoCreateIfNotExists(Model1FileName); FileChecker <XPayRole> .AutoCreateIfNotExists(Model2FileName); }
public async Task <XPayRole> Save(XPayRole newData) { return(await Task.Run(async() => { try { roles = await Reader <XPayRole> .JsonReaderListAsync(Model1FileName); roles.Add(newData); _ = await Writer <XPayRole> .JsonWriterListAsync(roles, Model1FileName); return newData; } catch { return null; } })); }
public async Task <XPayRole> Edit(XPayRole updatedData) { return(await Task.Run(async() => { try { roles = await Reader <XPayRole> .JsonReaderListAsync(Model1FileName); if (roles.Count == 0) { throw new Exception("No data to be update"); } var old = roles.Where(a => a.Id.Equals(updatedData.Id)).FirstOrDefault(); if (old == null) { throw new Exception("No data to be update"); } roles = roles.Where(a => !a.Id.Equals(updatedData.Id)).ToList(); updatedData.DateUpdated = DateTime.Now; roles.Add(updatedData); _ = await Writer <XPayRole> .JsonWriterListAsync(roles, Model1FileName); return old; } catch (Exception ex) { throw ex; } })); }