// GET: CSBILLs/Create public ActionResult Create() { decimal taxrate = 0; string taxcode = "SSTN01"; CSITEM cSITEM = db.CSITEMs.Find("Work"); if (cSITEM != null) { taxrate = cSITEM.GSTRATE ?? 0; } CSBILL cSBILL = new CSBILL(); cSBILL.ENTDATE = DateTime.Today; cSBILL.SYSGENBool = false; cSBILL.STAMP = 1; cSBILL.SYSGEN = "N"; cSBILL.PRFALLOC = "N"; //cSBILL.TAXRATE = db.CSPARAMs.Find("DEFAULT").TAXRATE; //cSBILL.CONO = "750059-M"; // hack to show first company jobs taxcode = db.CSTAXTYPEs.Where(x => x.TAXRATE == taxrate && x.EFFECTIVE_START <= cSBILL.ENTDATE && x.EFFECTIVE_END >= cSBILL.ENTDATE).Select(y => y.TAXCODE).FirstOrDefault() ?? taxcode; cSBILL.TAXRATE = taxrate; cSBILL.TAXCODE = taxcode; ViewBag.page = 1; Session["CSBillPage"] = ViewBag.page; ViewBag.Title = "Create Billing Item"; return(CallView("Edit", cSBILL)); }
public ActionResult Create([Bind(Include = "ITEMTYPE,ITEMDESC,GSTCODE,GSTRATE,STAMP")] CSITEM cSITEM) { if (ModelState.IsValid) { try { cSITEM.STAMP = 0; db.CSITEMs.Add(cSITEM); db.SaveChanges(); return(RedirectToAction("Index")); } catch (DbEntityValidationException dbEx) { foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { //string message = string.Format("{0}:{1}", // validationErrors.Entry.Entity.ToString(), // validationError.ErrorMessage); // raise a new exception nesting // the current instance as InnerException ModelState.AddModelError(validationError.PropertyName, validationError.ErrorMessage); } } } catch (DbUpdateException ex) { UpdateException updateException = (UpdateException)ex.InnerException; if (updateException != null) { if (updateException.InnerException != null) { var sqlException = (FirebirdSql.Data.FirebirdClient.FbException)updateException.InnerException; foreach (var error in sqlException.Errors) { if (error.Message != null) { ModelState.AddModelError(string.Empty, error.Message); } } } else { ModelState.AddModelError(string.Empty, updateException.Message); } } else { ModelState.AddModelError(string.Empty, updateException.Message); } } } return(View(cSITEM)); }
public ActionResult DeleteConfirmed(string id) { CSITEM cSITEM = db.CSITEMs.Find(MyHtmlHelpers.ConvertByteStrToId(id)); try { db.CSITEMs.Remove(cSITEM); db.SaveChanges(); return(RedirectToAction("Index")); } catch (DbEntityValidationException dbEx) { foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { //string message = string.Format("{0}:{1}", // validationErrors.Entry.Entity.ToString(), // validationError.ErrorMessage); // raise a new exception nesting // the current instance as InnerException ModelState.AddModelError(validationError.PropertyName, validationError.ErrorMessage); } } } catch (DbUpdateException ex) { UpdateException updateException = (UpdateException)ex.InnerException; if (updateException != null) { if (updateException.InnerException != null) { var sqlException = (FirebirdSql.Data.FirebirdClient.FbException)updateException.InnerException; foreach (var error in sqlException.Errors) { if (error.Message != null) { ModelState.AddModelError(string.Empty, error.Message); } } } else { ModelState.AddModelError(string.Empty, updateException.Message); } } else { ModelState.AddModelError(string.Empty, updateException.Message); } } return(View(cSITEM)); }
// GET: CSITEMs/Details/5 public ActionResult Details(string id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } CSITEM cSITEM = db.CSITEMs.Find(MyHtmlHelpers.ConvertByteStrToId(id)); if (cSITEM == null) { return(HttpNotFound()); } return(View(cSITEM)); }
public string CheckRate(string vdate, string itemtype) { DateTime myDate = DateTime.Parse(vdate); CSITEM cSITEM = db.CSITEMs.Find(itemtype); string taxcode = "SSTN01"; decimal taxrate = 0; if (cSITEM != null) { taxrate = cSITEM.GSTRATE ?? 0; taxcode = db.CSTAXTYPEs.Where(x => x.TAXRATE == taxrate && x.EFFECTIVE_START <= myDate && x.EFFECTIVE_END >= myDate).Select(y => y.TAXCODE).FirstOrDefault() ?? taxcode; } return(taxcode + "|" + taxrate.ToString("N2")); }
public ActionResult Post(string[] cono) { CSPRFsController CSPRFControl = new CSPRFsController(); try { SALASTNO serialTbl0 = db.SALASTNOes.Find("CSBILL"); if ((serialTbl0 != null)) { foreach (string item in cono) { var conofee = item.Split('|'); var myCono = conofee[0]; var myFee = conofee[1]; string lastCono = ""; CSCOMSTR cSCOMSTR = null; myCono = myCono.Trim(); myFee = myFee.Trim(); var csFees = db.CSCOFEEs.Where(x => x.CONO == myCono && x.FEETYPE == myFee); decimal taxrate = 0; string taxcode = "SSTN01"; CSPRF cSPRF = null; int prfId = 0; foreach (var feerec in csFees) { CSITEM cSITEM = db.CSITEMs.Find(feerec.FEETYPE); if (cSITEM != null) { taxrate = cSITEM.GSTRATE ?? 0; } if (lastCono != feerec.CONO) { cSCOMSTR = db.CSCOMSTRs.Find(feerec.CONO); cSCOMSTR.SEQNO = cSCOMSTR.SEQNO + 1; cSCOMSTR.STAMP = cSCOMSTR.STAMP; db.Entry(cSCOMSTR).State = EntityState.Modified; } var feedate = feerec.LASTTOUCH; feerec.LASTTOUCH = feedate.AddMonths(feerec.FEEMTH); feerec.STAMP = feerec.STAMP + 1; db.Entry(feerec).State = EntityState.Modified; SALASTNO serialTbl = db.SALASTNOes.Find("CSPRF"); if ((serialTbl != null) && (lastCono != feerec.CONO)) { string prefix = serialTbl.LASTPFIX; int MaxNo = serialTbl.LASTNOMAX; bool AutoGen = serialTbl.AUTOGEN == "Y"; serialTbl.LASTNO = serialTbl.LASTNO + 1; cSPRF = new CSPRF(); cSPRF.STAMP = 0; cSPRF.VDATE = feedate; cSPRF.DUEDATE = feedate; cSPRF.DUEDAYS = 0; cSPRF.SEQNO = cSCOMSTR.SEQNO; cSPRF.CONO = feerec.CONO; short?coid = db.CSCOADDRs.Where(x => x.CONO == feerec.CONO && x.MAILADDR == "Y").Select(y => y.ADDRID).FirstOrDefault(); if (coid == 0) { coid = db.CSCOADDRs.Where(x => x.CONO == feerec.CONO && x.MAILADDR == "N").Select(y => y.ADDRID).FirstOrDefault(); } if (coid != 0) { cSPRF.COADDRID = coid; } cSPRF.ATTN = "The Board of Directors"; cSPRF.PRFNO = serialTbl.LASTNO.ToString("D10"); cSPRF.INVALLOC = "N"; serialTbl.STAMP = serialTbl.STAMP + 1; db.Entry(serialTbl).State = EntityState.Modified; db.CSPRFs.Add(cSPRF); prfId = 0; } prfId++; serialTbl0.LASTNO = serialTbl0.LASTNO + 1; string prefix0 = serialTbl0.LASTPFIX; int MaxNo0 = serialTbl0.LASTNOMAX; bool AutoGen0 = serialTbl0.AUTOGEN == "Y"; CSBILL cSBILL = new WebApplication1.CSBILL(); cSBILL.STAMP = 0; cSBILL.CONO = feerec.CONO; cSBILL.PRFALLOC = "Y"; cSBILL.SYSGEN = "Y"; cSBILL.PRFNO = cSPRF.PRFNO; cSBILL.PRFID = prfId; cSBILL.BILLNO = serialTbl0.LASTNO.ToString("D10");; cSBILL.ENTDATE = feedate; cSBILL.CASECODE = feerec.FEECODE; cSBILL.ITEMTYPE = feerec.FEETYPE; cSBILL.ITEMDESC = feerec.CSCASE.CASEDESC; cSBILL.ITEMSPEC = "- From " + feedate.ToString("dd/MM/yyyy") + " To " + feedate.AddMonths(feerec.FEEMTH).ToString("dd/MM/yyyy"); cSBILL.ITEMAMT = feerec.FEEAMT; cSBILL.TAXAMT = taxrate * feerec.FEEAMT / 100; cSBILL.NETAMT = cSBILL.ITEMAMT + cSBILL.TAXAMT; cSBILL.ITEMAMT1 = feerec.FEEAMT; cSBILL.TAXAMT1 = taxrate * feerec.FEEAMT / 100; cSBILL.NETAMT1 = cSBILL.ITEMAMT1 + cSBILL.TAXAMT1; cSBILL.ITEMAMT2 = 0; cSBILL.TAXAMT2 = 0; cSBILL.NETAMT2 = 0; cSBILL.TAXRATE = taxrate; taxcode = db.CSTAXTYPEs.Where(x => x.TAXRATE == taxrate && x.EFFECTIVE_START <= cSBILL.ENTDATE && x.EFFECTIVE_END >= cSBILL.ENTDATE).Select(y => y.TAXCODE).FirstOrDefault() ?? taxcode; cSBILL.TAXCODE = taxcode; db.CSBILLs.Add(cSBILL); CSTRANM cSTRANM = new CSTRANM(); cSTRANM.STAMP = 0; CSPRFControl.BD_UpdateCSTRANM(cSPRF, cSBILL, cSTRANM); db.CSTRANMs.Add(cSTRANM); lastCono = feerec.CONO; } //db.Entry(serialTbl0).State = EntityState.Modified; //db.SaveChanges(); } db.Entry(serialTbl0).State = EntityState.Modified; db.SaveChanges(); } } catch (DbEntityValidationException dbEx) { foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { //string message = string.Format("{0}:{1}", // validationErrors.Entry.Entity.ToString(), // validationError.ErrorMessage); // raise a new exception nesting // the current instance as InnerException ModelState.AddModelError(validationError.PropertyName, validationError.ErrorMessage); } } } catch (DbUpdateException ex) { UpdateException updateException = (UpdateException)ex.InnerException; if (updateException != null) { if (updateException.InnerException != null) { var sqlException = (FirebirdSql.Data.FirebirdClient.FbException)updateException.InnerException; foreach (var error in sqlException.Errors) { if (error.Message != null) { ModelState.AddModelError(string.Empty, error.Message); } } } else { ModelState.AddModelError(string.Empty, updateException.Message); } } else { ModelState.AddModelError(string.Empty, updateException.Message); } } catch (Exception e) { ModelState.AddModelError(string.Empty, e.Message); } finally { CSPRFControl.Dispose(); } return(new HttpStatusCodeResult(HttpStatusCode.OK)); }