public int PostInvoice(saoitrinvhd data) { var ls_invn_online = GenericFunctionClass.gf_get_module_online("SAOI", "INVN"); var ls_faar_online = GenericFunctionClass.gf_get_module_online("SAOI", "INVN"); if (ls_faar_online == null && ls_invn_online == null) { return(200); } li_ret = validate_posting(data); if (li_ret == 500) { return(li_ret); } if (ls_invn_online.online == "Y") { li_ret = SaoiInventoryPosting.Post(data); } if (ls_faar_online.online == "Y") { // li_ret = SaoiAccountRecevablePosting.post(data); } return(li_ret); }
public int Update(string trans_no, string trans_bk, string company_id, saoitrinvhd data) { int li_ret = 0; switch (data.trans_bk) { case "SI01": li_ret = SaoiInvoiceManager.UpdateInvoice(trans_no, trans_bk, company_id, data); break; case "SC01": li_ret = SaoiCreditInvoiceManager.UpdateCreditInvoice(trans_no, trans_bk, company_id, data); break; case "SM01": // break; case "SO01": // break; default: // break; } return(li_ret); }
public int Create(saoitrinvhd data) { int li_ret = 0; switch (data.trans_bk) { case "SI01": li_ret = SaoiInvoiceManager.CreateInvoice(data); break; case "SC01": li_ret = SaoiCreditInvoiceManager.CreateCreditInvoice(data); break; case "SM01": // break; case "SO01": // break; default: // break; } return(li_ret); }
public int Post(saoitrinvhd saoitrinvhd) { insert_invntrtransdtl(saoitrinvhd); insert_invntrtranshd(saoitrinvhd); return(200); }
public bool validate_new_Invoice(saoitrinvhd data) { if (check_existing_invoice(data)) { return(true); } return(false); }
public int PostInvoice(saoitrinvhd data) { var ls_invn_online = GenericFunctionClass.gf_get_module_online("SAOI", "INVN"); if (ls_invn_online.online == "Y") { li_ret = SaoiInventoryPosting.Post(data); } return(li_ret); }
public int validate_posting(saoitrinvhd data) { foreach (var ll_currentrow in data.details) { if (ll_currentrow.item_flag == "I" || ll_currentrow.item_flag == "R" || ll_currentrow.item_flag == "M" || ll_currentrow.item_flag == "C") { if (ll_currentrow.item_category == null) { li_ret = 500; break; } if (ll_currentrow.item_id == null) { li_ret = 500; break; } } if (ll_currentrow.trans_flag == null) { ll_currentrow.item_category = "NA"; } if (ll_currentrow.item_id == null) { ll_currentrow.item_id = "NA"; } if (ll_currentrow.packet_no == null) { ll_currentrow.packet_no = "NA"; } if (ll_currentrow.packet_no == null) { ll_currentrow.packet_no = "NA"; } if (ll_currentrow.location == null) { ll_currentrow.location = "NA"; } } if (li_ret == 500) { return(li_ret); } return(200); }
public saoitrinvhd GetInvoice(string trans_no, String trans_bk, string dtl_type) { saoitrinvhd data = db.saoitrinvhds.SingleOrDefault(m => m.trans_no == trans_no && m.trans_bk == trans_bk); if (dtl_type == "Y") { data.details = db.saoitrinvdtls.Where(d => d.trans_no == trans_no && d.trans_bk == trans_bk).ToList(); } return(data); }
public ActionResult <saoitrinvhd> GetInvoice(string trans_no, string trans_bk) { string dtl_type = "Y"; saoitrinvhd data = SalesManager.GetInvoice(trans_no, trans_bk, dtl_type); if (data == null) { return(NotFound()); } return(Ok(data)); }
public bool check_existing_invoice(saoitrinvhd data) { var existing_records = db.saoitrinvhds.Where(d => d.trans_no == data.trans_no && d.trans_bk == data.trans_bk); //db.saoitrinvhds.Find(data.company_id, data.trans_bk, data.trans_no, data.trans_dt); if (existing_records.Count() > 0) { return(true); } return(false); }
public int post(saoitrinvhd data) { li_ret = post_dtl(data); if (li_ret != 200) { return(li_ret); } li_ret = Post_hd(data); return(li_ret); }
public int CreateInvoice(saoitrinvhd data) { if (validate_new_Invoice(data)) { return(500); } db.saoitrinvhds.Add(data); foreach (var ll_currentrow in data.details) { db.saoitrinvdtls.Add(ll_currentrow); } if (PostInvoice(data) != 200) { return(500); } return(Saverecords()); }
public IActionResult Create(saoitrinvhd data) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } li_ret = SalesManager.Create(data); if (li_ret == 500) { return(Conflict()); //return BadRequest(); } else { return(Ok(data)); } }
public void post_undo_fa(saoitrinvhd saoitrinvhd) { var data = db.faartrpaymentdtls.Where(d => d.trans_bk == saoitrinvhd.trans_bk && d.trans_no == saoitrinvhd.trans_no).ToList();; String ls_trans_no, ls_trans_bk; foreach (var ll_currentrow in data) { ls_trans_no = ll_currentrow.voucher_no.Substring(0, 4); ls_trans_bk = ll_currentrow.voucher_no.Substring(5, 11); faartrinvhd faartrinvhd = db.faartrinvhds.Where(d => d.trans_bk == saoitrinvhd.trans_bk && d.trans_no == saoitrinvhd.trans_no).FirstOrDefault();; if (faartrinvhd != null) { faartrinvhd.action_flag = "0"; faartrinvhd.paid_amt = faartrinvhd.paid_amt - ll_currentrow.apply_amt; faartrinvhd.disctaken_amt = faartrinvhd.disctaken_amt - ll_currentrow.disctaken_amt; faartrinvhd.balance_amt = faartrinvhd.inv_amt - (faartrinvhd.paid_amt + faartrinvhd.disctaken_amt) + (ll_currentrow.apply_amt + ll_currentrow.disctaken_amt); db.Entry(faartrinvhd).State = EntityState.Modified; } } }
public bool validate_Existing_Invoice(string trans_no, string trans_bk, string company_id, saoitrinvhd data) { if (check_existing_invoice(data)) { return(false); } if (trans_no != data.trans_no && trans_bk != data.trans_bk && company_id != data.company_id) { return(true); } return(false); }
public int UpdateCreditInvoice(string trans_no, string trans_bk, string company_id, saoitrinvhd data) { if (validate_Existing_Invoice(trans_no, trans_bk, company_id, data)) { return(500); } db.Entry(data).State = EntityState.Modified; var old_records = db.saoitrinvdtls.Where(d => d.trans_no == trans_no && d.trans_bk == trans_bk); foreach (var ll_currentrow in data.details) { if (old_records.Any(d => d.serial_no == ll_currentrow.serial_no)) { db.Entry(ll_currentrow).State = EntityState.Modified; } else { db.saoitrinvdtls.Add(ll_currentrow); } } foreach (var ll_currentrow in old_records) { if (!data.details.Any(d => d.serial_no == ll_currentrow.serial_no)) { db.saoitrinvdtls.Remove(ll_currentrow); } } //SalesPostingManager.post(saoitrinvhd); return(Saverecords()); }
public int insert_invntrtransdtl(saoitrinvhd saoitrinvhd) { Decimal ldec_rec_pcs = 0, ldec_rec_wt = 0, ldec_iss_pcs = 0, ldec_iss_wt = 0, ldec_rec_amt = 0, ldec_price = 0; Decimal ldec_rec_price = 0, ldec_iss_amt = 0, ldec_iss_price = 0; DateTime dt = new DateTime(1955, 01, 01); String ls_rec_unit = "", ls_iss_unit = "", ls_ri_flag = "", ls_memo_flag; String ls_serial_no, ls_ref_serial_no, ls_ref_type, ls_item_id; db.Database.ExecuteSqlCommand("delete from invntrtransdtl where trans_no = '" + saoitrinvhd.trans_no + "' And trans_bk = '" + saoitrinvhd.trans_bk + "'"); db.Database.ExecuteSqlCommand("delete from diintrtransdtl where trans_no = '" + saoitrinvhd.trans_no + "' And trans_bk = '" + saoitrinvhd.trans_bk + "'"); foreach (var ll_currentrow in saoitrinvhd.details) { ls_item_id = ll_currentrow.item_id; if (ls_item_id == null) { ls_item_id = "NA"; } ldec_price = ll_currentrow.item_price ?? 0; if (ll_currentrow.trans_qty != 0) { ldec_price = ll_currentrow.net_amt ?? 0 / ll_currentrow.trans_qty ?? 0; } if (saoitrinvhd.trans_type == "C" || saoitrinvhd.trans_type == "R") // receipt { ldec_rec_pcs = ll_currentrow.trans_qty_pc ?? 0; ldec_rec_wt = ll_currentrow.trans_qty_wt ?? 0; ldec_iss_pcs = 0; ldec_iss_wt = 0; ls_rec_unit = ll_currentrow.sell_unit; ls_iss_unit = ""; ldec_rec_amt = ll_currentrow.net_amt ?? 0; ldec_iss_amt = 0; ldec_rec_price = ldec_price; ldec_iss_price = 0; ls_ri_flag = "R"; } else if (saoitrinvhd.trans_type == "I" || saoitrinvhd.trans_type == "M") // issue { ldec_iss_pcs = ll_currentrow.trans_qty_pc ?? 0; ldec_iss_wt = ll_currentrow.trans_qty_wt ?? 0; ldec_rec_pcs = 0; ldec_rec_wt = 0; ls_iss_unit = ll_currentrow.sell_unit; ls_rec_unit = ""; ldec_iss_amt = ll_currentrow.net_amt ?? 0; ldec_rec_amt = 0; ldec_iss_price = ldec_price; ldec_rec_price = 0; ls_ri_flag = "I"; } // for -ve memo return: no posting into inventory if ((saoitrinvhd.trans_type == "R") && (ldec_rec_wt < 0 || ldec_rec_pcs < 0) && ll_currentrow.item_flag == "D") { continue; } if ((saoitrinvhd.trans_type == "M") || (saoitrinvhd.trans_type == "R")) { ls_memo_flag = "Y"; } else { ls_memo_flag = "N"; } ls_serial_no = ll_currentrow.serial_no + "A"; if (ll_currentrow.item_flag == "D" || ll_currentrow.item_flag == "T") { db.diintrtransdtls.Add(setdiintrtransdtl()); } else { db.invntrtransdtls.Add(setinvntrtransdtl()); } ls_serial_no = ll_currentrow.serial_no + "B"; // price diff if ((saoitrinvhd.trans_type == "C") && (saoitrinvhd.trans_for_flag == "PD")) { ldec_iss_pcs = ldec_rec_pcs; ldec_iss_wt = ldec_rec_wt; ls_iss_unit = ls_rec_unit; ldec_iss_amt = 0; ldec_iss_price = 0; ldec_rec_pcs = 0; ldec_rec_wt = 0; ls_rec_unit = ""; ldec_rec_amt = 0; ldec_rec_price = 0; if (ll_currentrow.item_flag == "D" || ll_currentrow.item_flag == "T") { db.diintrtransdtls.Add(setdiintrtransdtl()); } else { db.invntrtransdtls.Add(setinvntrtransdtl()); } } // the invoice is against a memo so do memo receipt and invoice issue. else if ((saoitrinvhd.trans_type == "I") && (ll_currentrow.ref_type == "M") && (ll_currentrow.ref_no != null)) // the invoice is against a memo so do memo receipt and invoice issue. { ls_memo_flag = "Y"; ldec_rec_pcs = ldec_iss_pcs; ldec_rec_wt = ldec_iss_wt; ls_rec_unit = ls_iss_unit ?? ""; ls_rec_unit = ls_iss_unit ?? ""; ldec_rec_amt = ldec_iss_amt; //var data = db.saoitrinvdtls.SqlQuery("select * " + // "from saoitrinvdtl " + // "where company_id = @company_id " + // "and trans_bk = 'SM01' "+ // "and trans_no = @ls_ref_no " + // "and trans_dt = @ldt_ref_dt " + // "and serial_no = @ref_serial_no ", // new SqlParameter("@company_id", ll_currentrow.company_id), // new SqlParameter("@ls_ref_no", ll_currentrow.ref_no??""), // new SqlParameter("@ldt_ref_dt", ll_currentrow.ref_dt?), // new SqlParameter("@ref_serial_no", ll_currentrow.ref_serial_no??"") // ).FirstOrDefault(); var data = db.saoitrinvdtls.Where(dtl => dtl.company_id == ll_currentrow.company_id && dtl.trans_bk == "SM01" && dtl.trans_no == ll_currentrow.ref_no && dtl.trans_dt == ll_currentrow.ref_dt && dtl.serial_no == ll_currentrow.ref_serial_no ).FirstOrDefault(); if (data == null) { continue; } //net_amt, trans_qty into :ldec_rec_price, :ldec_trans_qty1 if (data.trans_qty > 0) { ldec_rec_price = data.net_amt ?? 0 / data.trans_qty ?? 0; } if ((ls_rec_unit != "") && ((ls_rec_unit.ToUpper().Substring(0, 3) == "C") || (ls_rec_unit.ToUpper().Substring(0, 3) == "W"))) { ldec_rec_amt = ldec_rec_price * ldec_rec_wt; } else { ldec_rec_amt = data.net_amt ?? 0 * ldec_rec_pcs; } ldec_iss_pcs = 0; ldec_iss_wt = 0; ls_iss_unit = ""; ldec_iss_amt = 0; ldec_iss_price = 0; if (ll_currentrow.item_flag == "D" || ll_currentrow.item_flag == "T") { db.diintrtransdtls.Add(setdiintrtransdtl()); } else { db.invntrtransdtls.Add(setinvntrtransdtl()); } } invntrtransdtl setinvntrtransdtl() { invntrtransdtl dtl = new invntrtransdtl(); dtl.trans_bk = ll_currentrow.trans_bk; dtl.trans_no = ll_currentrow.trans_no; dtl.trans_dt = ll_currentrow.trans_dt; dtl.serial_no = ls_serial_no; dtl.item_type = ll_currentrow.item_flag; dtl.item_id = ls_item_id; dtl.rec_pcs = ldec_rec_pcs; dtl.rec_wt = ldec_rec_wt; dtl.iss_pcs = ldec_iss_pcs; dtl.iss_wt = ldec_iss_wt; dtl.rec_unit = ls_rec_unit; dtl.iss_unit = ls_iss_unit; dtl.rec_amt = ldec_rec_amt; dtl.iss_amt = ldec_iss_amt; dtl.user_cd = ll_currentrow.user_cd; dtl.company_id = ll_currentrow.company_id; dtl.update_dt = DateTime.Now;; dtl.update_flag = "V"; dtl.trans_flag = "A"; dtl.action_flag = saoitrinvhd.trans_type; dtl.post_flag = "U"; dtl.item_category = ll_currentrow.item_category; dtl.memo_flag = ls_memo_flag; dtl.packet_no = ll_currentrow.packet_no; dtl.rec_price = ldec_rec_price; dtl.iss_price = ldec_iss_price; dtl.location = ll_currentrow.location; dtl.item_cost = ll_currentrow.item_cost; dtl.account_period = saoitrinvhd.trans_period; dtl.ri_flag = ls_ri_flag; dtl.stone_type = ""; dtl.stone_shape = ""; dtl.stone_qlty = ""; dtl.size = ll_currentrow.size; dtl.prod_so_type = ll_currentrow.prod_so_type; return(dtl); } diintrtransdtl setdiintrtransdtl() { ; diintrtransdtl dtl = new diintrtransdtl(); dtl.trans_bk = ll_currentrow.trans_bk; dtl.trans_no = ll_currentrow.trans_no; dtl.trans_dt = ll_currentrow.trans_dt; dtl.serial_no = ls_serial_no; dtl.item_type = ll_currentrow.item_flag; dtl.item_id = ls_item_id; dtl.rec_pcs = ldec_rec_pcs; dtl.rec_wt = ldec_rec_wt; dtl.iss_pcs = ldec_iss_pcs; dtl.iss_wt = ldec_iss_wt; dtl.rec_unit = ls_rec_unit; dtl.iss_unit = ls_iss_unit; dtl.rec_amt = ldec_rec_amt; dtl.iss_amt = ldec_iss_amt; dtl.user_cd = ll_currentrow.user_cd; dtl.company_id = ll_currentrow.company_id; dtl.update_dt = DateTime.Now;; dtl.update_flag = "V"; dtl.trans_flag = "A"; dtl.action_flag = saoitrinvhd.trans_type; dtl.post_flag = "U"; dtl.item_category = ll_currentrow.item_category; dtl.memo_flag = ls_memo_flag; dtl.packet_no = ll_currentrow.packet_no; dtl.rec_price = ldec_rec_price; dtl.iss_price = ldec_iss_price; dtl.location = ll_currentrow.location; dtl.item_cost = ll_currentrow.item_cost; dtl.account_period = saoitrinvhd.trans_period; dtl.ri_flag = ls_ri_flag; dtl.stone_type = ""; dtl.stone_shape = ""; dtl.stone_qlty = ""; dtl.size = ll_currentrow.size; dtl.prod_so_type = ll_currentrow.prod_so_type; return(dtl); } } return(0); }
public int post_dtl(saoitrinvhd data) { decimal ldec_price, ldec_net_amt1, ldec_apply_amt; if (data.trans_type == "I") { db.Database.ExecuteSqlCommand("delete from faartrinvdtl where trans_no = '" + data.trans_no + "' && trans_bk = '" + data.trans_bk + "'"); } if (data.trans_type == "C") { post_undo_fa(data); } db.Database.ExecuteSqlCommand("delete from faartrpaymentdtl where trans_no = '" + data.trans_no + "' && trans_bk = '" + data.trans_bk + "'"); if (data.trans_type == "C") { foreach (var ll_currentrow in data.details) { ldec_price = ll_currentrow.item_price ?? 0; if (ll_currentrow.trans_qty != 0) { ldec_price = ll_currentrow.net_amt ?? 0 / ll_currentrow.trans_qty ?? 0; } ldec_net_amt1 = ll_currentrow.item_amt ?? 0; if (ldec_net_amt1 <= 0 || ldec_net_amt1 == null || ll_currentrow.ref_no == null) { //Continue } else { var temp = db.faartrinvhds.Where(d => d.trans_bk == "1234" && d.trans_no == ll_currentrow.ref_no).FirstOrDefault();; if (temp.balance_amt > 0) { if (ldec_net_amt1 > temp.balance_amt) { ldec_apply_amt = temp.balance_amt ?? 0; } else { ldec_apply_amt = ldec_net_amt1; faartrinvhd faartrinvhd_1 = db.faartrinvhds.Where(d => d.trans_bk == "1234" && d.trans_no == ll_currentrow.ref_no).FirstOrDefault();; if (faartrinvhd_1 != null) { faartrinvhd_1.action_flag = "0"; faartrinvhd_1.paid_amt = faartrinvhd_1.paid_amt + ldec_apply_amt; faartrinvhd_1.balance_amt = faartrinvhd_1.balance_amt - ldec_apply_amt; db.Entry(faartrinvhd_1).State = EntityState.Modified; } saoitrinvhd saoitrinvhd_1 = db.saoitrinvhds.Where(d => d.trans_bk == "1234" && d.trans_no == ll_currentrow.ref_no).FirstOrDefault();; if (saoitrinvhd_1 != null) { saoitrinvhd_1.update_flag = "V"; db.saoitrinvhds.Add(saoitrinvhd_1); } faartrpaymentdtl faartrpaymentdtl_1 = new faartrpaymentdtl(); faartrpaymentdtl_1.trans_bk = ll_currentrow.trans_bk; faartrpaymentdtl_1.trans_no = ll_currentrow.trans_no; faartrpaymentdtl_1.serial_no = "100"; faartrpaymentdtl_1.trans_dt = ll_currentrow.trans_dt; faartrpaymentdtl_1.apply_flag = "N"; faartrpaymentdtl_1.voucher_no = "1234" + ll_currentrow.ref_no; faartrpaymentdtl_1.inv_no = "1234" + ll_currentrow.ref_no;; faartrpaymentdtl_1.inv_dt = ll_currentrow.ref_dt; faartrpaymentdtl_1.original_amt = temp.inv_amt; faartrpaymentdtl_1.balance_amt = temp.balance_amt; faartrpaymentdtl_1.apply_amt = ldec_apply_amt; faartrpaymentdtl_1.disctaken_amt = 0; faartrpaymentdtl_1.company_id = ll_currentrow.company_id; faartrpaymentdtl_1.user_cd = ll_currentrow.user_cd; faartrpaymentdtl_1.update_dt = DateTime.Now; faartrpaymentdtl_1.update_flag = "V"; faartrpaymentdtl_1.voucher_dt = ll_currentrow.ref_dt; faartrpaymentdtl_1.due_dt = temp.due_dt; db.faartrpaymentdtls.Add(faartrpaymentdtl_1); } } } } } return(200); }
public int insert_invntrtranshd(saoitrinvhd saoitrinvhd) { String ls_memo_flag, ls_ri_flag = ""; invntrtranshd existing_inventory = db.invntrtranshds.Find(saoitrinvhd.trans_bk, saoitrinvhd.trans_no, saoitrinvhd.trans_dt, saoitrinvhd.company_id); if (existing_inventory != null) { db.Entry(existing_inventory).State = EntityState.Deleted; } diintrtranshd existing_diaminventory = db.diintrtranshds.Find(saoitrinvhd.trans_bk, saoitrinvhd.trans_no, saoitrinvhd.trans_dt, saoitrinvhd.company_id); if (existing_diaminventory != null) { db.Entry(existing_diaminventory).State = EntityState.Deleted; } ls_memo_flag = "N"; switch (saoitrinvhd.trans_type) { case "I": ls_ri_flag = "T"; break; case "M": ls_memo_flag = "Y"; ls_ri_flag = "I"; break; case "C": ls_ri_flag = "R"; break; case "R": ls_memo_flag = "Y"; ls_ri_flag = "R"; break; default: // break; } if ((saoitrinvhd.details.Where(p => p.item_flag != "D" && p.item_flag != "T")).Count() > 0) { invntrtranshd invntrtranshd = new invntrtranshd(); invntrtranshd.trans_bk = saoitrinvhd.trans_bk; invntrtranshd.trans_no = saoitrinvhd.trans_no; invntrtranshd.trans_dt = saoitrinvhd.trans_dt; invntrtranshd.ref_id = saoitrinvhd.account_id; invntrtranshd.ref_no = saoitrinvhd.po_no; invntrtranshd.ref_dt = saoitrinvhd.po_dt; invntrtranshd.trans_type = "CUST"; invntrtranshd.location = ""; invntrtranshd.account_period = saoitrinvhd.trans_period; invntrtranshd.ri_flag = ls_ri_flag; invntrtranshd.remarks = ""; invntrtranshd.user_cd = saoitrinvhd.user_cd; invntrtranshd.company_id = saoitrinvhd.company_id; invntrtranshd.update_dt = saoitrinvhd.update_dt; invntrtranshd.update_flag = "V"; invntrtranshd.trans_flag = saoitrinvhd.trans_flag; invntrtranshd.action_flag = "A"; invntrtranshd.post_flag = "U"; invntrtranshd.memo_flag = ls_memo_flag; db.invntrtranshds.Add(invntrtranshd); } if ((saoitrinvhd.details.Where(p => p.item_flag == "D")).Count() == 0) { return(0); } diintrtranshd diintrtranshd = new diintrtranshd(); diintrtranshd.trans_bk = saoitrinvhd.trans_bk; diintrtranshd.trans_no = saoitrinvhd.trans_no; diintrtranshd.trans_dt = saoitrinvhd.trans_dt; diintrtranshd.ref_id = saoitrinvhd.account_id; diintrtranshd.ref_no = saoitrinvhd.po_no; diintrtranshd.ref_dt = saoitrinvhd.po_dt; diintrtranshd.trans_type = "CUST"; diintrtranshd.location = ""; diintrtranshd.account_period = saoitrinvhd.trans_period; diintrtranshd.ri_flag = ls_ri_flag; diintrtranshd.remarks = ""; diintrtranshd.user_cd = saoitrinvhd.user_cd; diintrtranshd.company_id = saoitrinvhd.company_id; diintrtranshd.update_dt = saoitrinvhd.update_dt; diintrtranshd.update_flag = "V"; diintrtranshd.trans_flag = saoitrinvhd.trans_flag; diintrtranshd.action_flag = "A"; diintrtranshd.post_flag = "U"; diintrtranshd.memo_flag = ls_memo_flag; db.diintrtranshds.Add(diintrtranshd); return(0); }
public IActionResult Update(string trans_no, string trans_bk, string company_id, saoitrinvhd data) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } li_ret = SalesManager.Update(trans_no, trans_bk, company_id, data); if (li_ret == 500) { return(BadRequest()); } else { return(NoContent()); } }
public int Post_hd(saoitrinvhd data) { string[] trans_group; int li_noofentries = 0, li_pay1_days = 1; string ls_trans_no1, ls_inv_type, ls_ref_no2; decimal ldec_pay1_per = 100, ldec_per = 1, li_days = 1, ldec_net_amt1 = 0, ldec_net_amt2 = 0; if (data.trans_type == "I") { trans_group = new string[12] { data.trans_no + "a", data.trans_no + "b", data.trans_no + "c", data.trans_no + "d", data.trans_no + "e", data.trans_no + "f", data.trans_no + "g", data.trans_no + "h", data.trans_no + "i", data.trans_no + "j", data.trans_no + "k", data.trans_no + "l" }; var existing_records = db.faartrinvhds.Where(c => trans_group.Contains(c.trans_no)).ToList(); foreach (var ll_currentrow in existing_records) { db.Entry(ll_currentrow).State = EntityState.Deleted; } //db.database.ExecuteSqlComm&&("delete from faartrinvhd where trans_no in (a,b,c)"); saoimsterms saoimsterms = db.saoimstermses.Where(d => d.id == data.terms).FirstOrDefault(); if (data.terms == null) { li_noofentries = 1; ldec_pay1_per = 100; //li_pay1_days = daysafter(date(ldt_trans_dt), date(ldt_due_dt)) } else { if (saoimsterms.pay1_per > 0) { li_noofentries = 1; } if (saoimsterms.pay2_per > 0) { li_noofentries = 2; } if (saoimsterms.pay3_per > 0) { li_noofentries = 3; } if (saoimsterms.pay4_per > 0) { li_noofentries = 4; } if (saoimsterms.pay5_per > 0) { li_noofentries = 5; } if (saoimsterms.pay6_per > 0) { li_noofentries = 6; } if (saoimsterms.pay7_per > 0) { li_noofentries = 7; } if (saoimsterms.pay8_per > 0) { li_noofentries = 8; } if (saoimsterms.pay9_per > 0) { li_noofentries = 9; } if (saoimsterms.pay10_per > 0) { li_noofentries = 10; } if (saoimsterms.pay11_per > 0) { li_noofentries = 11; } if (saoimsterms.pay12_per > 0) { li_noofentries = 12; } if (saoimsterms.pay1_per + saoimsterms.pay2_per + saoimsterms.pay3_per + saoimsterms.pay4_per + saoimsterms.pay5_per + saoimsterms.pay6_per + saoimsterms.pay7_per + saoimsterms.pay8_per + saoimsterms.pay9_per + saoimsterms.pay10_per + saoimsterms.pay11_per + saoimsterms.pay12_per != 100 ) { return(500); } } if ((li_noofentries == 3) && (saoimsterms.pay1_per >= 33.33m) && (saoimsterms.pay1_per <= 33.34m) && (saoimsterms.pay2_per >= 33.33m) && (saoimsterms.pay2_per <= 33.34m) && (saoimsterms.pay3_per >= 33.33m) && (saoimsterms.pay3_per <= 33.34m)) { saoimsterms.pay1_per = 3; saoimsterms.pay2_per = 3; saoimsterms.pay3_per = 3; } if (li_noofentries == 6 && saoimsterms.pay1_per >= 16.60m && saoimsterms.pay1_per <= 16.70m && saoimsterms.pay2_per >= 16.60m && saoimsterms.pay2_per <= 16.70m && saoimsterms.pay3_per >= 16.60m && saoimsterms.pay3_per <= 16.70m && saoimsterms.pay4_per >= 16.60m && saoimsterms.pay4_per <= 16.70m && saoimsterms.pay5_per >= 16.60m && saoimsterms.pay5_per <= 16.70m && saoimsterms.pay6_per >= 16.60m && saoimsterms.pay6_per <= 16.70m ) { saoimsterms.pay1_per = 6; saoimsterms.pay2_per = 6; saoimsterms.pay3_per = 6; saoimsterms.pay4_per = 6; saoimsterms.pay5_per = 6; saoimsterms.pay6_per = 6; } for (int i = 0; i < li_noofentries; i++) { switch (i) { case 1: ldec_per = saoimsterms.pay1_per ?? 0; li_days = li_pay1_days; if (li_noofentries > 1) { ls_trans_no1 = data.trans_no.Trim() + "a"; } else { ls_trans_no1 = data.trans_no; } data.due_dt = saoimsterms.pay1_date; break; case 2: ldec_per = saoimsterms.pay2_per ?? 0; li_days = saoimsterms.pay2_days ?? 0; ls_trans_no1 = data.trans_no.Trim() + "b"; data.due_dt = saoimsterms.pay2_date; break; case 3: ldec_per = saoimsterms.pay3_per ?? 0; li_days = saoimsterms.pay3_days ?? 0; ls_trans_no1 = data.trans_no.Trim() + "c"; data.due_dt = saoimsterms.pay3_date; break; case 4: ldec_per = saoimsterms.pay4_per ?? 0; li_days = saoimsterms.pay4_days ?? 0; ls_trans_no1 = data.trans_no.Trim() + "d"; data.due_dt = saoimsterms.pay4_date; break; case 5: ldec_per = saoimsterms.pay5_per ?? 0; li_days = saoimsterms.pay5_days ?? 0; ls_trans_no1 = data.trans_no.Trim() + "e"; data.due_dt = saoimsterms.pay5_date; break; case 6: ldec_per = saoimsterms.pay6_per ?? 0; li_days = saoimsterms.pay6_days ?? 0; ls_trans_no1 = data.trans_no.Trim() + "f"; data.due_dt = saoimsterms.pay6_date; break; case 7: ldec_per = saoimsterms.pay7_per ?? 0; li_days = saoimsterms.pay7_days ?? 0; ls_trans_no1 = data.trans_no.Trim() + "g"; data.due_dt = saoimsterms.pay6_date; break; case 8: ldec_per = saoimsterms.pay8_per ?? 0; li_days = saoimsterms.pay8_days ?? 0; ls_trans_no1 = data.trans_no.Trim() + "h"; data.due_dt = saoimsterms.pay6_date; break; case 9: ldec_per = saoimsterms.pay9_per ?? 0; li_days = saoimsterms.pay9_days ?? 0; ls_trans_no1 = data.trans_no.Trim() + "i"; data.due_dt = saoimsterms.pay6_date; break; case 10: ldec_per = saoimsterms.pay10_per ?? 0; li_days = saoimsterms.pay10_days ?? 0; ls_trans_no1 = data.trans_no.Trim() + "j"; data.due_dt = saoimsterms.pay6_date; break; case 11: ldec_per = saoimsterms.pay11_per ?? 0; li_days = saoimsterms.pay11_days ?? 0; ls_trans_no1 = data.trans_no.Trim() + "k"; data.due_dt = saoimsterms.pay6_date; break; case 12: ldec_per = saoimsterms.pay12_per ?? 0; li_days = saoimsterms.pay12_days ?? 0; ls_trans_no1 = data.trans_no.Trim() + "l"; data.due_dt = saoimsterms.pay6_date; break; default: // break; } if (saoimsterms.disc_days == null) { saoimsterms.disc_days = 0; } if (li_days > 0) { //p data.due_dt = } if (data.due_dt < data.sale_dt) { li_ret = 500; continue; } if (i == li_noofentries) { ldec_net_amt1 = data.net_amt ?? 0 - ldec_net_amt2; } else { if (ldec_per == 3m || ldec_per == 6m) { ldec_net_amt1 = data.net_amt ?? 0 / ldec_per; ldec_net_amt2 += ldec_net_amt1; } else { ldec_net_amt1 = data.net_amt ?? 0 * (ldec_per / 100); ldec_net_amt2 += ldec_net_amt1; } } ls_inv_type = data.details[1].ref_type; if (ls_inv_type == "O") { ls_ref_no2 = data.details[1].ref_no; } var trans_fflag = db.saoitrinvhds.Where(d => d.trans_bk == "SO01").Select(x => new { x.trans_for_flag } ).FirstOrDefault(); ls_inv_type = trans_fflag.trans_for_flag; if (ls_inv_type == null) { ls_inv_type = "I"; } //select trans_for_flag into: ls_inv_type //from saoitrinvhd //where trans_bk = 'SO01' and trans_no = :ls_ref_no2; //end if } } if (li_ret == 500) { return(500); } return(200); }