Commit 0c3ebd4f authored by Wallen姚文辉's avatar Wallen姚文辉

添加审核邮件提醒和审核结果提醒

parent de16c852
...@@ -16,6 +16,7 @@ from threading import Thread ...@@ -16,6 +16,7 @@ from threading import Thread
from flask_socketio import emit,send from flask_socketio import emit,send
from sqlalchemy.sql import alias from sqlalchemy.sql import alias
from sqlalchemy import func from sqlalchemy import func
import yagmail
db=server.db db=server.db
tool = Blueprint("tools", __name__, url_prefix='/tool') tool = Blueprint("tools", __name__, url_prefix='/tool')
...@@ -37,7 +38,6 @@ def getheader(id_): ...@@ -37,7 +38,6 @@ def getheader(id_):
@tool.route('/testport/sendport', methods=["POST"]) @tool.route('/testport/sendport', methods=["POST"])
def sendport(): def sendport():
import yagmail
data=request.json data=request.json
user_info=db.session.query(User.email_address,User.email_password).filter_by(id=session.get("id")).first() user_info=db.session.query(User.email_address,User.email_password).filter_by(id=session.get("id")).first()
db.session.close() db.session.close()
...@@ -470,7 +470,19 @@ def staging(): ...@@ -470,7 +470,19 @@ def staging():
insert=Testreport(create_time=create_time,update_time=create_time,create_user=session.get("id"),project=request.json.get("project"),story=request.json.get("sprint"),save_remark=request.json.get("save_remark"),type=request.json.get("type"),report_status=request.json.get("report_status"),report_data=request.json.get("report_data")) insert=Testreport(create_time=create_time,update_time=create_time,create_user=session.get("id"),project=request.json.get("project"),story=request.json.get("sprint"),save_remark=request.json.get("save_remark"),type=request.json.get("type"),report_status=request.json.get("report_status"),report_data=request.json.get("report_data"))
db.session.add(insert) db.session.add(insert)
db.session.commit() db.session.commit()
from_=db.session.query(User.email_address,User.email_password).filter_by(id=insert.create_user).first()
to_=db.session.query(Audituser.user_id,User.email_address).filter(Audituser.user_id==User.id).all()
to_=list(map(lambda x:x.email_address,to_))
contents='''
<p>你有一份<a href="http://192.168.11.185/home/aduitreportlist" target="_blank">测试报告审核</a><span style="color: #ff9900;">待处理</span>,请及时处理</p>
'''
db.session.close() db.session.close()
if request.json.get("type")==1:
try:
yag = yagmail.SMTP(user=from_.email_address, password=from_.email_password, host='smtp.exmail.qq.com',port=465)
yag.send(to=to_,subject="测试报告审核提醒",contents=contents)
except:
pass
return jsonify({"code": 200, "message": "保存成功"}),200 return jsonify({"code": 200, "message": "保存成功"}),200
@tool.route('/testport/updatereport', methods=["POST"]) @tool.route('/testport/updatereport', methods=["POST"])
...@@ -558,9 +570,29 @@ def audit(): ...@@ -558,9 +570,29 @@ def audit():
data=request.json data=request.json
data["audit_user"]=session.get("id") data["audit_user"]=session.get("id")
data["audit_time"]=time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())) data["audit_time"]=time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time()))
db.session.query(Testreport).filter(Testreport.id==request.json.get("id")).update(request.json) info=db.session.query(Testreport).filter(Testreport.id==request.json.get("id"))
info.update(request.json)
db.session.commit() db.session.commit()
from_=db.session.query(User.email_address,User.email_password).filter_by(id=session.get("id")).first()
to_=db.session.query(User.email_address).filter_by(id=info.first().create_user).first().email_address
db.session.close() db.session.close()
a=lambda contents:f'''
<p>你的<a href="http://192.168.11.185/home/aduitreportlist" target="_blank">测试报告</a>审核<span style="color: {contents["color"]};">{contents["text"]}</span>,请及时处理</p>
'''
if request.json.get("audit_status")==1:
contents=a({"color":"#19be6b","text":"通过"})
try:
yag = yagmail.SMTP(user=from_.email_address, password=from_.email_password, host='smtp.exmail.qq.com',port=465)
yag.send(to=to_,subject="测试报告审核提醒",contents=contents)
except:
pass
elif request.json.get("audit_status")==2:
contents=a({"color":"#ed4014","text":"被驳回"})
try:
yag = yagmail.SMTP(user=from_.email_address, password=from_.email_password, host='smtp.exmail.qq.com',port=465)
yag.send(to=to_,subject="测试报告审核提醒",contents=contents)
except:
pass
return jsonify({"code": 200, "message": "操作成功"}) return jsonify({"code": 200, "message": "操作成功"})
@tool.route('/testport/getreport/<id_>', methods=["GET"]) @tool.route('/testport/getreport/<id_>', methods=["GET"])
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment