def GetUserFriendData(user_id): users = session.query(User).filter(User.id == user_id).all() session.commit() if users == []: return None for row in users: return row.friend_list
def admin_add_info(): try: name = request.form.get("name") short_info = request.form.get("short_info") long_info = request.form.get("long_info") if 'image' not in request.files: flash('No file part') return redirect("/admin-add-info") image = request.files['image'] # if user does not select file, browser also # submit an empty part without filename if image.filename == '': flash('No selected file') return redirect("/admin-add-info") file_name = common.upload_file(image) info = models.Info() info.name = name info.image = file_name info.short_info = short_info info.long_info = long_info session.add(info) session.commit() session.close() flash('Tạo tin tức thành công!') except Exception as e: flash('Hệ thống lỗi, nhờ báo cáo sự cố với bộ phận kỹ thuật.') return redirect("/list-info")
def request_salary(): try: price = request.form.get('price') description = request.form.get('description') history = models.History() history.create_at = str(datetime.datetime.now()) history.card = False history.buy = False history.user_id = current_user.id history.status = 'Confirm' data = {"price": price, "description": description} history.info = json.dumps(data) user = session.query(models.Users).filter( models.Users.id == int(current_user.id)).first() if int(user.money) < int(price): flash('Số tiền trong tài khoản của bạn không đủ!') else: user.money = int(user.money) - int(price) session.merge(user) session.commit() session.close() session.add(history) session.commit() session.close() flash('Request rút tiền thành công!') except Exception as e: flash('Hệ thống lỗi, nhờ báo cáo sự cố với bộ phận kỹ thuật.') return redirect("/admin-history")
def sign_up_process(): try: name = request.form.get("name") account = request.form.get("account") password = request.form.get("password") confirm_password = request.form.get("confirm_password") user = session.query( models.Users).filter(models.Users.account_tk == account).first() if user: flash('Tên tài khoản đã tồn tại') return redirect("/sign_up") user = models.Users() user.name = name user.account_tk = account user.super = False user.ctv = False user.enduser = True user.create_at = str(datetime.datetime.now()) user.password = password user.money = 0 session.add(user) session.commit() session.close() flash('Tạo tài khoản "' + name + '" thành công!') except Exception as e: flash('Hệ thống lỗi, nhờ báo cáo sự cố với bộ phận kỹ thuật.') return redirect("/sign_up") return redirect("/login")
def edit_user(): per = checkPermisson() if per == 'admin': try: id = request.form.get('id') name = request.form.get('name') account_tk = request.form.get('account_tk') password = request.form.get('password') money = request.form.get('money') user = session.query( models.Users).filter(models.Users.id == int(id)).first() user.name = name user.account_tk = account_tk user.password = password user.money = money user.create_at = str(datetime.datetime.now()) session.merge(user) session.commit() session.close() flash('Update user ' + account_tk + ' thành công!') except Exception as e: flash(e) flash('Hệ thống lỗi, nhờ báo cáo sự cố với bộ phận kỹ thuật.') return redirect("/admin-ctv") else: return redirect("/error")
def AddLendInfoData(user_id_data,borrower_id_data,book_id_data,deadline_data): now_date = (datetime.datetime.now()) #print(type(now_date)) #print(now_date) now_date_str = now_date.strftime('%Y/%m/%d %H:%M:%S.%f') print("記録時間",now_date_str) print(type(now_date_str)) now_date_str = now_date_str +".0001" print(now_date_str) print("デッドライン",deadline_data) deadline_data = deadline_data +".0000" #Own_Bookの変換を行う own_book_id_data = (GetOwnBookIDByUseridAndBookid(user_id_data,book_id_data)) #print(type(own_book_id_data)) #print(own_book_id_data) if own_book_id_data == "Non": print("You don't have this books.") raise Exception('Error!You don\'t have your books') if IsSameBookLending( borrower_id_data , book_id_data ) : print("既に同じ本を貸し出したことがあります.") raise Exception('既に同じ本を貸し出したことがあります.') session.add_all([ Lend_info( borrower_id = borrower_id_data,own_book_id = own_book_id_data,created_at = (now_date_str),returned_at= "Non",deadline = deadline_data,is_valid = 1) ]) session.commit() print("データの追加が完了しました")
def ad_edit_info(): try: id = request.form.get("id") name = request.form.get("name") short_info = request.form.get("short_info") long_info = request.form.get("long_info") info = session.query(models.Info).filter(models.Info.id == int(id)).first() # if user does not select file, browser also # submit an empty part without filename file_name = info.image if 'image' in request.files: image = request.files['image'] if image.filename != '': file_old = info.image file_name = common.upload_file(image, file_old) info.name = name info.image = file_name info.short_info = short_info info.long_info = long_info session.add(info) session.commit() session.close() flash('Chỉnh sửa tin tức thành công!') except Exception as e: flash('Hệ thống lỗi, nhờ báo cáo sự cố với bộ phận kỹ thuật.') return redirect("/list-info")
def ChangeFriendlistToFriendData(friend_id): #フレンドidから名前と画像を取得 users = session.query(User).filter(User.id == friend_id).all() session.commit() #print(users) if users == []: return None for row in users: return [row.id, row.icon_image, row.name]
def GetPointByUserId(friend_id): #idからポイントを取得 users = session.query(User).filter(User.id == friend_id).all() session.commit() #print(users) if users == []: return None for row in users: return row.point
def insertHFRequestDetail(runId, hotelrequestinput): hotelflightrequestinput = hotelrequestinput.all() data2insert = [] for rec in hotelflightrequestinput: for competitor in rec.CompetitorIds.split(','): for length in rec.RentalLength.split(','): try: checkin = session.query( hotelflightrequestDateDettbl).filter_by( hotelflightrequestinputdetailsId=rec. hotelflightrequestinputdetailsId).one_or_none() hotelflightcrawlrequest = hotelflightCrawlReqtbl( RequestId=rec.RequestId, RequestRunId=runId, hotelflightrequestinputdetailsId=rec. hotelflightrequestinputdetailsId, StatusId=5, CheckInDate=datetime.now().strftime('%d-%m-%Y') if checkin is None else checkin.CheckInDate, RentalLength=rec.RentalLength, CompetitorName=session.query(competitortbl).filter_by( Id=competitor).one().name, PointOfSale=session.query(postbl).filter_by( PointOfSaleId=rec.PointOfSaleId).one().PointOfSale, Adult=rec.AdultId, Child=rec.ChildID, CrawlMode=session.query(crawlmode).filter_by( CrawlModeId=rec.CrawlMode).one().CrawlMode, HotelName=session.query(hoteltbl).filter_by( HotelId=rec.HotelId).one().HotelName, WebSiteHotelId='', FromAirportCode=session.query(airporttbl).filter_by( AirportCodeId=rec.FromAirportCodeId).one( ).AirportCode, ToAirportCode=session.query(airporttbl).filter_by( AirportCodeId=rec.ToAirportCodeId).one( ).AirportCode, call_func=rec.call_func, CreatedDatetime=datetime.now()) data2insert.append(hotelflightcrawlrequest) except Exception: logger.error( 'Object hotelflightcrawlrequest failed to create for Request ID' + str(rec.RequestId) + ': ', exc_info=True) continue try: session.bulk_save_objects(data2insert) session.commit() print("Thread Ended") except Exception: logger.error( 'function insertHFRequestDetail failed to save in DB for RunID ' + str(runId) + ': ', exc_info=True)
def GetUserLoginData(UserName): print(type(UserName)) select = (UserName) print("select",select) users = session.query(User).filter(User.name==select).all() session.commit() if users ==[]: return None for row in users: return [row.id,row.icon_image,row.name,row.password,row.point,row.friend_list]
def confirm_request(): try: id = request.form.get("id") history = session.query( models.History).filter(models.History.id == id).first() history.status = "Processed" session.merge(history) session.commit() session.close() flash("Xử lý request thành công!") except Exception as e: flash('Hệ thống lỗi, nhờ báo cáo sự cố với bộ phận kỹ thuật.') return redirect("/admin-ctv")
def UpdateLendInfoData(user_id_data,book_id_data): #print(user_id_data) own_book_id_data = (GetOwnBookIDByUseridAndBookid(user_id_data,book_id_data)) lends = session.query(Lend_info).filter(Lend_info.own_book_id == own_book_id_data).all() if lends == []: raise Exception('Error!') else: #print(lends) for lend in lends: lend.is_valid = False #print("valid",lend.is_valid) print("貸し出し終了しました") session.commit()
def GetLendData(id): print(type(id)) select = (id) print("select", select) users = session.query(Lend_info).filter(Lend_info.id == id).all() session.commit() if users == []: return None for row in users: return [ row.id, row.borrower_id, row.own_book_id, row.created_at, row.returned_at, row.deadline, row.is_valid ]
def add_product(): try: type = request.form.get("type") name = request.form.get("name") price_all = request.form.get("price_all") price_dn = request.form.get("price_dn") price_qn = request.form.get("price_qn") price_qng = request.form.get("price_qng") color = request.form.get("color") origin = request.form.get("origin") mainten = request.form.get("mainten") wood_type = request.form.get("wood_type") short_info = request.form.get("short_info") long_info = request.form.get("long_info") if 'image' not in request.files: flash('No file part') return redirect("/admin") image = request.files['image'] # if user does not select file, browser also # submit an empty part without filename if image.filename == '': flash('No selected file') return redirect("/admin-add-info") file_name = common.upload_file(image) price = json.dumps({ "all": price_all, "danang": price_dn, "quangnam": price_qn, "quangngai": price_qng }) product = models.Product() product.type = type product.name = name product.price = price product.color = int(color) if color else None product.origin = origin product.mainten = int(mainten) if color else None product.image = file_name product.wood_type = wood_type product.short_info = short_info product.long_info = long_info session.add(product) session.commit() session.close() flash('Tạo sản phẩm thành công!') return redirect("/admin") except Exception as e: flash('Hệ thống lỗi, nhờ báo cáo sự cố với bộ phận kỹ thuật.') session.rollback() finally: session.close() return redirect("/admin")
def edit_product(): try: id = request.form.get("id") typep = request.form.get("type") name = request.form.get("name") price = request.form.get("price") color = request.form.get("color") origin = request.form.get("origin") mainten = request.form.get("mainten") wood_type = request.form.get("wood_type") short_info = request.form.get("short_info") long_info = request.form.get("long_info") product = session.query(models.Product).filter(models.Product.id == int(id)).first() file_name = product.image if 'image' in request.files: image = request.files['image'] if image.filename != '': file_old = product.image file_name = common.upload_file(image, file_old) product.type = typep product.name = name product.price = price product.color = int(color) if color else None product.origin = origin product.mainten = int(mainten) if color else None product.image = file_name product.wood_type = wood_type product.short_info = short_info product.long_info = long_info session.merge(product) session.commit() session.close() flash('Chỉnh sửa sản phẩm thành công!') except Exception as e: flash('Hệ thống lỗi, nhờ báo cáo sự cố với bộ phận kỹ thuật.') return redirect("/admin")
def add_ctv(): try: name = request.form.get('name') account_tk = request.form.get('account_tk') password = request.form.get('password') user = models.Users() user.name = name user.account_tk = account_tk user.ctv = True user.super = False user.enduser = False user.password = password user.create_at = str(datetime.datetime.now()) session.add(user) session.commit() session.close() flash('Tạo ctv ' + account_tk + ' thành công!') except Exception as e: flash(e) flash('Hệ thống lỗi, nhờ báo cáo sự cố với bộ phận kỹ thuật.') return redirect("/admin-ctv")
def edit_nick(): try: id = request.form.get('id') nick = session.query( models.Nicks).filter(models.Nicks.id == id).first() name = request.form.get('name') nick.name = name price = request.form.get('price') nick.price = price game_type = request.form.get('gameType') code = '' # Game Info if game_type == 'LQ': code = 'LQ-' + str(int(datetime.datetime.utcnow().timestamp())) game_name = 'Liên Quân' data = { "account": request.form.get('account'), "password": request.form.get('password'), "rank": request.form.get('rank'), "tuong": request.form.get('slTuong'), "skin": request.form.get('Skin'), "ngoc": request.form.get('ngoc'), "da_quy": request.form.get('daQuy') } else: code = 'NR-' + str(int(datetime.datetime.utcnow().timestamp())) game_name = 'Ngọc Rồng' data = { "nickType": request.form.get('nickType'), "server": request.form.get('server'), "hanhTinh": request.form.get('hanhTinh'), "bongTai": True if request.form.get('bongTai') == 'on' else False, "deTu": True if request.form.get('deTu') == 'on' else False } # Image if 'files' not in request.files: nick.images = nick.images else: images = request.files.getlist('files') # if user does not select file, browser also # submit an empty part without filename list_image = [] if images: for image in images: if image.filename == '': nick.images = nick.images else: path = app.config['UPLOAD_FOLDER'] + code os.mkdir(path) file_name = common.upload_file(image, path) list_image.append( os.path.join(UPLOAD_FOLDER + code, image.filename)) nick.images = ','.join(list_image) nick.status = request.form.get('status') nick.game_name = game_name nick.game_info = json.dumps(data) nick.code = code nick.create_at = str(datetime.datetime.now()) nick.user_id = current_user.id session.merge(nick) session.commit() session.close() flash('Update thông tin nick thành công!') except Exception as e: flash(e) flash('Hệ thống lỗi, nhờ báo cáo sự cố với bộ phận kỹ thuật.') redirect("/admin") return redirect("/admin")
typeOfRequest = session.query(requestMastertbl).filter_by( RequestId=reqID).one().RequestModeId if typeOfRequest == 2: requestinput = session.query(hotelRequestInputtbl).filter_by( RequestId=reqID) if typeOfRequest == 3: requestinput = session.query(hotelflightrequestinputtbl).filter_by( RequestId=reqID) noOfReq = requestinput.count() reqRun = requestRunDetailtbl( FK_RequestId=reqID, TotalRequests=noOfReq, CompletedRequests=0, InQueRequests=noOfReq, PNFCounts=0, FK_StatusId=session.query(statustbl).filter_by( StatusTitle='InQue').one().StatusId, StartDatetIme=datetime.now()) session.add(reqRun) session.commit() if typeOfRequest == 2: #insertHRequestDetail(reqRun.RequestRunId,requestinput) t = Thread(target=insertHRequestDetail, args=(reqRun.RequestRunId, requestinput)) if typeOfRequest == 3: #insertHFRequestDetail(reqRun.RequestRunId,requestinput) t = Thread(target=insertHFRequestDetail, args=(reqRun.RequestRunId, requestinput)) t.start() print("Program End")
def insertHRequestDetail(runId, hotelrequestinput): hotelrequestinput = hotelrequestinput.all() data2insert = [] for rec in hotelrequestinput: for competitor in rec.CompetitorIds.split(','): for length in rec.RentalLength.split(','): try: starRec = session.query(starratingtbl).filter_by( StarRatingId=rec.StarRating).one_or_none() boardRec = session.query(boardtypetbl).filter_by( BoardTypeId=rec.BoardType).one_or_none() roomRec = session.query(roomtypetbl).filter_by( RoomTypeId=rec.RoomType).one_or_none() hotelcrawlrequest = hotelCrawlRequesttbl( RequestId=rec.RequestId, RequestRunId=runId, HotelReqestInputDetailsId=rec. HotelReqestInputDetailsId, StatusId=5, CheckInDate=session.query(requestDateDettbl).filter_by( HotelRequestInputDetailsId=rec. HotelReqestInputDetailsId).one().CheckInDate, RentalLength=rec.RentalLength, CompetitorName=session.query(competitortbl).filter_by( Id=competitor).one().name, PointOfSale=session.query(postbl).filter_by( PointOfSaleId=rec.PointOfSaleId).one().PointOfSale, Adult=rec.AdultId, Child=rec.ChildID, CrawlMode=session.query(crawlmode).filter_by( CrawlModeId=rec.CrawlMode).one().CrawlMode, HotelName=session.query(hoteltbl).filter_by( HotelId=rec.HotelId).one().HotelName, WebSiteHotelId='', CityName=session.query(citytbl).filter_by( CityId=rec.CityId).one().CityName, CountryName=session.query(countrytbl).filter_by( CountryID=rec.CountryId).one().CountryName, StarRating=None if starRec is None else starRec.StarRating, BoardType=None if boardRec is None else boardRec.BoardTypeCode, RoomType=None if roomRec is None else roomRec.RoomType, call_func=rec.call_func, CreatedDatetime=datetime.now()) data2insert.append(hotelcrawlrequest) except Exception: logger.error( 'Object hotelcrawlrequest failed to create for Request ID' + str(rec.RequestId) + ': ', exc_info=True) logger.error( '-------------------------Error Ends----------------------------------------' ) print("Error Occured check the Logs...") continue try: session.bulk_save_objects(data2insert) session.commit() ph = Process(target=produceMsg, args=(runId, )) ph.run() print("Thread Ended") except Exception: logger.error( 'function hotelrequestinput failed to save in DB for RunID ' + str(runId) + ': ', exc_info=True) logger.error( '------------------------Error Ends-----------------------------------------' ) print("Error Occured check the Logs...")