Example #1
0
        /// <summary>
        /// 获取结算申请信息
        /// </summary>
        static public Object GetSettlementModel()
        {
            string result = string.Empty;

            try
            {
                int orderRebateSettlementApplyId = DNTRequest.GetInt("OrderRebateSettlementApplyId", 0);
                if (orderRebateSettlementApplyId == 0)
                {
                    result = DNTRequest.GetResultJson(false, "获取结算申请信息失败,请稍后再试", null);
                }
                OrderRebateSettlementApplyBLL op    = new OrderRebateSettlementApplyBLL();
                OrderRebateSettlementApply    model = new OrderRebateSettlementApply();
                if (orderRebateSettlementApplyId != 0)
                {
                    model = op.GetModel(orderRebateSettlementApplyId);
                }
                result = DNTRequest.GetResultJson(true, "success", model);
            }
            catch (Exception ex)
            {
                result = DNTRequest.GetResultJson(false, "获取结算申请信息异常,请稍后再试", null);
                ExceptionLogBLL.WriteExceptionLogToDB(ex.ToString());
            }
            return(result);
        }
Example #2
0
        /// <summary>
        /// 确认结算
        /// </summary>
        /// <returns></returns>
        static public Object ConfirmSettlement()
        {
            string result = string.Empty;

            using (TransactionScope ts = new TransactionScope())
            {
                try
                {
                    string orderRebateSettlementApplyId = DNTRequest.GetString("OrderRebateSettlementApplyId");
                    if (string.IsNullOrEmpty(orderRebateSettlementApplyId))
                    {
                        return(DNTRequest.GetResultJson(false, "请先选择确认结算的商户", null));
                    }
                    if (!string.IsNullOrEmpty(orderRebateSettlementApplyId))
                    {
                        OrderRebateSettlementApplyBLL opOrderRebateSettlementApply    = new OrderRebateSettlementApplyBLL();
                        OrderRebateSettlementApply    modelOrderRebateSettlementApply = new OrderRebateSettlementApply();

                        //更新结算申请表结算状态为已结算和更新订单表结算状态为已结算
                        int res01 = 0;
                        int res02 = 0;
                        opOrderRebateSettlementApply.ConfirmSettlement(orderRebateSettlementApplyId, ComPage.CurrentAdmin.UserID, ref res01, ref res02);

                        if (res01 > 0 && res02 > 0)
                        {
                            ts.Complete();
                            result = DNTRequest.GetResultJson(true, "确认结算成功", null);
                        }
                        else
                        {
                            ts.Dispose();
                            result = DNTRequest.GetResultJson(false, "确认结算失败,请稍后再试", null);
                        }
                    }
                }
                catch (Exception ex)
                {
                    ts.Dispose();
                    result = DNTRequest.GetResultJson(false, "确认结算异常,请稍后再试", null);
                    ExceptionLogBLL.WriteExceptionLogToDB("确认结算异常," + ex.ToString());
                }
            }
            return(result);
        }
