Compare commits

...

4 Commits

Author SHA1 Message Date
洁 任 80808cd3dd 修改作业区域 1 month ago
洁 任 d540cefea2 Merge branch 'main' of http://123.132.248.154:10000/HC_YFZX/LASAPlatform 1 month ago
洁 任 01b87dbbf2 合并 2 months ago
洁 任 1bbb6f5dac 授权 2 months ago

@ -4,6 +4,7 @@ using System.Drawing;
using System.Dynamic;
using System.Net;
using System.Text;
using DocumentFormat.OpenXml.Office2010.Excel;
using Infrastructure;
using Infrastructure.CloudSdk;
using Infrastructure.CloudSdk.minio;
@ -1314,6 +1315,63 @@ namespace OpenAuth.App.ServiceApp
}
}
/// <summary>
/// 批量添加地图作业区域
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public async Task<Response<string>> AddWorkAreas(ShpDataReq model)
{
var _user = _auth.GetCurrentUser().User;
using (var uow = base.UnitWork.CreateContext())
{
if (model != null)
{
List<LasaShpData> shpDatas = new List<LasaShpData>();
foreach (var item in model.Geom)
{
LasaShpData ls = new LasaShpData();
//获取主键
string id = Guid.NewGuid().ToString();
ls.Id = id;
ls.CreateTime = DateTime.Now;
ls.CreateUser = _user.Id.ToString();
ls.CreateUserName = _user.Name.ToString();
ls.Name=model.Name;
ls.Type= model.Type;
ls.WorkSpaceId= model.WorkSpaceId;
ls.Properties=model.Properties;
ls.Geom = null;
//格式化数据
//string _wktModel = _commonDataManager.WktDataConvert(model.Geom, "MULTIPOLYGON ZM", 4);
string _wktModel = item;
StringBuilder geomSql = new StringBuilder();
geomSql.AppendFormat(
$" update lasa_shpdata set \"Geom\" = st_geomfromtext('{_wktModel}',4326) where \"Id\" = '{id}'");
//本地数据库数据添加
await uow.LasaShpData.InsertAsync(ls);
await uow.Db.Ado.ExecuteCommandAsync(geomSql.ToString());
}
}
var transFlag=uow.Commit();
if (transFlag)
return new Response<string>
{
Result = "true",
Message = "新增成功"
};
else
return new Response<string>
{
Message = "新增失败"
};
}
}
/// <summary>
/// 更新地图作业区域
/// </summary>
@ -1390,7 +1448,7 @@ namespace OpenAuth.App.ServiceApp
/// </summary>
/// <param name="workspaceid">项目id</param>
/// <returns></returns>
public async Task<Response<List<LasaShpData>>> GetWorkAreaList(string workspaceid, int? state, string type)
public async Task<Response<List<LasaShpData>>> GetWorkAreaList(string workspaceid, string type)
{
using (var db = UnitWork.CreateContext())
{
@ -1402,10 +1460,10 @@ namespace OpenAuth.App.ServiceApp
list = list.Where(r => r.Type == type).ToList();
}
if (state != null)
{
list = list.Where(r => r.State == state).ToList();
}
//if (state != null)
//{
// list = list.Where(r => r.State == state).ToList();
//}
if (!string.IsNullOrEmpty(workspaceid))
{

@ -0,0 +1,48 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace OpenAuth.App.ServiceApp.Request
{
public class ShpDataReq
{
public string Id { get; set; }
/// <summary>
/// Desc:名称
/// Default:
/// Nullable:True
/// </summary>
public string Name { get; set; }
/// <summary>
/// Desc:类型(区分限飞区域,作业区域等)
/// Default:
/// Nullable:True
/// </summary>
public string Type { get; set; }
/// <summary>
/// Desc:属性边框属性颜色宽度等json格式
/// Default:
/// Nullable:True
/// </summary>
public string Properties { get; set; }
/// <summary>
/// Desc:项目id
/// Default:
/// Nullable:True
/// </summary>
public string WorkSpaceId { get; set; }
/// <summary>
/// Desc:区域
/// Default:
/// Nullable:True
/// </summary>
public List<string> Geom { get; set; }
}
}

@ -72,9 +72,6 @@ namespace OpenAuth.Repository.Domain
/// </summary>
public string WorkSpaceId {get;set;}
public int State { get;set;}
public string CreateUserName { get; set;}
public decimal Area { get; set; }
public decimal Length { get; set; }
}
}

@ -12,6 +12,7 @@ using SqlSugar;
using Infrastructure.Extensions;
using Infrastructure.Utilities;
using NPOI.POIFS.Properties;
using Infrastructure.Auth;
namespace OpenAuth.WebApi.Controllers
{
@ -241,6 +242,47 @@ namespace OpenAuth.WebApi.Controllers
return result;
}
//[HttpGet]
//[AllowAnonymous]
//public Response<IEnumerable<ModuleView>> Get()
//{
// var result = new Response<IEnumerable<ModuleView>>();
// try
// {
// var licenseManager = new LicenseManager();
// var trialLicense = new LicenseInfo
// {
// UserName = "testUser",
// StartTime = DateTime.Now,
// EndTime = DateTime.Now.AddDays(30), // 30天试用
// LicenseType = LicenseType.Permanent,
// HardwareId = licenseManager.GetHardwareId() // 绑定当前设备-
// // WIN-0E5RH63Q8QF 163
// //HardwareId = "WIN-D1KHS3P8VAB" 123
// //HardwareId = "WIN-0E5RH63Q8QF"
// };
// string licenseCode = licenseManager.GenerateLicense(trialLicense);
// System.IO.File.WriteAllText("E:\\低空态势感知\\code\\OpenAuth.WebApi\\license.lic", licenseCode);
// }
// catch (CommonException ex)
// {
// if (ex.Code == Define.INVALID_TOKEN)
// {
// result.Code = ex.Code;
// result.Message = ex.Message;
// }
// else
// {
// result.Code = 500;
// result.Message = ex.InnerException != null
// ? "OpenAuth.WebAPI数据库访问失败:" + ex.InnerException.Message
// : "OpenAuth.WebAPI数据库访问失败:" + ex.Message;
// }
// }
// return result;
//}
/// <summary>
/// 获取登录用户的所有可访问的模块及菜单,以树状结构返回
/// <param name="typeid">菜单类型</param>

@ -668,6 +668,28 @@ namespace OpenAuth.WebApi.Controllers.ServiceControllers
return res;
}
/// <summary>
/// 批量添加地图作业区域
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
[HttpPost]
public async Task<Response<string>> AddWorkAreas([FromBody] ShpDataReq model)
{
var res = new Response<string>();
try
{
return await _app.AddWorkAreas(model);
}
catch (Exception ex)
{
res.Code = 500;
res.Message = ex.InnerException?.Message ?? ex.Message;
}
return res;
}
/// <summary>
/// 更新地图作业区域
/// </summary>
@ -709,12 +731,12 @@ namespace OpenAuth.WebApi.Controllers.ServiceControllers
/// <param name="type">区域类型(作业区,限飞区等)</param>
/// <returns></returns>
[HttpGet]
public async Task<Response<List<LasaShpData>>> GetWorkAreaList(string workspaceid, int? state, string type)
public async Task<Response<List<LasaShpData>>> GetWorkAreaList(string workspaceid, string type)
{
var result = new Response<List<LasaShpData>>();
try
{
result = await _app.GetWorkAreaList(workspaceid, state, type);
result = await _app.GetWorkAreaList(workspaceid, type);
}
catch (Exception ex)
{

Loading…
Cancel
Save