Beispiel #1
0
        public ActionResult Edit(string id, string value)
        {
            var iid = id.Substring(1).ToInt();
            var c   = CurrentDatabase.Contributions.SingleOrDefault(co => co.ContributionId == iid);

            if (c != null)
            {
                var m = new PostBundleModel(CurrentDatabase);
                switch (id.Substring(0, 1))
                {
                case "a":
                    c.ContributionAmount = value.ToDecimal();
                    CurrentDatabase.SubmitChanges();
                    return(Json(m.ContributionRowData(this, iid)));

                case "f":
                    c.FundId = value.ToInt();
                    CurrentDatabase.SubmitChanges();
                    return(Content($"{c.ContributionFund.FundId} - {c.ContributionFund.FundName}"));

                case "k":
                    c.CheckNo = value;
                    CurrentDatabase.SubmitChanges();
                    return(Json(m.ContributionRowData(this, iid)));
                }
            }
            return(new EmptyResult());
        }
Beispiel #2
0
        public ActionResult Index(int id)
        {
            var m = new PostBundleModel(CurrentDatabase, id);

            if (m.Bundle == null)
            {
                return(Message("no bundle " + m.id));
            }

            if (m.Bundle.BundleStatusId == BundleStatusCode.Closed)
            {
                return(Message("Bundle Closed"));
            }

            if (User.IsInRole("FinanceDataEntry") && m.Bundle.BundleStatusId != BundleStatusCode.OpenForDataEntry)
            {
                return(Message("Bundle is no longer open for data entry"));
            }

            m.fund = m.Bundle.FundId ?? 1;
            ViewData[SHOW_CHECK_IMAGES] =
                Util.ShowCheckImages    =
                    (Request["images"] == "1" || Util.ShowCheckImages);
            return(View(m));
        }
Beispiel #3
0
        public ActionResult Names2(string term)
        {
            var m = new PostBundleModel(CurrentDatabase);
            var n = m.Names2(term, 30).ToArray();

            return(Json(n, JsonRequestBehavior.AllowGet));
        }
        public ActionResult BatchUpload(DateTime date, HttpPostedFileBase file, int?fundid, string text)
        {
            string s;

            if (file != null)
            {
                byte[] buffer = new byte[file.ContentLength];
                file.InputStream.Read(buffer, 0, file.ContentLength);
                System.Text.Encoding enc = null;
                if (buffer[0] == 0xFF && buffer[1] == 0xFE)
                {
                    enc = new System.Text.UnicodeEncoding();
                    s   = enc.GetString(buffer, 2, buffer.Length - 2);
                }
                else
                {
                    enc = new System.Text.ASCIIEncoding();
                    s   = enc.GetString(buffer);
                }
            }
            else
            {
                s = text;
            }
            var id = PostBundleModel.BatchProcess(s, date, fundid);

            if (id.HasValue)
            {
                return(Redirect("/PostBundle/Index/" + id));
            }
            return(RedirectToAction("Batch"));
        }
Beispiel #5
0
        public ActionResult Index(int id)
        {
            var m = new PostBundleModel(id);

            if (m.Bundle == null)
            {
                return(Message("no bundle " + m.id));
            }

            if (m.Bundle.BundleStatusId == BundleStatusCode.Closed)
            {
                return(Message("Bundle Closed"));
            }

            if (User.IsInRole("FinanceDataEntry") && m.Bundle.BundleStatusId != BundleStatusCode.OpenForDataEntry)
            {
                return(Message("Bundle is no longer open for data entry"));
            }

            m.fund = m.Bundle.FundId ?? 1;
            if (Request["images"] != null)
            {
                ViewData[SHOW_CHECK_IMAGES] = Request["images"] == "1";
            }
            else
            {
                ViewData[SHOW_CHECK_IMAGES] = Session[SHOW_CHECK_IMAGES];
            }
            Session[SHOW_CHECK_IMAGES] = ViewData[SHOW_CHECK_IMAGES];
            return(View(m));
        }
