123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using MySystem.PxcModels;
- namespace MySystem
- {
- public class Utils
- {
- public readonly static Utils Instance = new Utils();
- private Utils()
- { }
- /// <summary>
- /// 操作收支明细
- /// </summary>
- /// <param name="UserId"></param>
- /// <param name="Money"></param>
- /// <param name="ChangeType"></param>
- public void OpAccount(int UserId, decimal Money, int ChangeType, bool IsTotal = true)
- {
- WebCMSEntities db = new WebCMSEntities();
- UserAccount account = db.UserAccount.FirstOrDefault(m => m.Id == UserId);
- if (account == null)
- {
- account = db.UserAccount.Add(new UserAccount()
- {
- Id = UserId,
- UserId = UserId,
- }).Entity;
- db.SaveChanges();
- }
- decimal BeforeTotalAmount = account.TotalAmount; //变更前总金额
- decimal BeforeFreezeAmount = account.FreezeAmount; //变更前冻结金额
- decimal BeforeBalanceAmount = account.BalanceAmount; //变更前余额
- account.BalanceAmount += Money;
- if(IsTotal)
- {
- account.TotalAmount += Money;
- }
- decimal AfterTotalAmount = account.TotalAmount; //变更后总金额
- decimal AfterFreezeAmount = account.FreezeAmount; //变更后冻结金额
- decimal AfterBalanceAmount = account.BalanceAmount; //变更后余额
- UserAccountRecord userAccountRecord = db.UserAccountRecord.Add(new UserAccountRecord()
- {
- CreateDate = DateTime.Now,
- UpdateDate = DateTime.Now,
- UserId = UserId, //创客
- ChangeType = ChangeType, //变动类型
- ChangeAmount = Money, //变更金额
- BeforeTotalAmount = BeforeTotalAmount, //变更前总金额
- AfterTotalAmount = AfterTotalAmount, //变更后总金额
- BeforeFreezeAmount = BeforeFreezeAmount, //变更前冻结金额
- AfterFreezeAmount = AfterFreezeAmount, //变更后冻结金额
- BeforeBalanceAmount = BeforeBalanceAmount, //变更前余额
- AfterBalanceAmount = AfterBalanceAmount, //变更后余额
- }).Entity;
- db.SaveChanges();
- db.Dispose();
- }
- public void ToChargeAmount(int UserId, decimal Money)
- {
- WebCMSEntities db = new WebCMSEntities();
- UserAccount account = db.UserAccount.FirstOrDefault(m => m.Id == UserId);
- if (account == null)
- {
- account = db.UserAccount.Add(new UserAccount()
- {
- Id = UserId,
- UserId = UserId,
- }).Entity;
- db.SaveChanges();
- }
- account.ToChargeAmount += Money;
- db.SaveChanges();
- db.Dispose();
- }
- /// <summary>
- /// 判断是否达标创客
- /// </summary>
- /// <param name="UserId"></param>
- /// <returns></returns>
- public bool IsStandardUser(int UserId)
- {
- WebCMSEntities db = new WebCMSEntities();
- int ActiveCount = db.PosMachinesTwo.Count(m => m.BuyUserId == UserId && m.ActivationState == 1); //判断是否拥有3台激活机(不限购买或赠送)
- int couponCount = db.PosCoupons.Count(m => m.UserId == UserId && m.IsUse == 0); //判断是否拥有3张券
- // TODO:待确认条件
- db.Dispose();
- if(ActiveCount + couponCount >= 3)
- {
- return true;
- }
- return false;
- }
- /// <summary>
- /// 预设职级
- /// </summary>
- /// <param name="UserId"></param>
- /// <param name="LeaderKind"></param>
- public void LeaderPreUserLevel(int UserId, int UserLevel, DateTime ExpiredDate)
- {
- WebCMSEntities db = new WebCMSEntities();
- UserRankWhite rank = db.UserRankWhite.FirstOrDefault(m => m.Id == UserId);
- if(rank == null)
- {
- rank = db.UserRankWhite.Add(new UserRankWhite()
- {
- CreateDate = DateTime.Now, //设置时间
- UserId = UserId, //用户
- Id = UserId,
- }).Entity;
- db.SaveChanges();
- }
- rank.Rank = UserLevel;
- rank.UpdateDate = ExpiredDate;
- db.SaveChanges();
- db.Dispose();
- }
-
-
- }
- }
|