コード例 #1
0
        public async Task <ResponseData <EnterResult> > PostEnterAsync([FromBody] ParkingGateRequest request)
        {
            string licensePlate = request.LicensePlate;
            string token        = request.Token;

            try
            {
                var pa = (await db.ParkAreas.ToListAsync()).FirstOrDefault(p => p.GateTokens.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries).Contains(token));
                if (pa == null)
                {
                    return(new ResponseData <EnterResult>()
                    {
                        Succeed = false, Message = "找不到对应的停车区"
                    });
                }
                return(new ResponseData <EnterResult>()
                {
                    Data = await ParkService.EnterAsync(db, licensePlate, pa)
                });
            }
            catch (Exception ex)
            {
                return(new ResponseData <EnterResult>()
                {
                    Succeed = false, Message = ex.Message
                });
            }
        }
コード例 #2
0
ファイル: Program.cs プロジェクト: cqt6/ParkingManagement
        private static async Task TestTempCarOwnerEnterAndLeaveAsync()
        {
            await ParkService.EnterAsync(db, "浙B12345", await db.ParkAreas.FirstAsync());

            await Task.Delay(2000);

            var result = await ParkService.LeaveAsync(db, "浙B12345", await db.ParkAreas.FirstAsync());

            WriteObject(result);
        }
コード例 #3
0
ファイル: Program.cs プロジェクト: cqt6/ParkingManagement
        private static async Task TestGeneralCarOwnerEnterAndLeaveAsync()
        {
            Car car = await db.Cars.FirstAsync();

            await TransactionService.RechargeMoneyAsync(db, car.CarOwnerID.Value, 100);//模拟充值100元

            await ParkService.EnterAsync(db, car.LicensePlate, await db.ParkAreas.FirstAsync());

            await Task.Delay(2000);

            await ParkService.LeaveAsync(db, car.LicensePlate, await db.ParkAreas.FirstAsync());

            WriteObject(await db.ParkRecords.LastOrDefaultRecordAsync(p => p.EnterTime));
            WriteObject((await db.ParkRecords.LastOrDefaultRecordAsync(p => p.EnterTime)).TransactionRecord);
        }