Exemple #1
0
    def get(self, request):
        try:
            unionid = request.GET.get('unionid')
            if not unionid:
                return JsonResponse({'ret': -2, 'msg': '缺少参数'})
            mysql = Mysql()
            sql = 'SELECT * FROM h5_user WHERE unionid = %s'
            share_info = mysql.getOne(sql, param=[unionid])
            if not share_info:
                mysql.dispose()
                return JsonResponse({'ret': -2, 'msg': '公众号信息未授权'})
            # sql = 'SELECT id FROM userInfo WHERE unionId = %s'
            # user_id = mysql.getOne(sql, param=[unionid])
            # if not user_id:
            #     mysql.dispose()
            #     return JsonResponse({
            #         'ret' : -2,
            #         'msg' : '小程序信息未授权'
            #     })
            user_id = user_id.get('id')
            sql = 'SELECT one, two, three, four, five, six, seven, \
                eight, nine, ten, eleven, twelve \
                FROM user_star_sign WHERE user_id = %s'

            patch_info = mysql.getOne(sql, param=[user_id])
            sql = "SELECT hu.nickname,  hu.headimgurl \
                    FROM h5_help_log AS hl \
                    LEFT JOIN h5_user AS hu ON hl.help_unionid = hu.unionid \
                    WHERE leader_unionid = %s"

            helpuser_info = mysql.getAll(sql, param=[unionid])
            mysql.dispose()
            data = {
                'ret': 0,
                'msg': '查询成功',
                'resule': {
                    'patch_info': patch_info,
                    'help_user': helpuser_info,
                    'lucky_draw_times': share_info.get('lucky_draw_times')
                }
            }
            return JsonResponse(data)

        except Exception as e:
            erroLog(e)
            mysql.errdispose()
            return JsonResponse({'ret': -2, 'msg': '网络错误'})
Exemple #2
0
    def post(self, request):
        store_id = request.POST.get('store_id')
        name = request.POST.get('name')
        phone = request.POST.get('phone')
        address = request.POST.get('address')
        store_name = request.POST.get('store_name')
        password = request.POST.get('password')
        mysql = Mysql()
        sql = f"UPDATE store SET `name` = '{name}', phone = '{phone}', \
            store_name = '{store_name}', `password` = '{password}', address =' {address}' WHERE id = '{store_id}'"

        suc = mysql.update(sql)
        if suc:
            mysql.dispose()
            return HttpResponse(1)
        mysql.errdispose()
        return HttpResponse(0)
Exemple #3
0
 def post(self, request):
     school_img = request.POST.get('school_img')
     english_name = request.POST.get('english_name')
     school_name = request.POST.get('school_name')
     school_motto = request.POST.get('school_motto')
     area_id = request.POST.get('area_id')
     mysql = Mysql()
     sql = "INSERT INTO school SET school_name='{school_name}', school_img='{school_img}', \
         english_name='{english_name}', school_motto='{school_motto}', area_id='{area_id}' \
         "             .format(school_img=school_img, school_name=school_name, school_motto=school_motto, \
         area_id=area_id, english_name=english_name)
     suc = mysql.insertOne(sql)
     if suc:
         mysql.dispose()
         return HttpResponse(1)
     mysql.errdispose()
     return HttpResponse(0)
Exemple #4
0
 def post(self, request):
     school_id = request.POST.get('school_id')
     mysql = Mysql()
     sql = "SELECT * FROM userInfo WHERE school_id = '{school_id}'".format(
         school_id=school_id)
     info = mysql.getOne(sql)
     if info:
         mysql.dispose()
         return HttpResponse(2)  #有学生绑定 要先删学生
     sql = "DELETE FROM school WHERE id = '{school_id}'".format(
         school_id=school_id)
     suc = mysql.delete(sql)
     if suc:
         mysql.dispose()
         return HttpResponse(1)
     mysql.errdispose()
     return HttpResponse(0)
Exemple #5
0
 def post(self, request):
     wx_name = request.POST.get('wx_name')
     wx_img = request.POST.get('wx_img')
     openid = request.POST.get('openid')
     mysql = Mysql()
     sql = f"SELECT mer_userid FROM mer_admin WHERE openid = '{openid}'"
     check_user = mysql.getOne(sql)
     if check_user:
         sql = f"UPDATE mer_admin SET wx_img='{wx_img}', wx_name='{wx_name}' WHERE openid='{openid}'"
         suc = mysql.update(sql)
         if suc:
             mysql.dispose()
             return HttpResponse(1)
         mysql.errdispose()
         return HttpResponse(0)
     mysql.dispose()
     return HttpResponse("openid不存在")
Exemple #6
0
    def post(self, request):
        try:
            mysql = Mysql()
            sql = "SELECT product_id, new_img FROM stock \
                WHERE product_id IS NOT NULL GROUP BY product_id "

            store_info = mysql.getAll(sql)
            for i in store_info:
                sql = "UPDATE product SET productImg=%s WHERE id=%s"
                mysql.update(sql,
                             param=[i.get('new_img'),
                                    i.get('product_id')])
            mysql.dispose()
            return HttpResponse(1)
        except Exception as e:
            mysql.errdispose()
            return HttpResponse(0)
Exemple #7
0
 def post(self, request):
     area_id = request.POST.get('area_id')
     mysql = Mysql()
     sql = "SELECT id FROM school WHERE area_id = '{area_id}'".format(
         area_id=area_id)
     info = mysql.getOne(sql)
     if info:
         mysql.dispose()
         return HttpResponse(2)  #有学校绑定 要先删学校
     sql = "DELETE FROM school_area WHERE id='{area_id}'".format(
         area_id=area_id)
     suc = mysql.delete(sql)
     if suc:
         mysql.dispose()
         return HttpResponse(1)
     mysql.errdispose()
     return HttpResponse(0)
Exemple #8
0
 def post(self, request):
     name = request.POST.get('name')
     phone = request.POST.get('phone')
     pwd = request.POST.get('pwd')
     mer_id = request.POST.get('mer_id')
     mysql = Mysql()
     sql = f"SELECT mer_userid FROM mer_admin WHERE phone = '{phone}'"
     check_user = mysql.getOne(sql)
     if check_user:
         return HttpResponse(2) #已被注册
     sql = f"INSERT INTO mer_admin SET phone='{phone}', user_name='{name}',\
         `password`='{pwd}', is_admin='0', mer_id='{mer_id}'"
     suc = mysql.insertOne(sql)
     if suc:
         mysql.dispose()
         return HttpResponse(1)
     mysql.errdispose()
     return HttpResponse(0)
