コード例 #1
0
ファイル: CSJOBSTsController.cs プロジェクト: sfaai/asi
        // GET: CSJOBSTs/Create
        public ActionResult Create(string id, int row)
        {
            string sid = MyHtmlHelpers.ConvertByteStrToId(id);

            CSJOBST lastRec = db.CSJOBSTs.Where(x => x.JOBNO == sid && x.CASENO == row).OrderByDescending(x => x.INIDX).FirstOrDefault();

            CSJOBST cSJOBST = new CSJOBST();

            cSJOBST.JOBNO  = sid;
            cSJOBST.CASENO = row;
            if (lastRec == null)
            {
                cSJOBST.STAGEFR = "New";
            }
            else
            {
                cSJOBST.STAGEFR = lastRec.STAGETO;
            }
            cSJOBST.INDATE = DateTime.Today;
            cSJOBST.INTIME = DateTime.Now.ToString("HH:mm:ss");
            cSJOBST.STAMP  = 0;

            ViewBag.SENDMODE = GetSendModeList();
            ViewBag.STAGETO  = new SelectList(db.CSSTGs.OrderBy(x => x.STAGESEQ), "STAGE", "STAGE");
            ViewBag.Title    = "Create Job Case Status ";
            return(View("Edit", cSJOBST));
        }
コード例 #2
0
ファイル: CSJOBSTsController.cs プロジェクト: sfaai/asi
        // GET: CSJOBSTs/Delete/5
        public ActionResult Delete(string id, int row, DateTime indate, string intime)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            CSJOBST cSJOBST = db.CSJOBSTs.Find(MyHtmlHelpers.ConvertByteStrToId(id), row, indate, intime);

            if (cSJOBST == null)
            {
                return(HttpNotFound());
            }
            ViewBag.SENDMODE = GetSendModeList();
            ViewBag.STAGETO  = new SelectList(db.CSSTGs.OrderBy(x => x.STAGESEQ), "STAGE", "STAGE");
            ViewBag.Title    = "Delete Job Case Status ";
            return(View("Edit", cSJOBST));
        }
コード例 #3
0
ファイル: CSJOBSTsController.cs プロジェクト: sfaai/asi
        public ActionResult DeleteConfirmed(string id, int row, DateTime indate, string intime)
        {
            CSJOBST cSJOBST = db.CSJOBSTs.Find(MyHtmlHelpers.ConvertByteStrToId(id), row, indate, intime);
            var     histRec = db.CSJOBSTs.Where(x => x.JOBNO == cSJOBST.JOBNO && x.CASENO == cSJOBST.CASENO).OrderByDescending(x => x.INIDX);

            if (histRec.Count() == 1)
            {
                ModelState.AddModelError(String.Empty, "Cannot Remove system generated record");
            }


            CSJOBST lastRec = db.CSJOBSTs.Where(x => x.JOBNO == cSJOBST.JOBNO && x.CASENO == cSJOBST.CASENO).OrderByDescending(x => x.INIDX).FirstOrDefault();

            if (lastRec.INIDX != cSJOBST.INIDX)
            {
                ModelState.AddModelError(String.Empty, "Only the latest record can be modified");
            }
            if (ModelState.IsValid)
            {
                try
                {
                    db.CSJOBSTs.Remove(cSJOBST);

                    // Change CSJOBD to previous state before delete

                    foreach (CSJOBST item in histRec)
                    {
                        if (item.INIDX != lastRec.INIDX)
                        {
                            lastRec = item; break;
                        }                                                           // get the previous record before last record
                    }
                    CSJOBD cSJOBD = db.CSJOBDs.Find(cSJOBST.JOBNO, cSJOBST.CASENO);
                    cSJOBD.STAGE     = lastRec.STAGETO;
                    cSJOBD.STAGEDATE = lastRec.INDATE;
                    cSJOBD.STAGETIME = lastRec.INTIME;
                    cSJOBD.STAMP     = cSJOBD.STAMP + 1;

                    db.SaveChanges();
                    return(RedirectToAction("Edit", "CSJOBDs", new { id = MyHtmlHelpers.ConvertIdToByteStr(cSJOBST.JOBNO), row = cSJOBST.CASENO, rel = 1 }));
                }
                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);
                    }
                }
            }

            ViewBag.SENDMODE = GetSendModeList();
            ViewBag.STAGETO  = new SelectList(db.CSSTGs.OrderBy(x => x.STAGESEQ), "STAGE", "STAGE");
            ViewBag.Title    = "Delete Job Case Status ";
            return(View("Edit", cSJOBST));
        }
