using System;
using System.Collections.Generic;
using System.Linq;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Options;
using Microsoft.AspNetCore.Authorization;

using System.Web;
using MySystem.MainModels;
using LitJson;
using Library;

namespace MySystem.Areas.Api.Controllers.v1
{
    [Area("Api")]
    [Route("Api/[controller]/[action]")]
    public class HkController : BaseController
    {
        public HkController(IHttpContextAccessor accessor, ILogger<BaseController> logger, IOptions<Setting> setting) : base(accessor, logger, setting)
        {
        }



        #region 押金活动
        public string ActiveList(string value)
        {
            string content = "";
            try
            {
                JsonData data = JsonMapper.ToObject(value);
                string sn = data["sn"].ToString();
                int brandId = int.Parse(data["brandId"].ToString());
                content = PublicImportDataService.Instance.QueryActiveForConfigHK(sn, brandId);
            }
            catch(Exception ex)
            {
                function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString(), "设置海科押金异常");
            }
            return content;
        }
        #endregion


        #region 设置押金
        public string SetDeposit(string value)
        {
            string content = "";
            try
            {
                JsonData data = JsonMapper.ToObject(value);
                string sn = data["sn"].ToString();
                string oldMarketId = data["oldMarketId"].ToString();
                string newMarketId = data["newMarketId"].ToString();
                int brandId = int.Parse(data["brandId"].ToString());
                content = PublicImportDataService.Instance.SetDepositForHK(sn, oldMarketId, newMarketId, brandId);
            }
            catch(Exception ex)
            {
                function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString(), "设置海科押金异常");
            }
            return content;
        }
        #endregion


        #region 设置费率
        public string SetFee(string value)
        {
            string content = "";
            try
            {
                JsonData data = JsonMapper.ToObject(value);
                string sn = data["sn"].ToString();
                string bzConfigId = data["bzConfigId"].ToString();
                string yhConfigId = data["yhConfigId"].ToString();
                string surfeeConfigId = data["surfeeConfigId"].ToString();
                int brandId = int.Parse(data["brandId"].ToString());
                content = PublicImportDataService.Instance.HKSetFeeForBrand(sn, bzConfigId, yhConfigId, surfeeConfigId, brandId);
            }
            catch(Exception ex)
            {
                function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString(), "设置海科费率异常");
            }
            return content;
        }
        #endregion

    }
}

