public async Task <IActionResult> Edit(int id, ChangeEntity changeEntity)
        {
            if (id != changeEntity.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(changeEntity);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!ChangeEntityExists(changeEntity.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(changeEntity));
        }
        /// <summary>
        /// 转账
        /// </summary>
        /// <param name="UserID"></param>
        /// <param name="ToUserID"></param>
        /// <param name="Amount"></param>
        /// <param name="ChangeType"></param>
        /// <param name="remark"></param>
        /// <param name="remarken"></param>
        /// <param name="toremark"></param>
        /// <param name="toremarken"></param>
        /// <returns></returns>
        public long TransferMonbey(long UserID, long ToUserID, decimal Amount, long ChangeType, string remark, string remarken, string toremark, string toremarken)
        {
            using (MyDbContext dbcontext = new MyDbContext())
            {
                CommonService <ChangeEntity>  change  = new CommonService <ChangeEntity>(dbcontext);
                CommonService <UserEntity>    user    = new CommonService <UserEntity>(dbcontext);
                CommonService <JournalEntity> journal = new CommonService <JournalEntity>(dbcontext);
                //转账表(insert)
                ChangeEntity entity = new ChangeEntity();
                entity.UserID     = UserID;
                entity.ToUserType = 0;
                entity.ToUserID   = ToUserID;
                entity.Amount     = Amount;
                entity.ChangeType = ChangeType;
                entity.ChangeDate = DateTime.Now;
                dbcontext.Change.Add(entity);

                //转账用户(update)
                UserEntity uentity   = user.GetById(UserID);
                UserEntity touentity = user.GetById(ToUserID);
                if (ChangeType == 1)
                {
                    uentity.BonusAccount   -= Amount;
                    touentity.BonusAccount += Amount;
                }

                //转出明细(insert)
                JournalEntity jentity = new JournalEntity();
                jentity.UserID   = UserID;
                jentity.InAmount = 0;
                if (ChangeType == 1)
                {
                    jentity.OutAmount     = Amount;
                    jentity.BalanceAmount = uentity.BonusAccount;
                }
                jentity.JournalType = 1;
                jentity.Journal01   = ToUserID;
                jentity.Remark      = remark;
                jentity.RemarkEn    = remarken;
                dbcontext.Journal.Add(jentity);

                //转入明细(insert)
                JournalEntity tojentity = new JournalEntity();
                tojentity.UserID    = ToUserID;
                tojentity.OutAmount = 0;
                if (ChangeType == 1)
                {
                    tojentity.InAmount      = Amount;
                    tojentity.BalanceAmount = uentity.BonusAccount;
                }
                tojentity.JournalType = 1;
                tojentity.Journal01   = UserID;
                tojentity.Remark      = toremark;
                tojentity.RemarkEn    = toremarken;
                dbcontext.Journal.Add(tojentity);

                int re = dbcontext.SaveChanges();
                return(re);
            }
        }
Exemple #3
0
        public void Constructor()
        {
            var mod = new ChangeEntity(new EntityData(1, "NAME", "CARD_ID", Zone.DECK));

            Assert.AreEqual("CARD_ID", mod.CardId);
            Assert.AreEqual(1, mod.EntityId);
        }
        public async Task <IActionResult> ConfirmChange(ChangeViewModel model, int idShift, int idShift2, int idService, int idService2)
        {
            ChangeEntity changeEntity = await _converterHelper.ToChangeEntityAsync(model, false);

            changeEntity.State = "Approved";

            _context.Update(changeEntity);
            await _context.SaveChangesAsync();

            ShiftEntity shiftEntity = await _context.Shifts.Include(s => s.User).Include(s => s.Service).
                                      FirstOrDefaultAsync(s => s.Id == idShift);

            shiftEntity.Service = await _context.Services.Include(s => s.ServiceDetail).
                                  FirstOrDefaultAsync(s => s.Id == idService);

            ShiftEntity shiftEntity2 = await _context.Shifts.Include(s => s.User).Include(s => s.Service).
                                       FirstOrDefaultAsync(s => s.Id == idShift2);

            shiftEntity2.Service = await _context.Services.Include(s => s.ServiceDetail).
                                   FirstOrDefaultAsync(s => s.Id == idService2);

            shiftEntity.Modified = true;

            shiftEntity2.Modified = true;

            _context.Update(shiftEntity);
            await _context.SaveChangesAsync();

            _context.Update(shiftEntity2);
            await _context.SaveChangesAsync();

            return(RedirectToAction(nameof(SelectChanges)));
        }
        public async Task <IActionResult> PutChange([FromBody] ConfirmChangeRequest request)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            CultureInfo cultureInfo = new CultureInfo(request.CultureInfo);

            Resource.Culture = cultureInfo;

            ChangeEntity changeEntity = await _context.Changes.Include(c => c.FirstDriver).
                                        Include(c => c.FirstDriverService).
                                        ThenInclude(c => c.Service).
                                        Include(c => c.SecondDriver).
                                        Include(c => c.SecondDriverService).
                                        ThenInclude(c => c.Service).
                                        FirstOrDefaultAsync(c => c.Id == request.ChangeId);

            changeEntity.FirstDriverService.Service = await _context.Services.FindAsync(request.SecondServiceId);

            changeEntity.SecondDriverService.Service = await _context.Services.FindAsync(request.FirstServiceId);

            changeEntity.State = "Approved";

            _context.Changes.Update(changeEntity);
            await _context.SaveChangesAsync();

            return(NoContent());
        }
        public async Task <IActionResult> DeleteConfirmed(int id)
        {
            ChangeEntity changeEntity = await _context.Changes.FindAsync(id);

            _context.Changes.Remove(changeEntity);
            await _context.SaveChangesAsync();

            return(RedirectToAction(nameof(Index)));
        }