コード例 #4
0
ファイル: CSJOBSTsController.cs プロジェクト: sfaai/asi
        public ActionResult Edit([Bind(Include = "JOBNO,CASENO,STAGEFR,STAGETO,INDATE,INTIME,OUTDATE,SENDMODE,REM,INIDX,STAMP")] CSJOBST cSJOBST)
        {
            CSJOBST lastRec = db.CSJOBSTs.Where(x => x.JOBNO == cSJOBST.JOBNO && x.CASENO == cSJOBST.CASENO).OrderByDescending(x => x.INIDX).FirstOrDefault();

            if (lastRec.INIDX != cSJOBST.INIDX)
            {
                ModelState.AddModelError(String.Empty, "Only the latest record can be modified");
            }
            if (ModelState.IsValid)
            {
                try
                {
                    //Remove original record --> the way the index is designed make it necessary to remove the record and recreate
                    CSJOBST recDel = db.CSJOBSTs.Find(cSJOBST.JOBNO, cSJOBST.CASENO, cSJOBST.INDATE, cSJOBST.INTIME);
                    db.CSJOBSTs.Remove(recDel);

                    cSJOBST.STAMP = cSJOBST.STAMP + 1;
                    db.CSJOBSTs.Add(cSJOBST);

                    CSJOBD cSJOBD = db.CSJOBDs.Find(cSJOBST.JOBNO, cSJOBST.CASENO);
                    cSJOBD.STAGE     = cSJOBST.STAGETO;
                    cSJOBD.STAGEDATE = cSJOBST.INDATE;
                    cSJOBD.STAGETIME = cSJOBST.INTIME;
                    cSJOBD.STAMP     = cSJOBD.STAMP + 1;

                    db.Entry(cSJOBD).State = EntityState.Modified;

                    db.SaveChanges();
                    return(RedirectToAction("Edit", "CSJOBDs", new { id = MyHtmlHelpers.ConvertIdToByteStr(cSJOBST.JOBNO), row = cSJOBST.CASENO, rel = 1 }));
                }
                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); }
            }
            ViewBag.SENDMODE = GetSendModeList();
            ViewBag.STAGETO  = new SelectList(db.CSSTGs.OrderBy(x => x.STAGESEQ), "STAGE", "STAGE");
            ViewBag.Title    = "Edit Job Case Status ";
            return(View("Edit", cSJOBST));
        }
コード例 #5
0
ファイル: CSJOBSTsController.cs プロジェクト: sfaai/asi
        public ActionResult Create([Bind(Include = "JOBNO,CASENO,STAGEFR,STAGETO,INDATE,INTIME,OUTDATE,SENDMODE,REM,INIDX,STAMP")] CSJOBST cSJOBST)
        {
            if (ModelState.IsValid)
            {
                CSJOBD cSJOBD = db.CSJOBDs.Find(cSJOBST.JOBNO, cSJOBST.CASENO);
                cSJOBD.STAGE     = cSJOBST.STAGETO;
                cSJOBD.STAGEDATE = cSJOBST.INDATE;
                cSJOBD.STAGETIME = cSJOBST.INTIME;
                cSJOBD.STAMP     = cSJOBD.STAMP + 1;

                CSJOBST lastRec = db.CSJOBSTs.Where(x => x.JOBNO == cSJOBST.JOBNO && x.CASENO == cSJOBST.CASENO).OrderByDescending(x => x.INIDX).FirstOrDefault();
                if (lastRec == null)
                {
                    cSJOBST.STAGEFR = "New";
                }
                else
                {
                    cSJOBST.STAGEFR = lastRec.STAGETO;
                    lastRec.OUTDATE = cSJOBST.INDATE;
                }

                cSJOBST.STAMP = 0;
                cSJOBST.INIDX = cSJOBST.INDATE.ToString("yyyy/MM/dd") + " " + cSJOBST.INTIME;

                try
                {
                    db.CSJOBSTs.Add(cSJOBST);
                    db.Entry(cSJOBD).State = EntityState.Modified;
                    if (lastRec != null)
                    {
                        db.Entry(lastRec).State = EntityState.Modified;
                    }

                    db.SaveChanges();
                    return(RedirectToAction("Edit", "CSJOBDs", new { id = MyHtmlHelpers.ConvertIdToByteStr(cSJOBST.JOBNO), row = cSJOBST.CASENO, rel = 1 }));
                }
                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);
                    }
                }
            }
            ViewBag.STAGETO = new SelectList(db.CSSTGs.OrderBy(x => x.STAGESEQ), "STAGE", "STAGE");
            ViewBag.Title   = "Edit Job Case Status ";
            return(View("Edit", cSJOBST));
        }
