using BZPT.Domains.Entity.Sys;
using BZPT.Domains.IService.Sys;
using BZPT.Domains.Services.Sys;
using BZPT.Dto.Sys;
using DevExtreme.AspNet.Data;
using Microsoft.AspNetCore.Mvc;
using Microsoft.CodeAnalysis;
using NPlatform.API;
using System.ComponentModel.Design;
using System.Security.Claims;
using System.Xml.Linq;
namespace BZPT.Api.Controllers
{
///
/// 工程项目基本信息
///
[Route("api/[controller]/[action]")]
public class ProjectInfoController : BaseController
{
[Autowired]
private ILogger Loger { get; set; }
///
/// 工程项目基本信息
///
IProjectInfoService _ProjectInfoService { get; set; }
public ProjectInfoController(ILogger loger, IProjectInfoService ProjectInfoService)
{
Loger = loger;
_ProjectInfoService = ProjectInfoService;
}
///
/// 根据获取项目树
///
/// 用户 ID
/// 资源树结构
[HttpGet]
public async Task GetUserProjectTree(string setId)
{
var treeData = await _ProjectInfoService.GetUserProjectTree(setId);
return treeData;
}
///
/// 根据用户获取项目、标段、施工队、班组树
///
/// 显示层级,0项目,1标段,2劳务队,3班组
/// 资源树结构
[HttpGet]
public async Task GetPSTWTree(int leve)
{
var treeData = await _ProjectInfoService.GetProjectTree(Context.UserID, leve);
return treeData;
}
///
/// 根据角色获取项目树
///
/// 用户 ID
/// 层级
/// 资源树结构
[HttpGet]
public async Task GetOrgProjectTree(string setOrg, int leve = 0)
{
var treeData = await _ProjectInfoService.GetOrgProjectTree(setOrg, leve);
return treeData;
}
///
///工程项目基本信息列表分页
///
///
///
// GET: api/
[HttpGet]
public async Task GetPage(DataSourceLoadOptions dataSourceLoadOptions)
{
return await _ProjectInfoService.GetPageAsync(dataSourceLoadOptions);
}
///
/// 添加工程项目基本信息
///
///
///
// POST api/
[HttpPost]
public async Task Post([FromBody] ProjectInfoDto resource)
{
return await _ProjectInfoService.ProjectInfoAdd(resource);
}
/////
///// 添加工程项目用户列表
/////
/////
/////
//// POST api/
//[HttpPost]
//public async Task PostProjectUsers([FromBody] ProjectUserDto proUser)
//{
// return await _ProjectInfoService.ProjectUserAdd(proUser);
//}
/////
///// 获取用户列表分页
/////
/////
/////
//// GET: api/
//[HttpGet]
//public async Task GetProUserPage([FromQuery]string projectId, [FromQuery] DataSourceLoadOptions whereExp)
//{
// if (Context.Account != "admin")
// {
// whereExp.And(new List