Exemple #9
0
    def post(self, request):
        recurrence_no = request.POST.get('recurrence_no')
        recurrence_name = request.POST.get('recurrence_name')
        mysql = Mysql()
        sql = f"SELECT id FROM recurrence WHERE recurrence_no='{recurrence_no}'"
        check = mysql.getOne(sql)
        if check:
            mysql.dispose()
            return HttpResponse(0)
        sql = f"INSERT INTO recurrence SET recurrence_no \
            = '{recurrence_no}', recurrence_name = '{recurrence_name}'"

        suc = mysql.insertOne(sql)
        if suc:
            mysql.dispose()
            return HttpResponse(1)
        mysql.errdispose()
        return HttpResponse(0)
Exemple #10
0
    def get(self, request, **payload):
        try:
            user_id = payload.get('user_id')
            mysql = Mysql()
            data = {}
            sql = "SELECT * FROM user_star_sign WHERE user_id = %s"
            result = mysql.getAll(sql, param=[user_id])
            data = {'ret': 0, 'result': result}
            if not result:
                sql = "INSERT INTO user_star_sign SET user_id = %s "
                mysql.insertOne(sql, param=[user_id])
                sql = "SELECT * FROM user_star_sign WHERE user_id = %s"
                info = mysql.getAll(sql, param=[user_id])
                data = {'ret': 0, 'msg': '查询成功', 'result': info}

            sql = "SELECT unionId FROM userInfo WHERE id = %s"
            user_info = mysql.getOne(sql, param=[user_id])
            if user_info.get('unionId'):
                sql = "SELECT * FROM h5_luckdraw_log WHERE unionid = %s AND state = 0"
                luckdraw_log = mysql.getAll(sql,
                                            param=[user_info.get('unionId')])
                if luckdraw_log:
                    patch_list = []
                    for i in luckdraw_log:
                        patch_list.append(i.get('patch_id'))
                        sql = 'UPDATE h5_luckdraw_log SET state = 1 WHERE id = %s'
                        mysql.update(sql, param=[i.get('id')])
                    getPatch(user_id, patch_list, 3, 1, mysql)
                    data['msg'] = '查询成功 碎片领取成功'
                    sql = "SELECT * FROM user_star_sign WHERE user_id = %s"
                    info = mysql.getAll(sql, param=[user_id])
                    data['result'] = info
                else:
                    data['msg'] = '查询成功 无碎片领取'
            else:
                data['ret'] = -1
                data['msg'] = '查询成功 但未绑定unionid 可能会导致h5抽奖碎片领取失败'
            mysql.dispose()
            return HttpResponse(callJson(data))
        except Exception as e:
            print(e)
            mysql.errdispose()
            erroLog(e)
            return JsonResponse({'ret': -2, 'msg': '网络错误'})
Exemple #11
0
 def post(self, request):
     quiz_name = request.POST.get('quiz_name')
     answer_list = json.loads(request.POST.get('answer_list'))
     print(type(answer_list))
     #[{answer:xxx,is_right:1}]
     mysql = Mysql()
     try:
         sql = f"INSERT INTO daily_quiz SET quiz_name = '{quiz_name}'"
         quiz_id = mysql.insertOne(sql)
         for i in answer_list:
             sql = f'''INSERT INTO quiz_bank SET quiz_id = "{quiz_id}",\
                 answer = "{i.get('answer')}", is_right = "{i.get('is_right')}"'''
             mysql.insertOne(sql)
         mysql.dispose()
         return HttpResponse(1)
     except Exception as e:
         print(e)
         mysql.errdispose()
         return HttpResponse(0)
Exemple #12
0
 def post(self, request):
     self.params = {}
     self.params['mer_userid'] = request.POST.get('mer_userid')
     self.params['user_name'] = request.POST.get('user_name')
     self.params['phone'] = request.POST.get('phone')
     self.params['password'] = request.POST.get('password')  #可以随机生成密码
     mysql = Mysql()
     sql = "UPDATE mer_admin SET  user_name='{user_name}', phone = {phone}, \
         `password`='{password}' WHERE mer_userid='{mer_userid}'"                                                                    .format(\
         password=self.params['password'], phone =self.params['phone'], \
         mer_userid=self.params['mer_userid'],user_name=self.params['user_name'])
     print(sql)
     try:
         mysql.update(sql)
         mysql.dispose()
         return HttpResponse(1)
     except Exception as e:
         mysql.errdispose()
         return HttpResponse(0)
Exemple #13
0
 def post(self, request):
     try:
         product_id = request.POST.get('product_id')
         mysql = Mysql()
         sql = "SELECT * FROM stock WHERE product_id = %s  AND state = 1"
         stock_info = mysql.getAll(sql, param=[product_id])
         if not stock_info:
             mysql.dispose()
             return JsonResponse({'ret': -2, 'msg': '没有库存不能上架'})
         sql = "UPDATE product SET upper_shelf = 1 WHERE id = %s"
         mysql.update(sql, param=[product_id])
         sql = "UPDATE stock SET upper_shelf = 1 WHERE product_id = %s"
         mysql.update(sql, param=[product_id])
         mysql.dispose()
         return JsonResponse({'ret': 0, 'msg': '上架成功'})
     except Exception as e:
         print(e)
         mysql.errdispose()
         return JsonResponse({'ret': -2, 'msg': '上架出现错误'})
Exemple #14
0
 def post(self, request):
     try:
         product_id = request.POST.get('product_id')
         mysql = Mysql()
         sql = "SELECT * FROM product WHERE id = %s AND upper_shelf=1"
         check = mysql.getOne(sql, param=[product_id])
         if check:
             mysql.dispose()
             return JsonResponse({'ret': -2, 'msg': '删除失败 商品上架中'})
         sql = "UPDATE product SET state = 0 WHERE id = %s"
         mysql.update(sql, param=[product_id])
         sql = "UPDATE stock SET state = 0 WHERE product_id = %s"
         mysql.update(sql, param=[product_id])
         mysql.dispose()
         return JsonResponse({'ret': 0, 'msg': '删除成功'})
     except Exception as e:
         print(e)
         mysql.errdispose()
         erroLog(e)
         return JsonResponse({'ret': -2, 'msg': '删除失败'})