Example #3
0
        /// <summary>
        /// 申请结算提交
        /// </summary>
        /// <returns></returns>
        static public Object ApplySettlement()
        {
            string result = string.Empty;

            using (TransactionScope ts = new TransactionScope())
            {
                try
                {
                    string userIdAndDepartmentId = DNTRequest.GetString("userIdAndDepartmentId");
                    if (string.IsNullOrEmpty(userIdAndDepartmentId))
                    {
                        return(DNTRequest.GetResultJson(false, "请先选择需要结算的商户", null));
                    }
                    int userId       = 0;
                    int departmentId = 0;
                    if (!string.IsNullOrEmpty(userIdAndDepartmentId))
                    {
                        string[] userIdAndDepartmentIdList = userIdAndDepartmentId.Split(new char[] { ',' });
                        userId       = ComPage.SafeToInt(userIdAndDepartmentIdList[0]);
                        departmentId = ComPage.SafeToInt(userIdAndDepartmentIdList[1]);
                    }
                    if (userId == 0)
                    {
                        return(DNTRequest.GetResultJson(false, "请先选择需要结算的商户", null));
                    }

                    //订单返利结算申请表主键
                    int orderRebateSettlementApplyId = 0;
                    int res01 = 0;
                    int res02 = 0;

                    #region 订单返利结算申请信息入库
                    string objOrderRebateSettlementApply = DNTRequest.GetString("modelOrderRebateSettlementApply");
                    OrderRebateSettlementApply postOrderRebateSettlementApply = JsonConvert.DeserializeObject <OrderRebateSettlementApply>(objOrderRebateSettlementApply);

                    OrderRebateSettlementApplyBLL opOrderRebateSettlementApply    = new OrderRebateSettlementApplyBLL();
                    OrderRebateSettlementApply    modelOrderRebateSettlementApply = new OrderRebateSettlementApply();
                    modelOrderRebateSettlementApply.UserId           = userId;
                    modelOrderRebateSettlementApply.DepartmentId     = departmentId;
                    modelOrderRebateSettlementApply.StartDate        = postOrderRebateSettlementApply.StartDate;
                    modelOrderRebateSettlementApply.EndDate          = postOrderRebateSettlementApply.EndDate;
                    modelOrderRebateSettlementApply.ApplyMoney       = postOrderRebateSettlementApply.ApplyMoney;
                    modelOrderRebateSettlementApply.ActualMoney      = postOrderRebateSettlementApply.ActualMoney;
                    modelOrderRebateSettlementApply.ApplyStatus      = 0;
                    modelOrderRebateSettlementApply.SettlementMethod = null;
                    modelOrderRebateSettlementApply.SalesPercentage  = 0;
                    modelOrderRebateSettlementApply.PaymentMethod    = postOrderRebateSettlementApply.PaymentMethod;
                    modelOrderRebateSettlementApply.OpeningBank      = postOrderRebateSettlementApply.OpeningBank;
                    modelOrderRebateSettlementApply.CardHolder       = postOrderRebateSettlementApply.CardHolder;
                    modelOrderRebateSettlementApply.CardNumber       = postOrderRebateSettlementApply.CardNumber;
                    modelOrderRebateSettlementApply.Remark           = postOrderRebateSettlementApply.Remark;
                    modelOrderRebateSettlementApply.CreateId         = ComPage.CurrentAdmin.UserID;
                    modelOrderRebateSettlementApply.CreateDate       = DateTime.Now;
                    modelOrderRebateSettlementApply.EditId           = null;
                    modelOrderRebateSettlementApply.EditDate         = null;
                    modelOrderRebateSettlementApply.IsDeleted        = 0;

                    orderRebateSettlementApplyId = opOrderRebateSettlementApply.Add(modelOrderRebateSettlementApply);
                    #endregion

                    #region 结算申请详情信息入库和修改订单返利结算申请表的结算状态为已申请
                    if (orderRebateSettlementApplyId > 0)
                    {
                        #region 结算申请详情信息入库和修改订单返利结算申请表的结算状态为已申请

                        StringBuilder where = new StringBuilder();
                        where.Append("b.ProductId=0");
                        #region 获取结算申请列表查询条件
                        string UserId = DNTRequest.GetString("UserId");
                        if (string.IsNullOrEmpty(UserId))
                        {
                            UserId = JsonRequest.GetJsonKeyVal(jsonText, "UserId");
                        }
                        if (!string.IsNullOrEmpty(UserId))
                        {
                            where.AppendFormat(" and a.UserId={0}", UserId);
                        }

                        string CompanyId = DNTRequest.GetString("CompanyId");
                        if (string.IsNullOrEmpty(CompanyId))
                        {
                            CompanyId = JsonRequest.GetJsonKeyVal(jsonText, "CompanyId");
                        }
                        if (!string.IsNullOrEmpty(CompanyId))
                        {
                            where.AppendFormat(" and a.CompanyId={0}", CompanyId);
                        }

                        string StartDate = DNTRequest.GetString("StartDate");
                        if (string.IsNullOrEmpty(StartDate))
                        {
                            StartDate = JsonRequest.GetJsonKeyVal(jsonText, "StartDate");
                        }

                        string EndDate = DNTRequest.GetString("EndDate");
                        if (string.IsNullOrEmpty(EndDate))
                        {
                            EndDate = JsonRequest.GetJsonKeyVal(jsonText, "EndDate");
                        }

                        if (!string.IsNullOrEmpty(StartDate) && !string.IsNullOrEmpty(EndDate))
                        {
                            where.AppendFormat(" and a.CreateDate between '{0} 00:00:00' and '{1} 23:59:59'", StartDate, EndDate);
                        }
                        else if (string.IsNullOrEmpty(StartDate) && !string.IsNullOrEmpty(EndDate))
                        {
                            where.AppendFormat(" and a.CreateDate<='{0} 23:59:59'", EndDate);
                        }
                        else if (!string.IsNullOrEmpty(StartDate) && string.IsNullOrEmpty(EndDate))
                        {
                            where.AppendFormat(" and a.CreateDate >= '{0} 00:00:00'", StartDate);
                        }

                        #endregion

                        where.Append(" and a.IsDeleted=0 and a.PayStatus=1 and a.IsSettled=0 and a.IsCancel=0");
                        OrderRebateBLL op = new OrderRebateBLL();
                        op.ApplySettlement(orderRebateSettlementApplyId, ComPage.CurrentAdmin.UserID, where.ToString(), ref res01, ref res02);

                        #endregion
                    }
                    #endregion
                    if (orderRebateSettlementApplyId > 0 && res01 > 0 && res02 > 0)
                    {
                        ts.Complete();
                        result = DNTRequest.GetResultJson(true, "申请结算成功", null);
                    }
                    else
                    {
                        ts.Dispose();
                        result = DNTRequest.GetResultJson(false, "申请结算失败,请稍后再试", null);
                    }
                }
                catch (Exception ex)
                {
                    ts.Dispose();
                    result = DNTRequest.GetResultJson(false, "申请结算异常,请稍后再试", null);
                    ExceptionLogBLL.WriteExceptionLogToDB(ex.ToString());
                }
            }
            return(result);
        }