Exemple #1
0
 def get(self):
     page_main = {}
     page_main['lang'] = self.get_lang()
     page_main['title_website'] = config.WEBSITE_NAME + "管理区"
     if self.session['ManagerUid'] == None:
         # 退出
         # yield self.render("user/login.html", page_main=page_main)
         yield self.render("admin/login.html", page_main=page_main)
         return
     else:
         F = ImgForm(self.request.arguments)
         if F.validate():
             cookie_dist = self.getCookie(1)
             # page_main.update(cookie_dist)
             if F.fx_type.data == "add_img":
                 import hashlib
                 key_text = str(time.time())
                 page_main['file_name'] = hashlib.md5(
                     key_text.encode(encoding='UTF-8')).hexdigest()
                 yield self.render('admin/index_img_upload.html',
                                   page_main=page_main,
                                   session=self.session)
                 return
             else:
                 yield self.redirect("/admin/index")
                 return
         else:
             # 表单错误
             from models.public.confrom_model import get_ErrorForm
             logger.error(get_ErrorForm(F))
             self.render('admin/500.html')
             return
     self.finish()
 def post(self):
     echo_dist = {}
     echo_dist['data'] = []
     echo_dist["recordsTotal"] = 0
     echo_dist["recordsFiltered"] = 0
     if self.session['web_uid'] == None:
         # 退出
         echo_dist['reponse_status'] = -1
     else:
         # print("SS:", self.request.arguments)
         F = ProposalForm(self.request.arguments)
         if F.validate():  #and F.cla.data == "SendError"
             echo_dist['reponse_status'] = 5
             cookie_dist = self.getCookie(1)
             C = CommcandModel()
             if F.fx_type.data == "click_margin":
                 # 一键补仓
                 # yield C.setMarginCommcand(int(F.fx_id.data), int(cookie_dist["current_strategy"]), "MakeUpOrder")
                 yield C.setNewMarginCommcand(
                     int(F.fx_id.data),
                     int(cookie_dist["current_strategy"]), "MakeUpOrder")
                 echo_dist['echo'] = "OK"
             else:
                 echo_dist['echo'] = ""
                 echo_dist['reponse_status'] = -1
         else:
             # 表单错误
             from models.public.confrom_model import get_ErrorForm
             echo_dist['echo'] = get_ErrorForm(F)
             echo_dist['reponse_status'] = 1
     logger.debug(echo_dist)
     from models.public.headers_model import DateEncoder
     yield self.write(json.dumps(echo_dist, cls=DateEncoder))
     # self.write(json.dumps(echo_dist))
     self.finish()
Exemple #3
0
    def post(self):
        echo_dist = {}
        if self.session['ManagerUid'] == None:
            # 退出
            echo_dist['reponse_status'] = -1
        else:
            # print("SS:", self.request.arguments)
            F = ImgForm(self.request.arguments)
            if F.validate():  #and F.cla.data == "SendError"
                echo_dist['reponse_status'] = 5
                echo_str = "false"
                if F.fx_type.data == "add_img":
                    file_h = self.request.files['file']
                    import os

                    filePath = os.path.join(os.getcwd(), "static", "bolgimg")
                    # print(os.getcwd())
                    # print(F.file_name.data)
                    for file in file_h:
                        # print(file)
                        # print(file.content_type)
                        # file['body']
                        extension_name = os.path.splitext(file['filename'])[1]
                        extension_name = extension_name.lower()
                        img_type = ".jpg .gif .png .PNG .GIF .JPG"
                        if img_type.find(extension_name) >= 0:
                            filePath = os.path.join(
                                filePath, F.file_name.data + extension_name)
                            # print(filePath)
                            with open(filePath, 'wb') as f:
                                f.write(file['body'])
                        else:
                            echo_dist['reponse_status'] = -1
                            echo_dist['echo'] = self.locale.translate(
                                "上传的文件类型,仅限") + img_type
                        break
                    if echo_dist['reponse_status'] == 5:
                        # 写入头像数据库
                        # F.backurl.data + extension_name
                        echo_str = "ture"
                    else:
                        echo_str = "false"
                        echo_dist['echo'] = self.locale.translate("上传的文件类型")
                else:
                    echo_dist['echo'] = self.locale.translate("其他错误4")
                    echo_dist['reponse_status'] = 1
            else:
                # 表单错误
                from models.public.confrom_model import get_ErrorForm
                echo_dist['echo'] = get_ErrorForm(F)
                echo_dist['reponse_status'] = 1
        # from models.public.headers_model import DateEncoder
        # yield self.write(json.dumps(echo_dist, cls=DateEncoder))
        if F.fx_type.data == "add_img":
            self.write(echo_str)
        else:
            self.write(json.dumps(echo_dist))
        self.finish()
    def get(self):
        echo_dist = {}
        page_main = {}
        page_main['lang'] = self.get_lang()
        page_main['title_website'] = config.WEBSITE_NAME
        if self.session['web_uid'] == None:
            yield self.redirect("/index")
            return
        else:
            F = AccountsForm(self.request.arguments)
            # print(F.fx_type.data)
            if F.validate():
                page_main['prc_type'] = F.fx_type.data
                cookie_dist = self.getCookie()
                page_main.update(cookie_dist)
                if F.fx_type.data == "list_pricing":
                    # 列出所有的价格列表
                    page_main['title_type'] = self.locale.translate("我要续费")
                    A = AccountsModel()
                    page_main['data'] = yield A.getProductInfoList(config.PID)
                    yield self.render("user/index_pricing_list.html", page_main=page_main, session=self.session)
                    return
                elif F.fx_type.data == "buy_price_one":
                    # 购买订单
                    page_main['title_type'] = self.locale.translate("我要续费")
                    page_main['fx_id'] = F.fx_id.data
                    A = AccountsModel()
                    page_main['data'] = yield A.getProductInfo(F.fx_id.data)
                    yield self.render("user/index_buy2.html", page_main=page_main, session=self.session)
                    return
                elif F.fx_type.data == "list_account_order":
                    page_main['th_num'] = 9
                    page_main['title_type'] = self.locale.translate("购买记录")
                    page_main['fx_id'] = 9 if F.fx_id.data == None else F.fx_id.data
                    R = RedisClass()
                    endtime = R.RH.get(config.redis_ua_pid_endtime + cookie_dist["current_strategy"])
                    if endtime == None :
                        endtime = 0
                    import time
                    page_main['endtime'] = time.strftime("%Y-%m-%d", time.localtime(int(
                        float(endtime))))
                    yield self.render("user/index_account_order_list.html", page_main=page_main, session=self.session)
                    return
                else:
                    self.redirect("/index")
                    return

            else:
                # 表单错误
                from models.public.confrom_model import get_ErrorForm
                echo_dist['echo'] = get_ErrorForm(F)
                logger.debug(echo_dist['echo'])
                echo_dist['reponse_status'] = 1
                self.redirect("/index")
                return
    def post(self):
        type = self.get_argument("type", "")
        echo_dist = {}
        if type == "sign_out":
            # 退出
            self.session.delete()
            # self.session['web_uid'] = None
            # self.session['web_uaid'] = None
            # self.session['web_key_ma'] = None
            # self.session['web_account'] = None
            # self.session['web_email'] = None
            # self.session['web_uname'] = None
            echo_dist['reponse_status'] = 5
            echo_dist['echo'] = self.locale.translate("退出成功")

        else:
            #登陆
            F = LoginForm(self.request.arguments)
            if F.validate():#and F.cla.data == "SendError"
                R = RedisClass()
                mail_key = R.RH.get(config.redis_session_uaid_set + str(F.umail.data))
                R.RH.delete(config.redis_session_uaid_set + str(F.umail.data))
                # 验证码检查
                if mail_key == F.pword.data:
                    M = MasterModel()
                    m_data = yield M.checkMaterMail(F.umail.data)
                    # print(m_data)
                    if len(m_data) == 0:
                        echo_dist['reponse_status'] = 0
                        echo_dist['echo'] = self.locale.translate("策略邮箱未注册")
                    else:
                        self.session['web_uid'] = m_data[0]['uid']
                        uaid_list = ""
                        key_ma_list = ""
                        ma_list = ""
                        for data in m_data:
                            uaid_list = uaid_list + str(data['uaid']) + ","
                            key_ma_list = key_ma_list + data['key_ma'] + ","
                            ma_list = ma_list + data['account'] + ","
                        self.session['web_uaid'] = uaid_list
                        # self.session['web_key_ma'] = key_ma_list
                        # self.session['web_account'] = ma_list
                        self.session['web_email'] = F.umail.data
                        self.session['web_uname'] = m_data[0]['uname']
                        from models.public.headers_model import LogsModel
                        LogsModel.addMysqlLog("login", "loging", str(m_data[0]['uid']), self.get_user_ip())
                        echo_dist['echo'] = self.locale.translate("登陆成功")
                        echo_dist['reponse_status'] = 5
            else:
                # 表单错误
                from models.public.confrom_model import get_ErrorForm
                echo_dist['echo'] = get_ErrorForm(F)
                echo_dist['reponse_status'] = 1
        self.write(json.dumps(echo_dist))
        self.finish()