Exemple #15
0
 def post(self, request):
     prize_id = request.POST.get('prize_id')
     prize_type = request.POST.get('prize_type') #1.商品 2.实物 3.二维码 4.cdk 5.盒盒币以及余额
     prize_detail = request.POST.get('prize_detail')
     class_id = request.POST.get('class_id')
     all_limit = request.POST.get('all_limit')
     one_limit = request.POST.get('one_limit')
     mysql = Mysql()
     sql = "UPDATE prize SET prize_type='{prize_type}', prize_detail='{prize_detail}', \
         class_id='{class_id}', all_limit='{all_limit}', one_limit='{one_limit}' \
         WHERE id = '{prize_id}'".format(prize_type=prize_type, prize_detail=prize_detail, \
         class_id=class_id, prize_id=prize_id, all_limit=all_limit, one_limit=one_limit)
     try:
         mysql.update(sql)
         mysql.dispose()
         return HttpResponse(1)
     except Exception as e:
         print(e)
         mysql.errdispose()
         return HttpResponse(0)
Exemple #16
0
 def post(self, request):
     school_id = request.POST.get('school_id')
     school_img = request.POST.get('school_img')
     english_name = request.POST.get('english_name')
     school_name = request.POST.get('school_name')
     school_motto = request.POST.get('school_motto')
     area_id = request.POST.get('area_id')
     mysql = Mysql()
     sql = "UPDATE school SET school_name='{school_name}', school_img='{school_img}', \
         english_name='{english_name}', school_motto='{school_motto}', area_id='{area_id}' WHERE id='{school_id}' \
         "             .format(school_img=school_img, school_name=school_name, school_motto=school_motto, \
         area_id=area_id, english_name=english_name, school_id=school_id)
     try:
         mysql.update(sql)
         mysql.dispose()
         return HttpResponse(1)
     except Exception as e:
         print(e)
         mysql.errdispose()
         return HttpResponse(0)
Exemple #17
0
 def post(self, request):
     prize_type = request.POST.get('prize_type') #1.商品 2.实物 3.二维码 4.cdk 5.盒盒币以及余额
     prize_detail = request.POST.get('prize_detail')
     class_id = request.POST.get('class_id')
     all_limit = request.POST.get('all_limit') #全体限量
     one_limit = request.POST.get('one_limit') #个人限量
     mysql = Mysql()
     sql = "INSERT INTO prize SET prize_type='{prize_type}', prize_detail='{prize_detail}',\
         class_id='{class_id}', all_limit='{all_limit}', one_limit='{one_limit}'".format(prize_type=prize_type, \
         prize_detail=prize_detail, class_id=class_id, all_limit=all_limit, one_limit=one_limit)
     suc = mysql.insertOne(sql)
     if suc:
         data = {}
         data['prize_id'] = suc
         data['state'] = 1
         data = json.dumps(data, ensure_ascii=False, sort_keys=True, indent=4)
         mysql.dispose()
         return HttpResponse(data)
     mysql.errdispose()
     return HttpResponse(0)
Exemple #18
0
 def post(self, request):
     self.params = {}
     self.params['product_id'] = request.POST.get('product_id')
     self.params['product_name'] = request.POST.get('product_name')
     self.params['product_img'] = request.POST.get('product_img')
     self.params['min_price'] = request.POST.get('min_price')
     self.params['max_price'] = request.POST.get('max_price')
     self.params['hhcoin'] = request.POST.get('hhcoin')
     self.params['product_stock'] = json.loads(
         request.POST.get('product_stock'))
     #[{'stockname':'xx',hhcoin':1, 'price':22, 'stock_id':222, 'min_buy':1, 'max_buy':2}, {...}]
     self.params['delete_stock'] = json.loads(
         request.POST.get('delete_stock'))  #[1,3,4,5]
     print(self.params)
     try:
         mysql = Mysql()
         sql = "UPDATE mer_product SET  product_name='{product_name}', \
                 product_img='{product_img}', min_price='{min_price}', \
                 max_price='{max_price}', hhcoin='{hhcoin}' \
                 WHERE product_id='{product_id}'"                                                    .format(product_id=self.params['product_id'], \
                 product_name=self.params['product_name'], product_img=self.params['product_img'],\
                 min_price=self.params['min_price'], max_price=self.params['max_price'], \
                 hhcoin=self.params['hhcoin'])
         mysql.update(sql)
         for i in self.params['product_stock']:
             sql = "UPDATE mer_stock SET stock_name='{stock_name}', \
             price='{price}', hhcoin='{hhcoin}', min_buy='{min_buy}', max_buy='{max_buy}' \
             WHERE stock_id ='{stock_id}'"                                             .format(stock_name=i.get('stockname'), min_buy=i.get('min_buy'),\
             price=i.get('price'), hhcoin=i.get('hhcoin'), stock_id=i.get('stock_id'), max_buy=i.get('max_buy'))
             print(sql)
             mysql.update(sql)
         for x in self.params['delete_stock']:
             sql = "DELETE FROM mer_stock WHERE stock_id = '{stock_id}'".format(
                 stock_id=x)
             mysql.delete(sql)
         mysql.dispose()
         return HttpResponse(1)
     except Exception as e:
         print(e)
         mysql.errdispose()
         return HttpResponse(0)
Exemple #19
0
 def post(self, request):
     try:
         mysql = Mysql()
         self.__reqData['name'] = request.POST.get('name')
         self.__reqData['parent_id'] = request.POST.get('bigclass')
         self.__reqData['img'] = request.POST.get('img')
         self.__reqData['sort'] = request.POST.get('sort')
         sql = 'INSERT INTO proclass (`name`,parentId,img,sort) VALUES (%s, %s, %s, %s)'
         suc = mysql.insertOne(sql,
                               param=[
                                   self.__reqData['name'],
                                   self.__reqData['parent_id'],
                                   self.__reqData['img'],
                                   self.__reqData['sort']
                               ])
         mysql.dispose()
         return HttpResponse(1)
     except Exception as e:
         print(e)
         mysql.errdispose()
         return HttpResponse(0)