Exemple #7
0
        public void Apply_InvalidEntity()
        {
            var gs = new MockGameState();

            gs.Entities.Add(1, new Entity(1, "CARD_ID"));
            var mod = new ChangeEntity(new EntityData(2, "NAME", "CARD_ID2", Zone.DECK));

            mod.Apply(gs);
            Assert.AreEqual("CARD_ID", gs.Entities[1].CardId);
        }
        public async Task <IActionResult> Create(ChangeEntity changeEntity)
        {
            if (ModelState.IsValid)
            {
                _context.Add(changeEntity);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(changeEntity));
        }
        public async Task <IActionResult> PostChange([FromBody] ChangeRequest request)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            CultureInfo cultureInfo = new CultureInfo(request.CultureInfo);

            Resource.Culture = cultureInfo;

            Task <bool> checkHours;

            var currentHour = (DateTime.UtcNow.ToLocalTime().Hour) - 5;

            UserEntity user = await _context.Users.FindAsync(request.FirstDriverId.ToString());

            ShiftEntity shift = await _context.Shifts.Include(s => s.Service).FirstOrDefaultAsync(s => s.Id == request.SecondShift);

            checkHours = _changeHelper.CheckHours(user, shift);

            if (currentHour > 19 || currentHour < 8)
            {
                return(BadRequest(Resource.HourNotAllowed));
            }

            Task <int> count = _changeHelper.CheckChanges(user);

            if (count.Result > 0)
            {
                return(BadRequest(Resource.ChangeNotAuthorized));
            }

            if (!checkHours.Result)
            {
                return(BadRequest(Resource.HoursRest));
            }

            ChangeEntity changeEntity = new ChangeEntity()
            {
                Date                = request.Date,
                FirstDriver         = await _context.Users.FirstOrDefaultAsync(u => u.Id == request.FirstDriverId.ToString()),
                FirstDriverService  = await _context.Shifts.FirstOrDefaultAsync(s => s.Id == request.FirstShift),
                SecondDriver        = await _context.Users.FirstOrDefaultAsync(u => u.Id == request.SecondDriverId.ToString()),
                SecondDriverService = await _context.Shifts.FirstOrDefaultAsync(s => s.Id == request.SecondShift),
                State               = "Pending"
            };

            _context.Changes.Add(changeEntity);
            await _context.SaveChangesAsync();

            return(NoContent());
        }
