Example #1
0
    def split_case_info(case):
        strip_word_list = ['\n', ' ']
        title = common_tools.decode_base64(case['title'])
        content = common_tools.decode_base64(case['content'])
        title_list = list(jieba.cut_for_search(title))
        content_list = list(jieba.cut_for_search(content))
        case_list = title_list + content_list
        case_word_list = list(set(case_list))

        # print(case_list)
        for word in case_word_list:
            if word not in strip_word_list:
                word_md5 = common_tools.get_md5(word)
                res = Data.find('case_search_index',
                                [('case_id', '=', case['id']),
                                 ('keyword_md5', '=', word_md5)])
                if res != None:
                    # print('已经存在')
                    continue
                params = {
                    'case_id': case['id'],
                    'keyword': common_tools.get_base64(word.encode('utf-8')),
                    'keyword_md5': word_md5
                }
                Data.insert('case_search_index', params)
                continue
            else:
                continue
Example #2
0
def add_agent_reward(shop_id, service_id):
    distr_info = Data.find('distr_relation', [('user_id', '=', shop_id)])
    if distr_info is not None:
        distr_id = distr_info['upper_id']
        if distr_id != 0:
            shop_machines = Data.select('shop_machines',
                                        [('shop_id', '=', shop_id),
                                         ('distr_reward', '=', 0),
                                         ('status', '=', 0)],
                                        order=('add_time', ''))
            print(shop_machines)
            print(shop_machines[0])
            if shop_machines[0]:
                if shop_machines[0]['paid_pg'] != 0:
                    params = {
                        'user_id': distr_id,
                        'share': 50000,
                        'withdraw_status': config.withdraw_status_no,
                        'withdraw_type': config.distr_reward,
                        'buy_time': int(time.time()),
                        'withdraw_id': service_id,
                    }
                    Data.insert('withdraw_record', params)
                Data.update('shop_machines',
                            [('id', '=', shop_machines[0]['id'])], {
                                'status': 1,
                                'distr_reward': 1
                            })
Example #3
0
 def upload_case(data,user_base,uploader_type=case_constant.uploader_type_admin):
     content = common.get_base64(data['content'].encode('utf-8'))
     content_md5 = common.get_md5(content)
     user_id = user_base['id']
     ctime = int(time.time())
     event_time = common.str_to_time(data['event_time'] + ' 00:00:00')
     title = common.get_base64(data['title'].encode('utf-8'))
     if Data.find('case_info', [('title', '=', title)]) != None:
         return
     params = {
         'user_id': user_id,
         'c_time': ctime,
         # 'content': content,
         'content_md5': content_md5,
         'event_time': event_time,
         'title': title,
         'uploader_type':uploader_type
     }
     Data.insert('case_info', params)
     # 插入主体内容
     cond = [
         ('user_id', '=', user_id),
         ('c_time', '=', ctime),
         ('content_md5', '=', content_md5)
     ]
     res = Data.find('case_info', cond)
     params = {
         'case_id': res['id'],
         'content': content
     }
     Data.insert('case_content',params)
     # 取得id,插入内容到表中
     res['content'] = content
     http_tools.split_case_info(res)
     return res
