コード例 #1
0
ファイル: OrderBuss.cs プロジェクト: wenlei456/CPCAR
        public bool upDataOrderPay(DAO.OrderPay o)
        {
            VoucherBus vbl = new VoucherBus();

            string sql    = @"UPDATE [OrderPay] SET PayState='已支付',Bank='支付宝',Remark='" + o.Remark + "' where id=" + o.id + "";
            string sql2   = @"UPDATE [OrderPay] SET PayState='已支付' where RecordState=1 and OrderId='" + o.OrderId + "' and PayType<>0";
            int    result = db.Database.ExecuteSqlCommand(sql);

            if (result > 0)
            {
                log.Info("修改OrderPay 支付宝记录成功");
                DAO.OrderPay op = db.OrderPay.Where(m => m.OrderId == o.OrderId && m.PayType == 1 && m.RecordState == 1).FirstOrDefault();
                if (op != null)
                {
                    vbl.UseVoucher(op.Remark);
                }
                //  vbl.UseVoucher();
                int result2 = db.Database.ExecuteSqlCommand(sql2);//更改其他方式付款状态--组合付款
                log.Info("修改OrderPay特殊支付记录:" + result2);
                return(true);
            }
            else
            {
                log.Info("修改OrderPay 支付宝记录--失败");
                return(false);
            }
        }
コード例 #2
0
ファイル: MemberController.cs プロジェクト: wenlei456/CPCAR
        public ActionResult Reg(string phone, string phonecode, string fcode)
        {
            //RegMsg RegUserModel model

            MemberBLL bll = new MemberBLL();

            if (!bll.VerPhone(phone))
            {
                return(Json(new { r = false, msg = "手机号已经被注册!" }));
            }
            if (bll.VerRegCode(phone, phonecode))    //验证手机号与手机验证码
            {
                FriendCodeBLL fbll = new FriendCodeBLL();

                DAO.MemberLevel levelModel = new DAO.MemberLevel();
                DAO.MemberBase  m          = new DAO.MemberBase();
                m.LoginName = phone;
                m.PassWord  = Md5Util.PwdMd5(phone.Substring(5));
                m.Mobile    = phone;
                //m.Email = "";
                m.State = 1;
                int upUser = fbll.GetUpUser(fcode);
                m.UpUser   = upUser;  //上级用户
                m.Levels   = 0;
                m.Integral = 0;
                m.Source   = "self";
                m.RegDate  = DateTime.Now;
                DAO.MemberBase u = bll.Reg(m);     //注册
                Session["memberID"] = u.ID;
                VoucherBus vbll = new VoucherBus();
                vbll.RegGiveAVoucher(u.ID);              //给一张注册优惠券
                levelModel = bll.GetLevel(u.ID, upUser); //注册初始化级别
                u.Levels   = levelModel.LevelId;
                u.Integral = levelModel.MinIntegral;
                DAO.MemberBase allu = bll.UpdateUser(u);
                if (allu != null)
                {
                    //给上级积分
                    bll.GiveUpUserInt(allu.ID, upUser);
                }

                return(Json(new { r = true, msg = "注册成功,初始密码为您手机号后四位!" }));
            }
            else
            {
                return(Json(new { r = false, msg = "手机验证码错误" }));
            }
        }
コード例 #3
0
ファイル: MemberController.cs プロジェクト: wenlei456/CPCAR
        public ActionResult RegMember(RegUserModel model)
        {
            if (ModelState.IsValid)
            {
                MemberBLL bll = new MemberBLL();
                if (bll.VerRegCode(model.PhoneNumber, model.PhoneCode))
                {
                    FriendCodeBLL fbll = new FriendCodeBLL();

                    DAO.MemberLevel levelModel = new DAO.MemberLevel();
                    DAO.MemberBase  m          = new DAO.MemberBase();
                    m.LoginName = model.loginName;
                    m.PassWord  = Md5Util.PwdMd5(model.passWord);
                    m.Mobile    = model.PhoneNumber;
                    m.Email     = model.eMail;
                    m.State     = 1;
                    int upUser = fbll.GetUpUser(model.FriendCode);
                    m.UpUser   = upUser;//上级用户
                    m.Levels   = 0;
                    m.Integral = 0;
                    m.Source   = "self";
                    m.RegDate  = DateTime.Now;
                    DAO.MemberBase u = bll.Reg(m);                    //注册
                    Session["memberID"] = u.ID;
                    levelModel          = bll.GetLevel(u.ID, upUser); //注册初始化级别
                    VoucherBus vbll = new VoucherBus();
                    vbll.RegGiveAVoucher(u.ID);                       //给一张注册优惠券
                    u.Levels   = levelModel.LevelId;
                    u.Integral = levelModel.MinIntegral;
                    DAO.MemberBase allu = bll.UpdateUser(u);
                    if (allu != null)
                    {
                        //给上级积分
                        bll.GiveUpUserInt(allu.ID, upUser);
                    }
                    return(RedirectToAction("UserHome"));
                }
                else
                {
                    ViewBag.phoneCodeValid = "手机注册码错误";
                    return(View("RegView", model));
                }
            }
            else
            {
                return(View("RegView", model));
            }
        }