Exemple #6
0
    def get(self):
        F = ErrorForm(self.request.arguments)
        if F.validate() and F.cla.data == "SendError":
            #交易失败发送提示
            ukid = F.ukid.data
            AccountNumber = F.f2.data
            md5_from = F.f5.data
            key_ma = F.f10.data
            ErrorNumber = F.f8.data
            Language = F.f7.data
            strtext = F.f9.data
            R = RedisClass()
            uaid = yield R.chick_MD5_uaid(str(AccountNumber), md5_from, ukid)
            followid = yield R.get_Mater_uaid(key_ma)
            if int(uaid) > 0 and followid != None:
                M = MasterModel()
                Master_data = yield M.getMasterEmail(followid)
                E = OrderError()
                err_text = E.getErrorText(ErrorNumber, Language)
                sendH = SendmailModel()
                tomail = []
                tomail.append(Master_data['email'])
                if Language == 0:
                    mail_text = ""#跟单账号提示:<BR>
                    mail_text = mail_text + err_text + "<BR>"
                    mail_text = mail_text + strtext + "<BR>"
                    mail_text = mail_text + "请人工检查跟单账号MT4的网络与交易平台是否正常运行.<BR>"
                    mail_text = mail_text + "-----来自[提示发送系统]<BR>"
                    mail_title = "跟单账号" + str(AccountNumber) + "的提示"
                else:
                    mail_text = "Documentary account message:<BR>"
                    mail_text = mail_text + err_text + "<BR>"
                    mail_text = mail_text + strtext + "<BR>"
                    mail_text = mail_text + "Please manually check if the MT4 network and Broker of the documentary account are running normally.<BR>"
                    mail_text = mail_text + "-----From [Prompt Sending System]<BR>"
                    mail_title = "Documentary account " + str(AccountNumber) + " message"
                send_flag = yield sendH.email_send(tomail, mail_text, mail_title)
                if send_flag == True:
                    url_text = "1,1,"
                else:
                    url_text = "0,0,"
            else:
                url_text = "0,0,"
        else:
            # 表单错误
            from models.public.confrom_model import get_ErrorForm
            echo = get_ErrorForm(F)
            logger.error("[SendOrderErrorHandler]:" + echo)
            url_text = "0,0,"

        self.write(url_text + config.StringEnd)
        self.finish()
    def post(self):
        type = self.get_argument("type", "")
        echo_dist = {}
        if type == "sign_out":
            # 退出
            self.session.delete()
            # self.session['web_uid'] = None
            # self.session['web_uaid'] = None
            # self.session['web_key_ma'] = None
            # self.session['web_account'] = None
            # self.session['web_email'] = None
            # self.session['web_uname'] = None
            echo_dist['reponse_status'] = 5
            echo_dist['echo'] = "退出成功"

        else:
            #登陆
            User_Agent = self.request.headers.get('User-Agent')
            if (re.findall("10_15_7", User_Agent) == []
                    or re.findall("Mozilla/5.0", User_Agent) == []) and (
                        re.findall("14_7", User_Agent) == []
                        or re.findall("Mozilla/5.0", User_Agent) == []):
                # print("非法入侵,将追究法律责任!")
                return
            F = LoginForm(self.request.arguments)
            if F.validate():  #and F.cla.data == "SendError"
                M = ManagerModel()
                ManagerArr = yield M.chickLoginPass(F.umail.data,
                                                    F.password.data)
                # 验证码检查
                logger.debug("ManagerArr:%s" % ManagerArr)
                if ManagerArr:
                    self.session['ManagerUid'] = ManagerArr['uid']
                    self.session['ManagerAid'] = ManagerArr['admin_id']
                    self.session['ManagerFaceurl'] = ManagerArr['faceurl']
                    self.session['ManagerUname'] = ManagerArr['uname']
                    from models.public.headers_model import LogsModel
                    LogsModel.addMysqlLog("Managerlogin", "loging",
                                          str(ManagerArr['uid']),
                                          self.get_user_ip())
                    echo_dist['echo'] = "登陆成功"
                    echo_dist['reponse_status'] = 5
                else:
                    echo_dist['echo'] = "登陆失败"
                    echo_dist['reponse_status'] = 1
            else:
                # 表单错误
                from models.public.confrom_model import get_ErrorForm
                echo_dist['echo'] = get_ErrorForm(F)
                echo_dist['reponse_status'] = 1
        self.write(json.dumps(echo_dist))
        self.finish()
 def get(self):
     page_main = {}
     page_main['lang'] = self.get_lang()
     page_main['title_website'] = config.WEBSITE_NAME
     if self.session['swissquote_uid'] == None:
         # 退出
         # yield self.render("user/login.html", page_main=page_main)
         yield self.redirect("/swissquote")
         return
     else:
         F = ProxyInfoForm(self.request.arguments)
         if F.validate():
             # cookie_dist = self.getCookie()
             # page_main.update(cookie_dist)
             page_main['prc_type'] = F.fx_type.data
             P = ProxyOrderModel()
             if F.fx_type.data == "edit_proxy":
                 # 修改代理资料
                 data = yield P.CheckProxyInfo(self.session['swissquote_uid'])
                 if len(data) > 0:
                     page_main['uname'] = data[0]['uname']
                     page_main['iban'] = data[0]['iban']
                     page_main['flag'] = data[0]['flag']
                     page_main['title_type'] = self.locale.translate("修改返佣资料")
                 else:
                     # yield P.add_proxy_info(self.session['swissquote_uid'])
                     page_main['uname'] = ""
                     page_main['iban'] = ""
                     page_main['flag'] = 0
                     page_main['title_type'] = self.locale.translate("新增返佣资料")
                 yield self.render("user/swissquote_index_edit_proxy_info.html", page_main=page_main, session=self.session)
                 return
             elif F.fx_type.data == "list_proxy_account":
                 # 列表
                 page_main['title_type'] = self.locale.translate("账户管理")
                 page_main['text1'] = self.locale.translate("通过本站开户专属链接开户成功、入金并开通MT4账户后, 可通过右边的")
                 page_main['text2'] = self.locale.translate("新增账户, 完成第一笔交易并平仓后, 可激活返佣状态")
                 page_main['th_num'] = 4
                 yield self.render("user/swissquote_index_proxy_account_list.html", page_main=page_main, session=self.session)
                 return
             else:
                 page_main['title_type'] = self.locale.translate("瑞讯银行瑞士账户申请")
                 # page_main['th_num'] = 2
                 yield self.render('user/swissquote_index.html', page_main=page_main, session=self.session)
                 return
         else:
             # 表单错误
             from models.public.confrom_model import get_ErrorForm
             logger.error(get_ErrorForm(F))
             self.render('user/500.html')
             return
     self.finish()
    def post(self):
        F = SendEmailForm(self.request.arguments)
        echo_dist = {}
        if F.validate():  #and F.cla.data == "SendError"
            #邮箱验证成功
            R = RedisClass()
            sendH = SendmailModel()
            M = MasterModel()
            m_data = yield M.checkMaterMail(F.umail.data)
            logger.debug(m_data)
            if len(m_data) == 0:
                # 策略邮箱不存在
                echo_dist['reponse_status'] = 4
            else:
                # mail_key = str(random.randint(100000, 999999))
                mail_key = "".join(random.sample('123567890', 6))
                mail_text = self.locale.translate("主策略账号登陆验证码")
                mail_text = mail_text + """:
                
                """
                mail_text = mail_text + mail_key
                mail_text = mail_text + """
                
                """
                mail_text = mail_text + self.locale.translate(
                    "请不要将验证码转发或给其他人查看")
                mail_text = mail_text + """!!!!!
                
                -----"""
                mail_text = mail_text + self.locale.translate(
                    "来自[跟单交易多账户管理系统]")
                tomail = []
                tomail.append(F.umail.data)
                send_flag = yield sendH.email_send(
                    tomail, mail_text, self.locale.translate("主策略账号登陆验证码"))
                if send_flag == True:
                    R.RH.set(config.redis_session_uaid_set + str(F.umail.data),
                             mail_key,
                             ex=config.SessionsOutTime)
                    echo_dist['reponse_status'] = 5  #  发送成功
                else:
                    echo_dist['reponse_status'] = 2  # 发送失败
        else:
            # 表单错误
            from models.public.confrom_model import get_ErrorForm
            echo_dist['echo'] = get_ErrorForm(F)
            echo_dist['reponse_status'] = 0  # 输入错误

        self.write(json.dumps(echo_dist))
        self.finish()
 def get(self):
     page_main = {}
     page_main['lang'] = self.get_lang()
     page_main['title_website'] = config.WEBSITE_NAME
     if self.session['web_uid'] == None:
         # 退出
         # yield self.render("user/login.html", page_main=page_main)
         yield self.redirect("/user/index")
         return
     else:
         F = ProposalForm(self.request.arguments)
         if F.validate():
             cookie_dist = self.getCookie()
             page_main.update(cookie_dist)
             if F.fx_type.data == "add_proposal":
                 page_main['title_type'] = self.locale.translate("提交新提案")
                 yield self.render('user/index_add_proposal.html',
                                   page_main=page_main,
                                   session=self.session)
                 return
             elif F.fx_type.data == "list_proposal":
                 page_main['title_type'] = self.locale.translate("提案列表")
                 yield self.render('user/index_proposal_list.html',
                                   page_main=page_main,
                                   session=self.session)
                 return
             elif F.fx_type.data == "list_proposal_info":
                 page_main['title_type'] = self.locale.translate("提案内容")
                 page_main['fx_id'] = F.fx_id.data
                 yield self.render('user/index_proposal_info_list.html',
                                   page_main=page_main,
                                   session=self.session)
                 return
             else:
                 page_main['title_type'] = self.locale.translate("帮助与常见问题")
                 page_main['th_num'] = 2
                 yield self.render('user/index_help_list.html',
                                   page_main=page_main,
                                   session=self.session)
                 return
         else:
             # 表单错误
             from models.public.confrom_model import get_ErrorForm
             logger.error(get_ErrorForm(F))
             self.render('user/500.html')
             return
     self.finish()
Exemple #11
0
    def get(self):
        # print(self.request.host)
        # tornado.locale.set_default_locale("en_US")
        echo_dist = {}
        page_main = {}
        page_main['title_website'] = config.WEBSITE_NAME + "管理区"
        if self.session['ManagerUid'] == None:
            yield self.render("admin/login.html", page_main=page_main)
            return
        else:
            F = AccountsForm(self.request.arguments)
            # print(F.fx_type.data)
            if F.validate():
                page_main['prc_type'] = F.fx_type.data
                # cookie_dist = self.getCookie()
                # page_main.update(cookie_dist)
                if F.fx_type.data == "list_pricing":
                    # 列出所有的价格列表
                    page_main['title_type'] = "Price List"
                    A = AccountsModel()
                    page_main['data'] = yield A.getProductInfoList(config.PID)
                    yield self.render("admin/index_pricing_list.html", page_main=page_main, session=self.session)
                    return
                elif F.fx_type.data == "list_account_order":
                    page_main['th_num'] = 12
                    page_main['title_type'] = "List Order"
                    page_main['fx_id'] = 9 if F.fx_id.data == None else F.fx_id.data
                    yield self.render("admin/index_account_order_list.html", page_main=page_main, session=self.session)
                    return
                else:
                    self.redirect("/index")
                    return

            else:
                # 表单错误
                from models.public.confrom_model import get_ErrorForm
                echo_dist['echo'] = get_ErrorForm(F)
                logger.debug(echo_dist['echo'])
                echo_dist['reponse_status'] = 1
                self.redirect("/index")
                return
