def fileUpload(file, username): try: # 生成视频ID标识 id = Utils.generate_timeID() # 获取文件类型 filetype = getFileType(file.filename) # 重命名文件名并生成文件存储路径 file_path = os.path.join(upload_folder, generateFileName(file.filename, id)) file.save(file_path) # 导出缩略图 camera = cv2.VideoCapture(file_path) res, image = camera.read() cv2.imwrite(config.PIC_FOLDER + id + '.jpg', image) camera.release() # 获取视频fps以及视频长度 info = Utils.getVideoInfo(file_path) DBUtil.addFileRecord(id, username, file.filename, filetype, Utils.get_file_size(file_path), file_path, info['fps'], info['length']) # 添加检测队列 taskManager.addTask(id) DBUtil.addHistory(id, 1, Utils.time_format(), "上传成功", username, 1) return json.dumps({'code': 1}) except Exception as e: print(str(e)) return json.dumps({'code': -1, 'message': str(e)})
def getVideoDir(videoID): video = DBUtil.getVideo(videoID) status = video.get('status') address = "" if status != "审核通过": address = upload_folder else: address = videoBase return address
def videoAdd(file, username): try: # 生成视频ID标识 id = file.filename.split('.')[0] # 获取文件类型 filetype = getFileType(file.filename) # 重命名文件名并生成文件存储路径 file_path = os.path.join(upload_folder, file.filename) # 导出缩略图 camera = cv2.VideoCapture(file_path) res, image = camera.read() cv2.imwrite(config.PIC_FOLDER + id + '.jpg', image) camera.release() # 获取视频fps以及视频长度 info = Utils.getVideoInfo(file_path) DBUtil.addFileRecord(id, username, file.filename, filetype, Utils.get_file_size(file_path), file_path, info['fps'], info['length']) task = threading.Thread(target=VideoDBManage.addVideo, args=(id, )) task.start() return json.dumps({'code': 0}) except Exception as e: print(str(e)) return json.dumps({'code': -1, 'message': str(e)})
def getUserList(): return DBUtil.getUserList()
def getUserDashboard(username): return DBUtil.getUserDashboard(username)
def getVideoAddress(videoID): video = DBUtil.getVideo(videoID) status = video.get('status') address = getVideoDir(videoID) + videoID + "." + video.get('type') return address
def getUploadRecord(username): return DBUtil.getUploadRecord(username)
def resetPassword(username): return DBUtil.resetPassword(username)
def setAuth(): data = request.get_data(as_text=True) return DBUtil.setAuth(json.loads(data))
def getAppealDetail(id): return DBUtil.getAppealDetail(id)
def fetchUser(keyword): return DBUtil.fetchUser(keyword)
def getAppealCount(username): return DBUtil.getAppealCount(username, all=False)
def getAllAppealCount(): return DBUtil.getAppealCount('', all=True)
def getAllAppealList(type): return DBUtil.getAppealList('', int(type), all=True)
def getAppealList(username, type): return DBUtil.getAppealList(username, int(type), all=False)
def addNewAppeal(username): data = json.loads(request.get_data(as_text=True)) return DBUtil.addNewAppeal(data, username)
def getUser(username): return DBUtil.getUser(username)
def resolveAppeal(): data = json.loads(request.get_data(as_text=True)) return DBUtil.resolveAppeal(data)
def updateUser(username): data = request.get_data(as_text=True) return DBUtil.updateUser(username, data)
def getFailedVideoList(username): return DBUtil.getFailedVideoList(username)
def deleteUser(username): return DBUtil.deleteUser(username)
def checkUser(username): tmp = DBUtil.checkUser(username) re = {'code': tmp} return json.dumps(re)
def changePassword(): data = request.get_data(as_text=True) return DBUtil.changePassword(json.loads(data))
def getContentList(username): return DBUtil.getContentList(username)
def fileDeleteByMD5(md5): # 由MD5获取videoID id = DBUtil.MD5_To_ID(md5) result = fileDeleteByID(id) return Utils.responseGen(result, '', '')
def getFeedbackList(): return DBUtil.getFeedbackList()
def checkPassword(username, password): re = DBUtil.checkPassword(username, password) return json.dumps(re)
def getVideoList(): return DBUtil.getVideoList()
def registerUser(): data = request.get_data(as_text=True) re = DBUtil.registerUser(data) return re
def feedbackSetReaded(id): return DBUtil.feedbackSetReaded(id)