Esempio n. 1
0
def upload_excel():
    # excel_path = '/usr/local/nginx/html/zhouwei/app/static/'  # 服务器路径
    excel_path = '/Users/xiaomao/PycharmProjects/zhouwei/app/static/'  # localhost 路径
    excel = request.files['excel']
    excel_name = secure_filename(excel.filename)
    excel.save(os.path.join(excel_path, excel_name))
    from excel import open_excel
    data = open_excel(file='/Users/xiaomao/PycharmProjects/zhouwei/app/static/%s' % excel_name)
    table = data.sheets()[0]
    nrows = table.nrows
    # ncols = table.ncols
    datas = []
    for i in range(nrows):
        rs = table.row_values(i)
        datas.append(rs)
    for email_list in datas:
        email_db = ZwMySQL()
        name = email_list[0]
        email = email_list[1]
        belong = email_list[2]
        try:
            email_db.add_email(name, email, belong, '')
            flash('add success')
        except Exception as e:
            flash('add %s error' % email)
            app.logger.error("add %s error %s" % (email, e))
    return render_template('upload_excel.html',
                           url='upload_email',
                           user='******',
                           per_act='active',
                           datas=datas,
                           person_no=len(datas))
Esempio n. 2
0
def add_email():
    name = request.form.get('name')
    email = request.form.get('email')
    belong = request.form.get('belong')
    type = request.form.get('type')
    email_db = ZwMySQL()
    email_db.add_email(name, email, belong, type)
    return redirect(url_for('periodical'))
Esempio n. 3
0
def edit_email():
    no = request.form.get('no')
    name = request.form.get('name')
    email = request.form.get('email')
    belong = request.form.get('belong')
    type = request.form.get('type')
    email_db = ZwMySQL()
    email_db.update_email(no, name, email, belong, type)
    return redirect(url_for('periodical'))
Esempio n. 4
0
def clean():
    env_name = request.args.get('env_name')
    env_db = ZwMySQL()
    rs = env_db.select_env_with_name(env_name)
    package_path = rs[4]
    try:
        clean_war(package_path)
        return "clean begin and check the log /usr/local/nginx/html/zhouwei/zhouwei.log"
    except Exception as e:
        app.logger.error("clean error %s" % e)
Esempio n. 5
0
def package():
    env_name = request.args.get('env_name')
    env_db = ZwMySQL()
    env = env_db.select_env_with_name(env_name)
    package_path = env[4]
    env_type = env[7]
    try:
        package_project(package_path, env_type)
        return "package begin, check the log /usr/local/nginx/html/zhouwei/zhouwei.log"
    except Exception as e:
        app.logger.error("package error %s" % e)
Esempio n. 6
0
def periodical_del():
    per_name = request.args['pername']
    per_db = ZwMySQL()
    try:
        per_db.del_periodical(per_name)
        flash('delete periodical %s success' % per_name)
    except Exception as e:
        flash('delete error')
        app.logger.error('del per error' % e)
    finally:
        return redirect(url_for('periodical'))
Esempio n. 7
0
def scp():
    env_name = request.args.get('env_name')
    db = ZwMySQL()
    env = db.select_env_with_name(env_name)
    env_war_path = env[9]
    env_address = env[3]
    try:
        os.system("scp %s/*.war root@%s:/home/zhouwei/ROOT.war" % (env_war_path, env_address))
        return "scp success, now deploy your project"
    except Exception as e:
        app.logger.error("scp error %s" % e)
        return "scp error %s" % e
Esempio n. 8
0
def email_edit():
    email_no = request.args['email_no']
    email_db = ZwMySQL()
    email_info = email_db.select_email_with_no(email_no)
    return render_template('email_edit.html',
                           url='email_edit',
                           user='******',
                           per_act='active',
                           name=email_info[1],
                           email=email_info[2],
                           belong=email_info[3],
                           type=email_info[4],
                           no=email_info[0])
Esempio n. 9
0
def project():
    project_name = request.args.get('project_name')
    pro_db = ZwMySQL()
    rs = pro_db.select_projects_with_name(project_name)
    project_id = rs[0]
    env_db = ZwMySQL()
    envs = env_db.select_env_with_id(project_id)
    return render_template('project.html',
                           url='/deploy/%s' % project_name,
                           dep_act='active',
                           user='******',
                           envs=envs,
                           envnum=len(envs))
Esempio n. 10
0
def periodical_edit():
    per_name = request.args['pername']
    per_db = ZwMySQL()
    per = per_db.select_periodical_with_name(per_name)
    return render_template('periodical_edit.html',
                           url='periodical_edit',
                           user='******',
                           per_act='active',
                           name=per[0][1],
                           sub=per[0][2],
                           dec=per[0][3],
                           issn=per[0][4],
                           img=per[0][5])
