# Path: kquant_data/wind/utils.py
# def asDateTime(v, asDate=False):
#     """
#     万得中读出来的时间总多5ms，覆写这部分
#     w.asDateTime = asDateTime
#     w.start()
#     :param v:
#     :param asDate:
#     :return:
#     """
#     # return datetime(1899, 12, 30, 0, 0, 0, 0) + timedelta(v + 0.005 / 3600 / 24)
#     return datetime(1899, 12, 30, 0, 0, 0, 0) + timedelta(v)


import os
import pandas as pd
from .utils import asDateTime
调用wset函数的部分

下载数据的方法
1.在时间上使用折半可以最少的下载数据，但已经下了一部分，要补下时如果挪了一位，又得全重下
2.在文件上，三个文件一组，三组一样，删中间一个，直到不能删了，退出
"""


def download_sectorconstituent(w, date, sector, windcode, field='wind_code'):
    """
    板块成份
    中信证券一级行业指数：时间好像没有必要，因为日历日也会查询出来
    风险警示股票：日期就是查询的日期，股票也是最新名，没有啥用

    w.wset("sectorconstituent","date=2017-03-03;sectorid=a001010100000000;field=wind_code")
    w.wset("sectorconstituent","date=2017-03-03;sectorid=a001010100000000")
    w.wset("sectorconstituent","date=2017-03-03;windcode=000300.SH")
    :param w:
    :param sector:
    :param date:
    :return:
    """
    param = 'date=%s' % date
    if sector:
        param += ';sector=%s' % sector
    if windcode:
        param += ';windcode=%s' % windcode
    if field:
        param += ';field=%s' % field


# Path: kquant_data/wind/utils.py
# def asDateTime(v, asDate=False):
#     """
#     万得中读出来的时间总多5ms，覆写这部分
#     w.asDateTime = asDateTime
#     w.start()
#     :param v:
#     :param asDate:
#     :return:
#     """
#     # return datetime(1899, 12, 30, 0, 0, 0, 0) + timedelta(v + 0.005 / 3600 / 24)
#     return datetime(1899, 12, 30, 0, 0, 0, 0) + timedelta(v)


# Path: kquant_data/wind/wset.py
import os
import pandas as pd
from .utils import asDateTime

调用wset函数的部分

下载数据的方法
1.在时间上使用折半可以最少的下载数据，但已经下了一部分，要补下时如果挪了一位，又得全重下
2.在文件上，三个文件一组，三组一样，删中间一个，直到不能删了，退出
"""


def download_sectorconstituent(w, date, sector, windcode, field='wind_code'):
    """
    板块成份
    中信证券一级行业指数：时间好像没有必要，因为日历日也会查询出来
    风险警示股票：日期就是查询的日期，股票也是最新名，没有啥用

    w.wset("sectorconstituent","date=2017-03-03;sectorid=a001010100000000;field=wind_code")
    w.wset("sectorconstituent","date=2017-03-03;sectorid=a001010100000000")
    w.wset("sectorconstituent","date=2017-03-03;windcode=000300.SH")
    :param w:
    :param sector:
    :param date:
    :return:
    """
    param = 'date=%s' % date
    if sector:
        param += ';sector=%s' % sector
    if windcode:
        param += ';windcode=%s' % windcode
    if field:
        param += ';field=%s' % field


    w.asDateTime = asDateTime