Example #4
0
def admin():
    Data.query('drop table admin')
    colums = [
        ('id', 'int', 'AUTO_INCREMENT', 'primary key'),
        ('username', 'varchar(128)', 'default ""'),
        # 用户名
        ('pwhash', 'varchar(512)', 'default ""'),
        # 密码哈希
        ('token', 'varchar(128)', 'default ""'),
        # token
        ('auth_id', 'int', 'default 1'),
        # 权限
        ('ctime', 'int', 'default "0"'),
        # 创建时间
        ('utime', 'int', 'default "0"'),
        # 更新时间
        ('comment', 'varchar(1024)', 'default ""'),
        # 备注
        ('status', 'int', 'default "0"'),
        # 状态
    ]
    Data.create('admin', colums)
    params = {
        'username': '******',
        'pwhash': generate_password_hash('123456')
    }
    Data.insert('admin', params)
    def post(self):
        player_base = self.get_player_base()
        if player_base is None:
            return self.send_faild(error.ERROR_NO_USER)

        try:
            data = self.get_post_data()
            name = data['member_name']
            group = data['group_id']
            comment = data['comment']
            phone = data['phone']
        except Exception as e:
            print(e)
            return self.send_faild(error.ERROR_PARAM)

        group_info = Data.find('player_group', [('id', '=', group)])
        if group_info == None:
            return self.send_faild(error.ERROR_DATA_NOT_FOUND)
        params = {
            'name': name,
            'comment': comment,
            'add_time': int(time.time()),
            'status': 1,
            'phone': phone,
            'group_id': group
        }

        Data.insert('player_member', params)

        reply = {'add_success': 1}
        self.send_ok(reply)
        return
    def post(self):
        player_base = self.get_player_base()
        if player_base is None:
            return self.send_faild(error.ERROR_NO_USER)

        try:
            data = self.get_post_data()
            name = data['group_name']
            comment = data['group_desc']
        except Exception as e:
            print(e)
            return self.send_faild(error.ERROR_PARAM)

        params = {
            'name': name,
            'comment': comment,
            'add_time': int(time.time()),
            'user_id': player_base['id'],
            'status': 1
        }

        Data.insert('player_group', params)

        reply = {'commit': 1}
        self.send_ok(reply)
        return
Example #7
0
def split_case_info(case):
    title = case['title']
    content = json.loads(case['content'])
    title_list = list(jieba.cut_for_search(title))
    content_list = list(jieba.cut_for_search(content))

    case_list = title_list + content_list
    case_word_list = list(set(case_list))

    # print(case_list)
    for word in case_word_list:
        if word not in strip_word_list:
            word_md5 = common.get_md5(word)
            res = Data.find('case_search_index',
                            [('case_id', '=', case['id']),
                             ('keyword_md5', '=', word_md5)])
            if res != None:
                print('已经存在')
                continue
            params = {
                'case_id': case['id'],
                'keyword': json.dumps(word),
                'keyword_md5': word_md5
            }
            Data.insert('case_search_index', params)
            continue
        else:
            continue
Example #8
0
def write_arrival_share(service_pac_rec, shop_share_raw, arrival_share):
    params = {
        'ctime': int(time.time()),
        'max_use_time': service_pac_rec['can_use_quantity'],
        'money': arrival_share,
        'service_rec_id': service_pac_rec['id'],
    }
    Data.insert('arrival_share', params)
Example #9
0
    def insert(self, table, content):
        Data.insert(table, content)
        if table in self.data_all:
            self.append_lines(table)
        else:
            self.refresh_one_table(table)

        return
Example #10
0
    def check_user(self,player_base):
        player_info = Data.find(Relay.player,[('open_id','=',player_base['open_id'])])
        if player_info != None:
            Data.update(Relay.player,[('id','=',player_info['id'])],player_base)
        else:
            Data.insert(Relay.player,player_base)

        player_info = Data.find(Relay.player,[('open_id','=',player_base['open_id'])])
        return player_info['id']
Example #11
0
 def add_init_inviters_info(invite_dict):
     all_player = Data.select(Relay.player, [], fields=('id', 'username'))
     for user in all_player:
         if user['id'] not in invite_dict:
             invite_code = Relay.create_invite_code()
             params = {
                 'user_id': user['id'],
                 'invite_code': invite_code,
                 'inviter_id': 0
             }
             Data.insert(Relay.player, params)
Example #12
0
    def refresh_db(self):

        time_now = time_to_str(int(time.time())).split()[1]
        if time_now == refresh_time:
            for table in self.data_all:
                Data.delete(table, [])
                Data.insert(table, self.data_all[table])
            # time.sleep(60)
        # else:
        #     pass
        return
