diff --git a/OpenAuth.App/ServiceApp/DroneSsnydManage/DroneSsnyApp.cs b/OpenAuth.App/ServiceApp/DroneSsnydManage/DroneSsnyApp.cs index 531ebe0..505a89e 100644 --- a/OpenAuth.App/ServiceApp/DroneSsnydManage/DroneSsnyApp.cs +++ b/OpenAuth.App/ServiceApp/DroneSsnydManage/DroneSsnyApp.cs @@ -506,16 +506,21 @@ namespace OpenAuth.App.ServiceApp.DroneSsnydManage // todo shp 解析 var project = req.MapTo(); var oldProject = await Repository.GetByIdAsync(project.Id); - var geomid = oldProject.geomid; - var geometry = new DroneShpData() - { - gid = int.Parse(geomid), - geom = "" - }; using var uow = base.UnitWork.CreateContext(); - var a = await uow.DroneShpData.AsUpdateable(geometry).IgnoreNullColumns().ExecuteCommandAsync(); + if (string.IsNullOrEmpty(req.shpPath)) + { + var geomid = oldProject.geomid; + var geometry = new DroneShpData() + { + gid = int.Parse(geomid), + geom = "" + }; + await uow.DroneShpData.AsUpdateable(geometry).IgnoreNullColumns().ExecuteCommandAsync(); + } + + var b = await uow.DroneSsnyd.AsUpdateable(project).IgnoreNullColumns().ExecuteCommandAsync(); - if (a > 0 && b > 0) + if (b > 0) { uow.Commit(); }