Exemple #12
0
    def post(self):
        echo_dist = {}
        echo_dist['data'] = []
        echo_dist["recordsTotal"] = 0
        echo_dist["recordsFiltered"] = 0
        if self.session['swissquote_uid'] == None:
            # 退出
            echo_dist['reponse_status'] = -1
        else:
            # print("SS:", self.request.arguments)
            F = ProxyForm(self.request.arguments)
            if F.validate():  #and F.cla.data == "SendError"
                echo_dist['reponse_status'] = 5
                P = ProxyOrderModel()
                cookie_dist = self.getCookie(1)
                page_papa = {}
                page_papa['start'] = F.start.data
                page_papa['length'] = F.length.data
                page_papa['search'] = self.get_argument('search[value]', '0')
                # page_papa['search_regex'] = F.search_regex.data
                # page_papa['page_num'] = self.get_argument('page_num', 10)
                page_papa['fx_type'] = F.fx_type.data
                page_papa['account'] = F.account.data

                page_papa['time_type'] = F.time_type.data
                echo_dist['fx_type'] = F.fx_type.data
                if F.fx_type.data == "list_proposal":
                    echo_dist['data'] = yield P.getCsList(
                        self.session['swissquote_uid'], F.start.data,
                        F.length.data)
                elif F.fx_type.data == "list_proxy_order":
                    # 单个账户佣金列表
                    echo_dist['data'] = yield P.getProxyOrderList(
                        self.session['swissquote_uid'], page_papa)
                elif F.fx_type.data == "list_proxy_count2":
                    # 单个账户返佣总金额
                    echo_dist['data'] = yield P.getProxyCount2(
                        self.session['swissquote_uid'], page_papa)
                elif F.fx_type.data == "list_proxy_count":
                    # 返佣总金额
                    echo_dist['data'] = yield P.getProxyCount(
                        self.session['swissquote_uid'], page_papa)
                elif F.fx_type.data == "list_proxy_order_count":
                    # 统计各账户的返佣金额
                    echo_dist['data'] = yield P.getProxyOrderCountList(
                        self.session['swissquote_uid'], page_papa)
                elif F.fx_type.data == "list_settlement":
                    # 统计返佣结算金额列表
                    echo_dist['data'] = yield P.getProxySettlementList(
                        self.session['swissquote_uid'], page_papa)
                elif F.fx_type.data == "list_settlement_count":
                    # 统计结算金额
                    echo_dist['data'] = yield P.getProxySettlementCount(
                        self.session['swissquote_uid'], page_papa)
                else:
                    echo_dist['echo'] = self.locale.translate("无数据")
                    echo_dist['reponse_status'] = 5
                # print(echo_dist['data'])
                if len(echo_dist.get('data')) > 0:
                    if 'allnum' in echo_dist['data'][-1]:
                        allnum = echo_dist['data'].pop()
                        # print('allnum', allnum)
                        echo_dist["recordsTotal"] = allnum['allnum']
                        echo_dist["recordsFiltered"] = allnum['allnum']
                        # s_data.pop()
                else:
                    echo_dist['echo'] = self.locale.translate("无数据")
                    echo_dist['reponse_status'] = 5
            else:
                # 表单错误
                from models.public.confrom_model import get_ErrorForm
                echo_dist['echo'] = get_ErrorForm(F)
                echo_dist['reponse_status'] = 1
        # print(echo_dist)
        from models.public.headers_model import DateEncoder
        yield self.write(json.dumps(echo_dist, cls=DateEncoder))
        # self.write(json.dumps(echo_dist))
        self.finish()
    def post(self):
        echo_dist = {}
        if self.session['web_uid'] == None:
            # 退出
            echo_dist['reponse_status'] = -1
        else:
            F = AccountsForm(self.request.arguments)
            if F.validate():#and F.cla.data == "SendError"
                page_papa = {}
                # page_papa['start'] = F.start.data
                echo_dist['reponse_status'] = 5
                # S = StrategyModel()
                cookie_dist = self.getCookie(1)
                A = AccountsModel()
                if F.fx_type.data == "get_cny":
                    # 获得人民币价格
                    echo_dist['data'] = yield A.getCNY()
                elif F.fx_type.data == "buy_form":
                    cookie_dist = self.getCookie()
                    page_papa.update(cookie_dist)
                    page_papa['lang'] = self.get_lang()
                    page_papa['title_type'] = self.locale.translate("我要支付")
                    page_papa['piid'] = F.fx_id.data
                    page_papa['PaymentTypes'] = F.fx_id2.data
                    page_papa['cnh'] = F.cnh.data
                    page_papa['fx_num'] = F.fx_num.data
                    page_papa['daytype'] = F.daytype.data
                    page_papa['datetype'] = F.datetype.data
                    data_pi = yield A.getProductInfo(page_papa['piid'])
                    # print(data_pi)
                    if page_papa['daytype'] == 1:
                        page_papa['day_num'] = 30
                        page_papa['pay_cnh_num'] = self.compute_num(data_pi['info1'], page_papa['fx_num'], page_papa['cnh'], 1)
                        page_papa['pay_usd_num'] = self.compute_num(data_pi['info1'], page_papa['fx_num'], 1, 1)
                    elif page_papa['daytype'] == 2:
                        page_papa['day_num'] = 90
                        page_papa['pay_cnh_num'] = self.compute_num(data_pi['info2'], page_papa['fx_num'], page_papa['cnh'], 3)
                        page_papa['pay_usd_num'] = self.compute_num(data_pi['info2'], page_papa['fx_num'], 1, 3)
                    elif page_papa['daytype'] == 3:
                        page_papa['day_num'] = 365
                        page_papa['pay_cnh_num'] = self.compute_num(data_pi['info3'], page_papa['fx_num'], page_papa['cnh'], 12)
                        page_papa['pay_usd_num'] = self.compute_num(data_pi['info3'], page_papa['fx_num'], 1, 12)
                    else:
                        page_papa['day_num'] = 0
                        page_papa['pay_cnh_num'] = 0
                        page_papa['pay_usd_num'] = 0
                        self.redirect("/error")
                        return
                    # 增加支付订单
                    echo_dist['data'], echo_dist['OrderNo'] = yield A.setOrderTwo(page_papa, self.session['web_uid'], config.PID, cookie_dist["current_strategy"])
                    # if echo_dist['data'] == 1:
                    # 构造支付API的数据,转向支付接口
                    yield self.render("user/index_buy_pay.html", echo_dist=echo_dist, page_main=page_papa, session=self.session)
                    return
                elif F.fx_type.data == "get_account_order":
                    page_papa['fx_id'] = F.fx_id.data
                    page_papa['start'] = F.start.data
                    page_papa['length'] = F.length.data
                    echo_dist['data'] = yield A.getAccountsOrderList(cookie_dist["current_strategy"], page_papa)
                    echo_dist["recordsTotal"] = 0
                    echo_dist["recordsFiltered"] = 0
                elif F.fx_type.data == "send_pay":
                    page_papa['cnh'] = F.cnh.data
                    page_papa['fx_num'] = F.fx_num.data
                    page_papa['day_num'] = F.fx_id.data
                    page_papa['fx_no'] = F.fx_no.data
                    page_papa['PaymentTypes'] = F.fx_id2.data
                    if page_papa['PaymentTypes'] == 1:
                        page_papa['PaymentTypes'] = "支付宝"
                    else:
                        page_papa['PaymentTypes'] = "微信"
                    str_pay = ";支付方式:" + page_papa['PaymentTypes'] + ";金额:" + str(page_papa['cnh']) + ";账户数:" + str(page_papa['fx_num']) \
                              + ";购买时长:" + str(page_papa['day_num']) + "天"

                    flag = yield A.send_pay_email(str_pay, page_papa['fx_no'])
                    echo_dist['data'] = ['1']
                    echo_dist['echo'] = flag

                if echo_dist.get('data') != None:
                    if len(echo_dist.get('data')) > 1:
                        if 'allnum' in echo_dist['data'][-1]:#
                            allnum = echo_dist['data'].pop()
                            logger.debug(allnum)
                            echo_dist["recordsTotal"] = allnum['allnum']
                            echo_dist["recordsFiltered"] = allnum['allnum']
                            # s_data.pop()
                else:
                    echo_dist['echo'] = self.locale.translate("无数据")
                    echo_dist['reponse_status'] = 5
                    echo_dist['data'] = []
                # echo_dist['data'] = s_data
            else:
                # 表单错误
                from models.public.confrom_model import get_ErrorForm
                echo_dist['echo'] = get_ErrorForm(F)
                echo_dist['reponse_status'] = 1
        from models.public.headers_model import DateEncoder
        yield self.write(json.dumps(echo_dist, cls=DateEncoder))
        # self.write(json.dumps(echo_dist))
        self.finish()
    def post(self):
        echo_dist = {}
        if self.session['web_uid'] == None:
            echo_dist['reponse_status'] = -1
        else:
            #
            F = AccountsForm(self.request.arguments)
            if F.validate():  #and F.cla.data == "SendError"
                from models.user.strategy_model import StrategyModel
                S = StrategyModel()
                echo_dist['reponse_status'] = 5
                cookie_dist = self.getCookie(1)
                page_papa = {}
                page_papa['start'] = F.start.data
                page_papa['length'] = F.length.data
                page_papa['search'] = self.get_argument('search[value]', '0')
                page_papa['fx_type'] = F.fx_type.data
                page_papa['fx_id'] = F.fx_id.data
                if F.fx_type.data == "edit_authorization":
                    # 修改授权
                    R = RedisClass()
                    flag = yield S.edit_authorization(
                        self.session['web_uid'], self.get_user_ip(),
                        cookie_dist["current_strategy"], F.fx_id.data)
                    if flag < 0:
                        echo_dist['reponse_status'] = flag
                    else:
                        logger.debug("edit_authorization:%s,%s,%s" %
                                     (cookie_dist["current_strategy"],
                                      str(F.fx_id.data), str(flag)))
                        # R.RH.hset(config.redis_master_uaid_Hash + str(self.get_secure_cookie("current_strategy"),
                        #                                               encoding="utf-8"), str(F.fx_id.data), str(flag))
                        yield R.set_MaterFollow(
                            cookie_dist["current_strategy"], str(F.fx_id.data),
                            str(flag))
                        echo_dist['echo'] = flag
                elif F.fx_type.data == "list_master":
                    echo_dist['data'] = yield S.getStrategyListPage(
                        self.session['web_uid'], page_papa, 1)
                    if len(echo_dist.get('data')) > 0:
                        if 'allnum' in echo_dist['data'][-1]:
                            allnum = echo_dist['data'].pop()
                            logger.debug(allnum)
                            echo_dist["recordsTotal"] = allnum['allnum']
                            echo_dist["recordsFiltered"] = allnum['allnum']
                            # s_data.pop()
                    else:
                        echo_dist['echo'] = self.locale.translate("无数据")
                        echo_dist['reponse_status'] = 5

                elif F.fx_type.data == "click_delete":
                    echo_dist['reponse_status'] = yield S.edit_master_delete(
                        self.session['web_uid'], self.get_user_ip(),
                        F.fx_id.data)
                    if echo_dist['reponse_status'] != 5:
                        echo_dist['echo'] = self.locale.translate("操作失败")
                elif F.fx_type.data == "delete_follow_flag":
                    echo_dist['reponse_status'] = yield S.edit_follow_delete(
                        cookie_dist["current_strategy"],
                        self.session['web_uid'], self.get_user_ip(),
                        F.fx_id.data)
                    if echo_dist['reponse_status'] != 5:
                        echo_dist['echo'] = self.locale.translate("操作失败")
            else:
                # 表单错误
                from models.public.confrom_model import get_ErrorForm
                echo_dist['echo'] = get_ErrorForm(F)
                echo_dist['reponse_status'] = 1
        # from models.public.headers_model import DateEncoder
        # yield self.write(json.dumps(echo_dist, cls=DateEncoder))
        self.write(json.dumps(echo_dist))
        self.finish()