Exemple #10
0
 public ChangeResponse ToChangeResponse(ChangeEntity changeEntity)
 {
     return(new ChangeResponse
     {
         Id = changeEntity.Id,
         FirstDriver = ToUserResponse(changeEntity.FirstDriver),
         FirstDriverService = ToShiftResponse(changeEntity.FirstDriverService),
         SecondDriver = ToUserResponse(changeEntity.SecondDriver),
         SecondDriverService = ToShiftResponse(changeEntity.SecondDriverService),
         State = changeEntity.State
     });
 }
        public void GameStateChange_ChangeEntity()
        {
            ChangeEntity changeEntity = null;
            var          parser       = new PowerParser(new MockGameInfo());

            parser.GameStateChange += args => changeEntity = args as ChangeEntity;

            parser.Parse(new Line("Power", "D 13:14:00.5727617 PowerTaskList.DebugPrintPower() -     CHANGE_ENTITY - Updating Entity=[entityName=Shifting Scroll id=28 zone=HAND zonePos=7 cardId=LOOT_104 player=1] CardID=UNG_948"));
            Assert.IsNotNull(changeEntity);
            Assert.AreEqual(28, changeEntity.EntityId);
            Assert.AreEqual("UNG_948", changeEntity.CardId);
        }
        public async Task <IActionResult> CreateChange(ChangeViewModel model)
        {
            if (ModelState.IsValid)
            {
                ChangeEntity changeEntity = await _converterHelper.ToChangeEntityAsync(model, true);

                _context.Add(changeEntity);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(model));
        }
Exemple #13
0
 public ChangeViewModel ToChangeViewModel(ChangeEntity changeEntity)
 {
     return(new ChangeViewModel
     {
         Id = changeEntity.Id,
         FirstDriver = changeEntity.FirstDriver,
         FirstDriverId = changeEntity.FirstDriver.Id,
         FirstDriverService = changeEntity.FirstDriverService,
         FirstDriverServiceId = changeEntity.FirstDriverService.Id,
         SecondDriver = changeEntity.SecondDriver,
         SecondDriverId = changeEntity.SecondDriver.Id,
         SecondDriverService = changeEntity.SecondDriverService,
         SecondDriverServiceId = changeEntity.SecondDriverService.Id,
     });
 }
        public async Task <IActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            ChangeEntity changeEntity = await _context.Changes.FindAsync(id);

            if (changeEntity == null)
            {
                return(NotFound());
            }
            return(View(changeEntity));
        }
        public async Task <IActionResult> ConfirmChange(int id)
        {
            ChangeEntity changeEntity = await _context.Changes.Include(c => c.FirstDriver).
                                        Include(c => c.FirstDriverService).
                                        ThenInclude(c => c.Service).
                                        ThenInclude(s => s.ServiceDetail).
                                        Include(c => c.SecondDriver).
                                        Include(c => c.SecondDriverService).
                                        ThenInclude(s => s.Service).
                                        ThenInclude(s => s.ServiceDetail).
                                        FirstOrDefaultAsync(c => c.Id == id);

            ChangeViewModel change = _converterHelper.ToChangeViewModel(changeEntity);

            return(View(change));
        }
        // GET: Changes/Delete/5
        public async Task <IActionResult> Delete(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            ChangeEntity changeEntity = await _context.Changes
                                        .FirstOrDefaultAsync(m => m.Id == id);

            if (changeEntity == null)
            {
                return(NotFound());
            }

            return(View(changeEntity));
        }
        public ChangeDTO ToDTO(ChangeEntity entity)
        {
            ChangeDTO dto = new ChangeDTO();

            dto.ID               = entity.ID;
            dto.UserID           = entity.UserID;
            dto.ToUserID         = entity.ID;
            dto.Amount           = entity.Amount;
            dto.ChangeType       = entity.ChangeType;
            dto.ChangeDate       = entity.ChangeDate;
            dto.CreateTime       = entity.CreateTime;
            dto.UserCode         = entity.UserInfo.UserCode;
            dto.TrueName         = entity.UserInfo.TrueName;
            dto.ToUserCode       = entity.ToUserInfo.UserCode;
            dto.ToTrueName       = entity.ToUserInfo.TrueName;
            dto.ChangeTypeName   = entity.ChangeTypeInfo.TypeName;
            dto.ChangeTypeNameEn = entity.ChangeTypeInfo.TypeNameEn;
            return(dto);
        }