package com.bweb.controller;

import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.hfkj.channel.gas.newlink.NewLinkRequestService;
import com.hfkj.common.utils.ResponseMsgUtil;
import com.hfkj.model.ResponseData;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;

import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;

@Controller
@RequestMapping(value = "/tuanYou")
@Api(value="团油业务")
public class TuanYouController {
    private static Logger log = LoggerFactory.getLogger(TuanYouController.class);

    @RequestMapping(value="/getTuanYouAccount",method = RequestMethod.GET)
    @ResponseBody
    @ApiOperation(value = "查询团油账户余额")
    public ResponseData getTuanYouAccount() {
        try {
            List<Map<String,Object>> accountList = new ArrayList<>();
            Map<String,Object> account = null;
            JSONObject object = NewLinkRequestService.queryCompanyAccountInfo2JD();
            if (!object.getJSONArray("result").isEmpty()) {
                JSONArray result = object.getJSONArray("result");
                for (Object obj : result) {
                    JSONObject jsonObject = (JSONObject) obj;
                    account = new LinkedHashMap<>();
                    if (jsonObject.getInteger("energyType") == 1) {
                        account.put("账户类型", "汽油");
                    } else if (jsonObject.getInteger("energyType") == 2) {
                        account.put("账户类型", "柴油");
                    } else if (jsonObject.getInteger("energyType") == 3) {
                        account.put("账户类型", "天然气");
                    }
                    account.put("账户编号", jsonObject.getString("accountNo"));
                    account.put("账户余额", jsonObject.getString("accountBalance"));
                    account.put("充值账户余额", jsonObject.getString("companyDepositBalance"));
                    account.put("赠送账户金额", jsonObject.getString("companyGivenBalance"));
                    accountList.add(account);
                }
            }
            return ResponseMsgUtil.success(accountList);

        } catch (Exception e) {
            log.error("getUserByTelephone",e);
            return ResponseMsgUtil.exception(e);
        }
    }

}