Exemple #20
0
 def post(self, request):
     quiz_name = request.POST.get('quiz_name')
     answer_list = json.loads(request.POST.get('answer_list'))
     quiz_id = request.POST.get('quiz_id')
     #[{answer:xxx,is_right:1}]
     mysql = Mysql()
     try:
         sql = f"UPDATE daily_quiz SET quiz_name = '{quiz_name}' WHERE id = '{quiz_id}'"
         mysql.update(sql)
         sql = f"DELETE FROM quiz_bank WHERE quiz_id = {quiz_id}"
         mysql.delete(sql)
         for i in answer_list:
             sql = f'''INSERT INTO quiz_bank SET quiz_id = {quiz_id}, \
                 answer="{i.get('answer')}", is_right = "{i.get('is_right')}"'''
             mysql.update(sql)
         mysql.dispose()
         return HttpResponse(1)
     except Exception as e:
         print(e)
         mysql.errdispose()
         return HttpResponse(0)
Exemple #21
0
 def post(self, request):
     try:
         self.__reqData['img_name'] = request.POST.get('img_name')
         self.__reqData['text'] = request.POST.get('text')
         self.__reqData['img_id'] = request.POST.get('img_id')
         self.__reqData['banner_type'] = request.POST.get('banner_type')
         self.__reqData['banner_path'] = request.POST.get('banner_path')
         mysql = Mysql()
         sql = "UPDATE banner SET img = %s, text = %s, banner_type = %s, \
         banner_path = %s WHERE id = %s"
         mysql.update(sql, param=[
             self.__reqData['img_name'],
             self.__reqData['text'],
             self.__reqData['banner_type'],
             self.__reqData['banner_path'],
             self.__reqData['img_id']
         ])
         mysql.dispose()
         return HttpResponse(1)
     except Exception as e:
         mysql.errdispose()
         return HttpResponse(0)
Exemple #22
0
    def post(self, request):
        try:
            mysql = Mysql()
            self.__reqData['name'] = request.POST.get('name')
            self.__reqData['id'] = request.POST.get('id')
            self.__reqData['img'] = request.POST.get('img', '')
            self.__reqData['parentId'] = request.POST.get('parentId')
            self.__reqData['sort'] = request.POST.get('sort')
            sql = 'update proclass set name=%s,parentId=%s, img=%s, sort=%s \
                where id = %s'

            mysql.update(sql,
                         param=[
                             self.__reqData['name'],
                             self.__reqData['parentId'], self.__reqData['img'],
                             self.__reqData['sort'], self.__reqData['id']
                         ])
            mysql.dispose()
            return HttpResponse(1)
        except Exception as e:
            print(e)
            mysql.errdispose()
            return HttpResponse(0)
Exemple #23
0
 def post(self, request):
     probability_info = request.POST.get('probability_num') #[{id:1,probability_num:10,prize_id:1},{id:2,probability_num:10}]
     probability_list = json.loads(probability_info)
     mysql = Mysql()
     try:
         check_num = 0
         for i in probability_list:
             sql = "UPDATE probability SET probability_num='{probability_num}', \
                 prize_id='{prize_id}' WHERE id='{pro_id}'".format\
                 (probability_num=i.get('probability_num'), prize_id=i.get('prize_id'), pro_id=i.get('id'))
             check_num += int(i.get('probability_num'))  
             mysql.update(sql)
         print(check_num)
         print(type(check_num))
         if check_num != 100:
             mysql.errdispose()
             return HttpResponse(2) #概率和没有达到百分百
         mysql.dispose()
         return HttpResponse(1)
     except Exception as e:
         print(e)
         mysql.errdispose()
         return HttpResponse(0)
Exemple #24
0
    def save_data(self):
        try:
            mysql = Mysql()
            lottery_code = self.ran(6)
            sql = "UPDATE oneyuanpurchase SET lottery_code = %s, state = 1, \
                is_get=0, wxid = %s, wx_money = %s WHERE order_num = %s"

            mysql.update(sql,
                         param=[
                             lottery_code, self.Info['wxid'],
                             self.Info['total_fee'], self.Info['orderNum']
                         ])
            sql = "SELECT user_id FROM oneyuanpurchase  WHERE order_num = %s"
            user = mysql.getOne(sql, param=[self.Info['orderNum']])
            up_sql, log_sql = Type_Log.coin_handle(user_id=user.get('user_id'),
                                                   handle=12,
                                                   num=10,
                                                   asd=1)
            mysql.update(up_sql)
            mysql.insertOne(log_sql)
            mysql.dispose()
        except Exception as e:
            print(e)
            mysql.errdispose()
Exemple #25
0
 def post(self, request):
     self.params = {}
     self.params['spec_id'] = request.POST.get('spec_id')
     self.params['spd_id'] = request.POST.get('spec_detail_id')
     self.params['check_num'] = int(
         request.POST.get('check_num'))  #第一次点击传 1第二次确认删除传2
     mysql = Mysql()
     try:
         if self.params['check_num'] == 1:
             sql = "SELECT * FROM mer_stock WHERE FIND_IN_SET \
                 ('{spd_id}', mer_stock.stock_specs)".format(
                 spd_id=self.params['spd_id'])
             stock_info = mysql.getAll(sql)
             if stock_info:
                 mysql.dispose()
                 stock_info = json.dumps(stock_info,
                                         ensure_ascii=False,
                                         sort_keys=True,
                                         indent=4)
                 return HttpResponse(stock_info)
             else:
                 mysql.errdispose()
                 return HttpResponse('规格详情id错误')
         if self.params['check_num'] == 2:
             self.params['stock_list'] = json.loads(
                 request.POST.get('stock_list'))  #stockid check_num=2传过来
             sql = "DELETE FROM mer_specdetail WHERE spec_detail_id='{spd_id}'".format(
                 spd_id=self.params['spd_id'])
             mysql.delete(sql)
             sql = "SELECT * FROM mer_specdetail WHERE spec_id = '{spec_id}'".format(
                 spec_id=self.params['spec_id'])
             check_spec = mysql.getOne(sql)
             for i in self.params['stock_list']:
                 sql = "DELETE FROM mer_stock WHERE stock_id = '{stock_id}'".format(
                     stock_id=i)
                 mysql.delete(sql)
             if check_spec:
                 pass
             else:
                 #sql = "DELETE FROM mer_spec WHERE spec_id = '{spec_id}'".format(spec_id=self.params['spec_id'])
                 mysql.errdispose(sql)
                 return HttpResponse(2)
             mysql.dispose()
             return HttpResponse(1)
     except Exception as e:
         print(e)
         mysql.errdispose()
         return HttpResponse(0)
