using Microsoft.AspNetCore.Mvc;
using ARW.Admin.WebApi.Filters;
using ARW.Admin.WebApi.Controllers;
using ARW.Model.Dto.Api.Custom.Customers;
using ARW.Service.Api.IBusinessService.Custom.Customers;
using ARW.Model.Vo.Api.Custom.Customers;
using Geocoding;
using Infrastructure;
using ARW.Model.Models.Business.Custom.Customers;
using Infrastructure.Attribute;
using Infrastructure.Enums;
using Mapster;
using ARW.Admin.WebApi.Extensions;
using ARW.Admin.WebApi.Framework;
namespace ARW.WebApi.Controllers.Api.Custom.Customers
{
///
/// 小程序客户控制器Api
///
/// @author lwh
/// @date 2023-06-07
///
[Verify]
[Route("api/[controller]")]
public class CustomerApiController : BaseController
{
private readonly ICustomerServiceApi _CustomerServiceApi;
///
/// 依赖注入
///
/// 小程序客户小程序客户Api服务
public CustomerApiController(ICustomerServiceApi CustomerServiceApi)
{
_CustomerServiceApi = CustomerServiceApi;
}
///
/// 获取Customer详情(Api)
///
/// 查询参数
///
[HttpGet("getCustomerDetails")]
public async Task GetCustomerDetails([FromQuery] CustomerQueryDtoApi parm)
{
if (parm == null) throw new CustomException("参数错误!");
var res = await _CustomerServiceApi.GetCustomerDetails(parm);
if (res != "[]")
{
var data = res.FromJSON();
return SUCCESS(data);
}
else
{
return SUCCESS(res);
}
}
///
/// 编辑客户信息
///
///
///
[HttpPost("UpdateCustomer")]
[Log(Title = "编辑客户信息", BusinessType = BusinessType.UPDATE)]
public async Task AddOrUpdateCustomer([FromBody] CustomerDtoApi parm)
{
if (parm == null) { throw new CustomException("请求参数错误"); }
var user = JwtUtil.GetLoginUser(App.HttpContext);
parm.CustomerGuid = user.UserId;
var modal = new Customer();
modal = parm.Adapt().ToUpdate(HttpContext);
var res = await _CustomerServiceApi.UpdateCustomer(modal);
return SUCCESS(res);
}
}
}