123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- using Microsoft.AspNetCore.Http;
- using Microsoft.AspNetCore.Mvc;
- using trieTree.xiaoshi.sz.com;
- namespace AddressPaser.Controllers
- {
- [Route("api/[controller]/[action]")]
- [ApiController]
- public class AddressController : ControllerBase
- {
- private readonly AddressUtility parser;
- public AddressController(AddressUtility mySingleton)
- {
- parser = mySingleton;
- }
- [HttpGet(Name = "Paser")]
- public ResponseResult<Address> Paser(string Address)
- {
- try
- {
- List<string>? strings = parser.Paser(Address);
- if (strings != null)
- {
- ResponseResult<Address> ret = new ResponseResult<Address>();
- ret.Status = 200;
- ret.Message = string.Empty;
- ret.Result = new Address();
- ret.Result.OriginalAddress = Address;
- if (strings.Count > 0)
- {
- ret.Result.Province = strings[0];
- }
- if (strings.Count > 1)
- {
- ret.Result.City = strings[1];
- }
- if (strings.Count > 2)
- {
- ret.Result.Area = strings[2];
- }
- return ret;
- }
- else
- {
- ResponseResult<Address> ret = new ResponseResult<Address>();
- ret.Status = 500;
- ret.Message = "解析地址没有得到结果,请确认给出的地址是否正确!";
- ret.Result = new Address();
- ret.Result.OriginalAddress = Address;
- return ret;
- }
- }
- catch (Exception ex)
- {
- ResponseResult<Address> ret = new ResponseResult<Address>();
- ret.Status = 500;
- ret.Message = $"解析地址出错[{ex.Message}]";
- ret.Result = new Address();
- ret.Result.OriginalAddress = Address;
- return ret;
- }
- }
- }
- }
|