Exemple #26
0
 def turntable_prize(self, user_id):
     turntable_id = self.turntable()
     mysql = Mysql()
     sql = "SELECT prize.id, prize_type, prize_detail FROM probability as p \
             LEFT JOIN prize ON p.prize_id = prize.id WHERE p.id = {turntable}".format(
         turntable=turntable_id)
     info = mysql.getOne(sql)
     data = {}
     data['turntable_id'] = turntable_id
     data['prize_id'] = info.get('id')
     data['prize_type'] = info.get('prize_type')
     data['prize_detail'] = info.get('prize_detail')
     #查询限量总数
     sql = "SELECT all_limit, one_limit FROM prize WHERE id = '{prize_id}'".format(
         prize_id=data['prize_id'])
     #奖品限量字典
     limit_num = mysql.getOne(sql)
     all_limit_num = int(limit_num.get('all_limit'))
     one_limit_num = int(limit_num.get('one_limit'))
     sql = "SELECT COUNT(id) as count FROM reward_log WHERE prize_id = '{prize_id}'".format(
         prize_id=data['prize_id'])
     #全部已抽中奖品总数
     all_num = mysql.getOne(sql)
     sql = "SELECT COUNT(id) as count FROM reward_log WHERE prize_id = '{prize_id}' \
         AND user_id = '{user_id}'".format(prize_id=data['prize_id'],
                                           user_id=user_id)
     #个人抽中奖品总数
     one_num = mysql.getOne(sql)
     if all_num:
         all_num = all_num.get('count')
         if all_num >= all_limit_num and all_limit_num != 0:
             print('总数被抽完')
             #商品已被抽完
             #mysql.dispose()
             #return 2
             data['prize_type'] == 8
         else:
             pass
     if one_num:
         one_num = one_num.get('count')
         if one_num >= one_limit_num and one_limit_num != 0:
             #个人中奖次数已达上限
             print('个人次数抽完')
             #mysql.dispose()
             #return 3
             data['prize_type'] == 8
         else:
             pass
     #还有剩余总数 继续抽奖
     try:
         #自营类商品
         if int(data['prize_type']) == 1:
             print('自营商品')
             #查询商品相关信息
             sql = "SELECT prize_stock.stock_numb, stock.id, stock.stock_name \
                 FROM prize_stock LEFT JOIN stock ON prize_stock.stock_id = stock.id \
                 WHERE prize_stock.prize_id={prize_id}".format(
                 prize_id=data['prize_id'])
             stock_info = mysql.getOne(sql)
             data['stock_numb'] = int(stock_info.get('stock_numb'))
             data['stock_id'] = stock_info.get('id')
             data['stock_name'] = stock_info.get(
                 'stock_name') + data['prize_detail'] + str(
                     data['stock_numb']) + '份'
             #查询以中总量
             # sql = "SELECT COUNT(id) as count FROM reward_log WHERE prize_id = '{prize_id}'".format(prize_id=data['prize_id'])
             # real_numb = mysql.getOne(sql)
             # real_numb = int(real_numb.get('count'))
             # #如果超过限量返回谢谢惠顾
             # if real_numb >= data['stock_numb']:
             #     data['prize_type'] = 8
             #     int(data['prize_type']) == 8
             # #没超过 让他中奖
             # else:
             re_log = Type_Log.reward_log(user_id=user_id,
                                          prize_id=data['prize_id'],
                                          detail=data['stock_name'],
                                          prize_type=1,
                                          get=0)
             re_id = mysql.insertOne(re_log)
             data['re_id'] = re_id
             mysql.dispose()
             return data
         #外部类商品
         if int(data['prize_type']) == 2:
             print('外部商品')
             re_log = Type_Log.reward_log(user_id=user_id,
                                          prize_id=data['prize_id'],
                                          detail=data['prize_detail'],
                                          prize_type=2,
                                          get=0)
             re_id = mysql.insertOne(re_log)
             data['re_id'] = re_id
             mysql.dispose()
             return data
         #卷码类型
         if int(data['prize_type']) == 3:
             sql = "SELECT * FROM prize_coupon WHERE prize_id = '{prize_id}' \
                 AND `get` = '0' ORDER BY id".format(
                 prize_id=info.get('id'))
             coupon = mysql.getOne(sql)
             print('卷码')
             if coupon:
                 print('还有卷码')
                 coupon_detail = coupon.get('coupon')
                 sql = "UPDATE prize_coupon SET `get` = 1 WHERE id = '{coupon_id}'".format(
                     coupon_id=coupon.get('id'))
                 mysql.update(sql)
                 detail = data['prize_detail'] + ":" + coupon_detail
                 data['prize_detail'] = detail
                 re_log = Type_Log.reward_log(user_id=user_id,
                                              prize_id=data['prize_id'],
                                              detail=detail,
                                              prize_type=3,
                                              get=1)
                 mysql.insertOne(re_log)
                 mysql.dispose()
                 return data
             else:
                 print('卷码不够')
                 # sql = "SELECT probability.id, probability.prize_id FROM probability LEFT JOIN prize \
                 #     ON prize.id = probability.prize_id WHERE prize.prize_type =8"
                 # probability_info = mysql.getOne(sql)
                 # data['turntable_id'] = probability_info.get('id')
                 # data['prize_id'] = probability_info.get('prize_id')
                 # data['prize_type'] = 9
                 # data['prize_detail'] = '谢谢惠顾'
                 # data['warning_info'] = '其实我是优惠卷 但是我没有了'
                 data['prize_type'] = 8
                 print(data['prize_type'])
         #二维码类型
         if int(data['prize_type']) == 4:
             print('测试二维码')
             re_log = Type_Log.reward_log(user_id=user_id,
                                          prize_id=data['prize_id'],
                                          detail=data['prize_detail'],
                                          prize_type=4,
                                          get=1)
             mysql.insertOne(re_log)
             mysql.dispose()
             new_data = data
             return new_data
         #盒盒币
         if int(data['prize_type']) == 5:
             print('盒盒币')
             sql = "SELECT num FROM prize_phv WHERE prize_id = {prize_id}".format(
                 prize_id=data['prize_id'])
             num = mysql.getOne(sql)
             num = int(num.get('num'))
             up_sql, log_sql = Type_Log.coin_handle(user_id=user_id,
                                                    handle=6,
                                                    num=num,
                                                    asd=1)
             mysql.update(up_sql)
             mysql.insertOne(log_sql)
             re_log = Type_Log.reward_log(user_id=user_id,
                                          prize_id=data['prize_id'],
                                          detail=data['prize_detail'],
                                          prize_type=5,
                                          get=1)
             mysql.insertOne(re_log)
             mysql.dispose()
             return data
         #账号vip
         if int(data['prize_type']) == 6:
             print('账号vip')
             sql = "SELECT num FROM prize_phv WHERE prize_id = {prize_id}".format(
                 prize_id=info.get('id'))
             vip_time = mysql.getOne(sql)
             vip_time = int(vip_time.get('num'))
             sql = "UPDATE userInfo SET vipEndTime = DATE_ADD(vipEndTime,INTERVAL {vip_time} MONTH) \
                 WHERE id = '{user_id}'".format(vip_time=vip_time,
                                                user_id=user_id)
             mysql.update(sql)
             re_log = Type_Log.reward_log(user_id=user_id,
                                          prize_id=data['prize_id'],
                                          detail=data['prize_detail'],
                                          prize_type=6,
                                          get=1)
             mysql.insertOne(re_log)
             mysql.dispose()
             return data
         #余额
         if int(data['prize_type']) == 7:
             print('余额')
             sql = "SELECT num FROM prize_phv WHERE prize_id = {prize_id}".format(
                 prize_id=info.get('id'))
             money = mysql.getOne(sql)
             money = float(money.get('num'))
             up_sql, log_sql = Type_Log.balance_log(user_id=user_id,
                                                    handle=2,
                                                    money=money,
                                                    asd=1)
             mysql.update(up_sql)
             mysql.insertOne(log_sql)
             re_log = Type_Log.reward_log(user_id=user_id,
                                          prize_id=data['prize_id'],
                                          detail=data['prize_detail'],
                                          prize_type=7,
                                          get=1)
             mysql.insertOne(re_log)
             mysql.dispose()
             return data
         #谢谢惠顾
         if int(data['prize_type']) == 8:
             print('谢谢惠顾')
             data['turntable_id'] = 8
             data['prize_id'] = 66
             data['prize_type'] = 8
             data['prize_detail'] = '谢谢惠顾'
             re_log = Type_Log.reward_log(user_id=user_id,
                                          prize_id=data['prize_id'],
                                          detail=data['prize_detail'],
                                          prize_type=8,
                                          get=1)
             mysql.insertOne(re_log)
             mysql.dispose()
             return data
         #商品没了 继续抽 抽中为止(有风险已弃用)
         if int(data['prize_type']) == 9:
             print('商品没了 继续抽 抽中为止')
             return self.turntable_prize(user_id=user_id)
     except Exception as e:
         print(e)
         mysql.errdispose()
         return False