Example #13
0
def insert_return_pg_rec(shop_id, pg_once, service_id):
    params = {
        'user_id': shop_id,
        'share': pg_once,
        'withdraw_status': config.withdraw_status_no,
        'withdraw_type': config.pg_return,
        'buy_time': int(time.time()),
        'withdraw_id': service_id,
    }

    Data.insert('withdraw_record', params)
Example #14
0
 def write_event_post_item(data, res):
     for item in data['post_items']:
         item_url = http_tools.get_post_item(item)
         params = {
             'case_id': res['id'],
             'post_item': item_url,
             'c_time': int(time.time()),
             'raw_url': item,
             'is_download': 1,
         }
         Data.insert('case_post_item', params)
Example #15
0
    def post(self):
        print('send_advphoto')
        admin_base = self.get_admin_base()
        if admin_base is None:
            self.send_faild(error.ERROR_NO_LOGIN)
        if not self.is_god():
            return self.send_faild(error.ERROR_AUTH_PERMISSION)

        try:
            data = self.get_post_data()
            adv_id = data['adv_id']
            pic_body = data['title']
        except Exception as e:
            print(e)
            return self.send_faild(error.ERROR_PARAM)

        adv_info = Data.find('adv', [('id', '=', adv_id)])
        if adv_info is None:
            return self.send_faild(error.ERROR_NO_USER)

        adv_id = adv_info['id']

        img_data = pic_body.split(',')[1]

        img_data = base64.b64decode(img_data)
        path = 'pics/' + common.get_file_md5(img_data) + '_title' + '.jpg'

        open(path, 'wb').write(img_data)

        title_line = Data.find('adv_photo', [('adv_id', '=', adv_id),
                                             ('is_title', '=', 1)])

        if title_line is None:
            params = {
                'adv_id': adv_id,
                'photo_url': config.logical_url + '/' + path.split('/')[-1],
            }
            Data.insert('adv_photo', params)
        else:
            params = {
                'photo_url': config.logical_url + '/' + path.split('/')[-1],
            }
            Data.update('adv_photo', [('adv_id', '=', adv_id)], params)
            # 记录进数据库

        reply = {'pic_done': 0}
        self.send_ok(reply)
        write_admin_record(operate_id=admin_base['id'],
                           operate_desc='上传广告图片',
                           adv_id=adv_id)

        return
Example #16
0
 def create_device(self):
     params = {
         'imei': self.get_imei(),
         'sn': self.get_imei(),
         'valid_time': common.time_to_str(int(time.time())),
         'lastshakingtime': common.time_to_str(int(time.time())),
         'lastlowbatterytime': common.time_to_str(0),
         'lastlosingexternalpowertime': common.time_to_str(0),
         'lastcrossingbordertime': common.time_to_str(0),
         'lastoverspeedtime': common.time_to_str(0),
     }
     Data.insert('CWS_APP.devices', params)
     print('创建设备imei', self.get_imei())
Example #17
0
 def machine_run(test_type,imei,user_info):
     event = Relay.ACK_START
     data = {
         'type':test_type, # 使用类型
         'user_info':user_info,  # 使用者id
         'test_number':common.get_md5(str(time.time())+common.create_rand_string(12)),
     }
     params = {
         'test_number':data['test_number'],
         'test_type':test_type
     }
     Data.insert('user_test_result',params)
     Relay.send_message_by_imei(imei,event,data)
     return data['test_number']
    def post(self):
        print('add_admin')
        admin_base = self.get_admin_base()
        if admin_base is None:
            return self.send_faild(error.ERROR_NO_LOGIN)
        if self.is_god() is False:
            return self.send_faild(error.ERROR_AUTH_PERMISSION)

        try:
            data = self.get_post_data()
            username = data['username']
            pw = data['pswd']
            status = data['status']
            auth_temp = data['admin_temp_id']
            comment = data['comment']
        except Exception as e:
            print(e)
            return self.send_faild(error.ERROR_PARAM)

        if_user = Data.find('admin', [('username', '=', username)])
        if if_user is not None:
            return self.send_faild(error.ERROR_INSERT_USER)

        admin_params = {
            'username': username,
            'password_hash': generate_password_hash(pw),
            'status': status,
            'comment': comment,
            'ctime': common.time_to_str(int(time.time())),
            'auth_id': auth_temp,
        }

        Data.insert('admin', admin_params)
        new_admin_info = Data.find('admin', [('username', '=', username)])
        if new_admin_info is None:
            return self.send_faild(error.ERROR_DATA_NOT_FOUND)
        admin_id = new_admin_info['id']

        admin_auth_info = {
            'auth_id': auth_temp,
            'god_id': admin_id
        }
        Data.insert('admin_auth', admin_auth_info)
        result = {
            'commit': 1
        }
        self.send_ok(result)

        write_admin_record(operate_id=admin_base['id'], operate_desc='添加管理员', admin_id=admin_id)
        return