Esempio n. 11
0
def periodical_update():
    per_name = request.form.get('name')
    per_sub = request.form.get('sub')
    per_issn = request.form.get('issn')
    per_dec = request.form.get('dec')
    per_db = ZwMySQL()
    try:
        per_db.update_periodical(per_name, per_sub, per_dec, per_issn)
        flash('update periodical %s success' % per_name)
    except Exception as e:
        flash('update error')
        app.logger.error('update error %s' % e)
    finally:
        return redirect(url_for('periodical'))
Esempio n. 12
0
def periodical():
    username = request.cookies.get('username')
    if username in session['user']:
        per_db = ZwMySQL()
        pers = per_db.select_periodical()
        return render_template('periodical.html',
                               pernum=len(pers),
                               url='periodical',
                               pers=pers,
                               user='******',
                               per_act='active')
    else:
        flash('you are not login')
        return render_template('login.html')
Esempio n. 13
0
def mail():
    name = request.args.get('name')
    per_no = request.args.get('perno')
    type = request.args.get('type')
    per_db = ZwMySQL()
    per = per_db.select_periodical_with_perno(per_no)
    if type == 'editor':
        return render_template("editor.html",
                               name=name,
                               jname=per[1],
                               dec=per[3],
                               issn=per[4])
    else:
        return render_template("paper.html",
                               name=name,
                               jname=per[1],
                               dec=per[6],  # 数据库中名称为 dec_paper 后追加字段
                               issn=per[4])
Esempio n. 14
0
def email():
    per_name = request.args['pername']
    per_db = ZwMySQL()
    per = per_db.select_periodical_with_name(per_name)
    per_no = per[0][0]
    email_db = ZwMySQL()
    rss = email_db.select_email(per_no)
    curs = []
    for rs in rss:
        if rs[4] != '1':
            curs.append(rs)
    return render_template('email.html',
                           url=per_name,
                           curs=curs,
                           curnum=len(curs),
                           per_act='active',
                           user='******',
                           perno=per_no)
Esempio n. 15
0
def projects():
    try:
        username = request.cookies.get('username')
        if username in session['user']:
            pro_db = ZwMySQL()
            projects = pro_db.select_projects()
            return render_template('projects.html',
                                   url='deploy',
                                   user='******',
                                   dep_act='active',
                                   projects=projects,
                                   pronum=len(projects))
        else:
            flash('you are not login')
            return render_template('login.html')
    except Exception as e:
        app.logger.warning("without session key %s" % e)
        return render_template('login.html')
Esempio n. 16
0
def per_add():
    # img_path = '/usr/local/nginx/html/zhouwei/app/static/images'  # 服务器路径
    img_path = '/Users/xiaomao/PycharmProjects/zhouwei/app/static/images'  # localhost 路径
    per_name = request.form.get('name')
    per_sub = request.form.get('sub')
    per_issn = request.form.get('issn')
    per_dec = request.form.get('dec')
    img = request.files['img']
    img_name = secure_filename(img.filename)
    img.save(os.path.join(img_path, img_name))
    per_img = '/static/images/%s' % img_name
    per_db = ZwMySQL()
    try:
        per_db.add_periodical(per_name, per_sub, per_dec, per_issn, per_img)
        flash('add periodical %s success' % per_name)
    except Exception as e:
        flash('add periodical error')
        app.logger.error('add per error %s' % e)
    finally:
        return redirect(url_for('periodical'))
Esempio n. 17
0
def send():
    # 获取per页面,get请求发送过来的数据,利用perno 查询数据库 期刊信息
    name = request.args.get('name')
    email = request.args.get('email')
    per_no = request.args.get('perno')
    type = request.args.get('type')
    per_db = ZwMySQL()
    per = per_db.select_periodical_with_perno(per_no)
    from mail import send_editor_email_list
    from mail import send_paper_email_list
    # 尝试发送邮件,捕获异常,返回1成功,0失败
    if type == 'editor':
        try:
            send_editor_email_list(per[2], name, email, per[3], per[1], per[4])
            try:
                email_db = ZwMySQL()
                email_db.count_add(email)
            except Exception as count_error:
                app.logger.error("count add error %s" % count_error)
            return '1'
        except Exception as e:
            app.logger.error("send email error %s" % e)

            return str(e)
    elif type == 'paper':
        try:
            send_paper_email_list(per[7], name, email, per[6], per[1], per[4])  # per[6]数据库中名称为 dec_paper 后追加字段
            try:
                email_db = ZwMySQL()
                email_db.count_add(email)
            except Exception as count_error:
                app.logger.error("count add error %s" % count_error)
            return '1'
        except Exception as e:
            app.logger.error("send email error %s" % e)
            return str(e)
    else:
        return 'no action'
Esempio n. 18
0
def email_del():
    email = request.args['email']
    email_db = ZwMySQL()
    email_db.del_email(email)
    return redirect(url_for('periodical'))