Exemple #27
0
    def post(self, request, **payload):
        try:
            self.info['user_id'] = payload.get('user_id')
            self.info['openid'] = payload.get('openid')  # 用户openid 

            self.info['spbill_create_ip'] = '132.232.119.99'  # 终端IP 1
            self.info['amount'] = int(request.POST.get('amount')) #金额单位分

            self.info['mch_appid'] = 'wx940c713eac9f7aca'  # 商户账号appid
            self.info['mchid'] = '1531704091'  # 商户号
            self.info['desc'] = '用户提现' #企业付款备注
            self.info['check_name'] = "NO_CHECK" #校验用户姓名选项 NO_CHECK:不校验真实姓名 FORCE_CHECK:强校验真实姓名

            self.info['partner_trade_no'] = getOrderNum('ToWx') #商户订单号      
            self.info['nonce_str'] = getNonceStr() #随机字符串
            self.sigin = getSign(ks=self.info)

            if self.info['amount'] < 2000:
                return JsonResponse({
                    'ret' : -2,
                    'msg' : "提现金额过低 要求大于20"
                })

            mysql = Mysql()
            userinfo = self.check_userinfo(mysql=mysql)
            if userinfo.get('money') < 20:
                mysql.dispose()
                return JsonResponse({
                    'ret' : -2,
                    'msg' : "余额不足, 小于20"
                })

            check = self.check_cashout(mysql=mysql)
            if check:
                mysql.errdispose()
                return JsonResponse({
                    'ret' : -2,
                    'msg' : "当日提现次数已经到达上限"
                })
            
            up_sql, log_sql = Type_Log.balance_log(user_id=self.info['user_id'], 
                                money=self.info['amount']*0.01,
                                handle=5,
                                asd=0)
            mysql.update(up_sql)
            mysql.insertOne(log_sql)
            sql = "INSERT INTO balance_towx SET order_num=%s, user_id=%s, \
                balance=%s, wx_money=%s, state=2"
            cash_id = mysql.insertOne(sql, param=[
                                    self.info['partner_trade_no'],
                                    self.info['user_id'],
                                    self.info['amount']*0.01,
                                    self.info['amount']
            ])
            mysql.dispose()
            response = self.request_wx()
            mysql = Mysql()
            state = self.retmsg(response, mysql=mysql, cash_id=cash_id)
            mysql.dispose()
            msg = '提现成功' if state else '提现失败'
            ret = 0 if msg == '提现成功' else -2
            return JsonResponse({
                    'ret' : ret,
                    'msg' : msg
                })
            
        except Exception as e:
            print(e)
            mysql.errdispose()
            return JsonResponse({
                    'ret' : -2,
                    'msg' : "提现出现问题"
                })
