示例#1
0
        /// <summary>
        /// 本息到账
        /// </summary>
        /// <param name="msg"></param>
        private static void ReturnPrinInte(ReturnPrinInteRespMsg msg)
        {
            try
            {
                //检查请求处理结果
                if (msg.CheckResult())
                {
                    //检查签名
                    if (msg.CheckSignature())
                    {
                        //异步返回才执行,内网测试使用同步
#if DEBUG
                        if (msg.Sync)
                        {
#endif
#if !DEBUG
                        if (!msg.Sync)
                        {
#endif
                            Agp2pDataContext context = new Agp2pDataContext();
                            var req = context.li_pay_request_log.SingleOrDefault(r => r.id == msg.RequestId);
                            if (req != null)
                            {
                                var dic = Utils.UrlParamToData(req.remarks);
                                //活期项目不需要执行还款计划
                                if (!Utils.StrToBool(dic["isHuoqi"], false))
                                {
                                    if (!Utils.StrToBool(dic["isEarly"], false))
                                        context.ExecuteRepaymentTask(Utils.StrToInt(dic["repayTaskId"], 0));
                                    else
                                        context.EarlierRepayAll(msg.ProjectCode, ConfigLoader.loadCostConfig().earlier_pay);
                                }
                            }
                            else
                                msg.Remarks = "没有找到对应的还款请求,请求编号为:" + msg.RequestId;
                            msg.HasHandle = true;
                        }
                    }
                }
            }
            catch (ChangeConflictException)
            {
                MessageBus.Main.Publish(msg);
            }
            catch (Exception ex)
            {
                msg.Remarks = "内部错误:" + ex.Message;
            }
        }
 protected void btnEarlierRepay_OnClick(object sender, EventArgs e)
 {
     try
     {
         int projectId = Convert.ToInt32(((Button)sender).CommandArgument);
         var pro       = context.EarlierRepayAll(projectId, (decimal)Costconfig.earlier_pay);
         AddAdminLog(DTEnums.ActionEnum.Edit.ToString(), "提前还款成功:" + pro.title + " 保留 " + Costconfig.earlier_pay + "% 利润"); //记录日志
         JscriptMsg("提前还款成功:" + pro.title + " 保留 " + Costconfig.earlier_pay + "% 利润",
                    Utils.CombUrlTxt("project_list.aspx", "page={0}&keywords={1}", page.ToString(), txtKeywords.Text), "Success");
     }
     catch (Exception ex)
     {
         JscriptMsg("提前还款失败!" + ex.Message, Utils.CombUrlTxt("project_list.aspx", "page={0}&keywords={1}", page.ToString(), txtKeywords.Text), "Failure");
     }
 }