コード例 #4
0
ファイル: OrderBuss.cs プロジェクト: wenlei456/CPCAR
        /// <summary>
        /// 修改库存
        /// </summary>
        /// <param name="oid"></param>
        /// <returns></returns>

        public bool upPartStock(int id, int num)
        {
            VoucherBus vbl = new VoucherBus();

            string sql    = @"UPDATE [PartStock] SET StockNUM=" + num + " where PartID=" + id + "";
            int    result = db.Database.ExecuteSqlCommand(sql);

            if (result > 0)
            {
                log.Info("修改库存记录成功");

                return(true);
            }
            else
            {
                log.Info("修改库存记录--失败");
                return(false);
            }
        }
コード例 #5
0
        public static bool CountFixAssetDepreciation(string ItemID, string PeriodNum,
                                                     ref string getAttestNo, ref int AttestID)
        {
            //获取当前操作用户企业编码
            bool result = false;//执行返回结果

            try
            {
                int       PeriodID  = 0;
                string    CompanyCD = ((UserInfoUtil)SessionUtil.Session["UserInfo"]).CompanyCD;
                DataTable dt        = FixAssetInfoDBHelper.GetAssetInfoByCompanyCD(CompanyCD, PeriodNum);
                if (dt != null && dt.Rows.Count > 0)
                {
                    #region 固定资产计提折旧计算
                    //计算方法
                    string CountMethod = string.Empty;
                    //预计使用年限
                    int EstimateUseYear;
                    //预计净残值率
                    decimal EstiResiValue;
                    //原值
                    decimal OriginalValue;
                    //月折旧率
                    decimal MonthDeprRate;
                    //期末净值
                    decimal EndNetValue;
                    //本期净值
                    decimal CurrentNetValue;
                    //本期减值准备
                    decimal CurrValueRe;
                    //月折旧额
                    decimal MonthDeprPrice = 0;
                    //累计月折旧额
                    decimal CountTotalDeprPrice = 0;

                    ArrayList DeprDetailList = new ArrayList();

                    ArrayList DeprPeriodList = new ArrayList();

                    //计提前固定资产实体数组
                    ArrayList FixDeprAfterList = new ArrayList();

                    //定义固定资产计提明细实体
                    FixAssetDeprDetailModel DeprDetailmodel = null;
                    //资产计提
                    FixAssetPeriodDeprModel DeprPeriodmodel = null;
                    //资产计提前实体
                    FixAssetDeprAfterModel FixDeprAftermodel = null;

                    foreach (DataRow rows in dt.Rows)
                    {
                        //读取期末净值
                        EndNetValue = Convert.ToDecimal(rows["EndNetValue"]);
                        //读取计算方法
                        CountMethod = rows["CountMethod"].ToString();
                        //读取预计净残值率
                        EstiResiValue = Convert.ToDecimal(rows["EstiResiValue"]);
                        //读取原价
                        OriginalValue = Convert.ToDecimal(rows["OriginalValue"]);
                        //读取本期减值准备
                        CurrValueRe = Convert.ToDecimal(rows["CurrValueRe"]);
                        //读取月折旧率
                        MonthDeprRate = Convert.ToDecimal(rows["AmorDeprRate"]);



                        //实例固定资产计提明细实体
                        DeprDetailmodel = new FixAssetDeprDetailModel();
                        #region 固定资产计提明细赋值
                        //给固定资产计提明细赋值
                        DeprDetailmodel.CompanyCD = CompanyCD;
                        DeprDetailmodel.Creator   = ((UserInfoUtil)SessionUtil.Session["UserInfo"]).EmployeeID;
                        //固定资产名称
                        DeprDetailmodel.FixName = rows["FixName"].ToString();
                        //固定资产编号
                        DeprDetailmodel.FixNo = rows["FixNo"].ToString();
                        //资产类别
                        DeprDetailmodel.FixType = Convert.ToInt32(rows["FixType"]);
                        //资产数量
                        DeprDetailmodel.Number = Convert.ToInt32(rows["FixNumber"]);
                        //资产原值
                        DeprDetailmodel.OriginalValue = Convert.ToDecimal(rows["OriginalValue"]);
                        //使用日期
                        DeprDetailmodel.UsedDate = Convert.ToDateTime(rows["UseDate"]);
                        //使用年限
                        DeprDetailmodel.UsedYears = Convert.ToDecimal(rows["UsedYear"]);
                        //预计使用年限
                        DeprDetailmodel.EstimateUse = Convert.ToDecimal(rows["EstimateUse"]);


                        //计算预计净残值
                        decimal Yjcz = OriginalValue * (EstiResiValue / 100);
                        #endregion
                        //判断期末净值大于计净残值则进行折旧处理
                        if (EndNetValue > Yjcz)
                        {
                            //年限平均法
                            if (CountMethod == ConstUtil.ASSETCOUNT_METHOD_NXPJF_CODE)
                            {
                                //读取期初减值准备
                                decimal ReduValueRe = Convert.ToDecimal(rows["ReduValueRe"]);
                                //读取预计使用年限
                                EstimateUseYear = Convert.ToInt32(rows["EstimateUse"]);
                                //MonthDeprPrice = Math.Round(MonthDeprRate * OriginalValue, 2);//计算月折旧额
                                //读取月折旧额
                                MonthDeprPrice = Convert.ToDecimal(rows["AmorDeprM"]);
                                //计算本期期末净值
                                CurrentNetValue = EndNetValue - MonthDeprPrice - CurrValueRe;
                                //本期期末净值
                                DeprDetailmodel.EndNetValue = CurrentNetValue;
                                //月折旧额
                                DeprDetailmodel.MDeprPrice = MonthDeprPrice;
                                //计算累计折旧额
                                CountTotalDeprPrice            = Convert.ToDecimal(rows["TotalDeprPrice"]) + MonthDeprPrice;
                                DeprDetailmodel.TotalDeprPrice = CountTotalDeprPrice;
                                //累计减值
                                DeprDetailmodel.TotalImpairment = (ReduValueRe + CurrValueRe);
                                //计算月折旧额
                                //如果本期净值大于净残值则更新
                                if (CurrentNetValue > Yjcz)
                                {
                                    #region 添加固定资产折旧前信息实体
                                    FixDeprAftermodel                = new FixAssetDeprAfterModel();
                                    FixDeprAftermodel.AmorDeprM      = rows["AmorDeprM"] != DBNull.Value ? Convert.ToDecimal(rows["AmorDeprM"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAftermodel.AmorDeprRate   = Convert.ToDecimal(rows["AmorDeprRate"]);;
                                    FixDeprAftermodel.CompanyCD      = CompanyCD;
                                    FixDeprAftermodel.EndNetValue    = rows["EndNetValue"] != DBNull.Value ? Convert.ToDecimal(rows["EndNetValue"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAftermodel.FixNo          = rows["FixNo"].ToString();
                                    FixDeprAftermodel.PeriodNum      = Convert.ToInt32(PeriodNum);
                                    FixDeprAftermodel.TotalDeprPrice = rows["TotalDeprPrice"] != DBNull.Value ? Convert.ToDecimal(rows["TotalDeprPrice"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAfterList.Add(FixDeprAftermodel);
                                    #endregion


                                    DeprPeriodmodel                = new FixAssetPeriodDeprModel();
                                    DeprPeriodmodel.CompanyCD      = CompanyCD;
                                    DeprPeriodmodel.EndNetValue    = Math.Round(CurrentNetValue, 2);
                                    DeprPeriodmodel.FixNo          = rows["FixNo"].ToString();
                                    DeprPeriodmodel.AmorDeprRate   = 0;
                                    DeprPeriodmodel.AmorDeprM      = MonthDeprPrice;
                                    DeprPeriodmodel.TotalDeprPrice = CountTotalDeprPrice;

                                    DeprDetailList.Add(DeprDetailmodel);
                                    DeprPeriodList.Add(DeprPeriodmodel);
                                }
                                else
                                {
                                    #region 添加固定资产折旧前信息实体
                                    FixDeprAftermodel                = new FixAssetDeprAfterModel();
                                    FixDeprAftermodel.AmorDeprM      = rows["AmorDeprM"] != DBNull.Value ? Convert.ToDecimal(rows["AmorDeprM"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAftermodel.AmorDeprRate   = Convert.ToDecimal(rows["AmorDeprRate"]);
                                    FixDeprAftermodel.CompanyCD      = CompanyCD;
                                    FixDeprAftermodel.EndNetValue    = rows["EndNetValue"] != DBNull.Value ? Convert.ToDecimal(rows["EndNetValue"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAftermodel.FixNo          = rows["FixNo"].ToString();
                                    FixDeprAftermodel.PeriodNum      = Convert.ToInt32(PeriodNum);
                                    FixDeprAftermodel.TotalDeprPrice = rows["TotalDeprPrice"] != DBNull.Value ? Convert.ToDecimal(rows["TotalDeprPrice"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAfterList.Add(FixDeprAftermodel);
                                    #endregion


                                    DeprPeriodmodel                = new FixAssetPeriodDeprModel();
                                    DeprPeriodmodel.CompanyCD      = CompanyCD;
                                    DeprPeriodmodel.EndNetValue    = Yjcz;
                                    DeprPeriodmodel.FixNo          = rows["FixNo"].ToString();
                                    DeprPeriodmodel.AmorDeprRate   = 0;
                                    DeprPeriodmodel.AmorDeprM      = MonthDeprPrice;
                                    DeprPeriodmodel.TotalDeprPrice = Convert.ToDecimal(rows["EndNetValue"]) - Yjcz;

                                    DeprDetailList.Add(DeprDetailmodel);
                                    DeprPeriodList.Add(DeprPeriodmodel);
                                }
                            }
                            //工作量法
                            else if (CountMethod == ConstUtil.ASSETCOUNT_METHOD_GZLF_CODE)
                            {
                                //读取月折旧额
                                MonthDeprPrice = Convert.ToDecimal(rows["AmorDeprM"]);
                                //计算本期期末净值
                                CurrentNetValue = EndNetValue - MonthDeprPrice - CurrValueRe;
                                //计算累计折旧额
                                CountTotalDeprPrice = Convert.ToDecimal(rows["TotalDeprPrice"]) + MonthDeprPrice;
                                //如果本期净值大于原净值则不更新
                                if (CurrentNetValue > Yjcz)
                                {
                                    #region 添加固定资产折旧前信息实体
                                    FixDeprAftermodel                = new FixAssetDeprAfterModel();
                                    FixDeprAftermodel.AmorDeprM      = rows["AmorDeprM"] != DBNull.Value ? Convert.ToDecimal(rows["AmorDeprM"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAftermodel.AmorDeprRate   = Convert.ToDecimal(rows["AmorDeprRate"]);;
                                    FixDeprAftermodel.CompanyCD      = CompanyCD;
                                    FixDeprAftermodel.EndNetValue    = rows["EndNetValue"] != DBNull.Value ? Convert.ToDecimal(rows["EndNetValue"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAftermodel.FixNo          = rows["FixNo"].ToString();
                                    FixDeprAftermodel.PeriodNum      = Convert.ToInt32(PeriodNum);
                                    FixDeprAftermodel.TotalDeprPrice = rows["TotalDeprPrice"] != DBNull.Value ? Convert.ToDecimal(rows["TotalDeprPrice"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAfterList.Add(FixDeprAftermodel);
                                    #endregion


                                    DeprPeriodmodel                = new FixAssetPeriodDeprModel();
                                    DeprPeriodmodel.CompanyCD      = CompanyCD;
                                    DeprPeriodmodel.EndNetValue    = Math.Round(CurrentNetValue, 2);
                                    DeprPeriodmodel.FixNo          = rows["FixNo"].ToString();
                                    DeprPeriodmodel.AmorDeprRate   = 0;
                                    DeprPeriodmodel.AmorDeprM      = MonthDeprPrice;
                                    DeprPeriodmodel.TotalDeprPrice = CountTotalDeprPrice;

                                    DeprDetailList.Add(DeprDetailmodel);
                                    DeprPeriodList.Add(DeprPeriodmodel);
                                }
                                else
                                {
                                    #region 添加固定资产折旧前信息实体
                                    FixDeprAftermodel                = new FixAssetDeprAfterModel();
                                    FixDeprAftermodel.AmorDeprM      = rows["AmorDeprM"] != DBNull.Value ? Convert.ToDecimal(rows["AmorDeprM"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAftermodel.AmorDeprRate   = Convert.ToDecimal(rows["AmorDeprRate"]);;
                                    FixDeprAftermodel.CompanyCD      = CompanyCD;
                                    FixDeprAftermodel.EndNetValue    = rows["EndNetValue"] != DBNull.Value ? Convert.ToDecimal(rows["EndNetValue"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAftermodel.FixNo          = rows["FixNo"].ToString();
                                    FixDeprAftermodel.PeriodNum      = Convert.ToInt32(PeriodNum);
                                    FixDeprAftermodel.TotalDeprPrice = rows["TotalDeprPrice"] != DBNull.Value ? Convert.ToDecimal(rows["TotalDeprPrice"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAfterList.Add(FixDeprAftermodel);
                                    #endregion


                                    DeprPeriodmodel                = new FixAssetPeriodDeprModel();
                                    DeprPeriodmodel.CompanyCD      = CompanyCD;
                                    DeprPeriodmodel.EndNetValue    = Yjcz;
                                    DeprPeriodmodel.FixNo          = rows["FixNo"].ToString();
                                    DeprPeriodmodel.AmorDeprRate   = 0;
                                    DeprPeriodmodel.AmorDeprM      = MonthDeprPrice;
                                    DeprPeriodmodel.TotalDeprPrice = Convert.ToDecimal(rows["EndNetValue"]) - Yjcz;

                                    DeprDetailList.Add(DeprDetailmodel);
                                    DeprPeriodList.Add(DeprPeriodmodel);
                                }
                            }//年限总和法
                            else if (CountMethod == ConstUtil.ASSETCOUNT_METHOD_NXZHF_CODE)
                            {
                                //年折旧率
                                decimal YearDeprRate = 0;
                                //读取预计使用年限
                                EstimateUseYear = Convert.ToInt32(rows["EstimateUse"]);
                                //读取已使用年限
                                int UsedYears = Convert.ToInt32(rows["UsedYear"]);
                                //计算年折旧率
                                YearDeprRate = Convert.ToDecimal((EstimateUseYear - UsedYears)) / (Convert.ToDecimal(EstimateUseYear) * (Convert.ToDecimal(EstimateUseYear + 1)) / 2) * (100 / 100);
                                //计算月折旧率
                                MonthDeprRate = YearDeprRate / 12;
                                //计算月折旧额
                                MonthDeprPrice = (OriginalValue - (OriginalValue * (EstiResiValue / 100))) * MonthDeprRate;
                                //计算本期期末净值
                                CurrentNetValue = EndNetValue - MonthDeprPrice - CurrValueRe;
                                //计算累计折旧额
                                CountTotalDeprPrice = Convert.ToDecimal(rows["TotalDeprPrice"]) + MonthDeprPrice;
                                if (CurrentNetValue > Yjcz)
                                {
                                    #region 添加固定资产折旧前信息实体
                                    FixDeprAftermodel                = new FixAssetDeprAfterModel();
                                    FixDeprAftermodel.AmorDeprM      = rows["AmorDeprM"] != DBNull.Value ? Convert.ToDecimal(rows["AmorDeprM"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAftermodel.AmorDeprRate   = Convert.ToDecimal(rows["AmorDeprRate"]);;
                                    FixDeprAftermodel.CompanyCD      = CompanyCD;
                                    FixDeprAftermodel.EndNetValue    = rows["EndNetValue"] != DBNull.Value ? Convert.ToDecimal(rows["EndNetValue"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAftermodel.FixNo          = rows["FixNo"].ToString();
                                    FixDeprAftermodel.PeriodNum      = Convert.ToInt32(PeriodNum);
                                    FixDeprAftermodel.TotalDeprPrice = rows["TotalDeprPrice"] != DBNull.Value ? Convert.ToDecimal(rows["TotalDeprPrice"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAfterList.Add(FixDeprAftermodel);
                                    #endregion


                                    DeprPeriodmodel                = new FixAssetPeriodDeprModel();
                                    DeprPeriodmodel.CompanyCD      = CompanyCD;
                                    DeprPeriodmodel.EndNetValue    = Math.Round(CurrentNetValue, 2);
                                    DeprPeriodmodel.FixNo          = rows["FixNo"].ToString();
                                    DeprPeriodmodel.AmorDeprRate   = Math.Round(MonthDeprRate, 8);
                                    DeprPeriodmodel.AmorDeprM      = Math.Round(MonthDeprPrice, 2);
                                    DeprPeriodmodel.TotalDeprPrice = CountTotalDeprPrice;

                                    DeprDetailList.Add(DeprDetailmodel);
                                    DeprPeriodList.Add(DeprPeriodmodel);
                                }
                                else
                                {
                                    #region 添加固定资产折旧前信息实体
                                    FixDeprAftermodel                = new FixAssetDeprAfterModel();
                                    FixDeprAftermodel.AmorDeprM      = rows["AmorDeprM"] != DBNull.Value ? Convert.ToDecimal(rows["AmorDeprM"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAftermodel.AmorDeprRate   = Convert.ToDecimal(rows["AmorDeprRate"]);;
                                    FixDeprAftermodel.CompanyCD      = CompanyCD;
                                    FixDeprAftermodel.EndNetValue    = rows["EndNetValue"] != DBNull.Value ? Convert.ToDecimal(rows["EndNetValue"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAftermodel.FixNo          = rows["FixNo"].ToString();
                                    FixDeprAftermodel.PeriodNum      = Convert.ToInt32(PeriodNum);
                                    FixDeprAftermodel.TotalDeprPrice = rows["TotalDeprPrice"] != DBNull.Value ? Convert.ToDecimal(rows["TotalDeprPrice"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAfterList.Add(FixDeprAftermodel);
                                    #endregion



                                    DeprPeriodmodel                = new FixAssetPeriodDeprModel();
                                    DeprPeriodmodel.CompanyCD      = CompanyCD;
                                    DeprPeriodmodel.EndNetValue    = Yjcz;
                                    DeprPeriodmodel.FixNo          = rows["FixNo"].ToString();
                                    DeprPeriodmodel.AmorDeprRate   = Math.Round(MonthDeprRate, 8);
                                    DeprPeriodmodel.AmorDeprM      = MonthDeprPrice;
                                    DeprPeriodmodel.TotalDeprPrice = Convert.ToDecimal(rows["EndNetValue"]) - Yjcz;

                                    DeprDetailList.Add(DeprDetailmodel);
                                    DeprPeriodList.Add(DeprPeriodmodel);
                                }
                            }//双倍余额递减法
                            else if (CountMethod == ConstUtil.ASSETCOUNT_METHOD_SBYETJS_CODE)
                            {
                                //读取预计使用年限
                                EstimateUseYear = Convert.ToInt32(rows["EstimateUse"]);
                                //年折旧率
                                decimal YearDeprRate = 0;
                                //计算年折旧率
                                YearDeprRate = 2 / Convert.ToDecimal(EstimateUseYear) * (100 / 100);
                                //计算月折旧率
                                MonthDeprRate = YearDeprRate / 12;
                                //计算月折旧额
                                MonthDeprPrice = EndNetValue * MonthDeprRate;
                                //计算本期期末净值
                                CurrentNetValue = EndNetValue - MonthDeprPrice - CurrValueRe;
                                //计算累计折旧额
                                CountTotalDeprPrice = Convert.ToDecimal(rows["TotalDeprPrice"]) + MonthDeprPrice;
                                if (CurrentNetValue > Yjcz)
                                {
                                    #region 添加固定资产折旧前信息实体
                                    FixDeprAftermodel                = new FixAssetDeprAfterModel();
                                    FixDeprAftermodel.AmorDeprM      = rows["AmorDeprM"] != DBNull.Value ? Convert.ToDecimal(rows["AmorDeprM"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAftermodel.AmorDeprRate   = Convert.ToDecimal(rows["AmorDeprRate"]);;
                                    FixDeprAftermodel.CompanyCD      = CompanyCD;
                                    FixDeprAftermodel.EndNetValue    = rows["EndNetValue"] != DBNull.Value ? Convert.ToDecimal(rows["EndNetValue"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAftermodel.FixNo          = rows["FixNo"].ToString();
                                    FixDeprAftermodel.PeriodNum      = Convert.ToInt32(PeriodNum);
                                    FixDeprAftermodel.TotalDeprPrice = rows["TotalDeprPrice"] != DBNull.Value ? Convert.ToDecimal(rows["TotalDeprPrice"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAfterList.Add(FixDeprAftermodel);
                                    #endregion


                                    DeprPeriodmodel                = new FixAssetPeriodDeprModel();
                                    DeprPeriodmodel.CompanyCD      = CompanyCD;
                                    DeprPeriodmodel.EndNetValue    = Math.Round(CurrentNetValue, 2);
                                    DeprPeriodmodel.FixNo          = rows["FixNo"].ToString();
                                    DeprPeriodmodel.AmorDeprRate   = Math.Round(MonthDeprRate, 8);
                                    DeprPeriodmodel.AmorDeprM      = Math.Round(MonthDeprPrice, 2);
                                    DeprPeriodmodel.TotalDeprPrice = CountTotalDeprPrice;
                                    DeprDetailList.Add(DeprDetailmodel);
                                    DeprPeriodList.Add(DeprPeriodmodel);
                                }
                                else
                                {
                                    #region 添加固定资产折旧前信息实体
                                    FixDeprAftermodel                = new FixAssetDeprAfterModel();
                                    FixDeprAftermodel.AmorDeprM      = rows["AmorDeprM"] != DBNull.Value ? Convert.ToDecimal(rows["AmorDeprM"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAftermodel.AmorDeprRate   = Convert.ToDecimal(rows["AmorDeprRate"]);;
                                    FixDeprAftermodel.CompanyCD      = CompanyCD;
                                    FixDeprAftermodel.EndNetValue    = rows["EndNetValue"] != DBNull.Value ? Convert.ToDecimal(rows["EndNetValue"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAftermodel.FixNo          = rows["FixNo"].ToString();
                                    FixDeprAftermodel.PeriodNum      = Convert.ToInt32(PeriodNum);
                                    FixDeprAftermodel.TotalDeprPrice = rows["TotalDeprPrice"] != DBNull.Value ? Convert.ToDecimal(rows["TotalDeprPrice"]) : Convert.ToDecimal(DBNull.Value);
                                    FixDeprAfterList.Add(FixDeprAftermodel);
                                    #endregion



                                    DeprPeriodmodel                = new FixAssetPeriodDeprModel();
                                    DeprPeriodmodel.CompanyCD      = CompanyCD;
                                    DeprPeriodmodel.EndNetValue    = Yjcz;
                                    DeprPeriodmodel.FixNo          = rows["FixNo"].ToString();
                                    DeprPeriodmodel.AmorDeprRate   = Math.Round(MonthDeprRate, 8);
                                    DeprPeriodmodel.AmorDeprM      = MonthDeprPrice;
                                    DeprPeriodmodel.TotalDeprPrice = Convert.ToDecimal(rows["EndNetValue"]) - Yjcz;

                                    DeprDetailList.Add(DeprDetailmodel);
                                    DeprPeriodList.Add(DeprPeriodmodel);
                                }
                            }
                        }
                    }
                    #endregion
                    //折旧固定资产明细
                    result = FixAssetInfoDBHelper.UpdateEndFixAssetInfo(DeprDetailList, DeprPeriodList, CompanyCD, PeriodNum,
                                                                        ItemID, ref PeriodID, FixDeprAfterList);
                }
                if (result)
                {
                    #region 凭证单据明细实体
                    //凭证单据实体
                    AttestBillModel Attestmodel = new AttestBillModel();
                    //凭证明细实体定义
                    AttestBillDetailsModel Detailmodel = null;
                    #endregion

                    #region 凭证单据实体赋值
                    Attestmodel.CompanyCD   = CompanyCD;
                    Attestmodel.AttestNo    = "记-" + VoucherDBHelper.GetMaxAttestNo(CompanyCD, DateTime.Now.ToString());
                    getAttestNo             = Attestmodel.AttestNo;
                    Attestmodel.AttestName  = "记账凭证";
                    Attestmodel.Creator     = ((UserInfoUtil)SessionUtil.Session["UserInfo"]).EmployeeID;
                    Attestmodel.status      = 0;
                    Attestmodel.FromTbale   = "EndItemProcessedRecord,FixWithInfo,FixPeriodDeprDetails";
                    Attestmodel.FromValue   = PeriodID.ToString() + "," + PeriodNum.ToString();
                    Attestmodel.VoucherDate = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd"));
                    #endregion
                    int       ID;
                    ArrayList modelList = new ArrayList();//定义数组存储实体对象
                    //添加凭证单据信息
                    result   = FixAssetInfoDBHelper.BuildDepreAttestBill(Attestmodel, out ID, ItemID, PeriodNum);
                    AttestID = ID;
                    if (result && ID > 0)
                    {
                        //获取固定资产科目汇总金额信息
                        DataTable AttestDetail = FixAssetInfoDBHelper.GetBuildAttestInfo(CompanyCD);
                        //获取折旧凭证摘要ID
                        string AbstractID;
                        AbstractID = ConstUtil.SUMMARY_ZCJZ_NAME;
                        #endregion
                        //获取本币币种ID
                        int MasterCurrencyID = Convert.ToInt32(CurrTypeSettingDBHelper.GetMasterCurrency(CompanyCD).Rows[0]["ID"]);
                        if (AttestDetail != null && AttestDetail.Rows.Count > 0)
                        {
                            foreach (DataRow drows in AttestDetail.Rows)
                            {
                                #region 凭证明细实体赋值
                                Detailmodel = new AttestBillDetailsModel();
                                Detailmodel.AttestBillID   = ID;
                                Detailmodel.Abstract       = AbstractID;                           // 摘要
                                Detailmodel.SubjectsCD     = drows["AccuDeprSubjeCD"].ToString();  //累计折旧科目 贷
                                Detailmodel.CreditAmount   = Convert.ToDecimal(drows["CountSum"]); //贷方金额
                                Detailmodel.DebitAmount    = 0;
                                Detailmodel.OriginalAmount = Convert.ToDecimal(drows["CountSum"]); //外币金额
                                Detailmodel.CurrencyTypeID = MasterCurrencyID;                     //本币ID
                                Detailmodel.ExchangeRate   = 1;                                    //本币汇率
                                modelList.Add(Detailmodel);


                                Detailmodel = new AttestBillDetailsModel();
                                Detailmodel.AttestBillID   = ID;
                                Detailmodel.Abstract       = AbstractID;                           // 摘要
                                Detailmodel.CreditAmount   = 0;
                                Detailmodel.SubjectsCD     = drows["DeprCostSubjeCD"].ToString();  //折旧费用科目 借
                                Detailmodel.DebitAmount    = Convert.ToDecimal(drows["CountSum"]); //借方金额
                                Detailmodel.OriginalAmount = Convert.ToDecimal(drows["CountSum"]); //外币金额
                                Detailmodel.CurrencyTypeID = MasterCurrencyID;                     //本币ID
                                Detailmodel.ExchangeRate   = 1;                                    //本币汇率
                                modelList.Add(Detailmodel);
                                #endregion
                            }
                            //凭证自动登帐及自动审核
                            result = FixAssetInfoDBHelper.BuildDepreDetailInfo(modelList);
                            if (result)
                            {
                                VoucherBus.SetStatus(ID.ToString(), "1", "status", 0);
                                VoucherBus.InsertAccount(AttestID);
                            }
                        }
                    }
                }
                return(result);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
コード例 #6
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                //获取从wxProcess.aspx传递过来的跳转地址reurl
                if (Request.QueryString["reurl"] != null && Request.QueryString["reurl"] != "")
                {
                    reurl = Request.QueryString["reurl"].ToString();
                }

                string code = "";
                if (Request.QueryString["code"] != null && Request.QueryString["code"] != "")
                {
                    //获取微信回传的code
                    code = Request.QueryString["code"].ToString();
                    OAuth_Token    Model           = Get_token(code); //获取token
                    OAuthUser      OAuthUser_Model = Get_UserInfo(Model.access_token, Model.openid);
                    DAO.MemberBase m   = new DAO.MemberBase();
                    MemberBLL      bll = new MemberBLL();
                    //if (OAuthUser_Model.openid != null && OAuthUser_Model.openid != "")  //已获取得openid及其他信息
                    //{
                    MemberBase selectUser = bll.selectWx(OAuthUser_Model.openid);
                    if (selectUser != null)
                    {
                        bll.updateWx(OAuthUser_Model);

                        Session["memberID"] = selectUser.ID;
                        //Session["mobile"] = model.Mobile;
                        Session.Timeout = 30;
                    }
                    else
                    {
                        FriendCodeBLL fbll = new FriendCodeBLL();

                        DAO.MemberLevel levelModel = new DAO.MemberLevel();
                        m.LoginName = OAuthUser_Model.nickname;
                        //m.LoginName = phone;
                        //m.PassWord = Md5Util.PwdMd5(phone.Substring(5));
                        //m.Mobile = phone;
                        ////m.Email = "";
                        m.State = 1;
                        //int upUser = fbll.GetUpUser(fcode);
                        m.UpUser = 0;    //上级用户
                        //m.Levels = 0;
                        //m.Integral = 0;
                        //m.Source = "self";
                        m.wxOpenid     = OAuthUser_Model.openid;
                        m.wxNickname   = OAuthUser_Model.nickname;
                        m.wxSex        = Convert.ToInt32(OAuthUser_Model.sex);
                        m.wxProvince   = OAuthUser_Model.province;
                        m.wxCity       = OAuthUser_Model.city;
                        m.wxCountry    = OAuthUser_Model.country;
                        m.wxHeadimgurl = OAuthUser_Model.headimgurl;
                        m.wxPrivilege  = OAuthUser_Model.privilege;
                        m.RegDate      = DateTime.Now;
                        DAO.MemberBase u = bll.Reg(m);     //注册
                        Session["memberID"] = u.ID;
                        VoucherBus vbll = new VoucherBus();
                        vbll.RegGiveAVoucher(u.ID);         //给一张注册优惠券
                        levelModel = bll.GetLevel(u.ID, 0); //注册初始化级别
                        u.Levels   = levelModel.LevelId;
                        u.Integral = levelModel.MinIntegral;
                        DAO.MemberBase allu = bll.UpdateUser(u);

                        Session["memberID"] = u.ID;
                        //Session["mobile"] = model.Mobile;
                        Session.Timeout = 30;
                    }



                    ////在页面上输出用户信息
                    //Response.Write("用户OPENID:" + OAuthUser_Model.openid + "<br>用户昵称:" + OAuthUser_Model.nickname + "<br>性别:" + OAuthUser_Model.sex + "<br>所在省:" + OAuthUser_Model.province + "<br>所在市:" + OAuthUser_Model.city + "<br>所在国家:" + OAuthUser_Model.country + "<br>头像地址:" + OAuthUser_Model.headimgurl + "<br>用户特权信息:" + OAuthUser_Model.privilege);
                    ////或跳转到自己的页面,想怎么处理就怎么处理
                    Response.Redirect(reurl);
                    //}
                    //else  //未获得openid,回到wxProcess.aspx,访问弹出微信授权页面,提示用户授权
                    //{
                    //    Response.Redirect("wxProcess.aspx?auth=1");
                    //}
                }
            }
        }