Exemple #28
0
    def get(self, request):

        try:
            mysql = Mysql()
            sql = "SELECT COUNT(*) AS bl FROM bargain_log"
            bl = mysql.getOne(sql)
            sql = "SELECT COUNT(*) AS goumai FROM bargain_user WHERE state = 0"
            goumai = mysql.getOne(sql)
            sql = "SELECT COUNT(*) AS bu FROM bargain_user "
            bu = mysql.getOne(sql)
            sql = "SELECT COUNT(*) AS oneyuan FROM oneyuanpurchase"
            oneyuan = mysql.getOne(sql)
            data = {}
            for i in range(1, 6):
                sql = f"SELECT \
                            t.id, \
                            group_concat(DISTINCT(de.mchid)) '常用投递机器', \
                            t.sOpenid '微信openid', \
                            t.sNickName '微信昵称', \
                            t.dtLottTime, \
                            iCount '集赞人数', \
                            iSource '领奖码' \
                        FROM \
                            ( \
                                SELECT \
                                    j.id, \
                                    j.sOpenid, \
                                    j.dtLottTime, \
                                    url_decode (j.sNickName) sNickName, \
                                    count(d.sOpenid) iCount, \
                                    CASE j.iSource \
                                WHEN 1 THEN \
                                    concat('00', j.iSource, '-松江') \
                                WHEN 2 THEN \
                                    concat('00', j.iSource, '-闵行') \
                                WHEN 3 THEN \
                                    concat('00', j.iSource, '-奉贤') \
                                WHEN 4 THEN \
                                    concat('00', j.iSource, '-临港') \
                                WHEN 5 THEN \
                                    concat('00', j.iSource, '-虹口') \
                                ELSE \
                                    j.iSource \
                                END iSource \
                                FROM \
                                    tbActDianzan d \
                                LEFT JOIN tbActJizan j ON j.sOpenid = d.sJizanOpenid \
                                WHERE j.iSource =  {i} \
                                GROUP BY \
                                    d.sJizanOpenid \
                            ) t \
                        LEFT JOIN deliver de ON t.sOpenid = de.openid \
                        WHERE \
                            t.iCount >= 30  \
                        GROUP BY \
                            t.sOpenid \
                        ORDER BY  \
                            t.iCount DESC "

                info = mysql.getAll(sql)
                if i == 1:
                    data['松江'] = len(info)
                if i == 2:
                    data['闵行'] = len(info)
                if i == 3:
                    data['奉贤'] = len(info)
                if i == 4:
                    data['临港'] = len(info)
                if i == 5:
                    data['虹口'] = len(info)
            print(data)
            mysql.dispose()
            return HttpResponse(f"一元购{oneyuan.get('oneyuan')}人购买, \
                \r发起了{bu.get('bu')}条砍价, \
                \r{bl.get('bl')}条砍价记录, \
                \r实际完成砍价支付 {goumai.get('goumai')} 人 \
                \r松江集赞满30的人数 {data.get('松江')}, \
                \r闵行集赞满30的人数 {data.get('闵行')}, \
                \r奉贤集赞满30的人数 {data.get('奉贤')}, \
                \r临港集赞满30的人数 {data.get('临港')}, \
                \r虹口集赞满30的人数 {data.get('虹口')} ")
        except Exception as e:
            print(e)
            mysql.errdispose()
            return HttpResponse(0)
Exemple #29
0
    def post(self, request, **payload):
        try:
            user_id = request.session.get('user_id')
            handle_type = request.POST.get('handle_type')

            if handle_type == 'one':
                mysql = Mysql()
                sql = "SELECT * FROM userInfo WHERE id = %s FOR UPDATE"
                user_info = mysql.getOne(sql, param=[user_id])
                if user_info.get('hhcoin') < 50:
                    return JsonResponse({'ret': -2, 'msg': '盒盒币不足'})
                up_sql, log_sql = Type_Log.coin_handle(user_id, 14, 50, 0)
                mysql.update(up_sql)
                mysql.insertOne(log_sql)
                #抽碎片
                path_type = randomWxPatch()
                if isinstance(path_type, dict):
                    self.addHhcoin(user_id, [path_type.get('hhcoin')], mysql)
                    mysql.dispose()
                    return JsonResponse({
                        'ret': 0,
                        'msg': f"抽中盒盒币{path_type.get('hhcoin')}个",
                        'result': {
                            'patch': [],
                            'hhcoin': [path_type.get('hhcoin')]
                        }
                    })
                getPatch(user_id, [path_type], 9, 1, mysql)
                mysql.dispose()
                data = {
                    'ret': 0,
                    'msg': f'抽奖成功, 获得了{STAR_SIGIN[path_type]}',
                    'result': {
                        'patch': [path_type],
                        'hhcoin': []
                    }
                }
                return JsonResponse(data)

            if handle_type == 'ten':
                mysql = Mysql()
                sql = "SELECT * FROM userInfo WHERE id = %s FOR UPDATE"
                user_info = mysql.getOne(sql, param=[user_id])
                if user_info.get('hhcoin') < 450:
                    mysql.dispose()
                    return JsonResponse({'ret': -2, 'msg': '盒盒币不足'})
                up_sql, log_sql = Type_Log.coin_handle(user_id, 14, 450, 0)
                mysql.update(up_sql)
                mysql.insertOne(log_sql)
                #抽碎片
                result = list(map(randomWxPatch, [i for i in range(10)]))
                patch_list = list(filter(lambda x: isinstance(x, int), result))
                hhcoin_list = [
                    x.get('hhcoin') for x in result if x not in patch_list
                ]
                self.addHhcoin(user_id, hhcoin_list, mysql)
                getPatch(user_id, patch_list, 9, 1, mysql)
                mysql.dispose()
                data = {
                    'ret': 0,
                    'msg': '抽奖成功',
                    'result': {
                        'patch': patch_list,
                        'hhcoin': hhcoin_list
                    }
                }
                return JsonResponse(data)

            if handle_type == 'log':
                mysql = Mysql()
                sql = "SELECT star_sign_id, create_time FROM star_sign_log \
                    WHERE user_id = %s AND handle_type = 9"

                patch_info = mysql.getAll(sql, param=[user_id])
                sql = "SELECT num, handletime FROM coin_log WHERE userid = %s \
                    AND handleType = 14 AND consumeType = 1"

                hhcoin_info = mysql.getAll(sql, param=[user_id])
                mysql.dispose()
                data = {
                    'ret': 0,
                    'msg': '查询成功',
                    'result': {
                        'patch_info': patch_info,
                        'hhcoin_info': hhcoin_info
                    }
                }
                return HttpResponse(callJson(data))

            else:
                return JsonResponse({'ret': -2, 'msg': '参数错误'})
        except Exception as e:
            mysql.errdispose()
            erroLog(e)
            return JsonResponse({'ret': -2, 'msg': '网络错误'})
