public ActionResult CarVisitorRecord() { int total = 0; List <VisitorInfo> visitors = ParkVisitorServices.GetVisitorInfoPage(UserAccount.AccountID, 1, 50, out total); return(View(visitors)); }
public ActionResult CancelVisitor(string visitorId) { try{ bool result = ParkVisitorServices.CancelVisitor(visitorId); if (!result) { throw new MyException("取消访客信息失败"); } return(RedirectToAction("CarVisitorRecord", "CarVisitor", new { RemindUserContent = "取消成功" })); } catch (Exception ex) { ExceptionsServices.AddExceptionToDbAndTxt("CarVisitor", "取消访客失败", ex, LogFrom.WeiXin); return(RedirectToAction("CarVisitorRecord", "CarVisitor", new { message = "取消访客失败" })); } }
protected override void ProcessRule(InputAgs args, ResultAgs rst) { rst.InOutBaseCardType = BaseCarType.TempCar; string errorMsg = ""; if (args.CarTypeInfo.IsIgnoreHZ && args.Plateinfo.LicenseNum.Length >= 7) { var plateNumber = args.Plateinfo.LicenseNum.Substring(1, args.Plateinfo.LicenseNum.Length - 1); var iorecord = ParkIORecordServices.QueryInCarTempIORecordByLikePlateNumber(args.AreadInfo.PKID, plateNumber, out errorMsg); if (iorecord != null) { args.Plateinfo.LicenseNum = iorecord.PlateNumber; } } IsPoliceFree(args, rst); var blackList = ParkBlacklistServices.GetBlacklist(args.AreadInfo.PKID, args.Plateinfo.LicenseNum, out errorMsg); if (blackList != null) { if (blackList.Status == BlackListStatus.NotEnterAndOut) { rst.ResCode = ResultCode.BlacklistCar; return; } if (args.GateInfo.IoState == IoState.GoOut && blackList.Status == BlackListStatus.CanEnterAndNotOut) { rst.ResCode = ResultCode.BlacklistCar; return; } } var vistar = ParkVisitorServices.GetNormalVisitor(args.AreadInfo.Parkinfo.VID, args.Plateinfo.LicenseNum, out errorMsg); if (vistar != null && args.Plateinfo.TriggerTime >= vistar.BeginDate && args.Plateinfo.TriggerTime <= vistar.EndDate && (vistar.VisitorCount > 0 || vistar.VisitorCount == -1)) { var vistarcar = ParkVisitorServices.GetVisitorCar(args.AreadInfo.PKID, vistar.RecordID, out errorMsg); if (vistarcar != null && (vistar.VisitorCount == -1 || vistar.VisitorCount > vistarcar.AlreadyVisitorCount)) { //访客表中 在时段内 且进出次数大于已经进出次数时 允许进出 var carModelid = vistar.CarModelID; if (!carModelid.IsEmpty()) { var carModel = ParkCarModelServices.QueryByRecordId(vistar.CarModelID); if (carModel != null) { args.CarModel = carModel; } } rst.ValidMsg = "访客车辆"; rst.IsVisitorCar = true; rst.VisitorCar = vistarcar; return; } else if (args.GateInfo.IsTempInOut == YesOrNo.No) { rst.ResCode = ResultCode.NoPermissionsInOut; return; } } else if (args.GateInfo.IsTempInOut == YesOrNo.No) //子区域允许月卡进出 { if (!rst.IsPoliceFree) { rst.ResCode = ResultCode.NoPermissionsInOut; return; } } }
public ActionResult SaveCarVisitor() { try { VisitorInfo vistor = new VisitorInfo(); vistor.RecordID = GuidGenerator.GetGuid().ToString(); if (string.IsNullOrWhiteSpace(Request["villageId"])) { throw new MyException("获取小区编号失败"); } if (string.IsNullOrWhiteSpace(Request["plateNo"])) { throw new MyException("获取车牌号失败"); } if (string.IsNullOrWhiteSpace(Request["ParkingIds"])) { throw new MyException("获取车场编号失败"); } string villageId = Request["villageId"].ToString(); DateTime start = DateTime.Now; if (string.IsNullOrWhiteSpace(Request["startTime"]) || !DateTime.TryParse(Request["startTime"], out start)) { throw new MyException("获取开始时间失败"); } DateTime end = DateTime.Now; if (string.IsNullOrWhiteSpace(Request["endTime"]) || !DateTime.TryParse(Request["endTime"], out end)) { throw new MyException("获取结束时间失败"); } vistor.PlateNumber = Request["plateNo"].ToString(); vistor.BeginDate = start; vistor.EndDate = end; vistor.VisitorCount = int.Parse(Request["VisitorCount"].ToString()); vistor.VisitorMobilePhone = Request["VisitorMobilePhone"].ToString(); vistor.AccountID = UserAccount.AccountID; vistor.CreateTime = DateTime.Now; vistor.VisitorState = 0; vistor.VID = villageId; vistor.IsExamine = 1; vistor.OperatorID = UserAccount.AccountID; vistor.VisitorSource = 1; string[] parkingIds = Request["ParkingIds"].ToString().TrimEnd(',').Split(','); List <ParkVisitor> carVisitors = new List <ParkVisitor>(); for (int i = 0; i < parkingIds.Length; i++) { ParkVisitor car = new ParkVisitor(); car.RecordID = GuidGenerator.GetGuid().ToString(); car.VisitorID = vistor.RecordID; car.PKID = parkingIds[i]; car.VID = villageId; car.AlreadyVisitorCount = 0; carVisitors.Add(car); } vistor.ParkVisitors = carVisitors; bool result = ParkVisitorServices.Add(vistor); if (!result) { throw new MyException("保存访客信息失败"); } return(RedirectToAction("CarVisitorRecord", "H5CarVisitor")); } catch (MyException ex) { return(PageAlert("Index", "H5CarVisitor", new { RemindUserContent = ex.Message })); } catch (Exception ex) { ExceptionsServices.AddExceptionToDbAndTxt("H5CarVisitorError", "获取访客车场失败", ex, LogFrom.WeiXin); return(RedirectToAction("Index", "ErrorPrompt", new { message = "获取访客车场失败" })); } }