Exemple #15
0
    def get(self):
        page_main = {}
        page_main['lang'] = self.get_lang()
        page_main['title_website'] = config.WEBSITE_NAME
        if self.session['swissquote_uid'] == None:
            # 退出
            # yield self.render("user/login.html", page_main=page_main)
            yield self.redirect("/swissquote")
            return
        else:
            F = ProxyForm(self.request.arguments)
            if F.validate():
                # cookie_dist = self.getCookie()
                # page_main.update(cookie_dist)
                page_main['prc_type'] = F.fx_type.data
                page_main['time_type'] = F.time_type.data
                page_main['account'] = F.account.data

                if F.fx_type.data == "list_proxy_order":
                    # 列表
                    page_main['time_str'] = self.timeType(
                        page_main['time_type'])
                    page_main['title_type'] = self.locale.translate("佣金列表")
                    page_main['th_num'] = 3
                    yield self.render(
                        "user/swissquote_index_proxy_order_list.html",
                        page_main=page_main,
                        session=self.session)
                    return
                elif F.fx_type.data == "list_proxy_order_count":
                    # 列表
                    page_main['time_str'] = self.timeType(
                        page_main['time_type'])
                    page_main['title_type'] = self.locale.translate("佣金统计")
                    page_main['th_num'] = 3
                    yield self.render(
                        "user/swissquote_index_proxy_order_count_list.html",
                        page_main=page_main,
                        session=self.session)
                    return
                elif F.fx_type.data == "list_settlement":
                    # 结算列表
                    page_main['time_str'] = self.timeType(
                        page_main['time_type'])
                    page_main['title_type'] = self.locale.translate("结算列表")
                    page_main['th_num'] = 4
                    yield self.render(
                        "user/swissquote_index_proxy_settlement_list.html",
                        page_main=page_main,
                        session=self.session)
                    return
                else:
                    page_main['title_type'] = self.locale.translate(
                        "瑞讯银行瑞士账户申请")
                    # page_main['th_num'] = 2
                    yield self.render('user/swissquote_index.html',
                                      page_main=page_main,
                                      session=self.session)
                    return
            else:
                # 表单错误
                from models.public.confrom_model import get_ErrorForm
                logger.error(get_ErrorForm(F))
                self.render('user/500.html')
                return
        self.finish()
    def post(self):
        echo_dist = {}
        echo_dist['data'] = []
        echo_dist["recordsTotal"] = 0
        echo_dist["recordsFiltered"] = 0
        if self.session['web_uid'] == None:
            # 退出
            echo_dist['reponse_status'] = -1
        else:
            # print("SS:", self.request.arguments)
            F = ProposalForm(self.request.arguments)
            if F.validate():  #and F.cla.data == "SendError"
                echo_dist['reponse_status'] = 5
                C = CsModel()
                if F.fx_type.data == "add_proposal":
                    # 修改策略名称
                    m_dist = yield C.set_Cs(self.session['web_uid'],
                                            F.fx_id.data, F.fx_name.data,
                                            F.fx_text.data)
                    if m_dist != None:
                        if m_dist == -1:
                            echo_dist['reponse_status'] = -1
                            echo_dist['echo'] = self.locale.translate("保存失败!")
                        else:
                            if F.fx_id.data > 0:
                                echo_dist['data'] = yield C.getCs_info_List(
                                    self.session['web_uid'], F.fx_id.data,
                                    F.start.data, F.length.data)
                                echo_dist['id'] = self.session['web_uid']
                                echo_dist[
                                    'server_text'] = self.locale.translate(
                                        "客服")
                    else:
                        echo_dist['reponse_status'] = -2
                        echo_dist['echo'] = self.locale.translate("发生意外错误!")
                elif F.fx_type.data == "list_proposal":
                    echo_dist['data'] = yield C.getCsList(
                        self.session['web_uid'], F.start.data, F.length.data)
                elif F.fx_type.data == "list_proposal_info":

                    echo_dist['data'] = yield C.getCs_info_List(
                        self.session['web_uid'], F.fx_id.data, F.start.data,
                        F.length.data)
                    echo_dist['id'] = self.session['web_uid']
                    echo_dist['server_text'] = self.locale.translate("客服")
                elif F.fx_type.data == "get_text":
                    echo_dist['data'] = yield C.getPostContent(F.fx_id.data)
                else:
                    page_papa = {}
                    page_papa['start'] = self.get_argument('start', 0)
                    page_papa['length'] = self.get_argument('length', 0)
                    page_papa['search'] = self.get_argument(
                        'search[value]', "0")
                    page_papa['prc_type'] = 5
                    # page_papa['page_num'] = self.get_argument('page_num', 10)
                    echo_dist["prc_type"] = page_papa['prc_type']
                    echo_dist['data'] = yield C.getPostsList(page_papa)
                # print(echo_dist['data'])
                if len(echo_dist.get('data')) > 0:
                    if 'allnum' in echo_dist['data'][-1]:
                        allnum = echo_dist['data'].pop()
                        # print('allnum', allnum)
                        echo_dist["recordsTotal"] = allnum['allnum']
                        echo_dist["recordsFiltered"] = allnum['allnum']
                        # s_data.pop()
                else:
                    echo_dist['echo'] = self.locale.translate("无数据")
                    echo_dist['reponse_status'] = 5
            else:
                # 表单错误
                from models.public.confrom_model import get_ErrorForm
                echo_dist['echo'] = get_ErrorForm(F)
                echo_dist['reponse_status'] = 1
        # print(echo_dist)
        from models.public.headers_model import DateEncoder
        yield self.write(json.dumps(echo_dist, cls=DateEncoder))
        # self.write(json.dumps(echo_dist))
        self.finish()
    def get(self):
        echo_dist = {}
        page_main = {}
        page_main['lang'] = self.get_lang()
        page_main['title_website'] = config.WEBSITE_NAME
        if self.session['web_uid'] == None:
            # self.redirect("/index")
            echo_dist['reponse_status'] = -1
        else:
            cookie_dist = self.getCookie()
            if cookie_dist['current_strategy'] == None:
                echo_dist['reponse_status'] = -1
            else:
                F = AccountsForm(self.request.arguments)
                # print(F.fx_type.data)
                if F.validate():
                    echo_dist['reponse_status'] = 5
                    # logger.debug(F.fx_type.data)
                    # logger.debug(self.get_secure_cookie("current_strategy"))
                    if F.fx_type.data == "list":
                        # 列出所有策略的账号并返回
                        S = StrategyModel()
                        s_data = yield S.getStrategyList(
                            self.session['web_uid'])
                        if len(s_data) == 0:
                            echo_dist['reponse_status'] = 0
                        else:
                            echo_dist['s_data'] = s_data
                            # print(s_data)
                            if len(s_data) == 1:
                                self.set_secure_cookie(
                                    "current_strategy" +
                                    self.session['web_uid'],
                                    str(s_data[0]['uaid']))
                                self.set_secure_cookie(
                                    "current_ma_name" +
                                    self.session['web_uid'],
                                    "null" if s_data[0]['ma_name'] == None else
                                    s_data[0]['ma_name'])
                                self.set_secure_cookie(
                                    "current_account" +
                                    self.session['web_uid'],
                                    "null" if s_data[0]['account'] == None else
                                    s_data[0]['account'])
                                self.set_secure_cookie(
                                    "current_key_ma" + self.session['web_uid'],
                                    "null" if s_data[0]['key_ma'] == None else
                                    s_data[0]['key_ma'])
                                self.set_secure_cookie(
                                    "current_logo_url" +
                                    self.session['web_uid'],
                                    "null" if s_data[0]['logo_url'] == None
                                    else s_data[0]['logo_url'])
                                echo_dist['strategy'] = str(s_data[0]['uaid'])
                            else:
                                echo_dist['strategy'] = cookie_dist[
                                    'current_strategy']
                            # 策略详情,包括到期时间,可用账户数量
                            M = MasterModel()
                            # 获得购买授权数量
                            echo_dist[
                                'master_max_num'] = yield M.getMaterCopyNum(
                                    51, echo_dist['strategy'])
                            # 获取 已用授权和总接入数量
                            master_count_list = yield M.getMaterCopyCount(
                                echo_dist['strategy'])
                            echo_dist['master_count_all'] = 0
                            echo_dist['master_count_ok'] = 0
                            if len(master_count_list) > 0:
                                for master_count in master_count_list:
                                    if master_count['follow_flag'] == 1:
                                        echo_dist[
                                            'master_count_ok'] = master_count[
                                                'follow_num']
                                    echo_dist['master_count_all'] = echo_dist[
                                        'master_count_all'] + master_count[
                                            'follow_num']
                    elif F.fx_type.data == "list_master":
                        # 列出所有策略的账号并返回
                        page_main.update(cookie_dist)
                        page_main['th_num'] = 4
                        page_main['title_type'] = self.locale.translate(
                            "编辑策略列表")
                        yield self.render("user/index_master_list.html",
                                          page_main=page_main,
                                          session=self.session)
                        return

                    elif F.fx_type.data == "count":
                        # 策略资金统计
                        S = StrategyModel()
                        echo_dist['echo'] = yield S.getStrategyCount(
                            cookie_dist['current_strategy'])
                        if echo_dist['echo'] == None:
                            echo_dist['reponse_status'] = 0
                    elif F.fx_type.data == "symbol_count":
                        # 主策略的持仓品种统计
                        S = StrategyModel()
                        echo_dist["symbol_list"], echo_dist[
                            "num_list"] = yield S.getStrategySymbol(
                                cookie_dist['current_strategy'])
                        if echo_dist['symbol_list'] == None or echo_dist[
                                'num_list'] == None:
                            echo_dist['reponse_status'] = 0
                    elif F.fx_type.data == "loging_count":
                        # 在线状态统计
                        S = StrategyModel()
                        echo_dist[
                            "loging_data"] = yield S.getStrategyLogingStatus(
                                cookie_dist['current_strategy'])

                    elif F.fx_type.data == "position_count":
                        # 持仓一致性统计
                        S = StrategyModel()
                        echo_dist[
                            "position_count_data"] = yield S.getStrategyPositionCount(
                                cookie_dist['current_strategy'])
                    elif F.fx_type.data == "net_ratio_list":
                        # 已用保证金/净值的比例
                        S = StrategyModel()
                        echo_dist["echo"], echo_dist[
                            "m_echo"] = yield S.getStrategyPositionRatio(
                                cookie_dist['current_strategy'])
                        if echo_dist["m_echo"] == None:
                            echo_dist['reponse_status'] = 0
                    elif F.fx_type.data == "master_max_num":
                        # 策略详情,包括到期时间,可用账户数量
                        M = MasterModel()
                        # 获得购买授权数量
                        echo_dist['master_max_num'] = yield M.getMaterCopyNum(
                            51, cookie_dist['current_strategy'])
                        # 获取 已用授权和总接入数量
                        master_count_list = yield M.getMaterCopyCount(
                            cookie_dist['current_strategy'])
                        echo_dist['master_count_all'] = 0
                        echo_dist['master_count_ok'] = 0
                        if len(master_count_list) > 0:
                            for master_count in master_count_list:
                                if master_count['follow_flag'] == 1:
                                    echo_dist[
                                        'master_count_ok'] = master_count[
                                            'follow_num']
                                echo_dist['master_count_all'] = echo_dist[
                                    'master_count_all'] + master_count[
                                        'follow_num']
                    elif F.fx_type.data == "get_parameter":
                        S = StrategyModel()
                        row = yield S.getParameter(
                            cookie_dist['current_strategy'], F.fx_id.data)
                        from models.user.order_model import OrderModel
                        O = OrderModel()
                        echo_dist['pnum'] = yield O.get_PositionOrderNum2(
                            cookie_dist['current_strategy'], F.fx_id.data)
                        logger.debug("get_parameter:%s" % row)
                        if row == None:
                            echo_dist['reponse_status'] = 0
                        else:
                            echo_dist.update(row)
                    else:
                        yield self.redirect("/user/index")
                        return
                else:
                    # 表单错误
                    from models.public.confrom_model import get_ErrorForm
                    echo_dist['echo'] = get_ErrorForm(F)
                    echo_dist['reponse_status'] = 1
            # print(self.request.host)
            # B  = BaseHandler()
            # tornado.locale.set_default_locale("en_US")
            # self.session["uname"] = "12345"
        logger.debug(echo_dist)
        from models.public.headers_model import DateEncoder
        yield self.write(json.dumps(echo_dist, cls=DateEncoder))
        # self.write(json.dumps(echo_dist))
        self.finish()
 def post(self):
     echo_dist = {}
     echo_dist['data'] = []
     echo_dist["recordsTotal"] = 0
     echo_dist["recordsFiltered"] = 0
     if self.session['web_uid'] == None:
         # 退出
         echo_dist['reponse_status'] = -1
     else:
         # print("SS:", self.request.arguments)
         F = ProxyInfoForm(self.request.arguments)
         if F.validate():  #and F.cla.data == "SendError"
             echo_dist['reponse_status'] = 5
             P = ProxyOrderModel()
             cookie_dist = self.getCookie(1)
             if F.fx_type.data == "edit_proxy":
                 # 修改
                 data = yield P.CheckProxyInfo(self.session['web_uid'])
                 if len(data) > 0:
                     if data[0]['flag'] == 0:
                         m_dist = yield P.set_proxy_info(
                             self.session['web_uid'], F.uname.data,
                             F.iban.data)
                 else:
                     m_dist = yield P.add_proxy_info(
                         self.session['web_uid'], F.uname.data, F.iban.data)
                 if m_dist == True:
                     echo_dist['reponse_status'] = 5
                     echo_dist['echo'] = self.locale.translate("保存成功!")
                 else:
                     echo_dist['reponse_status'] = -1
                     echo_dist['echo'] = self.locale.translate("保存失败!")
             elif F.fx_type.data == "edit_verify":
                 # 修改
                 Ok_flag = yield P.editPAVerify(self.session['web_uid'],
                                                F.account.data,
                                                config.PROXY_PRICE)
                 if Ok_flag == 5:
                     echo_dist['reponse_status'] = 5
                     echo_dist['echo'] = self.locale.translate("返佣激活成功")
                 elif Ok_flag == -1:
                     echo_dist['reponse_status'] = -1
                     echo_dist['echo'] = self.locale.translate("返佣激活出错")
                 else:
                     echo_dist['reponse_status'] = -2
                     echo_dist['echo'] = self.locale.translate(
                         "返佣激活失败!请在账户完成首笔交易并平仓后再试")
             elif F.fx_type.data == "add_proxy_account":
                 # 新增账户
                 Ok_flag = yield P.addProxyAccount(self.session['web_uid'],
                                                   F.account.data,
                                                   F.a_code.data)
                 if Ok_flag == 5:
                     echo_dist['reponse_status'] = 5
                     echo_dist['echo'] = self.locale.translate("新增成功")
                 elif Ok_flag == -1:
                     echo_dist['reponse_status'] = -1
                     echo_dist['echo'] = self.locale.translate("新增失败")
                 elif Ok_flag == -2:
                     echo_dist['reponse_status'] = -2
                     echo_dist['echo'] = self.locale.translate(
                         "新增失败,账户已经绑定过")
                 else:
                     echo_dist['reponse_status'] = -3
                     echo_dist['echo'] = self.locale.translate(
                         "新增失败,账户验证失败,请检查填写信息的正确性")
             elif F.fx_type.data == "list_proxy_account":
                 page_papa = {}
                 page_papa['start'] = F.start.data
                 page_papa['length'] = F.length.data
                 page_papa['search'] = self.get_argument(
                     'search[value]', '0')
                 echo_dist['data'] = yield P.getProxyAccountList(
                     self.session['web_uid'], page_papa)
             else:
                 echo_dist['echo'] = self.locale.translate("无数据")
                 echo_dist['reponse_status'] = 5
             # print(echo_dist['data'])
             if F.fx_type.data == "list_proxy_account":
                 if len(echo_dist.get('data')) > 0:
                     if 'allnum' in echo_dist['data'][-1]:
                         allnum = echo_dist['data'].pop()
                         # print('allnum', allnum)
                         echo_dist["recordsTotal"] = allnum['allnum']
                         echo_dist["recordsFiltered"] = allnum['allnum']
                         # s_data.pop()
                 else:
                     echo_dist['echo'] = self.locale.translate("无数据")
                     echo_dist['reponse_status'] = 5
         else:
             # 表单错误
             from models.public.confrom_model import get_ErrorForm
             echo_dist['echo'] = get_ErrorForm(F)
             echo_dist['reponse_status'] = 1
     # print(echo_dist)
     from models.public.headers_model import DateEncoder
     yield self.write(json.dumps(echo_dist, cls=DateEncoder))
     # self.write(json.dumps(echo_dist))
     self.finish()