Exemple #30
0
    def post(self, request, **payload):
        try:
            user_id = payload.get('user_id')
            handle_type = request.POST.get('handle_type')
            mysql = Mysql()

            if handle_type == 'mobile':
                sql = "SELECT mobile FROM userInfo WHERE id = %s"
                check = mysql.getOne(sql, param=[user_id])
                mysql.dispose()
                if not check:
                    return JsonResponse({'ret': -2, 'msg': '请绑定手机号'})
                state = starSignLog(user_id, 4)
                if state:
                    return JsonResponse({'ret': -2, 'msg': '已经领取'})
                path_type = randomPath()
                path_type = [path_type]
                suc = getPatch(user_id, path_type, 4, 1)
                return JsonResponse(suc)

            if handle_type == 'school':
                sql = "SELECT school_id FROM userInfo WHERE id = %s"
                check = mysql.getOne(sql, param=[user_id])
                mysql.dispose()
                if not check:
                    return JsonResponse({'ret': -2, 'msg': '请绑定校徽'})
                state = starSignLog(user_id, 5)
                if state:
                    return JsonResponse({'ret': -2, 'msg': '已经领取'})
                path_type = randomPath()
                path_type = [path_type]
                suc = getPatch(user_id, path_type, 5, 1)
                return JsonResponse(suc)

            if handle_type == 'step':
                sql = "SELECT * FROM coin_log WHERE userid = %s AND handleType = 3 \
                    AND handletime BETWEEN %s AND %s"

                check = mysql.getOne(sql,
                                     param=[user_id, START_TIME, END_TIME])
                mysql.dispose()
                if not check:
                    return JsonResponse({'ret': -2, 'msg': '未进行过微信步数'})
                state = starSignLog(user_id, 6)
                if state:
                    return JsonResponse({'ret': -2, 'msg': '已经领取'})
                path_type = randomPath()
                path_type = [path_type]
                suc = getPatch(user_id, path_type, 6, 1)
                return JsonResponse(suc)

            if handle_type == 'answer':
                sql = "SELECT * FROM quiz_log WHERE user_id = %s \
                    AND create_time BETWEEN %s AND %s"

                check = mysql.getOne(sql,
                                     param=[user_id, START_TIME, END_TIME])
                mysql.dispose()
                if not check:
                    return JsonResponse({'ret': -2, 'msg': '未进行过每日一答'})
                state = starSignLog(user_id, 7)
                if state:
                    return JsonResponse({'ret': -2, 'msg': '已经领取'})
                path_type = randomPath()
                path_type = [path_type]
                suc = getPatch(user_id, path_type, 7, 1)
                return JsonResponse(suc)

            if handle_type == 'click_card':
                sql = "SELECT * FROM click_card WHERE userid = %s \
                    AND checkTime BETWEEN %s AND %s"

                check = mysql.getOne(sql,
                                     param=[user_id, START_TIME, END_TIME])
                mysql.dispose()
                if not check:
                    return JsonResponse({'ret': -2, 'msg': '未进行过打卡'})
                state = starSignLog(user_id, 8)
                if state:
                    return JsonResponse({'ret': -2, 'msg': '已经领取'})
                path_type = randomPath()
                path_type = [path_type]
                suc = getPatch(user_id, path_type, 8, 1)
                return JsonResponse(suc)

            if handle_type == 'see':
                '''
                0未进行
                1已进行未领取
                2已领取
                '''
                sql = 'SELECT mobile, school_id FROM userInfo WHERE id = %s'
                user_info = mysql.getOne(sql, param=[user_id])
                check_mobile = 1 if user_info.get('mobile') else 0
                check_school = 1 if user_info.get('school_id') else 0

                sql = 'SELECT id FROM coin_log WHERE userid = %s AND handleType = 3 \
                    AND handletime BETWEEN %s AND %s'

                check_step = mysql.getOne(
                    sql, param=[user_id, START_TIME, END_TIME])
                check_step = 1 if check_step else 0

                sql = 'SELECT id FROM quiz_log WHERE user_id = %s \
                    AND create_time BETWEEN %s AND %s'

                check_answer = mysql.getOne(
                    sql, param=[user_id, START_TIME, END_TIME])
                check_answer = 1 if check_answer else 0

                sql = "SELECT id FROM click_card WHERE userid = %s \
                    AND checkTime BETWEEN %s AND %s"

                check_click_card = mysql.getOne(
                    sql, param=[user_id, START_TIME, END_TIME])
                check_click_card = 1 if check_click_card else 0

                sql = "SELECT id FROM star_sign_log WHERE user_id = %s AND handle_type = %s"
                log_info = mysql.getOne(sql, param=[user_id, 4])
                check_mobile = 2 if log_info else check_mobile

                sql = "SELECT id FROM star_sign_log WHERE user_id = %s AND handle_type = %s"
                log_info = mysql.getOne(sql, param=[user_id, 5])
                check_school = 2 if log_info else check_school

                sql = "SELECT id FROM star_sign_log WHERE user_id = %s AND handle_type = %s"
                log_info = mysql.getOne(sql, param=[user_id, 6])

                check_step = 2 if log_info else check_step

                sql = "SELECT id FROM star_sign_log WHERE user_id = %s AND handle_type = %s"
                log_info = mysql.getOne(sql, param=[user_id, 7])
                check_answer = 2 if log_info else check_answer

                sql = "SELECT id FROM star_sign_log WHERE user_id = %s AND handle_type = %s"
                log_info = mysql.getOne(sql, param=[user_id, 8])
                check_click_card = 2 if log_info else check_click_card
                mysql.dispose()

                data = {
                    'ret': 0,
                    'msg': '查询成功',
                    'result': {
                        'mobile': check_mobile,
                        'school': check_school,
                        'step': check_step,
                        'answer': check_answer,
                        'click_card': check_click_card
                    }
                }
                return JsonResponse(data)

            mysql.dispose()
            return JsonResponse({'ret': -2, 'msg': '参数错误'})
        except Exception as e:
            mysql.errdispose()
            erroLog(e)
            return JsonResponse({'ret': -2, 'msg': '网络错误'})