Example #19
0
    def post(self):
        data = self.get_post_data()
        user_name = data['username']
        pw_1 = data['pw_1']
        pw_2 = data['pw_2']

        if pw_1 != pw_2:
            return self.send_faild(error.ERROR_PW_DIFF)

        if self.check_if_username_exist(user_name) is True:
            return self.send_faild(error.ERROR_USERNAME_EXIST)

        params = {'username': user_name, 'pwhash': admin_tool.create_pw(pw_1)}
        Data.insert(Relay.admin, params)
        return self.send_ok({})
Example #20
0
def write_my_share(service_pac_rec, share_line):
    shop_info = Data.find('openluat_user',
                          [('id', '=', service_pac_rec['buy_shop_id'])])

    shop_share_info = Data.find(
        'shop_distr', [('user_id', '=', service_pac_rec['buy_shop_id'])])

    if service_pac_rec['can_upgrade'] == 1:
        params = {'upgrade_times': shop_share_info['upgrade_times'] + 1}
        Data.update('shop_distr',
                    [('user_id', '=', service_pac_rec['buy_shop_id'])], params)

    # shop_share_info = Data.find('shop_distr', [('user_id', '=', service_pac_rec['buy_shop_id'])])

    if shop_share_info['upgrade_times'] >= shop_share_info['max_upgrade_times']:
        shop_share = shop_share_info['shop_share_max'] - share_line[
            'arrival_share']
    else:
        shop_share = shop_share_info['shop_share_min'] - share_line[
            'arrival_share']

    #
    # arrival_share = (10000 - share_line['arrival_share']) / 10000

    arrival_share = (share_line['arrival_share'] *
                     service_pac_rec['cost']) / 10000
    # 保存到店消费

    print('arrival_share', arrival_share)
    shop_share_raw = (shop_share * service_pac_rec['cost']) / 10000
    print('shop_share_raw', shop_share_raw)

    distr_agent_params = {
        'user_id': service_pac_rec['buy_shop_id'],
        'share': int(shop_share_raw),
        # 到店分润要处理
        'withdraw_status': config.withdraw_status_no,
        'withdraw_type': config.shop_share,
        # 分润类型,业务员还是店铺
        'buy_time': service_pac_rec['buy_time'],
        # 分润时间
        'withdraw_id': service_pac_rec['id'],
        # 对应的那条用户消费的id
    }

    Data.insert('withdraw_record', distr_agent_params)
    print('门店自己的分润', distr_agent_params['share'])
    write_arrival_share(service_pac_rec, shop_share_raw, arrival_share)
Example #21
0
 def update_device_info(self, imei):
     dev_info = Data.find('dev_main', [('imei', '=', imei)])
     if dev_info == None:
         params = {
             'imei': imei,
             'last_connect_time': int(time.time()),
             'ctime': int(time.time())
         }
         Data.insert('dev_main', params)
     else:
         params = {
             'last_connect_time': int(time.time()),
         }
         Data.update('dev_main', [('imei', '=', imei)], params)
     # self.update_heartbeat()
     self.last_connect_time = int(time.time())
     # 更新设备信息
     return