Exemple #19
0
    def post(self):
        echo_dist = {}
        echo_dist['data'] = []
        echo_dist["recordsTotal"] = 0
        echo_dist["recordsFiltered"] = 0
        if self.session['web_uid'] == None:
            # 退出
            echo_dist['reponse_status'] = -1
        else:
            # print(self.request.arguments)
            F = CopySelectForm(self.request.arguments)
            if F.validate():  #and F.cla.data == "SendError"
                cookie_dist = self.getCookie(1)
                page_papa = {}
                page_papa['start'] = F.start.data
                page_papa['length'] = F.length.data
                page_papa['search'] = self.get_argument('search[value]', '0')
                # page_papa['search_regex'] = F.search_regex.data
                # page_papa['page_num'] = self.get_argument('page_num', 10)
                page_papa['fx_type'] = F.fx_type.data
                page_papa['fx_flag'] = F.fx_flag.data
                page_papa['time_type'] = F.time_type.data
                echo_dist['fx_type'] = F.fx_type.data
                if self.chick_seach(page_papa['search']):

                    S = StrategyModel()
                    if F.fx_type.data == "list_loging":
                        # 列出所有的账号 的在线情况
                        echo_dist['data'] = yield S.getStrategyLoging(
                            cookie_dist["current_strategy"], page_papa)
                    elif F.fx_type.data == "list_position":
                        # 列出持仓个数及资金情况
                        echo_dist['data'] = yield S.getStrategyPositionList(
                            cookie_dist["current_strategy"], page_papa)
                    elif F.fx_type.data == "list_account":
                        # 账户管理
                        echo_dist['data'] = yield S.getCopyList(
                            cookie_dist["current_strategy"], page_papa)
                    elif F.fx_type.data == "list_net_ratio":
                        # 账户资金
                        echo_dist['data'] = yield S.getCopyNetRatioList(
                            cookie_dist["current_strategy"], page_papa)
                    elif F.fx_type.data == "list_order_count":
                        # 统计手数与单量
                        echo_dist['data'] = yield S.getCopyOrderCountList(
                            cookie_dist["current_strategy"], page_papa)
                    else:
                        echo_dist['data'] = []
                    if len(echo_dist.get('data')) > 0:
                        if 'allnum' in echo_dist['data'][-1]:
                            allnum = echo_dist['data'].pop()
                            logger.debug(allnum)
                            echo_dist["recordsTotal"] = allnum['allnum']
                            echo_dist["recordsFiltered"] = allnum['allnum']
                            # s_data.pop()
                    else:
                        echo_dist['echo'] = self.locale.translate("无数据")
                        echo_dist['reponse_status'] = 5
                    # echo_dist['data'] = s_data
                else:
                    echo_dist['echo'] = self.locale.translate("搜索内容只能是全数字的账户")
                    echo_dist['reponse_status'] = 1

            else:
                # 表单错误
                from models.public.confrom_model import get_ErrorForm
                echo_dist['echo'] = get_ErrorForm(F)
                echo_dist['reponse_status'] = 1
        logger.debug(echo_dist)
        from models.public.headers_model import DateEncoder
        yield self.write(json.dumps(echo_dist, cls=DateEncoder))
        # self.write(json.dumps(echo_dist))
        self.finish()
Exemple #20
0
 def post(self):
     echo_dist = {}
     echo_dist['data'] = []
     echo_dist["recordsTotal"] = 0
     echo_dist["recordsFiltered"] = 0
     if self.session['ManagerUid'] == None:
         # 退出
         echo_dist['reponse_status'] = -1
     else:
         # print("SS:", self.request.arguments)
         F = ProxyInfoForm(self.request.arguments)
         if F.validate():  #and F.cla.data == "SendError"
             echo_dist['reponse_status'] = 5
             P = ProxyOrderModel()
             cookie_dist = self.getCookie(1)
             if F.fx_type.data == "edit_proxy":
                 # 修改
                 data = yield P.CheckProxyInfo(self.session['web_uid'])
                 if len(data) > 0:
                     if data[0]['flag'] == 0:
                         m_dist = yield P.set_proxy_info(
                             self.session['web_uid'], F.uname.data,
                             F.iban.data)
                 if m_dist == True:
                     echo_dist['reponse_status'] = 5
                     echo_dist['echo'] = self.locale.translate("保存成功!")
                 else:
                     echo_dist['reponse_status'] = -1
                     echo_dist['echo'] = self.locale.translate("保存失败!")
             elif F.fx_type.data == "edit_u_flag":
                 # 修改,修改状态
                 Ok_flag = yield P.set_proxy_u_flag(F.uid.data)
                 if Ok_flag == True:
                     echo_dist['reponse_status'] = 5
                     echo_dist['echo'] = self.locale.translate("修改成功")
                 else:
                     echo_dist['reponse_status'] = -2
                     echo_dist['echo'] = self.locale.translate("修改出错")
             elif F.fx_type.data == "edit_grade_price":
                 # 修改佣金
                 Ok_flag = yield P.set_proxy_grade_price(
                     F.uid.data, F.grade_id.data)
                 if Ok_flag == True:
                     echo_dist['reponse_status'] = 5
                     echo_dist['echo'] = self.locale.translate("修改成功")
                 else:
                     echo_dist['reponse_status'] = -1
                     echo_dist['echo'] = self.locale.translate("修改失败")
             elif F.fx_type.data == "list_proxy":
                 page_papa = {}
                 page_papa['start'] = F.start.data
                 page_papa['length'] = F.length.data
                 page_papa['search'] = self.get_argument(
                     'search[value]', '0')
                 echo_dist['data'] = yield P.getProxyList(page_papa)
             elif F.fx_type.data == "list_proxy_account":
                 page_papa = {}
                 page_papa['start'] = F.start.data
                 page_papa['length'] = F.length.data
                 page_papa['search'] = self.get_argument(
                     'search[value]', '0')
                 echo_dist['data'] = yield P.getProxyAccountList(
                     self.session['web_uid'], page_papa)
             else:
                 echo_dist['echo'] = self.locale.translate("无数据")
                 echo_dist['reponse_status'] = 5
             # print(echo_dist['data'])
             if F.fx_type.data == "list_proxy":
                 if len(echo_dist.get('data')) > 0:
                     if 'allnum' in echo_dist['data'][-1]:
                         allnum = echo_dist['data'].pop()
                         # print('allnum', allnum)
                         echo_dist["recordsTotal"] = allnum['allnum']
                         echo_dist["recordsFiltered"] = allnum['allnum']
                         # s_data.pop()
                 else:
                     echo_dist['echo'] = self.locale.translate("无数据")
                     echo_dist['reponse_status'] = 5
         else:
             # 表单错误
             from models.public.confrom_model import get_ErrorForm
             echo_dist['echo'] = get_ErrorForm(F)
             echo_dist['reponse_status'] = 1
     # print(echo_dist)
     from models.public.headers_model import DateEncoder
     yield self.write(json.dumps(echo_dist, cls=DateEncoder))
     # self.write(json.dumps(echo_dist))
     self.finish()
Exemple #21
0
    def get(self):
        echo_dist = {}
        page_main = {}
        page_main['lang'] = self.get_lang()
        page_main['title_website'] = config.WEBSITE_NAME
        if self.session['web_uid'] == None:
            yield self.redirect("/index")
            return
        else:
            F = CopySelectForm(self.request.arguments)
            # print(F.fx_type.data)
            if F.validate():
                page_main['prc_type'] = F.fx_type.data
                page_main['time_type'] = F.time_type.data
                page_main[
                    'fx_flag'] = 9 if F.fx_flag.data == None else F.fx_flag.data
                cookie_dist = self.getCookie()
                page_main.update(cookie_dist)
                if F.fx_type.data == "list_loging":
                    # 列出所有的账号 的在线情况
                    page_main['title_type'] = self.locale.translate("在线状态")
                    page_main['fx_flag_text1'] = self.locale.translate("已授权")
                    page_main['fx_flag_text0'] = self.locale.translate("未授权")
                    page_main['th_num'] = 3
                    yield self.render("user/index_copy_list.html",
                                      page_main=page_main,
                                      session=self.session)
                    return
                elif F.fx_type.data == "list_position":
                    # 持仓统计
                    page_main['title_type'] = self.locale.translate("持仓监控")
                    page_main['th_num'] = 10
                    yield self.render("user/index_position_list.html",
                                      page_main=page_main,
                                      session=self.session)
                    return
                elif F.fx_type.data == "list_account":
                    # 账户管理
                    # print("ip:",self.ip)
                    # self.get_user_ip()
                    page_main['title_type'] = self.locale.translate("账户管理")
                    page_main['th_num'] = 6
                    R = RedisClass()
                    endtime = None  #R.RH.get(config.redis_ua_pid_endtime + cookie_dist["current_strategy"])
                    import time
                    # print(endtime)
                    if endtime == None or endtime == "null":
                        M = MasterModel()
                        mdata = yield M.getMaterInfo(
                            cookie_dist["current_strategy"], config.PID)
                        # print(mdata)
                        if mdata['endtime'] == None:
                            page_main['endtime'] = "1970-01-01"
                        else:
                            # page_main['endtime'] = time.strftime("%Y-%m-%d", mdata['endtime'])
                            page_main['endtime'] = mdata['endtime'].strftime(
                                "%Y-%m-%d")
                    else:
                        page_main['endtime'] = time.strftime(
                            "%Y-%m-%d", time.localtime(int(float(endtime))))
                    yield self.render("user/index_account_list.html",
                                      page_main=page_main,
                                      session=self.session)
                    return
                elif F.fx_type.data == "list_net_ratio":
                    # 资料风控
                    page_main['title_type'] = self.locale.translate("账户资金")
                    page_main['th_num'] = 8
                    yield self.render("user/index_net_ratio_list.html",
                                      page_main=page_main,
                                      session=self.session)
                    return
                elif F.fx_type.data == "list_order_count":
                    # 统计手数与单量
                    page_main['time_str'] = self.timeType(
                        page_main['time_type'])
                    page_main['title_type'] = self.locale.translate("订单统计")
                    page_main['th_num'] = 8
                    yield self.render("user/index_order_count_list.html",
                                      page_main=page_main,
                                      session=self.session)
                    return
                else:
                    yield self.redirect("/index")
                    return

            else:
                # 表单错误
                from models.public.confrom_model import get_ErrorForm
                echo_dist['echo'] = get_ErrorForm(F)
                echo_dist['reponse_status'] = 1
                self.redirect("/index")
                return
