using Vo; using Microsoft.AspNetCore.Mvc; using Model; using Services; using Model.Base; using Vo.Admin; using Mapster; using Infrastructure; namespace Controllers.Admin { /// /// AppProjectBottom)Controller /// // [Route("${Router}$")] // [ApiExplorerSettings(GroupName = "AppProjectBottom")] public class AppProjectBottomController : BaseController { /// /// api分组接口 /// private readonly IAppProjectBottomService _AppProjectBottomService; public AppProjectBottomController(IAppProjectBottomService AppProjectBottomService) { _AppProjectBottomService = AppProjectBottomService; } /// 分页参数 /// /// 列表 /// /// 分页对象 /// 参数请求体 /// 列表 [HttpGet] [Route("/v1/omega_source/AppProjectBottom/getAppProjectBottomList")] public IActionResult getAppProjectBottomList([FromQuery] PagerInfo page, [FromQuery] AppProjectBottom param) { var response = _AppProjectBottomService.getAppProjectBottomList(page, param); return SUCCESS(response); } /// /// 详情 /// /// 参数请求体 /// 详情 [HttpGet] [Route("/v1/omega_source/AppProjectBottom/getAppProjectBottomQuery")] public IActionResult getAppProjectBottomQuery([FromQuery] AppProjectBottom param) { var response = _AppProjectBottomService.GetFirst(m => m.id == param.id).Adapt(); return SUCCESS(response); } /// /// 添加 /// /// 参数请求体 /// 添加 [HttpPost] [Route("/v1/omega_source/AppProjectBottom/addAppProjectBottom")] public IActionResult addAppProjectBottom([FromBody] AppProjectBottom param) { var modal = param.Adapt().ToCreate(HttpContext); var response = _AppProjectBottomService.InsertReturnIdentity(modal); return SUCCESS(response); } /// /// 修改 /// /// 参数请求体 /// 修改 [HttpPut] [Route("/v1/omega_source/AppProjectBottom/updateAppProjectBottom")] public IActionResult updateAppProjectBottom([FromBody] List param) { int index = 0; int appId = 0; int versionId = 0; foreach(var subParam in param) { appId = subParam.appId; versionId = subParam.versionId; index += 1; var item = _AppProjectBottomService.GetFirst(m => m.appId == appId && m.versionId == versionId && m.pageName == subParam.pageName); if(item != null) { var modal = subParam.Adapt().ToUpdate(HttpContext); modal.id = item.id; modal.sort = index; _AppProjectBottomService.Update(modal, true); } else { var modal = subParam.Adapt().ToCreate(HttpContext); modal.sort = index; _AppProjectBottomService.Add(modal, true); } } var list = _AppProjectBottomService.GetList(m => m.appId == appId && m.versionId == versionId); foreach(var sub in list) { if(!param.Any(m => m.pageName == sub.pageName)) { _AppProjectBottomService.DeleteById(sub.id); } } return SUCCESS("ok"); } /// /// 删除 /// /// ID /// 删除 [HttpDelete] [Route("/v1/omega_source/AppProjectBottom/deleteAppProjectBottom/{id}")] public IActionResult deleteAppProjectBottom(int id) { var response = _AppProjectBottomService.Delete(id); return SUCCESS(response); } } }