namespace OASystem.API.Controllers { /// /// 资料相关 /// //[Authorize] [Route("api/[controller]/[action]")] public class ResourceController : ControllerBase { private readonly IMapper _mapper; private readonly IConfiguration _config; private readonly CarDataRepository _carDataRep; private readonly LocalGuideDataRepository _localGuideDataRep; public ResourceController(IMapper mapper, IConfiguration config, CarDataRepository carDataRep, LocalGuideDataRepository localGuideDataRep) { _mapper = mapper; _config = config; _carDataRep = carDataRep; _localGuideDataRep = localGuideDataRep; } #region 车公司资料板块 /// /// 车公司信息查询 /// /// [HttpPost] [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)] public async Task QuerCarData(DtoBase dto) { try { if (dto.PortType==1) { var carDada = _carDataRep.QueryDto().ToList(); if (carDada.Count == 0) { return Ok(JsonView(false, "暂无数据!")); } carDada = carDada.OrderByDescending(s => s.CreateTime).ToList(); return Ok(JsonView(true, "查询成功", carDada)); } else if(dto.PortType==2) { var carDada = _carDataRep.QueryDto().ToList(); if (carDada.Count == 0) { return Ok(JsonView(false, "暂无数据!")); } carDada=carDada.OrderByDescending(s=>s.CreateTime).ToList(); return Ok(JsonView(true, "查询成功", carDada)); } else { return Ok(JsonView(false, "请传入PortType参数!1:Web,2:Android,3:IOS")); } } catch (Exception ex) { return Ok(JsonView(false, "程序错误!")); throw; } } /// /// 车公司信息添加 /// /// [HttpPost] [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)] public async Task AddCarData(AddCarDataDto dto) { try { if (dto.UnitArea == "") { return Ok(JsonView(false, "请检查单位区域是否填写!")); } if (dto.UnitName == "") { return Ok(JsonView(false, "请检查单位名称是否填写!")); } if (dto.Contact == "") { return Ok(JsonView(false, "请检查单位联系人是否填写!")); } if (dto.ContactTel == "") { return Ok(JsonView(false, "请检查联系方式是否填写正确!")); } var carDada = _carDataRep.QueryDto(a=>a.UnitArea==dto.UnitArea && a.UnitName==dto.UnitName && a.Contact==dto.Contact && a.ContactTel==dto.ContactTel).ToList(); if (carDada.Count!=0) { return Ok(JsonView(false, "该信息已存在,请勿重复添加!")); } Res_CarData _CarData = _mapper.Map(dto); int id = await _carDataRep.AddAsyncReturnId(_CarData); if (id == 0) { return Ok(JsonView(false, "添加失败!")); } return Ok(JsonView(true, "添加成功", new { Id = id })); } catch (Exception ex) { return Ok(JsonView(false, "程序错误!")); throw; } } /// /// 车公司信息修改 /// /// [HttpPost] [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)] public async Task UpCarData(UpCarDataDto dto) { try { if (dto.UnitArea == "") { return Ok(JsonView(false, "请检查单位区域是否填写!")); } if (dto.UnitName == "") { return Ok(JsonView(false, "请检查单位名称是否填写!")); } if (dto.Contact == "") { return Ok(JsonView(false, "请检查单位联系人是否填写!")); } if (dto.ContactTel == "") { return Ok(JsonView(false, "请检查联系方式是否填写正确!")); } bool res = await _carDataRep.UpdateAsync(a => a.Id == dto.Id, a => new Res_CarData { UnitArea = dto.UnitArea, UnitName = dto.UnitName, Address = dto.Address, Contact = dto.Contact, ContactTel = dto.ContactTel, ContactEmail = dto.ContactEmail, ContactFax = dto.ContactFax, CarDes = dto.CarDes, CarPicPaths = dto.CarPicPaths, OtherInfo = dto.OtherInfo, Score = dto.Score, QualificationScore = dto.QualificationScore, CarAgeScore = dto.CarAgeScore, CleanImgScore = dto.CleanImgScore, SmellScore = dto.SmellScore, WaterPaperScore = dto.WaterPaperScore, HardwareScore = dto.HardwareScore, TimeScore = dto.TimeScore, SafetyScore = dto.SafetyScore, DrivingAgeScore = dto.DrivingAgeScore, Remark = dto.Remark, }); if (!res) { return Ok(JsonView(false, "修改失败!")); } return Ok(JsonView(true, "修改成功")); } catch (Exception ex) { return Ok(JsonView(false, "程序错误!")); throw; } } /// /// 车公司信息删除 /// /// [HttpPost] [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)] public async Task DelCarData(DelCarDataDto dto) { try { bool res = await _carDataRep.SoftDeleteByIdAsync(dto.Id.ToString(), dto.DeleteUserId); if (!res) { return Ok(JsonView(false, "删除失败!")); } return Ok(JsonView(true, "删除成功")); } catch (Exception ex) { return Ok(JsonView(false, "程序错误!")); throw; } } #endregion #region 导游地接资料板块 /// /// 导游地接资料查询 /// /// /// [HttpPost] [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)] public async Task QuerLocalGuide(DtoBase dto) { try { if (dto.PortType == 1) { var LocalGuideData = _localGuideDataRep.QueryDto().ToList(); if (LocalGuideData.Count == 0) { return Ok(JsonView(false, "暂无数据!")); } LocalGuideData = LocalGuideData.OrderByDescending(s => s.CreateTime).ToList(); return Ok(JsonView(true, "查询成功", LocalGuideData)); } else if (dto.PortType == 2) { var LocalGuideData = _localGuideDataRep.QueryDto().ToList(); if (LocalGuideData.Count == 0) { return Ok(JsonView(false, "暂无数据!")); } LocalGuideData = LocalGuideData.OrderByDescending(s => s.CreateTime).ToList(); return Ok(JsonView(true, "查询成功", LocalGuideData)); } else { return Ok(JsonView(false, "请传入PortType参数!1:Web,2:Android,3:IOS")); } } catch (Exception ex) { return Ok(JsonView(false, "程序错误!")); throw; } } /// /// 导游地接信息操作(增改) /// /// [HttpPost] [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)] public async Task LocalGuideOperation(LocalGuideOperationDto dto) { try { if (dto.UnitArea == "") { return Ok(JsonView(false, "请检查单位区域是否填写!")); } if (dto.UnitName == "") { return Ok(JsonView(false, "请检查单位名称是否填写!")); } if (dto.Contact == "") { return Ok(JsonView(false, "请检查单位联系人是否填写!")); } if (dto.ContactTel == "") { return Ok(JsonView(false, "请检查联系方式是否填写正确!")); } Result result = await _localGuideDataRep.LocalGuideOperation(dto); if (result.Code != 0) { return Ok(JsonView(false, result.Msg)); } return Ok(JsonView(true, result.Msg, new { Id = result.Data })); } catch (Exception ex) { return Ok(JsonView(false, "程序错误!")); throw; } } /// /// 导游地接信息操作(删除) /// /// [HttpPost] [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)] public async Task LocalGuideDel(LocalGuideDelDto dto) { try { var res = await _localGuideDataRep.SoftDeleteByIdAsync(dto.Id.ToString(),dto.DeleteUserId); if (!res) { return Ok(JsonView(false, "删除失败")); } return Ok(JsonView(true,"删除成功!")); } catch (Exception ex) { return Ok(JsonView(false, "程序错误!")); throw; } } #endregion } }