Example #22
0
def insert_distr_share_info(distr_id, service_pac_rec, share_line):
    # for distr_id in distr_line:
    res = find_distr_line(distr_id)
    if res is not None:
        # 超级业务员
        params = {
            'user_id':
            res['user_id'],
            'share':
            int((share_line['super_distr_share'] * service_pac_rec['cost']) /
                10000),
            'withdraw_status':
            config.withdraw_status_no,
            'withdraw_type':
            config.spec_distr_share,
            # 分润类型,业务员还是店铺
            'buy_time':
            service_pac_rec['buy_time'],
            # 分润时间
            'withdraw_id':
            service_pac_rec['id'],
            # 对应的那条用户消费的id
        }
        Data.insert('withdraw_record', params)
        print('超级业务员的分润', params['share'], res['user_id'])
    # else:

    # 上一级业务员
    params = {
        'user_id': distr_id,
        'share': int(
            (share_line['distr_share'] * service_pac_rec['cost']) / 10000),
        'withdraw_status': config.withdraw_status_no,
        'withdraw_type': config.distr_share,
        # 分润类型,业务员还是店铺
        'buy_time': service_pac_rec['buy_time'],
        # 分润时间
        'withdraw_id': service_pac_rec['id'],
        # 对应的那条用户消费的id
    }
    Data.insert('withdraw_record', params)
    print('业务员的分润', params['share'], distr_id)
    return
Example #23
0
    def update_devices_info(self):
        res = Data.find('CWS_APP.devices', [('imei', '=', self.imei)])
        if res == None:
            self.create_device()

        # 创建全新的设备信息
        report = {
            'imei': self.get_imei(),
            'lng': self.get_pos()[0],
            'lat': self.get_pos()[1],
            'time': common.time_to_str(int(time.time())),
            'status': 'heart',
        }
        resp = Data.find('CWS_APP.latestreport', [('imei', '=', self.imei)])
        if resp == None:
            Data.insert('CWS_APP.latestreport', report)
        else:
            Data.update('CWS_APP.latestreport', [('imei', '=', self.imei)],
                        report)
            print(self.get_imei(), '写入通讯表')
        return
Example #24
0
def auth():
    Data.query('drop table admin_temp')
    colums = [
        ('id', 'int', 'AUTO_INCREMENT', 'primary key'),
        ('name', 'varchar(64)', 'default ""'),
        # 模板名称
        ('auth', 'varchar(1024)', 'default ""'),
        # 权限模板
        ('comment', 'varchar(1024)', 'default ""'),
        # 备注
        ('ctime', 'int', 'default "0"'),
        # 创建时间
        ('utime', 'int', 'default "0"'),
        # 更新时间
        ('status', 'int', 'default "0"'),
        # 状态
    ]
    Data.create('admin_temp', colums)
    params = {
        'name': '超级管理员',
        'comment': '超级管理员权限模板',
        'ctime': 0,
        'auth':
        '1111,1111,1111,111,1111,1111,11,11,111,111,111,111,1111,1111,1111'
    }
    Data.insert('admin_temp', params)
    # 权限模板

    Data.query('drop table admin_auth')
    colums = [
        ('id', 'int', 'AUTO_INCREMENT', 'primary key'),
        ('auth_id', 'int', 'default "0"'),
        ('god_id', 'int', 'default "0"'),
    ]
    Data.create('admin_auth', colums)
    params = {
        'god_id': 1,
        'auth_id': '1',
    }
    Data.insert('admin_auth', params)