Exemple #22
0
 def post(self):
     echo_dist = {}
     if self.session['web_uid'] == None:
         # 退出
         echo_dist['reponse_status'] = -1
     else:
         # print("SS:", self.request.arguments)
         F = ParameterForm(self.request.arguments)
         if F.validate():  #and F.cla.data == "SendError"
             cookie_dist = self.getCookie(1)
             echo_dist['reponse_status'] = 5
             page_papa = {}
             page_papa[
                 'maxtime'] = 10 if F.maxtime.data == None else F.maxtime.data
             page_papa[
                 'maxloss'] = 10 if F.maxloss.data == None else F.maxloss.data
             page_papa[
                 'maxnum'] = 5 if F.maxnum.data == None else F.maxnum.data
             page_papa[
                 'reflex'] = 0 if F.reflex.data == None else F.reflex.data
             page_papa[
                 'fixed'] = 0 if F.fixed.data == None else F.fixed.data
             page_papa[
                 'percent'] = 0 if F.percent.data == None else F.percent.data
             page_papa[
                 'rate_min'] = 0.01 if F.rate_min.data == None else F.rate_min.data
             page_papa[
                 'rate_max'] = 0.5 if F.rate_max.data == None else F.rate_max.data
             page_papa['rate'] = 0 if F.rate.data == None else F.rate.data
             page_papa[
                 'tpsl_flag'] = 0 if F.tpsl_flag.data == None else F.tpsl_flag.data
             page_papa['allowed_sign'] = -1
             page_papa['uid'] = self.session['web_uid']
             page_papa['ip'] = self.get_user_ip()
             page_papa['balance'] = -100000
             page_papa['credit'] = -100000
             page_papa['quity'] = -100000
             page_papa['profit'] = -100000
             page_papa['margin'] = -100000
             U = UserModel()
             if F.fx_type.data == "edit":
                 #
                 from models.user.master_model import MasterModel
                 M = MasterModel()
                 m_dist = yield M.getMasterKEY(
                     cookie_dist["current_strategy"])
                 if m_dist != None:
                     page_papa['MasterKey'] = m_dist['key_ma']
                     page_papa['pid'] = config.PID
                     # page_papa.update(m_dist)
                     page_papa['parameter_time'] = int(time.time())
                     logger.debug("BB:%s" % page_papa)
                     echo_dist['data'] = yield U.updataAccount(
                         page_papa, F.fx_id.data)
                     if echo_dist['data'] != None:
                         # if echo_dist['data']['@flag'] == 0:
                         echo_dist['reponse_status'] = echo_dist['data'][
                             '@flag']
                         echo_dist['echo'] = self.locale.translate("保存失败!")
                     else:
                         echo_dist['reponse_status'] = -2
                         echo_dist['echo'] = self.locale.translate(
                             "跟单账户资料发生意外错误!")
         else:
             # 表单错误
             from models.public.confrom_model import get_ErrorForm
             echo_dist['echo'] = get_ErrorForm(F)
             echo_dist['reponse_status'] = 1
     # from models.public.headers_model import DateEncoder
     # yield self.write(json.dumps(echo_dist, cls=DateEncoder))
     self.write(json.dumps(echo_dist))
     self.finish()
Exemple #23
0
    def post(self):
        echo_dist = {}
        echo_dist['data'] = []
        echo_dist["recordsTotal"] = 0
        echo_dist["recordsFiltered"] = 0
        if self.session['ManagerUid'] == None:
            # 退出
            echo_dist['reponse_status'] = -1
        else:
            # print(self.request.arguments)
            F = CopySelectForm(self.request.arguments)
            if F.validate():  #and F.cla.data == "SendError"
                page_papa = {}
                page_papa['start'] = F.start.data
                page_papa['length'] = F.length.data
                page_papa['search'] = self.get_argument('search[value]', '0')
                page_papa['form_id'] = F.form_id.data
                # page_papa['page_num'] = self.get_argument('page_num', 10)
                page_papa['fx_type'] = F.fx_type.data
                page_papa['fx_flag'] = F.fx_flag.data
                page_papa['time_type'] = F.time_type.data
                page_papa['symbol_name'] = self.get_argument('symbol_name', "")
                page_papa['strategy_id'] = self.get_argument('strategy_id', 0)
                page_papa['uaid'] = self.get_argument('uaid', 0)
                echo_dist['fx_type'] = F.fx_type.data
                echo_dist['reponse_status'] = 0
                if self.chick_seach(page_papa['search']):

                    S = StrategyModel()
                    if F.fx_type.data == "list_strategy":
                        # 列出所有的账号 的在线情况
                        echo_dist['data'] = yield S.getStrategyLoging(
                            page_papa)
                    elif F.fx_type.data == "count":
                        # 统计数据
                        echo_dist['echo'] = yield S.getStrategyCount(page_papa)
                    elif F.fx_type.data == "symbol_count":
                        # 主策略持仓品种统计
                        echo_dist["symbol_list"], echo_dist[
                            "num_list"] = yield S.getStrategySymbol(
                                page_papa, False)
                    elif F.fx_type.data == "symbol_count_his":
                        # 主策略的历史品种统计
                        echo_dist["symbol_list"], echo_dist[
                            "num_list"] = yield S.getStrategySymbol(
                                page_papa, True)
                    elif F.fx_type.data == "funds_count":
                        # 资金曲线
                        echo_dist['data'] = yield S.getFundsCount(page_papa)
                    elif F.fx_type.data == "position":
                        # 列出持仓
                        echo_dist['data'] = yield S.getStrategySymbolList(
                            page_papa)
                    elif F.fx_type.data == "strategy_ma":
                        # 策略均线
                        echo_dist['data'], echo_dist[
                            'datas_columns'] = yield S.getStrategySymbolMa(
                                page_papa)
                    elif F.fx_type.data == "save_period":
                        # 保存周期
                        if page_papa['form_id'] == 9588:
                            echo_dist['echo'] = yield S.setStrategyPeriod(
                                page_papa)
                        else:
                            echo_dist['echo'] = False
                    elif F.fx_type.data == "save_open_flag":
                        # 保存货币开关
                        echo_dist['echo'] = yield S.setStrategyOpenFlag(
                            page_papa)
                    elif F.fx_type.data == "list_order_count":
                        # 统计手数与单量
                        echo_dist['data'] = yield S.getOrderCount(page_papa)
                    elif F.fx_type.data == "getStrategy_symbol":
                        # 策略货币对参数
                        echo_dist['data'] = yield S.getStrategySymbolName(
                            page_papa)
                    else:
                        echo_dist['echo'] = []
                    if len(echo_dist.get('data')) > 0:
                        if 'allnum' in echo_dist['data'][-1]:
                            allnum = echo_dist['data'].pop()
                            logger.debug(allnum)
                            echo_dist["recordsTotal"] = allnum['allnum']
                            echo_dist["recordsFiltered"] = allnum['allnum']
                            # s_data.pop()
                        echo_dist['reponse_status'] = 5
                    else:
                        echo_dist['data'] = []
                        echo_dist['reponse_status'] = 5
                    # echo_dist['data'] = s_data
                else:
                    echo_dist['echo'] = self.locale.translate("搜索内容只能是全数字的账户")
                    echo_dist['reponse_status'] = 1

            else:
                # 表单错误
                from models.public.confrom_model import get_ErrorForm
                echo_dist['echo'] = get_ErrorForm(F)
                echo_dist['reponse_status'] = 1
        # logger.debug(echo_dist)
        from models.public.headers_model import DateEncoder
        yield self.write(json.dumps(echo_dist, cls=DateEncoder))
        # self.write(json.dumps(echo_dist))
        self.finish()
Exemple #24
0
    def post(self):
        echo_dist = {}
        page_main = {}
        page_main['title_website'] = config.WEBSITE_NAME + "管理区"
        if self.session['ManagerUid'] == None:
            yield self.render("admin/login.html", page_main=page_main)
            return
        else:
            #登陆
            F = AccountsForm(self.request.arguments)
            if F.validate():  # and F.cla.data == "SendError"
                page_papa = {}
                # page_papa['start'] = F.start.data
                echo_dist['reponse_status'] = 5
                P = PayModel()
                if F.fx_type.data == "get_account_order":
                    # 获得支付订单列表
                    page_papa['fx_id'] = F.fx_id.data
                    page_papa['start'] = F.start.data
                    page_papa['length'] = F.length.data
                    page_papa['search'] = self.get_argument('search[value]', "0")
                    echo_dist['data'] = yield P.getPayOrderList(page_papa)
                    echo_dist["recordsTotal"] = 0
                    echo_dist["recordsFiltered"] = 0
                elif F.fx_type.data == "set_pay":
                    # 更新支付状态
                    oid = F.fx_id.data
                    otype = F.fx_id2.data
                    flag, email = yield P.setPayOrder(oid, otype)
                    mail_flag = ""
                    if flag == 1 and otype == 1:
                        from models.user.sendmail_model import SendmailModel
                        S = SendmailModel()
                        email_list = []
                        email_list.append(email)
                        to_text = """很高兴的通知您,您的支付订单已经处理完成,将在5分钟内同步至所有服务器。<BR>
                        感谢您的支持,如有什么疑问都可以直接回复此邮件"""
                        to_title = "订单支付成功"
                        mail_flag = yield S.email_send(email_list, to_text, to_title)
                    echo_dist['data'] = ['1']
                    echo_dist['echo'] = str(flag) + "," + str(mail_flag)

                if echo_dist.get('data') != None:
                    if len(echo_dist.get('data')) > 1:
                        if 'allnum' in echo_dist['data'][-1]:  #
                            allnum = echo_dist['data'].pop()
                            logger.debug(allnum)
                            echo_dist["recordsTotal"] = allnum['allnum']
                            echo_dist["recordsFiltered"] = allnum['allnum']
                            # s_data.pop()
                else:
                    echo_dist['echo'] = self.locale.translate("无数据")
                    echo_dist['reponse_status'] = 5
                    echo_dist['data'] = []
                # echo_dist['data'] = s_data
            else:
                # 表单错误
                from models.public.confrom_model import get_ErrorForm
                echo_dist['echo'] = get_ErrorForm(F)
                echo_dist['reponse_status'] = 1
        from models.public.headers_model import DateEncoder
        yield self.write(json.dumps(echo_dist, cls=DateEncoder))
        # self.write(json.dumps(echo_dist))
        self.finish()
