|
|
@@ -1397,13 +1397,58 @@ namespace MySystem.Areas.Admin.Controllers
|
|
|
|
|
|
if (oldpos.OpId > 0)
|
|
|
{
|
|
|
- var opUserAccount = opdb.UserAccount.FirstOrDefault(m => m.Sort > 0 && m.Id == oldpos.OpId && m.UserId == oldpos.OpId) ?? new OpModels.UserAccount();
|
|
|
- opUserAccount.ValidAmount += oldpos.OpReserve3;
|
|
|
- opUserAccount.ValidForGetAmount += oldpos.OpReserve2;
|
|
|
- opUserAccount.TotalAmount += oldpos.OpReserve1;
|
|
|
+ if (oldpos.ActivationState == 0)
|
|
|
+ {
|
|
|
+ var opUserAccount = opdb.UserAccount.FirstOrDefault(m => m.Sort > 0 && m.Id == oldpos.OpId && m.UserId == oldpos.OpId) ?? new OpModels.UserAccount();
|
|
|
+ decimal TotalAmount = opUserAccount.ValidAmount + opUserAccount.TotalAmt + opUserAccount.ValidForGetAmount;//旧的总金额
|
|
|
+ opUserAccount.ValidAmount += oldpos.OpReserve3;
|
|
|
+ opUserAccount.ValidForGetAmount += oldpos.OpReserve2;
|
|
|
+ opUserAccount.TotalAmount += oldpos.OpReserve1;
|
|
|
+
|
|
|
+ var amoutRecord = opdb.AmountRecord.Add(new OpModels.AmountRecord
|
|
|
+ {
|
|
|
+ CreateDate = DateTime.Now,
|
|
|
+ UserId = oldpos.OpId,
|
|
|
+ SeoDescription = "机具换绑",
|
|
|
+ OperateType = 1,
|
|
|
+ UseAmount = oldpos.OpReserve3 + oldpos.OpReserve2 + oldpos.OpReserve1,
|
|
|
+ BeforeAmount = TotalAmount,
|
|
|
+ AfterAmount = TotalAmount + oldpos.OpReserve3 + oldpos.OpReserve2 + oldpos.OpReserve1,
|
|
|
+ }).Entity;
|
|
|
+
|
|
|
+ oldpos.OpReserve1 = 0;
|
|
|
+ oldpos.OpReserve2 = 0;
|
|
|
+ oldpos.OpReserve3 = 0;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ if (newpos.OpId > 0)
|
|
|
+ {
|
|
|
+ var opUserAccount = opdb.UserAccount.FirstOrDefault(m => m.Sort > 0 && m.Id == newpos.OpId && m.UserId == newpos.OpId) ?? new OpModels.UserAccount();
|
|
|
+ decimal TotalAmount = opUserAccount.ValidAmount + opUserAccount.TotalAmt + opUserAccount.ValidForGetAmount;//旧的总金额
|
|
|
+ opUserAccount.ValidAmount += newpos.OpReserve3;
|
|
|
+ opUserAccount.ValidForGetAmount += newpos.OpReserve2;
|
|
|
+ opUserAccount.TotalAmount += newpos.OpReserve1;
|
|
|
+
|
|
|
+ var amoutRecord = opdb.AmountRecord.Add(new OpModels.AmountRecord
|
|
|
+ {
|
|
|
+ CreateDate = DateTime.Now,
|
|
|
+ UserId = newpos.OpId,
|
|
|
+ SeoDescription = "机具换绑",
|
|
|
+ OperateType = 1,
|
|
|
+ UseAmount = newpos.OpReserve3 + newpos.OpReserve2 + newpos.OpReserve1,
|
|
|
+ BeforeAmount = TotalAmount,
|
|
|
+ AfterAmount = TotalAmount + newpos.OpReserve3 + newpos.OpReserve2 + newpos.OpReserve1,
|
|
|
+ }).Entity;
|
|
|
+
|
|
|
+ newpos.OpReserve1 = 0;
|
|
|
+ newpos.OpReserve2 = 0;
|
|
|
+ newpos.OpReserve3 = 0;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
opdb.SaveChanges();
|
|
|
-
|
|
|
+
|
|
|
merchant = db.PosMerchantInfo.FirstOrDefault(m => m.KqMerNo == MerNo) ?? new PosMerchantInfo();
|
|
|
newpos.BindMerchantId = merchant.Id;
|
|
|
newpos.BuyUserId = oldpos.BuyUserId;
|
|
|
@@ -1601,10 +1646,32 @@ namespace MySystem.Areas.Admin.Controllers
|
|
|
|
|
|
if (oldpos.OpId > 0)
|
|
|
{
|
|
|
- var opUserAccount = opdb.UserAccount.FirstOrDefault(m => m.Sort > 0 && m.Id == oldpos.OpId && m.UserId == oldpos.OpId) ?? new OpModels.UserAccount();
|
|
|
- opUserAccount.ValidAmount += oldpos.OpReserve3;
|
|
|
- opUserAccount.ValidForGetAmount += oldpos.OpReserve2;
|
|
|
- opUserAccount.TotalAmount += oldpos.OpReserve1;
|
|
|
+ if (newpos.OpId > 0)
|
|
|
+ {
|
|
|
+ var opUserAccount = opdb.UserAccount.FirstOrDefault(m => m.Sort > 0 && m.Id == oldpos.OpId && m.UserId == oldpos.OpId) ?? new OpModels.UserAccount();
|
|
|
+ decimal TotalAmount = opUserAccount.ValidAmount + opUserAccount.TotalAmt + opUserAccount.ValidForGetAmount;//旧的总金额
|
|
|
+ opUserAccount.ValidAmount += oldpos.OpReserve3;
|
|
|
+ opUserAccount.ValidForGetAmount += oldpos.OpReserve2;
|
|
|
+ opUserAccount.TotalAmount += oldpos.OpReserve1;
|
|
|
+
|
|
|
+ var amoutRecord = opdb.AmountRecord.Add(new OpModels.AmountRecord
|
|
|
+ {
|
|
|
+ CreateDate = DateTime.Now,
|
|
|
+ UserId = oldpos.OpId,
|
|
|
+ SeoDescription = "坏机换新",
|
|
|
+ OperateType = 1,
|
|
|
+ UseAmount = oldpos.OpReserve3 + oldpos.OpReserve2 + oldpos.OpReserve1,
|
|
|
+ BeforeAmount = TotalAmount,
|
|
|
+ AfterAmount = TotalAmount + oldpos.OpReserve3 + oldpos.OpReserve2 + oldpos.OpReserve1,
|
|
|
+ }).Entity;
|
|
|
+ }
|
|
|
+ if (newpos.OpId == 0)
|
|
|
+ {
|
|
|
+ newpos.OpReserve1 = oldpos.OpReserve1;
|
|
|
+ newpos.OpReserve2 = oldpos.OpReserve3;
|
|
|
+ newpos.OpReserve3 = oldpos.OpReserve1;
|
|
|
+ newpos.OpId = oldpos.OpId;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
newpos.BuyUserId = oldpos.BuyUserId;
|
|
|
@@ -1830,10 +1897,32 @@ namespace MySystem.Areas.Admin.Controllers
|
|
|
}
|
|
|
if (oldpos.OpId > 0)
|
|
|
{
|
|
|
- var opUserAccount = opdb.UserAccount.FirstOrDefault(m => m.Sort > 0 && m.Id == oldpos.OpId && m.UserId == oldpos.OpId) ?? new OpModels.UserAccount();
|
|
|
- opUserAccount.ValidAmount += oldpos.OpReserve3;
|
|
|
- opUserAccount.ValidForGetAmount += oldpos.OpReserve2;
|
|
|
- opUserAccount.TotalAmount += oldpos.OpReserve1;
|
|
|
+ if (newpos.OpId > 0)
|
|
|
+ {
|
|
|
+ var opUserAccount = opdb.UserAccount.FirstOrDefault(m => m.Sort > 0 && m.Id == oldpos.OpId && m.UserId == oldpos.OpId) ?? new OpModels.UserAccount();
|
|
|
+ decimal TotalAmount = opUserAccount.ValidAmount + opUserAccount.TotalAmt + opUserAccount.ValidForGetAmount;//旧的总金额
|
|
|
+ opUserAccount.ValidAmount += oldpos.OpReserve3;
|
|
|
+ opUserAccount.ValidForGetAmount += oldpos.OpReserve2;
|
|
|
+ opUserAccount.TotalAmount += oldpos.OpReserve1;
|
|
|
+
|
|
|
+ var amoutRecord = opdb.AmountRecord.Add(new OpModels.AmountRecord
|
|
|
+ {
|
|
|
+ CreateDate = DateTime.Now,
|
|
|
+ UserId = oldpos.OpId,
|
|
|
+ SeoDescription = "坏机换新",
|
|
|
+ OperateType = 1,
|
|
|
+ UseAmount = oldpos.OpReserve3 + oldpos.OpReserve2 + oldpos.OpReserve1,
|
|
|
+ BeforeAmount = TotalAmount,
|
|
|
+ AfterAmount = TotalAmount + oldpos.OpReserve3 + oldpos.OpReserve2 + oldpos.OpReserve1,
|
|
|
+ }).Entity;
|
|
|
+ }
|
|
|
+ if (newpos.OpId == 0)
|
|
|
+ {
|
|
|
+ newpos.OpReserve1 = oldpos.OpReserve1;
|
|
|
+ newpos.OpReserve2 = oldpos.OpReserve3;
|
|
|
+ newpos.OpReserve3 = oldpos.OpReserve1;
|
|
|
+ newpos.OpId = oldpos.OpId;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
oldpos.StoreId = storeBack.Id;
|