Exemple #1
0
        public ActionResult VistingFeedback(VisitingConfirm obj)
        {
            var result = claimFormService.VisitingFeedback(obj) ? SuccessTip("填写反馈成功!") : ErrorTip("填写反馈失败,请重新尝试!");

            return(Json(result));
        }
        public bool VisitingFeedback(VisitingConfirm obj)
        {
            var claimForm = fsql.Select <ClaimFormModel>()
                            .Where(i => i.CreditCompanyId == obj.CreditCompanyId && i.EndSign == 0)
                            .Where(i => i.CreditCompany.Status == 2 || i.CreditCompany.Status == 3)
                            .First();

            if (claimForm == null)
            {
                return(false);
            }

            claimForm.VisitingTime     = DateTime.Now;
            claimForm.VisitingFeedback = obj.VisitingFeedback;
            claimForm.Remarks          = obj.Remarks;
            claimForm.EndSign          = 1;

            try
            {
                fsql.Transaction(() => {
                    var count = fsql.Update <ClaimFormModel>()
                                .SetSource(claimForm)
                                .ExecuteAffrows();

                    if (count == 0)
                    {
                        throw new Exception();
                    }
                    else
                    {
                        var updateCount = fsql.Update <CreditCompanyModel>()
                                          .Set(i => i.Status, obj.Confirm)
                                          .Where(i => i.Id == obj.CreditCompanyId)
                                          .ExecuteAffrows();

                        if (updateCount == 0)
                        {
                            throw new Exception();
                        }

                        if (obj.Confirm == 3)
                        {
                            var item              = claimForm;
                            item.ClaimTime        = DateTime.Now;
                            item.VisitingTime     = null;
                            item.VisitingFeedback = 0;
                            item.Remarks          = null;
                            item.ContinueItem     = 1;
                            item.EndSign          = 0;

                            var insertCount = fsql.Insert(item).ExecuteAffrows();

                            if (insertCount == 0)
                            {
                                throw new Exception();
                            }
                        }
                    }
                });

                return(true);
            }
            catch (Exception e)
            {
                return(false);
            }
        }