public async Task <long> AddPost(NegoBarang model) { long response = 0; if (db != null) { try { //NegoBarang negoBarang = new NegoBarang(); //negoBarang.UserProfileId = model.UserProfileId; //negoBarang.BarangId = model.BarangId; //negoBarang.TypePenawaran = model.TypePenawaran; //negoBarang.Harga = model.Harga; //negoBarang.Created = DateTime.Now; //negoBarang.CreatedBy = model.CreatedBy; //negoBarang.RowStatus = true; await db.NegoBarang.AddAsync(model); response = await db.SaveChangesAsync(); } catch (Exception ex) { throw ex; } } return(response); }
public async Task <NegoBarangResponse> UpdatePost(NegoBarangRequest model) { NegoBarangResponse response = new NegoBarangResponse(); if (db != null) { try { NegoBarang negoBarang = await db.NegoBarang.Where(x => x.RowStatus == true && x.Id == model.ID).FirstOrDefaultAsync(); if (negoBarang != null) { negoBarang.UserProfileId = model.UserProfileID; negoBarang.BarangId = model.BarangID; negoBarang.TypePenawaran = model.TypePenawaran; negoBarang.Harga = model.Harga; negoBarang.Modified = DateTime.Now; negoBarang.ModifiedBy = model.ModifiedBy; await db.SaveChangesAsync(); } else { response.IsSuccess = false; response.Message = "Data Not Found"; } } catch (Exception ex) { response.Message = ex.ToString(); response.IsSuccess = false; } } return(response); }
public async Task <long> UpdatePost(NegoBarang model) { long result = 0; if (db != null) { try { NegoBarang negoBarang = await db.NegoBarang.Where(x => x.RowStatus == true && x.Id == model.Id).FirstOrDefaultAsync(); if (negoBarang != null) { negoBarang.UserProfileId = model.UserProfileId; negoBarang.BarangId = model.BarangId; negoBarang.TypePenawaran = model.TypePenawaran; negoBarang.Harga = model.Harga; negoBarang.Modified = DateTime.Now; negoBarang.ModifiedBy = model.ModifiedBy; result = await db.SaveChangesAsync(); } } catch (Exception ex) { throw ex; } } return(result); }
public async Task <bool> DeletePost(long ID) { bool result = false; if (db != null) { try { NegoBarang negoBarang = await db.NegoBarang.Where(x => x.RowStatus == true && x.Id == ID).FirstOrDefaultAsync(); if (negoBarang != null) { negoBarang.RowStatus = false; await db.SaveChangesAsync(); result = true; } } catch (Exception ex) { throw ex; } } return(result); }
public async Task <NegoBarangResponse> AddPost(NegoBarangRequest model) { NegoBarangResponse response = new NegoBarangResponse(); if (db != null) { try { NegoBarang negoBarang = new NegoBarang(); negoBarang.UserProfileId = db.UserProfile.Where(x => x.RowStatus == true && x.Email == model.UserName).Select(x => x.Id).FirstOrDefaultAsync().Result; negoBarang.BarangId = model.BarangID; negoBarang.TypePenawaran = model.TypePenawaran; negoBarang.Harga = model.Harga; negoBarang.Created = DateTime.Now; negoBarang.CreatedBy = model.UserName; negoBarang.RowStatus = true; await db.NegoBarang.AddAsync(negoBarang); await db.SaveChangesAsync(); } catch (Exception ex) { response.IsSuccess = false; response.Message = ex.ToString(); } } return(response); }
public async Task <NegoBarangResponse> DeletePost(NegoBarangRequest model) { NegoBarangResponse response = new NegoBarangResponse(); if (db != null) { try { NegoBarang negoBarang = await db.NegoBarang.Where(x => x.RowStatus == true && x.Id == model.ID).FirstOrDefaultAsync(); if (negoBarang != null) { negoBarang.RowStatus = false; await db.SaveChangesAsync(); response.Message = "Data has been Saved"; } else { response.IsSuccess = false; response.Message = "Data Not Found"; } } catch (Exception ex) { response.Message = ex.ToString(); response.IsSuccess = false; } } return(response); }
public async Task <TransactionResponse> SubmitBuy(long id, long nominal, string username) { TransactionResponse response = new TransactionResponse(); NegoBarang nego = new NegoBarang() { BarangId = id, TypePenawaran = "ask", Harga = nominal }; NegoBarang ResultNego = await INego.GetNegoBarang(nego); UserProfile usrBuyer = await IAuth.GetUserProfileByEmail(username); Transaction tran = new Transaction() { BuyerId = usrBuyer.Id, SellerId = ResultNego.UserProfileId, NegoBarangId = ResultNego.Id, TransactionLevelId = 1, CreatedBy = username, Created = DateTime.Now, RowStatus = true }; long TransID = await dep.SaveTransaction(tran); if (TransID < 1) { response.Message = "Failed When Save Transaction"; response.IsSuccess = false; } else { TransactionJournal journal = new TransactionJournal() { TransactionId = tran.Id, BuyerId = tran.BuyerId, SellerId = tran.SellerId, NegoBarangId = tran.NegoBarangId, TransactionLevelId = tran.TransactionLevelId, Created = tran.Created, CreatedBy = tran.CreatedBy, RowStatus = tran.RowStatus, }; long JournalID = await IJournal.SaveTransactionJournal(journal); if (JournalID < 1) { log.Error("Failed when insert TransactionJournal, TransactionID = " + tran.Id); } response.Message = "Transaction Success."; response.IsSuccess = true; } return(response); }
public async Task <NegoBarang> GetNegoBarang(NegoBarang model) { NegoBarang response = new NegoBarang(); if (db != null) { try { response = await db.NegoBarang.Where(x => x.RowStatus == true && x.BarangId == model.BarangId && x.Harga == model.Harga && x.TypePenawaran == model.TypePenawaran).FirstOrDefaultAsync(); } catch (Exception ex) { throw ex; } } return(response); }
public async Task <BarangResponse> SubmitUpload(string fileName, string username) { BarangResponse response = new BarangResponse(); try { string folderName = Path.Combine("Resources", "UploadDocs"); string filePath = Path.Combine(Directory.GetCurrentDirectory(), folderName); string sheetName = "Master"; DataTable dt = new DataTable(); string dbPath = Path.Combine(folderName, fileName); List <Kota> ListKota = await da_kota.GetAll(); List <Merk> ListMerk = await da_merk.GetAllMerk(); List <ModelBarang> ListModel = await da_model.GetAllModel(); List <TypeBarang> ListType = await da_type.GetAllType(); List <Warna> ListWarna = await da_warna.GetWarna(); List <Barang> ListBarang = await dep.GetAllBarang(); using (ExcelPackage pck = new ExcelPackage()) { using (FileStream stream = new FileStream(dbPath, FileMode.Open)) { pck.Load(stream); ExcelWorksheet oSheet = pck.Workbook.Worksheets[sheetName]; dt = WorksheetToDataTable(oSheet); for (int i = 0; i < dt.Rows.Count; i++) { long KotaID = 0; long MerkID = 0; long ModelID = 0; long TypeID = 0; long WarnaID = 0; long BarangID = 0; long NegoBarangID = 0; errMerk = dt.Rows[i].ItemArray.GetValue(1).ToString(); errModel = dt.Rows[i].ItemArray.GetValue(2).ToString(); errType = dt.Rows[i].ItemArray.GetValue(3).ToString(); errWarna = dt.Rows[i].ItemArray.GetValue(4).ToString(); errBarang = dt.Rows[i].ItemArray.GetValue(5).ToString(); errOTR = dt.Rows[i].ItemArray.GetValue(6).ToString(); errHargaFinal = dt.Rows[i].ItemArray.GetValue(8).ToString(); #region Insert To Kota string Kota = dt.Rows[i].ItemArray.GetValue(0).ToString(); if (!ListKota.Where(x => x.Name.ToLower() == Kota.ToLower()).Any()) { Kota k = new Kota(); k.Name = Kota; k.Description = Kota; k.RowStatus = true; k.Created = DateTime.Now; k.CreatedBy = username; KotaID = da_kota.AddPost(k).Result; ListKota.Add(k); } else { KotaID = ListKota.Where(x => x.Name.ToLower() == Kota.ToLower() && x.RowStatus == true).First().Id; } #endregion #region Insert To Merk string Merk = dt.Rows[i].ItemArray.GetValue(1).ToString(); if (!ListMerk.Where(x => x.Name.ToLower() == Merk.ToLower()).Any()) { Merk m = new Merk(); m.Name = Merk; m.Description = Merk; m.RowStatus = true; m.Created = DateTime.Now; m.CreatedBy = username; MerkID = da_merk.Add(m).Result; ListMerk.Add(m); } else { MerkID = ListMerk.Where(x => x.Name.ToLower() == Merk.ToLower() && x.RowStatus == true).First().Id; } #endregion #region Insert to ModelBarang string Model = dt.Rows[i].ItemArray.GetValue(2).ToString(); if (!ListModel.Where(x => x.Name.ToLower() == Model.ToLower()).Any()) { ModelBarang mb = new ModelBarang(); mb.MerkId = MerkID; mb.Name = Model; mb.Description = Model; mb.RowStatus = true; mb.Created = DateTime.Now; mb.Createdby = username; ModelID = da_model.Add(mb).Result; ListModel.Add(mb); } else { ModelID = ListModel.Where(x => x.Name.ToLower() == Model.ToLower() && x.RowStatus == true).First().Id; } #endregion #region Insert to TypeBarang string Type = dt.Rows[i].ItemArray.GetValue(4).ToString(); if (!ListType.Where(x => x.Name.ToLower() == Type.ToLower()).Any()) { TypeBarang tb = new TypeBarang(); tb.Name = Type; tb.ModelBarangId = ModelID; tb.Description = Type; tb.RowStatus = true; tb.Created = DateTime.Now; tb.CreatedBy = username; TypeID = da_type.Add(tb).Result; ListType.Add(tb); } else { TypeID = ListType.Where(x => x.RowStatus == true && x.Name.ToLower() == Type.ToLower()).First().Id; } #endregion #region Insert to Warna string Warna = dt.Rows[i].ItemArray.GetValue(6).ToString(); if (!ListWarna.Where(x => x.Name.ToLower() == Warna.ToLower()).Any()) { Warna w = new Warna(); w.Name = Warna; w.Description = Warna; w.Sapcode = dt.Rows[i].ItemArray.GetValue(5).ToString(); w.RowStatus = true; w.Created = DateTime.Now; w.CreatedBy = username; WarnaID = da_warna.Add(w).Result; ListWarna.Add(w); } else { WarnaID = ListWarna.Where(x => x.RowStatus == true && x.Name.ToLower() == Warna.ToLower()).First().Id; } #endregion string OTRstrRaw = dt.Rows[i].ItemArray.GetValue(8).ToString(); string OTRstr = OTRstrRaw.Contains('.') ? OTRstrRaw.Substring(0, OTRstrRaw.LastIndexOf('.')) : OTRstrRaw; string DiscstrRaw = dt.Rows[i].ItemArray.GetValue(9).ToString(); string Discstr = DiscstrRaw.Contains('.') ? DiscstrRaw.Substring(0, DiscstrRaw.LastIndexOf('.')) : DiscstrRaw; string FinalRaw = dt.Rows[i].ItemArray.GetValue(10).ToString(); string Finalstr = FinalRaw.Contains('.') ? FinalRaw.Substring(0, FinalRaw.LastIndexOf('.')) : FinalRaw; string YearstrRaw = dt.Rows[i].ItemArray.GetValue(7).ToString(); string Yearstr = YearstrRaw.Contains('.') ? YearstrRaw.Substring(0, OTRstrRaw.LastIndexOf('.')) : YearstrRaw; long OTR = Convert.ToInt64(OTRstr); long Discount = Convert.ToInt64(Discstr); long HargaFinal = Convert.ToInt64(Finalstr); int Year = Convert.ToInt32(Yearstr); #region Insert to Barang Barang brg = new Barang() { RowStatus = true, Created = DateTime.Now, CreatedBy = username, HargaOtr = OTR, Name = Type, WarnaId = WarnaID, TypeBarangId = TypeID, KotaId = KotaID, Year = Year, KodeType = dt.Rows[i].ItemArray.GetValue(3).ToString() }; BarangID = dep.AddPost(brg).Result; #endregion #region Insert to NegoBarang NegoBarang nb = new NegoBarang() { RowStatus = true, BarangId = BarangID, UserProfileId = 3, TypePenawaran = "ask", Harga = HargaFinal, Created = DateTime.Now, CreatedBy = username }; NegoBarangID = da_nego.AddPost(nb).Result; #endregion } response.IsSuccess = true; response.Message = "Success"; } } } catch (Exception ex) { log.Error(ex); string Ket = string.Format("Merk={0}, Model={1}, Type={2}, Warna={3}, Barang={4}, HargaOTR={5}, Harga Final={6}, Error={7} ", errMerk, errModel, errType, errWarna, errBarang, errOTR, errHargaFinal, ex.ToString()); response.Message = Ket;// ex.ToString(); response.IsSuccess = false; } return(response); }
public async Task <NegoBarangResponse> SubmitBid(NegoBarangRequest req) { NegoBarangResponse response = new NegoBarangResponse(); NegoBarang model = new NegoBarang(); UserProfile userProfile = await IAuth.GetUserProfileByEmail(req.UserName); try { if (req.ID > 0) { model.Id = req.ID; model.UserProfileId = userProfile.Id; model.BarangId = req.BarangID; model.Harga = req.Harga; model.TypePenawaran = req.TypePenawaran = "BID"; model.Created = DateTime.Now; model.CreatedBy = req.UserName; model.RowStatus = true; if (await dep.UpdatePost(model) > 0) { response.IsSuccess = true; response.Message = "Update Success"; } else { response.IsSuccess = false; response.Message = "Update Failed"; } } else { model.UserProfileId = userProfile.Id; model.BarangId = req.BarangID; model.TypePenawaran = req.TypePenawaran = "BID"; model.Created = DateTime.Now; model.CreatedBy = req.UserName; model.RowStatus = true; model.Harga = req.Harga; if (await dep.AddPost(model) > 0) { response.IsSuccess = true; response.Message = "Data Already Saved"; } else { response.IsSuccess = false; response.Message = "Save Failed"; } } } catch (Exception ex) { log.Error(ex); response.IsSuccess = false; response.Message = ex.Message.ToString(); } //return await dep.AddPost(req); return(response); }
public async Task <NegoBarangResponse> SubmitListASK(NegoBarangRequest req) { NegoBarangResponse response = new NegoBarangResponse(); UserProfile userProfile = await IAuth.GetUserProfileByEmail(req.UserName); try { List <Barang> barangs = iBarang.GetIDBarangByTypeAndColourIDS(req.TypeBarangID, req.ListWarna).Result; foreach (var item in barangs) { NegoBarang model = new NegoBarang(); model.Id = req.ID; model.UserProfileId = userProfile.Id; model.BarangId = item.Id; model.Harga = req.Harga; model.TypePenawaran = req.TypePenawaran = "ASK"; model.Created = DateTime.Now; model.CreatedBy = req.UserName; model.RowStatus = true; if (await dep.AddPost(model) > 0) { response.IsSuccess = true; response.Message = "Data Already Success"; } else { response.IsSuccess = false; response.Message = "Save Failed"; } } //if (req.ID > 0) //{ // model.Id = req.ID; // model.UserProfileId = userProfile.Id; // model.BarangId = req.BarangID; // model.Harga = req.Harga; // model.TypePenawaran = req.TypePenawaran = "ASK"; // model.Created = DateTime.Now; // model.CreatedBy = req.UserName; // model.RowStatus = true; // if (await dep.UpdatePost(model) > 0) // { // response.IsSuccess = true; // response.Message = "Update Success"; // } // else // { // response.IsSuccess = false; // response.Message = "Update Failed"; // } //} //else //{ // model.UserProfileId = userProfile.Id; // model.BarangId = req.BarangID; // model.TypePenawaran = req.TypePenawaran = "ASK"; // model.Created = DateTime.Now; // model.CreatedBy = req.UserName; // model.RowStatus = true; // model.Harga = req.Harga; // if (await dep.AddPost(model) > 0) // { // response.IsSuccess = true; // response.Message = "Data Already Saved"; // } // else // { // response.IsSuccess = false; // response.Message = "Save Failed"; // } //} } catch (Exception ex) { log.Error(ex); response.IsSuccess = false; response.Message = ex.Message.ToString(); } //return await dep.AddPost(req); return(response); }
public async Task <NegoBarangResponse> Submitask(NegoBarangRequest req) { NegoBarangResponse response = new NegoBarangResponse(); NegoBarang model = new NegoBarang(); UserProfile userProfile = await IAuth.GetUserProfileByEmail(req.UserName); UserDetail userDetail = await IAuth.GetUserDetailByID(userProfile.Id); if (userDetail == null) { response.IsSuccess = false; response.Message = "Pastikan Anda adalah Seller yang terverifikasi"; return(response); } if (userDetail.Description == null || userDetail.Description.ToLower() != "seller") { response.IsSuccess = false; response.Message = "Pastikan Anda adalah Seller yang terverifikasi"; return(response); } try { if (req.ID > 0) { model.Id = req.ID; model.UserProfileId = userProfile.Id; model.BarangId = req.BarangID; model.Harga = req.Harga; model.TypePenawaran = req.TypePenawaran = "ASK"; model.Created = DateTime.Now; model.CreatedBy = req.UserName; model.RowStatus = true; if (await dep.UpdatePost(model) > 0) { response.IsSuccess = true; response.Message = "Update Success"; } else { response.IsSuccess = false; response.Message = "Update Failed"; } } else { model.UserProfileId = userProfile.Id; model.BarangId = req.BarangID; model.TypePenawaran = req.TypePenawaran = "ASK"; model.Created = DateTime.Now; model.CreatedBy = req.UserName; model.RowStatus = true; model.Harga = req.Harga; if (await dep.AddPost(model) > 0) { response.IsSuccess = true; response.Message = "Data Already Saved"; } else { response.IsSuccess = false; response.Message = "Save Failed"; } } } catch (Exception ex) { log.Error(ex); response.IsSuccess = false; response.Message = ex.Message.ToString(); } //return await dep.AddPost(req); return(response); }
public async Task <TransactionResponse> SubmitSell(long id, long nominal, string username) { TransactionResponse response = new TransactionResponse(); NegoBarang nego = new NegoBarang() { BarangId = id, TypePenawaran = "bid", Harga = nominal }; NegoBarang ResultNego = await INego.GetNegoBarang(nego); UserProfile usrSell = await IAuth.GetUserProfileByEmail(username); UserDetail userDetail = await IAuth.GetUserDetailByID(usrSell.Id); if (userDetail == null) { response.IsSuccess = false; response.Message = "Pastikan Anda adalah Seller yang terverifikasi"; return(response); } if (userDetail.Description == null || userDetail.Description.ToLower() != "seller") { response.IsSuccess = false; response.Message = "Pastikan Anda adalah Seller yang terverifikasi"; return(response); } if (ResultNego == null) { response.Message = "Failed When Save Transaction"; response.IsSuccess = false; return(response); } Transaction tran = new Transaction() { BuyerId = ResultNego.UserProfileId, SellerId = usrSell.Id, NegoBarangId = ResultNego.Id, TransactionLevelId = 1, CreatedBy = username, Created = DateTime.Now, RowStatus = true }; ResultNego.Modified = DateTime.Now; ResultNego.ModifiedBy = username; ResultNego.HasTransaction = true; long TransID = await dep.SaveTransaction(tran); if (TransID < 1) { response.Message = "Failed When Save Transaction"; response.IsSuccess = false; } else { TransactionJournal journal = new TransactionJournal() { TransactionId = tran.Id, BuyerId = tran.BuyerId, SellerId = tran.SellerId, NegoBarangId = tran.NegoBarangId, TransactionLevelId = tran.TransactionLevelId, Created = tran.Created, CreatedBy = tran.CreatedBy, RowStatus = tran.RowStatus, }; long JournalID = await IJournal.SaveTransactionJournal(journal); if (JournalID < 1) { log.Error("Failed when insert TransactionJournal, TransactionID = " + tran.Id); } response.Message = "Transaction Success."; response.IsSuccess = true; } INego.UpdatePost(ResultNego); return(response); }