Exemple #25
0
    def post(self):
        fx_type = self.get_argument('fx_type', None)
        echo_dist = {}
        echo_dist['data'] = []
        echo_dist["recordsTotal"] = 0
        echo_dist["recordsFiltered"] = 0
        echo_dist['echo_title'] = "编辑资讯"
        if self.session['ManagerUid'] == None:
            echo_dist['echo_title'] = "登陆"
            echo_dist['echo'] = "登陆失效"
            echo_dist['ok_status'] = 0
        else:
            P = PostsModel()
            if fx_type == "list_posts" or fx_type == "recycle":
                # 默认列表
                # 列表用
                page_papa = {}
                page_papa['start'] = self.get_argument('start', 0)
                page_papa['length'] = self.get_argument('length', 0)
                page_papa['search'] = self.get_argument('search[value]', "0")
                page_papa['prc_type'] = self.get_argument('prc_type', 0)
                # page_papa['page_num'] = self.get_argument('page_num', 10)
                echo_dist["prc_type"] = page_papa['prc_type']
                echo_dist['data'] = yield P.getPostsList(page_papa)
                # print(page_list[-1])
                if len(echo_dist.get('data')) > 0:
                    if 'allnum' in echo_dist['data'][-1]:
                        allnum = echo_dist['data'].pop()
                        echo_dist["recordsTotal"] = allnum['allnum']
                        echo_dist["recordsFiltered"] = allnum['allnum']

            elif fx_type == "edit_post" or fx_type == "add_post":
                F = AdminPostEditForm(self.request.arguments)
                # yy = F.validate()
                if F.validate():
                    # if F.comment_flag.data == "on":
                    #     comment_flag = 1
                    # else:
                    #     comment_flag = 0
                    form_dist = {
                        "uid": self.session['ManagerUid'],
                        "post_id": F.id.data,
                        "post_title": F.post_title.data,
                        "posts_type_id": F.posts_type_id.data,
                        "post_status": F.post_status.data,
                        # "comment_flag": F.comment_flag.data,
                        "post_excerpt": F.post_excerpt.data,
                        "tags_str": F.tags.data,
                        "post_content": F.post_content.data,
                    }
                    if int(form_dist['post_id']) != 0:
                        # 修改
                        flag = yield P.editPost(form_dist)
                        if flag == True:
                            # 字符转列表
                            tags_dist = yield P.formatToList(
                                form_dist['tags_str'])
                            # 检查缺少的标签并增加
                            yield P.chickNewTags(tags_dist)
                            # 检查文章与标签的关联,得到缺少的标签关联, IDTuple
                            tags_Tuple_List, tags_dell_list = yield P.getPostTagsTuple(
                                int(form_dist['post_id']), tags_dist)
                            # print("tags_Tuple_list:%s" % tags_Tuple_List)
                            # 增加文章与标签的关联
                            yield P.addPostsTags(tags_Tuple_List)
                            # 删除多余的文章与标签的关联
                            yield P.delOldTags(tags_dell_list)
                            yield P.chickPostType(form_dist['post_id'],
                                                  form_dist['posts_type_id'])
                            # yield Mysql_log_Models.addMysqlLog("admin-editNews",
                            #                                "news_id:" + str(form_dist['news_id']) + ",news_status:" + str(
                            #                                    form_dist['news_status']), self.session['uid'])

                            echo_dist['echo'] = "修改成功"
                            echo_dist['ok_status'] = 5
                        elif flag == False:
                            echo_dist['echo'] = "修改失败"
                            echo_dist['ok_status'] = 2
                        elif flag == None:
                            echo_dist['echo'] = "已经存在相同的文章"
                            echo_dist['ok_status'] = 3
                    else:
                        #新增
                        post_id = yield P.addPost(form_dist)
                        if post_id:
                            # 字符转列表
                            tags_list = yield P.formatToList(
                                form_dist['tags_str'])
                            # 检查缺少的标签并增加
                            yield P.chickNewTags(tags_list)
                            # 获得所有标签, IDTuple
                            tags_Tuple_List = yield P.getAllTagsTuple(
                                post_id, tags_list)
                            # print("tags_Tuple_list:%s" % tags_Tuple_List)
                            # 增加文章与标签的关联
                            yield P.addPostsTags(tags_Tuple_List)
                            yield P.chickPostType(post_id,
                                                  form_dist['posts_type_id'])
                            # yield Mysql_log_Models.addMysqlLog("admin-addPosts", "post_id:" + str(form_dist['post_id']) + ",news_status:" + str(form_dist['news_status']), self.session['uid'])
                            echo_dist['echo'] = "新增成功"
                            echo_dist['ok_status'] = 5
                        elif post_id == False:
                            echo_dist['echo'] = "新增失败"
                            echo_dist['ok_status'] = 2
                        elif post_id == None:
                            echo_dist['echo'] = "已经存在相同的文章"
                            echo_dist['ok_status'] = 3
                else:
                    # 表单错误
                    from models.public.confrom_model import get_ErrorForm
                    echo_dist['echo'] = get_ErrorForm(F)
                    echo_dist['ok_status'] = 1
            elif fx_type == "del":
                #删除
                flag = yield P.delPost(self.get_argument('id', 0))
                if flag:
                    echo_dist['echo'] = "删除成功"
                    echo_dist['ok_status'] = 5
                else:
                    echo_dist['echo'] = "删除失败"
                    echo_dist['ok_status'] = 1
            else:
                echo_dist[''] = "你好,黑客!"

        # print("json:%s" % json.dumps(echo_dist))

        yield self.write(json.dumps(echo_dist, cls=DateEncoder))
        self.finish()
Exemple #26
0
 def get(self):
     # print(self.request.host)
     # tornado.locale.set_default_locale("en_US")
     #ip 检测
     # user_ip = yield self.chink_host()
     # if user_ip:
     #     yield self.render("index.html", ip=user_ip)
     #     return
     page_main = {}
     page_main['lang'] = self.get_lang()
     page_main['title_website'] = config.WEBSITE_NAME
     if self.session['web_uid'] == None:
         yield self.render("user/login.html", page_main=page_main)
         return
     else:
         from models.public.confrom_model import StrategySelectForm
         F = StrategySelectForm(self.request.arguments)
         if F.validate():
             # 选定策略,并设置cookie
             # print("F")
             if F.fx_type.data == "strategy_select":
                 S = StrategyModel()
                 s_data = yield S.getStrategyInfo(self.session['web_uid'], F.form_uaid.data, None)
                 if s_data != None:
                     logger.debug("set:%s" % F.form_uaid.data)
                     self.set_secure_cookie("current_strategy" + str(self.session['web_uid']), str(F.form_uaid.data))
                     self.set_secure_cookie("current_ma_name" + str(self.session['web_uid']), "null" if s_data['ma_name'] == None else s_data['ma_name'])
                     self.set_secure_cookie("current_account" + str(self.session['web_uid']), "null" if s_data['account'] == None else s_data['account'])
                     self.set_secure_cookie("current_key_ma" + str(self.session['web_uid']), "null" if s_data['key_ma'] == None else s_data['key_ma'])
                     self.set_secure_cookie("current_logo_url" + str(self.session['web_uid']), "null" if s_data['logo_url'] == None else s_data['logo_url'])
                     if len(F.backurl.data) > 0:
                         self.redirect(F.backurl.data)
                     else:
                         self.redirect("/index")
                     return
                 else:
                     yield self.render('user/strategy_select.html', page_main=page_main, session=self.session)
                     return
             elif F.fx_type.data == "login":
                 self.redirect(F.backurl.data)
                 return
         else:
             # 表单错误
             from models.public.confrom_model import get_ErrorForm
             logger.error(get_ErrorForm(F))
             self.render('user/500.html')
             return
         # print("get:%s" % self.get_secure_cookie("current_strategy"))
         if self.get_secure_cookie("current_strategy" + str(self.session['web_uid'])) == None:
             S = StrategyModel()
             s_data = yield S.getStrategyList(self.session['web_uid'])
             page_main['s_data'] = s_data
             if len(s_data) == 0:
                 self.session.delete()
                 yield self.render("user/login.html", page_main=page_main)
                 return
             elif len(s_data) == 1:
                 self.set_secure_cookie("current_strategy" + str(self.session['web_uid']), str(s_data[0]['uaid']))
                 self.set_secure_cookie("current_ma_name" + str(self.session['web_uid']), "null" if s_data[0]['ma_name'] == None else s_data[0]['ma_name'])
                 self.set_secure_cookie("current_account" + str(self.session['web_uid']), "null" if s_data[0]['account'] == None else s_data[0]['account'])
                 self.set_secure_cookie("current_key_ma" + str(self.session['web_uid']), "null" if s_data[0]['key_ma'] == None else s_data[0]['key_ma'])
                 self.set_secure_cookie("current_logo_url" + str(self.session['web_uid']), "null" if s_data[0]['logo_url'] == None else s_data[0]['logo_url'])
                 page_main['current_strategy'] = str(s_data[0]['uaid'])
                 page_main['current_ma_name'] = s_data[0]['ma_name']
                 page_main['current_account'] = s_data[0]['account']
                 page_main['current_key_ma'] = s_data[0]['key_ma']
                 page_main['current_logo_url'] = s_data[0]['logo_url']
                 yield self.render('user/index.html', page_main=page_main, session=self.session)
                 return
             else:
                 # 多个策略,未曾指定,转指定
                 yield self.render('user/strategy_select.html', page_main=page_main, session=self.session)
                 return
         else:
             cookie_dist = self.getCookie()
             page_main.update(cookie_dist)
             # print("index:%s" % page_main)
             yield self.render('user/index.html', page_main=page_main, session=self.session)
             return
Exemple #27
0
    def post(self):
        echo_dist = {}
        F = LoginForm(self.request.arguments)
        if F.validate():
            S = SwissquoteModel()
            if F.fx_type.data == "signout":
                # 退出
                self.session.delete()
                # self.session['swissquote_uid'] = None
                echo_dist['reponse_status'] = 5
                echo_dist['echo'] = self.locale.translate("退出成功")

            elif F.fx_type.data == "sendmail":
                from models.user.sendmail_model import SendmailModel
                import random
                sendH = SendmailModel()
                mail_key = "".join(random.sample('123567890', 6))
                mail_text = self.locale.translate("返佣管理系统登陆验证码")
                mail_text = mail_text + """:
    
                                """
                mail_text = mail_text + mail_key
                mail_text = mail_text + """
    
                                """
                mail_text = mail_text + self.locale.translate(
                    "请不要将验证码转发或给其他人查看")
                mail_text = mail_text + """!!!!!
    
                                -----"""
                mail_text = mail_text + self.locale.translate("来自[返佣管理系统]")
                tomail = []
                tomail.append(F.umail.data)
                send_flag = yield sendH.email_send(
                    tomail, mail_text, self.locale.translate("返佣管理系统登陆验证码"))
                if send_flag == True:
                    R = RedisClass()
                    R.RH.set(config.redis_session_uaid_set + str(F.umail.data),
                             mail_key,
                             ex=config.SessionsOutTime)
                    echo_dist['reponse_status'] = 5  # 发送成功
                else:
                    echo_dist['reponse_status'] = 2  # 发送失败

            else:
                #登陆
                R = RedisClass()
                mail_key = R.RH.get(config.redis_session_uaid_set +
                                    str(F.umail.data))
                R.RH.delete(config.redis_session_uaid_set + str(F.umail.data))
                # 验证码检查
                if mail_key == F.pword.data:
                    m_data = yield S.CheckMailAccount(F.umail.data)
                    # print(m_data)
                    if m_data == None:
                        #策略邮箱未注册
                        uid = yield S.AddMailAccount(F.umail.data)
                        if uid == None:
                            echo_dist['reponse_status'] = 0
                            echo_dist['echo'] = self.locale.translate("邮箱注册失败")
                        else:
                            self.session['swissquote_uid'] = uid
                            echo_dist['reponse_status'] = 5
                            echo_dist['echo'] = self.locale.translate(
                                "新注册并登陆成功")
                    else:
                        # 已经有账号
                        self.session['swissquote_uid'] = m_data['uid']
                        echo_dist['echo'] = self.locale.translate("登陆成功")
                        echo_dist['reponse_status'] = 5

                    from models.public.headers_model import LogsModel
                    LogsModel.addMysqlLog("login",
                                          "loging", str(m_data['uid']),
                                          self.get_user_ip())
                else:
                    echo_dist['reponse_status'] = 0
                    echo_dist['echo'] = self.locale.translate("登录失败")

        else:
            # 表单错误
            from models.public.confrom_model import get_ErrorForm
            echo_dist['echo'] = get_ErrorForm(F)
            echo_dist['reponse_status'] = 1
        self.write(json.dumps(echo_dist))
        self.finish()
