def dang_ki(): user = User('huynhtan06', hashlib.sha256('123456'.encode("utf-8")).hexdigest(), 2, first_name="HT06") MySql.save_to_db(user) print(user.password) return {"hello": "ok"}
def put_event(event_id): post_data = request.get_json() user_id = Helps.get_user_id_from_headers() event_own_id = list(map(int, event_id.split('_'))) user_id_of_event = MySql.get_user_id_of_event(event_own_id[0]) if user_id_of_event == user_id and event_own_id[1] == user_id: local_start_date = Helps.format_time(post_data.get('start_date')) local_end_date = Helps.format_time(post_data.get('end_date')) list_type = MySql.get_all_type() if Helps.is_check_device_Invalid(post_data, list_type, local_start_date, local_end_date, event_own_id[0]): try: MySql.update_event(event_own_id[0], local_start_date, local_end_date, post_data['text']) MySql.save_to_db() except IndentationError: MySql.rollback() return {"action": "error", "message": "ERROR: Insert database error"} if Helps.insert_data_child(post_data, list_type, event_id=post_data['id_old']): return {"action": "success", "tid": post_data['id'], "message": "UPDATED"} else: return {"action": "error", "message": "ERROR: Insert database error"} else: return {"action": "error", "message": "ERROR: The device has been used"} return {"action": "error", "message": "Failed to update other people's events"}
def get_events(): user_id = Helps.get_user_id_from_headers() department_id = MySql.get_department_of_user(user_id) '''xu li light box''' data = Helps.config_lightbox(user_id, department_id) '''xu li event cua user''' list_event = Helps.config_event(user_id) return jsonify({'data': list_event, 'collections': data})
def get_events(): user_id = Helps.get_user_id_from_headers() department_id = MySql.get_department_of_user(user_id) data_color = Helps.random_color_user(user_id, department_id) data = Helps.config_lightbox(user_id, department_id) list_event = Helps.config_event_for_department(data_color, department_id) return jsonify({'data': list_event, 'collections': data})
def find_list(): user_id = Helps.get_user_id_from_headers() department_id = MySql.get_department_of_user(user_id) a = list(map(int, request.get_json()['list_user'].split(','))) data_color = Helps.random_color_search(a) data = Helps.config_lightbox(user_id, department_id) list_event = Helps.config_event_for_search(data_color, a) return jsonify({'data': list_event, 'collections': data})
def main(): index = [ 'depTime', 'addtime', 'flightNumber', 'cabin', 'seats', 'last_cabin', 'last_seats', 'price', 'last_price', 'invalid', 'bId', 'preTime' ] df_all = pd.DataFrame(columns=index) db = MySql() for i in range(-30, 30): yd = datetime.now() - timedelta(days=i) yd = yd.strftime('%Y%m%d') for id in db.get_id('WN', yd): item = db.get_series(id, yd) try: df_all = wn_analyst(item, df_all) except: import traceback traceback.print_exc() continue df_all.to_csv('src/data/price_diff.csv', encoding='utf_8_sig')
def Login(): post_data = request.get_json() username = post_data['user_name'] user = MySql.get_user_by_user_name(username) if user and user.password == hashlib.sha256( post_data["password"].encode("utf-8")).hexdigest(): access_token = create_access_token(identity=user.id, expires_delta=False) return jsonify(status="success", access_token=access_token), 200 else: return jsonify(status="error", message="Usename or password is error"), 200
def insert_event(): post_data = request.get_json() user_id = Helps.get_user_id_from_headers() department_id = MySql.get_department_of_user(user_id) local_start_date = Helps.format_time(post_data.get('start_date')) local_end_date = Helps.format_time(post_data.get('end_date')) list_type = MySql.get_all_type() if Helps.is_check_device_Invalid(post_data, list_type, local_start_date, local_end_date): try: event = Event(local_start_date, local_end_date, post_data.get('text'), user_id, department_id) MySql.save_to_db(event) except IndentationError: MySql.rollback() return { "action": "error", "message": "ERROR: Insert database error" } if Helps.insert_data_child(post_data, list_type, event=event): return { "action": "success", "tid": event.id, "message": "Inserted" } else: return { "action": "error", "message": "ERROR: Insert database error" } return {"action": "error", "message": "ERROR: The device has been used"}
def main(): trainSet = loadData() mysql = MySql('locations', 'leo', 'mm123456', collection='new_provices') cursor = connect('lagou', 'predicts') results = mysql.find() for result in results: province = result.get('Province') city = result.get('city') county = result.get('county') lng = float(result.get('Longitude')) lat = float(result.get('latitude')) neighbors = get_neighbors(trainSet, [lng, lat], 1) assume = predict(neighbors) cursor.insert({ 'province': province, 'city': city, 'county': county, 'lng': lng, 'lat': lat, 'value': assume }) mysql.close()
def delete_event(event_id): user_id = Helps.get_user_id_from_headers() event_own_device = list(map(int, event_id.split('_'))) user_id_of_event = MySql.get_user_id_of_event(event_own_device[0]) if user_id_of_event is None: return {"action": "success", "message": "DELETED"} if event_own_device[1] == user_id: event_device = MySql.get_event_device_by_id(event_own_device[2]) MySql.remove_from_db(event_device) MySql.save_to_db() return {"action": "success", "message": "DELETED"} return {"action": "error", "message": "Failed to delete other people's events"}
def get_list(): list_type = MySql.get_all_type2() return jsonify([u.list_type_json() for u in list_type])
def delete_event(event_id): user_id = Helps.get_user_id_from_headers() user_id_of_ev = MySql.get_user_id_of_event(event_id) if user_id_of_ev is None: return {"action": "success", "message": "DELETED"} if user_id_of_ev == user_id: for a in MySql.get_devices_by_event_id(event_id): MySql.remove_from_db(a) for b in MySql.get_users_by_event_id(event_id): MySql.remove_from_db(b) ev = MySql.get_event_by_id(event_id) MySql.remove_from_db(ev) MySql.save_to_db() return {"action": "success", "message": "DELETED"} else: a = MySql.get_event_user_by_event_member(event_id, user_id) MySql.remove_from_db(a) MySql.save_to_db() return {"action": "success", "message": "DELETED"}
def get_list_user_search(): list_user = MySql.get_all_user() return jsonify([u.json_list_user() for u in list_user])
def delete_event(event_id): user_id = Helps.get_user_id_from_headers() event_own_id = list(map(int, event_id.split('_'))) user_id_of_event = MySql.get_user_id_of_event(event_own_id[0]) if user_id_of_event is None: return {"action": "success", "message": "DELETED"} if user_id_of_event == user_id and event_own_id[1] == user_id: for a in MySql.get_devices_by_event_id(event_own_id[0]): MySql.remove_from_db(a) for b in MySql.get_users_by_event_id(event_own_id[0]): MySql.remove_from_db(b) ev = MySql.get_event_by_id(event_own_id[0]) MySql.remove_from_db(ev) MySql.save_to_db() return {"action": "success", "message": "DELETED"} if user_id_of_event != user_id and user_id == event_own_id[1]: a = MySql.get_event_user_by_event_member(event_own_id[0], user_id) MySql.remove_from_db(a) MySql.save_to_db() return {"action": "success", "message": "DELETED"} return { "action": "error", "message": "Failed to delete other people's events" }
class Run: db = MySql() hand = Handle() max_num = settings.CON_CURRENT_NUM g_pool = [] carrier_map = dict( ZE={ 'days': 30, 'filters': [Volcano] }, TW={ 'days':30, 'filters': [Volcano] } ) yesterday = util.yesterday() def run_item(self, item, ts): item = self.hand.run_base(item) flight = item.get('flightNumber') id = item.get('id') logging.info('go on id: ' + str(id)) series = util.get_history(flight, id) if series: ret = self.hand.run_active(series) item.update(ret) else: series = [] if int(ts) <= int(self.yesterday): # 如果是昨天及以前的数据, 则入库储存 self.db.add_li(item, 'base_ticket', ['id']) self.db.add_li(series, 'history_' + ts, ['flightNumber', 'addtime']) def run_all(self, ts): carrier_all = settings.CARRIER self.db.create_table('history_' + ts) for carrier in carrier_all: logging.info('%s in %s is begin:' % (carrier, ts)) for item in util.get_id(carrier, ts): self.g_pool.append(gevent.spawn(self.run_item, item, ts)) if len(self.g_pool) > self.max_num: gevent.joinall(self.g_pool) self.g_pool.clear() def ana_all(self, ts=None, carriers=None): """ 分析全部数据 :param ts: :param carriers: :return: """ carriers = carriers or settings.CARRIER if ts: ts_date = datetime.strptime(ts, '%Y%m%d') else: ts_date = datetime.now() + timedelta(days=1) for carrier in carriers: data_map = self.carrier_map.get(carrier) if not data_map: continue logging.info('start analysis carrier : ' + carrier) days = data_map.get('days') filters = data_map.get('filters') mans = [] for filter in filters: mans.append(filter(carrier)) for day in range(days): this_date = (ts_date + timedelta(days=day)).strftime('%Y%m%d') for item in util.get_id(carrier, this_date, tp=4): # self.ana_item(item, filters) self.g_pool.append(gevent.spawn(self.ana_item, item, mans)) if len(self.g_pool) > self.max_num: gevent.joinall(self.g_pool) self.g_pool.clear() for man in mans: man.record() def ana_item(self, item, mans): flight = item.get('flightNumber') id = item.get('id') logging.info('go on id: %s and fn: %s ' % (str(id), flight)) series = util.get_history(flight, id) for man in mans: man.run(series)
from utils.mongo import connect from utils.mysql import MySql mysql = MySql('locations', 'leo', 'mm123456', collection='new_provices') locations = connect('lagou', 'location') cities = [] try: for location in locations.find(): city = location.get('city') new_city = city + '%' result = mysql.find(mohu=True, city=new_city) try: province = result.get('Province') except Exception: print(city) locations.update_one({'city': city}, {'$set': {'province': province}}) finally: mysql.close()