Example #25
0
    def post(self):
        print('create_auth_template')
        admin_base = self.get_admin_base()
        if admin_base is None:
            return self.send_faild(error.ERROR_NO_LOGIN)
        if self.is_god() is False:
            return self.send_faild(error.ERROR_AUTH_PERMISSION)

        try:
            data = self.get_post_data()
            name = data['name']
            auth = data['auth']
            comment = data['comment']
        except Exception as e:
            print(e)
            return self.send_faild(error.ERROR_PARAM)

        params = {}
        params['name'] = name
        params['auth'] = auth
        params['comment'] = comment
        params['ctime'] = int(time.time())
        Data.insert('admin_temp', params)

        # 记录本条权限模板的id
        temp_info = Data.find_last('admin_temp', [('id', '!=', 0)],
                                   info='id',
                                   limit=1)

        result = {'commit': 1}

        self.send_ok(result)

        write_admin_record(operate_id=admin_base['id'],
                           operate_desc='创建权限模板',
                           temp_id=temp_info['id'])
        return
Example #26
0
    def post(self):
        print('add_adv')
        admin_base = self.get_admin_base()
        if admin_base is None:
            return self.send_faild(error.ERROR_NO_LOGIN)
        if not self.is_god():
            return self.send_faild(error.ERROR_AUTH_PERMISSION)

        try:
            data = self.get_post_data()
            adv_name = data['adv_name']
            postion = data['postion']
            url = data['url']
            comment = data['comment']
            status = data['status']
        except Exception as e:
            print(e)
            return self.send_faild(error.ERROR_PARAM)

        ctime = int(time.time())

        adv_info = {}
        adv_info['adv_name'] = adv_name
        adv_info['postion'] = postion
        adv_info['ctime'] = ctime
        adv_info['comment'] = comment
        adv_info['status'] = status

        Data.insert('adv', adv_info)
        adv = Data.find_last('adv', [('id', '!=', 0)], info='id', limit=1)
        result = {'commit': 1}
        self.send_ok(result)
        write_admin_record(operate_id=admin_base['id'],
                           operate_desc='新增广告',
                           adv_id=adv['id'])

        return
Example #27
0
def write_admin_record(operate_id,
                       operate_desc,
                       shop_id=0,
                       shop_phone='',
                       player_phone='',
                       activity_id=0,
                       player_id=0,
                       coupon_id=0,
                       temp_id=0,
                       admin_id=0,
                       pac_id=0,
                       adv_id=0,
                       device_id=0):
    params = {
        'operate_id': operate_id,
        'admin_id': admin_id,
        'temp_id': temp_id,
        'operate_desc': operate_desc,
        'player_id': player_id,
        'player_phone': player_phone,
        'adv_id': adv_id,
        'operate_time': int(time.time())
    }
    Data.insert('admin_operate_record', params)
