using ExportMap.cs; using ExportMap.Models; using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Http; using System.Web.Http; namespace ExportMap.Controllers { public class ConvertController : ApiController { /// /// 转换为Tileset /// [HttpPost] public ResponseMsg ToTileset([FromBody]XYZArgs args) { try { if (null == args || null == args.ids || args.ids.Count == 0) { return ResponseMsg.fail("请输入元数据ID"); } if (string.IsNullOrWhiteSpace(args.token)) { return ResponseMsg.fail("没有令牌"); } if (!ExportUtil.VerifyToken(args.token)) { return ResponseMsg.fail("令牌无效"); } int count = ConvertUtils.Convert(args); if (0 == count) { return ResponseMsg.fail("失败"); } return ResponseMsg.success("成功", "ok", count); } catch (Exception ex) { LogOut.Error(ex.StackTrace); return ResponseMsg.fail(ex.Message); } } /// /// 转换为瓦片 /// [HttpPost] public ResponseMsg ToTiles([FromBody]XYZArgs args) { try { if (null == args || null == args.ids || args.ids.Count == 0) { return ResponseMsg.fail("请输入元数据ID"); } if (string.IsNullOrWhiteSpace(args.token)) { return ResponseMsg.fail("没有令牌"); } if (!ExportUtil.VerifyToken(args.token)) { return ResponseMsg.fail("令牌无效"); } if (args.min < 0 || args.max > 20 || string.IsNullOrWhiteSpace(args.dircode)) { return ResponseMsg.fail("输入的参数有误"); } string err = null; int count = XYZUtils.Generate(args, ref err); if (0 == count) { return ResponseMsg.fail(null == err ? "失败" : err); } return ResponseMsg.success("成功", "ok", count); } catch (Exception ex) { LogOut.Error(ex.StackTrace); return ResponseMsg.fail(ex.Message); } } /// /// 转换为瓦片 /// [HttpPost] public ResponseMsg ToSG([FromBody]XYZArgs args) { try { if (null == args || null == args.ids || args.ids.Count == 0) { return ResponseMsg.fail("请输入元数据ID"); } if (string.IsNullOrWhiteSpace(args.token)) { return ResponseMsg.fail("没有令牌"); } if (!ExportUtil.VerifyToken(args.token)) { return ResponseMsg.fail("令牌无效"); } SGUtils utils = new SGUtils(); string err = null; int count = utils.Release(args, ref err); if (0 == count) { return ResponseMsg.fail(null == err ? "失败" : err); } return ResponseMsg.success("成功", "ok", count); } catch (Exception ex) { LogOut.Error(ex.StackTrace); return ResponseMsg.fail(ex.Message); } } } }