NewGaoKaoApi/New_College.Api/Controllers/Back/D_PlanMajorDescController.cs

245 lines
7.5 KiB
C#

using New_College.IServices;
using New_College.Model;
using New_College.Model.Models;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using System;
using System.Linq.Expressions;
using System.Threading.Tasks;
using New_College.Model.ViewModels;
using System.Linq;
using Org.BouncyCastle.Asn1.Ocsp;
namespace New_College.Api.Controllers
{
[Route("api/[controller]/[action]")]
[ApiController]
[Authorize]
public class D_PlanMajorDescController : ControllerBase
{
/// <summary>
/// 服务器接口,因为是模板生成,所以首字母是大写的,自己可以重构下
/// </summary>
private readonly ID_PlanMajorDescServices _d_PlanMajorDescServices;
private readonly ID_PlanMajorDescProServices _d_PlanMajorDescProServices;
public D_PlanMajorDescController(ID_PlanMajorDescServices D_PlanMajorDescServices, ID_PlanMajorDescProServices d_PlanMajorDescProServices)
{
_d_PlanMajorDescServices = D_PlanMajorDescServices;
_d_PlanMajorDescProServices = d_PlanMajorDescProServices;
}
/// <summary>
/// 查询扩缩招院校招生计划详情
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[HttpGet]
public async Task<MessageModel<MajorPlanProView>> GetMajorPlanPro([FromQuery] MajorPlanProViewQuery request)
{
if (request.Year <= 0)
{
return new MessageModel<MajorPlanProView>()
{
msg = "Year字段必传参数",
};
}
if (string.IsNullOrEmpty(request.Location))
{
return new MessageModel<MajorPlanProView>()
{
msg = "Location字段必传参数",
};
}
if (request.UId <= 0)
{
return new MessageModel<MajorPlanProView>()
{
msg = "UId字段必传参数",
};
}
var query = await _d_PlanMajorDescProServices.GetMajorPlanPro(request);
return new MessageModel<MajorPlanProView>()
{
response = query,
success = query != null&&query.itemViews!=null ? true : false,
msg = query != null && query.itemViews != null ? "获取成功" : "获取失败"
};
}
/// <summary>
/// 查询扩缩招院校列表
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[HttpPost]
public async Task<MessageModel<PageModel<UniversityPlanProView>>> GetUniversityPlanPro([FromBody] UniversityProViewQuery request)
{
var result = new PageModel<UniversityPlanProView>();
if (string.IsNullOrWhiteSpace(request.Location))
{
return new MessageModel<PageModel<UniversityPlanProView>>()
{
msg = "Location字段必传参数",
};
}
if (request.Year <= 0)
{
return new MessageModel<PageModel<UniversityPlanProView>>()
{
msg = "Year字段必传参数",
};
}
var pagemodel = await _d_PlanMajorDescProServices.GetUniversityPlanPro(request);
return new MessageModel<PageModel<UniversityPlanProView>>()
{
response = pagemodel,
success = pagemodel.data.Any() ? true : false,
msg = pagemodel.data.Any() ? "获取成功" : "获取失败"
};
}
/// <summary>
/// 一键填报
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[HttpGet]
public async Task<MessageModel<PageModel<OneSubmitGoResponse>>> OneSubmitGo([FromQuery] OneSubmitGoRequest request)
{
if (string.IsNullOrWhiteSpace(request.Location))
{
return new MessageModel<PageModel<OneSubmitGoResponse>>()
{
msg = "Location字段必传参数",
};
}
if (request.Year <= 0)
{
return new MessageModel<PageModel<OneSubmitGoResponse>>()
{
msg = "Year字段必传参数",
};
}
if (string.IsNullOrWhiteSpace(request.SubjectClaim))
{
return new MessageModel<PageModel<OneSubmitGoResponse>>()
{
msg = "SubjectClaim字段必传参数",
};
}
if (string.IsNullOrWhiteSpace(request.BatchName))
{
return new MessageModel<PageModel<OneSubmitGoResponse>>()
{
msg = "BatchName字段必传参数",
};
}
var response = await _d_PlanMajorDescServices.GetPlanMajorList(request);
if (response.data == null || !response.data.Any() || response.dataCount <= 0)
{
return new MessageModel<PageModel<OneSubmitGoResponse>>()
{
msg = "获取失败",
success = false,
response = response
};
}
return new MessageModel<PageModel<OneSubmitGoResponse>>()
{
msg = "获取成功",
success = true,
response = response
};
}
/// <summary>
/// AI智能填报
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[HttpGet]
public async Task<MessageModel<AIGOPageModel<AIGOResponse>>> AIGo([FromQuery] OneSubmitGoRequest request)
{
if (string.IsNullOrWhiteSpace(request.Location))
{
return new MessageModel<AIGOPageModel<AIGOResponse>>()
{
msg = "Location字段必传参数",
};
}
if (request.Year <= 0)
{
return new MessageModel<AIGOPageModel<AIGOResponse>>()
{
msg = "Year字段必传参数",
};
}
if (string.IsNullOrWhiteSpace(request.SubjectClaim))
{
return new MessageModel<AIGOPageModel<AIGOResponse>>()
{
msg = "SubjectClaim字段必传参数",
};
}
if (string.IsNullOrWhiteSpace(request.BatchName))
{
return new MessageModel<AIGOPageModel<AIGOResponse>>()
{
msg = "BatchName字段必传参数",
};
}
var response = await _d_PlanMajorDescServices.GetAIGoList(request);
if (response.data == null || !response.data.Any() || response.dataCount <= 0)
{
return new MessageModel<AIGOPageModel<AIGOResponse>>()
{
msg = "获取失败",
success = false,
response = response
};
}
return new MessageModel<AIGOPageModel<AIGOResponse>>()
{
msg = "获取成功",
success = true,
response = response
};
}
}
}