Example #28
0
def set_distr_agent_rec(distr_dict, share_line, service_pac_rec):
    if distr_dict['province'] is not None:
        distr_agent_line = Data.find(
            'distr_relation', [('user_id', '=', distr_dict['province'])])
        distr_agent_id = distr_agent_line['upper_id']
        print('省推荐人', distr_agent_id)
        if distr_agent_id != 0:
            distr_agent_params = {
                'user_id':
                distr_agent_id,
                'share':
                int((share_line['province_agent_share'] *
                     service_pac_rec['cost']) / 10000),
                'withdraw_status':
                config.withdraw_status_no,
                'withdraw_type':
                config.zone_agent_reward,
                # 分润类型,业务员还是店铺
                'buy_time':
                service_pac_rec['buy_time'],
                # 分润时间
                'withdraw_id':
                service_pac_rec['id'],
                # 对应的那条用户消费的id
            }
            Data.insert('withdraw_record', distr_agent_params)
            print('省代推荐人的分润', distr_agent_params['share'], distr_agent_id)
            # 省代理推荐人分润记录

    if distr_dict['city'] is not None:
        for city_distr_id in distr_dict['city']:
            distr_agent_line = Data.find('distr_relation',
                                         [('user_id', '=', city_distr_id)])
            distr_agent_id = distr_agent_line['upper_id']
            print('市推荐人', distr_agent_id)
            if distr_agent_id != 0:
                distr_agent_params = {
                    'user_id':
                    distr_agent_id,
                    'share':
                    int((share_line['city_agent_share'] *
                         service_pac_rec['cost']) / 10000),
                    'withdraw_status':
                    config.withdraw_status_no,
                    'withdraw_type':
                    config.zone_agent_reward,
                    # 分润类型,业务员还是店铺
                    'buy_time':
                    service_pac_rec['buy_time'],
                    # 分润时间
                    'withdraw_id':
                    service_pac_rec['id'],
                    # 对应的那条用户消费的id
                }
                Data.insert('withdraw_record', distr_agent_params)
                print('市代推荐人的分润', distr_agent_params['share'], distr_agent_id)
                # 市代理推荐人分润记录

    if distr_dict['zone'] is not None:
        for zone_distr_id in distr_dict['zone']:
            distr_agent_line = Data.find('distr_relation',
                                         [('user_id', '=', zone_distr_id)])
            distr_agent_id = distr_agent_line['upper_id']
            print('区域推荐人', distr_agent_id)
            if distr_agent_id != 0:
                distr_agent_params = {
                    'user_id':
                    distr_agent_id,
                    'share':
                    int((share_line['zone_agent_share'] *
                         service_pac_rec['cost']) / 10000),
                    'withdraw_status':
                    config.withdraw_status_no,
                    'withdraw_type':
                    config.zone_agent_reward,
                    # 分润类型,业务员还是店铺
                    'buy_time':
                    service_pac_rec['buy_time'],
                    # 分润时间
                    'withdraw_id':
                    service_pac_rec['id'],
                    # 对应的那条用户消费的id
                }
                Data.insert('withdraw_record', distr_agent_params)
                print('区代推荐人的分润', distr_agent_params['share'], distr_agent_id)
Example #29
0
from common.common import common_tools
from data.server import Data
from dbmodel import model

model.init_tables()
params = {'username': '', 'pwhash': common_tools.get_md5('')}
Data.insert('admin', params)
Example #30
0
def set_distr_dict_rec(distr_dict, share_line, service_pac_rec):
    if distr_dict['province'] is not None:
        params_province = {
            'user_id':
            distr_dict['province'],
            'share':
            int((share_line['privince_share'] * service_pac_rec['cost']) /
                10000),
            'withdraw_status':
            config.withdraw_status_no,
            'withdraw_type':
            config.zone_reward,
            # 分润类型,业务员还是店铺
            'buy_time':
            service_pac_rec['buy_time'],
            # 分润时间
            'withdraw_id':
            service_pac_rec['id'],
            # 对应的那条用户消费的id
        }
        Data.insert('withdraw_record', params_province)
        print('省代的分润', params_province['share'], distr_dict['province'])

    if distr_dict['city'] is not None:
        for city in distr_dict['city']:
            params_city = {
                'user_id':
                city,
                'share':
                int((share_line['city_share'] * service_pac_rec['cost']) /
                    10000),
                'withdraw_status':
                config.withdraw_status_no,
                'withdraw_type':
                config.zone_reward,
                # 分润类型,业务员还是店铺
                'buy_time':
                service_pac_rec['buy_time'],
                # 分润时间
                'withdraw_id':
                service_pac_rec['id'],
                # 对应的那条用户消费的id
            }
            Data.insert('withdraw_record', params_city)
            print('市代的分润', params_city['share'], city)

    if distr_dict['zone'] is not None:
        for zone in distr_dict['zone']:
            params_zone = {
                'user_id':
                zone,
                'share':
                int((share_line['zone_share'] * service_pac_rec['cost']) /
                    10000),
                'withdraw_status':
                config.withdraw_status_no,
                'withdraw_type':
                config.zone_reward,
                # 分润类型,业务员还是店铺
                'buy_time':
                service_pac_rec['buy_time'],
                # 分润时间
                'withdraw_id':
                service_pac_rec['id'],
                # 对应的那条用户消费的id
            }
            Data.insert('withdraw_record', params_zone)
            print('区代的分润', params_zone['share'], zone)