Beispiel #6
0
        public ActionResult Index(int id)
        {
            var m = new PostBundleModel(id);

            if (m.bundle == null)
            {
                return(Content("no bundle " + m.id));
            }
            if (m.bundle.BundleStatusId == BundleStatusCode.Closed)
            {
                return(Content("bundle closed"));
            }
            m.fund = m.bundle.FundId ?? 1;
            return(View(m));
        }
        public ActionResult Index(int id)
        {
            var m = new PostBundleModel(id);

            if (m.Bundle == null)
            {
                return(Message("no bundle " + m.id));
            }
            if (m.Bundle.BundleStatusId == BundleStatusCode.Closed)
            {
                return(Message("Bundle Closed"));
            }
            if (User.IsInRole("FinanceDataEntry") && m.Bundle.BundleStatusId != BundleStatusCode.OpenForDataEntry)
            {
                return(Message("Bundle is no longer open for data entry"));
            }
            m.fund = m.Bundle.FundId ?? 1;
            return(View(m));
        }
        public ActionResult Edit(string id, string value)
        {
            var iid = id.Substring(1).ToInt();
            var c   = DbUtil.Db.Contributions.SingleOrDefault(co => co.ContributionId == iid);

            if (c != null)
            {
                switch (id.Substring(0, 1))
                {
                case "a":
                    c.ContributionAmount = value.ToDecimal();
                    DbUtil.Db.SubmitChanges();
                    var m = new PostBundleModel();
                    return(Json(m.ContributionRowData(this, iid)));

                case "f":
                    c.FundId = value.ToInt();
                    DbUtil.Db.SubmitChanges();
                    return(Content("{0} - {1}".Fmt(c.ContributionFund.FundId, c.ContributionFund.FundName)));
                }
            }
            return(new EmptyResult());
        }
Beispiel #9
0
 public ActionResult PostRow(PostBundleModel m)
 {
     return(Json(m.PostContribution(this)));
 }
Beispiel #10
0
        public ActionResult GetNamePid(PostBundleModel m)
        {
            var o = m.GetNamePidFromId();

            return(Json(o));
        }
Beispiel #11
0
        public ActionResult FundTotals(int id)
        {
            var m = new PostBundleModel(CurrentDatabase, id);

            return(View(m));
        }
Beispiel #12
0
        public ActionResult Names(string term)
        {
            var n = PostBundleModel.Names(term, 10).ToArray();

            return(Json(n, JsonRequestBehavior.AllowGet));
        }
Beispiel #13
0
        public ActionResult FundTotals(int id)
        {
            var m = new PostBundleModel(id);

            return(View(m));
        }
        public JsonResult Funds()
        {
            var m = new PostBundleModel();

            return(Json(m.Funds2()));
        }
Beispiel #15
0
 public ActionResult UpdateRow(PostBundleModel m)
 {
     return(Json(m.UpdateContribution(this)));
 }
Beispiel #16
0
 public ActionResult DeleteRow(PostBundleModel m)
 {
     return(Json(m.DeleteContribution()));
 }
Beispiel #17
0
        public void DeleteContributionWithTagsTest()
        {
            using (var db = CMSDataContext.Create(DatabaseFixture.Host))
            {
                var bundle = new BundleHeader
                {
                    ChurchId           = 1,
                    CreatedBy          = 1,
                    CreatedDate        = DateTime.Now,
                    RecordStatus       = false,
                    BundleStatusId     = BundleStatusCode.OpenForDataEntry,
                    ContributionDate   = DateTime.Now,
                    BundleHeaderTypeId = BundleTypeCode.Online,
                    DepositDate        = null,
                    BundleTotal        = 0,
                    TotalCash          = 0,
                    TotalChecks        = 0
                };

                db.BundleHeaders.InsertOnSubmit(bundle);
                db.SubmitChanges();

                var contribution = new Contribution
                {
                    PeopleId             = 1,
                    ContributionDate     = DateTime.Now,
                    ContributionAmount   = 50,
                    ContributionTypeId   = ContributionTypeCode.Online,
                    ContributionStatusId = ContributionStatusCode.Recorded,
                    CreatedDate          = DateTime.Now,
                    FundId = 1
                };

                db.Contributions.InsertOnSubmit(contribution);
                db.SubmitChanges();

                BundleDetail bd = new BundleDetail
                {
                    BundleHeaderId = bundle.BundleHeaderId,
                    ContributionId = contribution.ContributionId,
                    CreatedBy      = 1,
                    CreatedDate    = DateTime.Now
                };
                db.BundleDetails.InsertOnSubmit(bd);
                bundle.BundleDetails.Add(bd);

                var tag = new ContributionTag
                {
                    ContributionId = contribution.ContributionId,
                    TagName        = "Tag Test"
                };

                db.ContributionTags.InsertOnSubmit(tag);
                db.SubmitChanges();

                var model = new PostBundleModel(db, bundle.BundleHeaderId);
                model.editid = contribution.ContributionId;
                model.DeleteContribution();

                db.ContributionTags.SingleOrDefault(t => t.ContributionId == contribution.ContributionId).ShouldBeNull();
                db.Contributions.SingleOrDefault(c => c.ContributionId == contribution.ContributionId).ShouldBeNull();

                // cleanup
                db.BundleDetails.DeleteOnSubmit(bd);
                db.BundleHeaders.DeleteOnSubmit(bundle);
                db.SubmitChanges();
            }
        }