コード例 #6
0
ファイル: CSJOBMsController.cs プロジェクト: sfaai/asi
        public ActionResult PostConfirmed(string id)
        {
            CSJOBM cSJOBM = db.CSJOBMs.Find(MyHtmlHelpers.ConvertByteStrToId(id));

            // Make sure do not remove posted jobs
            if ((cSJOBM.JOBPOST == "Y") || (cSJOBM.CSJOBDs.Count() == 0) || (cSJOBM.COMPLETE == "Y"))
            {
                ModelState.AddModelError(string.Empty, "Cannot repost or post incomplete or completed Jobs");
            }
            else
            {
                try
                {
                    // Remove all details

                    cSJOBM.JOBPOST = "Y";
                    cSJOBM.STAMP   = cSJOBM.STAMP + 1;


                    var lastRec = db.CSJOBSTFs.Where(x => x.JOBNO == cSJOBM.JOBNO).OrderByDescending(y => y.ROWNO).FirstOrDefault();
                    // Update CSJOBSTF
                    CSJOBSTF cSJOBSTF = new CSJOBSTF();
                    cSJOBSTF.JOBNO     = cSJOBM.JOBNO;
                    cSJOBSTF.SDATE     = DateTime.Today;
                    cSJOBSTF.EDATE     = new DateTime(3000, 1, 1);
                    cSJOBSTF.STAFFCODE = cSJOBM.JOBSTAFF;
                    cSJOBSTF.STAMP     = 0;
                    if (lastRec == null)
                    {
                        cSJOBSTF.ROWNO = 1;
                    }
                    else
                    {
                        cSJOBSTF.ROWNO = lastRec.ROWNO + 1;
                    }
                    db.CSJOBSTFs.Add(cSJOBSTF);

                    // Update CSJOBD
                    foreach (CSJOBD item in cSJOBM.CSJOBDs)
                    {
                        // Update CSJOBST
                        CSJOBST cSJOBST = new CSJOBST();
                        cSJOBST.JOBNO   = item.JOBNO;
                        cSJOBST.CASENO  = item.CASENO;
                        cSJOBST.STAMP   = 0;
                        cSJOBST.STAGEFR = "Pending";
                        cSJOBST.STAGETO = "New";
                        cSJOBST.INDATE  = DateTime.Today;
                        cSJOBST.INTIME  = DateTime.Now.ToString("HH:mm:ss");
                        cSJOBST.OUTDATE = new DateTime(3000, 1, 1);
                        cSJOBST.INIDX   = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss");
                        db.CSJOBSTs.Add(cSJOBST);


                        item.STAGE           = "New";
                        item.STAGEDATE       = DateTime.Today;
                        item.STAGETIME       = cSJOBST.INTIME;
                        item.STAMP           = item.STAMP + 1;
                        db.Entry(item).State = EntityState.Modified;
                    }

                    db.SaveChanges();

                    int page = (int)Session["CSJOBMPage"];
                    return(RedirectToAction("Index", new { page = page }));
                }
                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); }
            }
            ViewBag.CONO     = new SelectList(db.CSCOMSTRs.Select(x => new { CONO = x.CONO, CONAME = x.CONAME + "  (" + x.CONO + ")" }).OrderBy(y => y.CONAME), "CONO", "CONAME", cSJOBM.CONO);
            ViewBag.JOBSTAFF = new SelectList(db.HKSTAFFs, "STAFFCODE", "STAFFDESC", cSJOBM.JOBSTAFF);

            ViewBag.Title = "Post Job Taking ";
            return(View("Edit", cSJOBM));
        }