Exemple #28
0
    def post(self):
        echo_dist = {}
        echo_dist['data'] = []
        echo_dist["recordsTotal"] = 0
        echo_dist["recordsFiltered"] = 0
        if self.session['ManagerUid'] == None:
            # 退出
            echo_dist['reponse_status'] = -1
        else:
            # print("SS:", self.request.arguments)
            F = ProxyForm(self.request.arguments)
            if F.validate():#and F.cla.data == "SendError"
                echo_dist['reponse_status'] = 5
                P = ProxyOrderModel()
                cookie_dist = self.getCookie(1)
                page_papa = {}
                page_papa['start'] = F.start.data
                page_papa['length'] = F.length.data
                page_papa['search'] = self.get_argument('search[value]', '0')
                # page_papa['search_regex'] = F.search_regex.data
                # page_papa['page_num'] = self.get_argument('page_num', 10)
                page_papa['fx_type'] = F.fx_type.data
                page_papa['account'] = F.account.data
                page_papa['uid'] = F.uid.data

                page_papa['time_type'] = F.time_type.data
                echo_dist['fx_type'] = F.fx_type.data
                if F.fx_type.data == "list_proxy_order":
                    # 单个账户佣金列表
                    echo_dist['data'] = yield P.getProxyOrderList(page_papa['uid'], page_papa)
                elif F.fx_type.data == "list_proxy_count2":
                    # 单个账户返佣总金额
                    echo_dist['data'] = yield P.getProxyCount2(page_papa['uid'], page_papa)
                elif F.fx_type.data == "list_proxy_count":
                    # 返佣总金额
                    echo_dist['data'] = yield P.getProxyCount(page_papa['uid'], page_papa)
                elif F.fx_type.data == "list_proxy_count_all":
                    # 所有代理返佣总金额
                    echo_dist['data'] = yield P.getProxyCountAll(page_papa)
                elif F.fx_type.data == "list_proxy_order_count":
                    # 统计各账户的返佣金额
                    echo_dist['data'] = yield P.getProxyOrderCountList(page_papa['uid'], page_papa)
                elif F.fx_type.data == "list_proxy_order_count_all":
                    # 统计各代理的返佣金额
                    echo_dist['data'] = yield P.getProxyOrderCountListAll(page_papa)
                elif F.fx_type.data == "list_settlement":
                    # 统计返佣结算金额列表
                    echo_dist['data'] = yield P.getProxySettlementList(page_papa['uid'], page_papa)
                elif F.fx_type.data == "list_settlement_count":
                    # 统计结算金额
                    echo_dist['data'] = yield P.getProxySettlementCount(page_papa['uid'], page_papa)
                elif F.fx_type.data == "list_proxy_settlement_count":
                    # 统计总佣金和总结算金额
                    echo_dist['all_proxy_profit'], echo_dist['all_profit'], echo_dist['all_amount'] = yield P.getProxySettlementAllCount(page_papa['uid'])
                    data = yield P.CheckProxyInfo(page_papa['uid'])
                    if len(data) > 0:
                        echo_dist['uname'] = data[0]['uname']
                        echo_dist['iban'] = data[0]['iban']
                        echo_dist['flag'] = data[0]['flag']
                    else:
                        echo_dist['uname'] = ""
                        echo_dist['iban'] = ""
                        echo_dist['flag'] = 0
                    echo_dist['reponse_status'] = 5
                    echo_dist['echo'] = ""
                elif F.fx_type.data == "add_settlement":
                    # 新增结算金额
                    page_papa['in_uname'] = F.in_uname.data
                    page_papa['in_iban'] = F.in_iban.data
                    page_papa['out_iban'] = F.out_iban.data
                    page_papa['amount'] = F.amount.data
                    page_papa['remarks'] = F.remarks.data
                    add_flag = yield P.addProxySettlement(page_papa['uid'], page_papa)
                    if add_flag == True:
                        sendfalg = yield self.ProxySendMail(page_papa['uid'], page_papa['amount'])
                        if sendfalg == True:
                            echo_dist['reponse_status'] = 5
                            echo_dist['echo'] = "新增完成,邮件发送成功!"
                        else:
                            echo_dist['reponse_status'] = -2
                            echo_dist['echo'] = "新增完成,邮件发送失败"
                    else:
                        echo_dist['echo'] = "新增失败"
                        echo_dist['reponse_status'] = -1
                else:
                    echo_dist['echo'] = self.locale.translate("无数据")
                    echo_dist['reponse_status'] = 5
                # print(echo_dist['data'])
                if len(echo_dist.get('data')) > 0:
                    if 'allnum' in echo_dist['data'][-1]:
                        allnum = echo_dist['data'].pop()
                        # print('allnum', allnum)
                        echo_dist["recordsTotal"] = allnum['allnum']
                        echo_dist["recordsFiltered"] = allnum['allnum']
                        # s_data.pop()
                else:
                    echo_dist['echo'] = self.locale.translate("无数据")
                    echo_dist['reponse_status'] = 5
            else:
                # 表单错误
                from models.public.confrom_model import get_ErrorForm
                echo_dist['echo'] = get_ErrorForm(F)
                echo_dist['reponse_status'] = 1
        # print(echo_dist)
        from models.public.headers_model import DateEncoder
        yield self.write(json.dumps(echo_dist, cls=DateEncoder))
        # self.write(json.dumps(echo_dist))
        self.finish()
Exemple #29
0
    def get(self):
        echo_dist = {}
        page_main = {}
        page_main['title_website'] = config.WEBSITE_NAME + "管理区"
        if self.session['ManagerUid'] == None:
            yield self.render("admin/login.html", page_main=page_main)
            # yield self.redirect("/adminSZba2qjbydxVhMJpuKfy/", permanent=False)
            return
        else:
            page_main['lang'] = self.get_argument('lang', "")
            prc_type = self.get_argument('prc_type', None)
            fx_type = self.get_argument('fx_type', None)
            page_main['fx_type'] = fx_type
            page_main['title_main'] = "管理区"
            page_main['title_type'] = "资讯"
            page_main['strategy_id'] = self.get_argument('strategy_id', 0)
            page_main['uaid'] = self.get_argument('uaid', 0)
            F = CopySelectForm(self.request.arguments)
            # print(F.fx_type.data)
            if F.validate():
                page_main['prc_type'] = F.fx_type.data
                page_main['time_type'] = F.time_type.data
                page_main[
                    'fx_flag'] = 9 if F.fx_flag.data == None else F.fx_flag.data
                S = StrategyModel()
                if F.fx_type.data == "list_strategy":
                    # 列出所有的账号 的在线情况
                    page_main['title_type'] = self.locale.translate("自研策略列表")
                    page_main['th_num'] = 4
                    yield self.render("admin/index_strategy_list.html",
                                      page_main=page_main,
                                      session=self.session)
                    return

                elif F.fx_type.data == "strategy_main":
                    # 自研策略面板
                    page_main['title_type'] = self.locale.translate("自研策略面板")
                    page_main['th_num'] = 5
                    page_main[
                        'SymbolNameDist'] = yield S.getStrategySymbolName(
                            page_main)
                    yield self.render("admin/index_strategy_index.html",
                                      page_main=page_main,
                                      session=self.session)
                    return
                elif F.fx_type.data == "list_position":
                    # 持仓统计
                    page_main['title_type'] = self.locale.translate("持仓监控")
                    page_main['th_num'] = 10
                    yield self.render("user/index_position_list.html",
                                      page_main=page_main,
                                      session=self.session)
                    return
                elif F.fx_type.data == "strategy_ma":
                    # 策略均线
                    page_main['color_v'] = {
                        "P": "#034aff",
                        20: "#6C6C6C",
                        30: "#AE0000",
                        60: "#00AEAE",
                        120: "#D200D2",
                        200: "#8600FF",
                        250: "#00AEAE",
                        360: "#F00078"
                    }
                    page_main['title_type'] = self.locale.translate("策略均线")
                    page_main['symbol_name'] = self.get_argument(
                        'symbol_name', "")
                    page_main['time_period'] = S.time_period
                    page_main['period_v'] = yield S.getStrategySymbolMaPeriod(
                        page_main)
                    yield self.render("admin/index_strategy_ma.html",
                                      page_main=page_main,
                                      session=self.session)
                    return
                elif F.fx_type.data == "list_order_count":
                    # 统计手数与单量
                    page_main['time_str'] = self.timeType(
                        page_main['time_type'])
                    page_main['title_type'] = self.locale.translate("订单统计")
                    page_main['th_num'] = 7
                    yield self.render("admin/index_strategy_order_count.html",
                                      page_main=page_main,
                                      session=self.session)
                    return
                else:
                    yield self.redirect("adminSZba2qjbydxVhMJpuKfy/")
                    return

            else:
                # 表单错误
                from models.public.confrom_model import get_ErrorForm
                echo_dist['echo'] = get_ErrorForm(F)
                echo_dist['reponse_status'] = 1
                self.redirect("adminSZba2qjbydxVhMJpuKfy/")
                return
Exemple #30
0
 def get(self):
     page_main = {}
     page_main['lang'] = self.get_lang()
     page_main['title_website'] = config.WEBSITE_NAME
     if self.session['ManagerUid'] == None:
         # 退出
         # yield self.render("user/login.html", page_main=page_main)
         yield self.render("admin/login.html", page_main=page_main)
         return
     else:
         F = ProxyInfoForm(self.request.arguments)
         if F.validate():
             # cookie_dist = self.getCookie()
             # page_main.update(cookie_dist)
             page_main['prc_type'] = F.fx_type.data
             P = ProxyOrderModel()
             if F.fx_type.data == "edit_proxy":
                 # 修改代理资料
                 data = yield P.CheckProxyInfo(self.session['web_uid'])
                 if len(data) > 0:
                     page_main['uname'] = data[0]['uname']
                     page_main['iban'] = data[0]['iban']
                     page_main['flag'] = data[0]['flag']
                     page_main['title_type'] = self.locale.translate(
                         "修改返佣资料")
                 else:
                     yield P.add_proxy_info(self.session['web_uid'])
                     page_main['uname'] = ""
                     page_main['iban'] = ""
                     page_main['flag'] = 0
                     page_main['title_type'] = self.locale.translate(
                         "新增返佣资料")
                 yield self.render("user/index_edit_proxy_info.html",
                                   page_main=page_main,
                                   session=self.session)
                 return
             elif F.fx_type.data == "list_proxy":
                 # 代理列表
                 page_main['title_type'] = self.locale.translate("返佣管理")
                 data = yield P.getProxyGradePrice()
                 page_main['price_html'] = yield self.format_html(data)
                 page_main['th_num'] = 5
                 yield self.render("admin/index_proxy_list.html",
                                   page_main=page_main,
                                   session=self.session)
                 return
             elif F.fx_type.data == "list_proxy_account":
                 # 各代理的列表
                 page_main['title_type'] = self.locale.translate("账户管理")
                 page_main['th_num'] = 4
                 yield self.render("user/index_proxy_account_list.html",
                                   page_main=page_main,
                                   session=self.session)
                 return
             else:
                 page_main['title_type'] = self.locale.translate(
                     "瑞讯银行瑞士账户申请")
                 # page_main['th_num'] = 2
                 yield self.render('admin/index_swissquote_open.html',
                                   page_main=page_main,
                                   session=self.session)
                 return
         else:
             # 表单错误
             from models.public.confrom_model import get_ErrorForm
             logger.error(get_ErrorForm(F))
             self.render('admin/500.html')
             return
     self.finish()