Compare commits
52 Commits
5259dc5292
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c24a1fa8c6 | ||
| 1c33775f92 | |||
| 43ab114e1a | |||
| 946ad5c31f | |||
|
|
7b956d89bf | ||
| 0891abc0e1 | |||
| 08393f6685 | |||
| 9cde4e2c7d | |||
|
|
0a60a16344 | ||
|
|
496ef3fa9d | ||
|
|
3494e5d17c | ||
|
|
29b0070260 | ||
|
|
2e9cc918d5 | ||
|
|
d943894ae8 | ||
|
|
1c901ddb00 | ||
|
|
f9a188c927 | ||
|
|
1fce4b41c0 | ||
|
|
7ccbba06c1 | ||
|
|
63115f0328 | ||
| cb862c63a6 | |||
| 927d8d75a9 | |||
| 509a3ee913 | |||
| 86f0f9d977 | |||
| 0c4bf4b9fd | |||
| d71945ecb2 | |||
| 3cd5fe63b5 | |||
| 0c6001b297 | |||
| 682b6c4ffd | |||
| 9c859d4660 | |||
|
|
f6b720e4eb | ||
|
|
2fda39a449 | ||
| 291e5d0e25 | |||
| 45d8dfd870 | |||
|
|
4c6166c907 | ||
|
|
2c51bdc695 | ||
|
|
c2f3f10c9b | ||
|
|
f1c755c6ec | ||
| d2b01f56ec | |||
| 34ea972560 | |||
| 87c4ebe33e | |||
|
|
3a3e62a375 | ||
|
|
bf93bf0fdb | ||
|
|
027b1dc855 | ||
| 4a47746e9d | |||
| 12a63278f7 | |||
| 294d646bb6 | |||
| e464960fe5 | |||
| 1b472f4fee | |||
| 54c61b9756 | |||
| 68e50ee4a8 | |||
|
|
965695a693 | ||
|
|
b47e9391ba |
13
.gitignore
vendored
13
.gitignore
vendored
@@ -2,13 +2,10 @@
|
||||
.vscode
|
||||
instance
|
||||
venv/
|
||||
|
||||
__pychache__/
|
||||
123
|
||||
|
||||
|
||||
zabalans.csv
|
||||
project.db
|
||||
|
||||
|
||||
*.csv
|
||||
*.db
|
||||
c*.txt
|
||||
migrations
|
||||
__pycache__
|
||||
.idea
|
||||
|
||||
BIN
VedomostMOL.xls
Normal file
BIN
VedomostMOL.xls
Normal file
Binary file not shown.
BIN
VedomostMOL.xlsx
Normal file
BIN
VedomostMOL.xlsx
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
0
addoborudtodb
Normal file
0
addoborudtodb
Normal file
139
app.py
139
app.py
@@ -8,7 +8,6 @@ import csv
|
||||
import random
|
||||
from urllib.parse import unquote
|
||||
|
||||
|
||||
app = Flask(__name__)
|
||||
|
||||
app.config["SQLALCHEMY_DATABASE_URI"] = "sqlite:///project.db"
|
||||
@@ -22,6 +21,12 @@ db.init_app(app)
|
||||
migrate = Migrate(app, db)
|
||||
|
||||
|
||||
|
||||
@app.route("/login", methods=['GET', 'POST'])
|
||||
def login():
|
||||
return render_template('login.html')
|
||||
|
||||
|
||||
@app.route("/", methods=['GET', 'POST'])
|
||||
def index():
|
||||
results = []
|
||||
@@ -85,7 +90,6 @@ def searchonaud():
|
||||
'oboruds_id': oboruds.nazvanie,
|
||||
'raspolog': oboruds.raspologenie,
|
||||
})
|
||||
print(results)
|
||||
return jsonify(results)
|
||||
|
||||
else:
|
||||
@@ -115,25 +119,38 @@ def addoborudtodb():
|
||||
|
||||
@app.route('/all')
|
||||
def alloborud():
|
||||
return render_template('all.html')
|
||||
|
||||
result = db.session.query(Oboruds).order_by(Oboruds.invNumber).all()
|
||||
|
||||
res = []
|
||||
@app.route('/getall')
|
||||
def getall():
|
||||
oborud = db.session.query(Oboruds).order_by(Oboruds.invNumber).all()
|
||||
|
||||
for ob in result:
|
||||
if ob.aud_id is not None:
|
||||
aud = db.session.query(Auditory).filter_by(id=ob.aud_id).first()
|
||||
res.append([ob.invNumber, ob.nazvanie, aud.audnazvanie])
|
||||
results = []
|
||||
for oboruds in oborud:
|
||||
if oboruds.aud_id is None:
|
||||
results.append({
|
||||
'invNumber': oboruds.invNumber,
|
||||
'nazvanie': oboruds.nazvanie,
|
||||
'raspologenie': oboruds.raspologenie,
|
||||
'balancenumber': oboruds.balancenumber,
|
||||
'kolichestvo': oboruds.kolichestvo,
|
||||
'numberppasu': oboruds.numberppasu,
|
||||
'numberved': oboruds.numberved,
|
||||
'aud': ""})
|
||||
else:
|
||||
res.append([ob.invNumber, ob.nazvanie])
|
||||
aud = db.session.query(Auditory).filter_by(id=oboruds.aud_id).first()
|
||||
results.append({
|
||||
'invNumber': oboruds.invNumber,
|
||||
'nazvanie': oboruds.nazvanie,
|
||||
'raspologenie': oboruds.raspologenie,
|
||||
'balancenumber': oboruds.balancenumber,
|
||||
'kolichestvo': oboruds.kolichestvo,
|
||||
'numberppasu': oboruds.numberppasu,
|
||||
'numberved': oboruds.numberved,
|
||||
'aud': aud.audnazvanie})
|
||||
|
||||
return render_template('all.html', res=res)
|
||||
|
||||
|
||||
@app.route('/updateduplicate', methods=['GET', 'POST'])
|
||||
def updateduplicate():
|
||||
if request.method == 'POST':
|
||||
aud = request.form.get('auditory_dubl')
|
||||
return jsonify(results)
|
||||
|
||||
|
||||
@app.route('/vneaud', methods=['GET', 'POST'])
|
||||
@@ -144,7 +161,7 @@ def vneaud():
|
||||
ak = db.session.query(Oboruds).all()
|
||||
|
||||
for dt in data:
|
||||
res.append([dt.invNumber, dt.nazvanie, dt.typeBalanse])
|
||||
res.append([dt.invNumber, dt.nazvanie])
|
||||
|
||||
return render_template('vneaud.html', res=res, kolvo=len(data), all_kol=len(ak))
|
||||
|
||||
@@ -187,23 +204,40 @@ def zamsearch():
|
||||
@app.route('/addraspved', methods=['GET', 'POST'])
|
||||
def addraspved():
|
||||
if request.method == 'POST':
|
||||
#b'rasp=asndhaslkj&ved=1111111&inv=18124'
|
||||
query_string = request.get_data().decode()
|
||||
un_query_string = unquote(unquote(query_string))
|
||||
query_string = request.data.decode()
|
||||
|
||||
print(un_query_string.split('&'))
|
||||
query_dict = {}
|
||||
for pair in un_query_string.split('&'):
|
||||
key, value = pair.split("=")
|
||||
query_dict[key] = value
|
||||
un_query_string = unquote(unquote(query_string)).split(',')
|
||||
|
||||
ob = db.session.query(Oboruds).filter_by(invNumber=un_query_string[0]).first()
|
||||
|
||||
ob.numberved = un_query_string[1]
|
||||
ob.kolichestvo = un_query_string[2]
|
||||
ob.balancenumber = un_query_string[3]
|
||||
ob.raspologenie = un_query_string[4]
|
||||
|
||||
ob = db.session.query(Oboruds).filter_by(invNumber=query_dict['inv']).first()
|
||||
print(ob)
|
||||
ob.raspologenie=query_dict['rasp']
|
||||
ob.numberved = query_dict['ved']
|
||||
db.session.commit()
|
||||
db.session.close()
|
||||
|
||||
return jsonify({'success': True}, 200, {'ContentType': 'application/json'})
|
||||
|
||||
|
||||
@app.route('/addoborudasu', methods=['GET', 'POST'])
|
||||
def addoborud():
|
||||
if request.method == 'POST':
|
||||
query_string = request.data.decode()
|
||||
|
||||
un_query_string = unquote(unquote(query_string)).split(',')
|
||||
db.session.add(
|
||||
Oboruds(invNumber=un_query_string[0],
|
||||
nazvanie=un_query_string[5],
|
||||
raspologenie=un_query_string[4],
|
||||
numberved=un_query_string[1],
|
||||
kolichestvo=un_query_string[2],
|
||||
balancenumber=un_query_string[3]
|
||||
)
|
||||
)
|
||||
|
||||
db.session.commit()
|
||||
|
||||
return jsonify({'success': True}, 200, {'ContentType': 'application/json'})
|
||||
|
||||
@@ -213,9 +247,9 @@ def addraspved():
|
||||
|
||||
def ranomraspr():
|
||||
with app.app_context():
|
||||
while len(db.session.query(Oboruds).filter(Oboruds.aud_id == None).all()) > 0:
|
||||
while len(db.session.query(Oboruds).filter(Oboruds.aud_id is None).all()) > 0:
|
||||
audid = random.choice(db.session.query(Auditory).all())
|
||||
oborud = random.choice(db.session.query(Oboruds).filter(Oboruds.aud_id == None).all())
|
||||
oborud = random.choice(db.session.query(Oboruds).filter(Oboruds.aud_id is None).all())
|
||||
oborud.aud_id = audid.id
|
||||
db.session.commit()
|
||||
|
||||
@@ -263,9 +297,48 @@ def createdb():
|
||||
db.session.commit()
|
||||
|
||||
|
||||
def write2excell():
|
||||
wb = xlrd.open_workbook("VedIsh.xls")
|
||||
sheet = wb.sheet_by_index(0)
|
||||
|
||||
newFile = copy(wb)
|
||||
newSheet = newFile.get_sheet(0)
|
||||
invNomerColum = 6
|
||||
|
||||
column_index = 1
|
||||
for row_idx in range(sheet.nrows):
|
||||
cell_value = sheet.cell(row_idx, column_index)
|
||||
|
||||
if cell_value:
|
||||
|
||||
tmp_inv_number = str(cell_value).split(':')[1]
|
||||
|
||||
try:
|
||||
a = tmp_inv_number[1:-1]
|
||||
|
||||
inv_number = int(tmp_inv_number[1:-1])
|
||||
|
||||
with app.app_context():
|
||||
auditory_obj = db.session.query(Auditory).join(Oboruds, Oboruds.aud_id == Auditory.id).filter(
|
||||
Oboruds.invNumber == inv_number).first()
|
||||
|
||||
print(auditory_obj.audnazvanie)
|
||||
|
||||
# cur.execute("SELECT aud.audnazvanie FROM oboruds AS ob JOIN auditory AS aud ON ob.aud_id = aud.id WHERE ob.invNumber = ?", (inv_number,))
|
||||
|
||||
|
||||
except:
|
||||
pass
|
||||
|
||||
"""
|
||||
else:
|
||||
#newSheet.write(row_idx, invNomerColum, "Нет инв номера")
|
||||
pass
|
||||
newFile.save("Ved31.xls")
|
||||
"""
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
#write2excell()
|
||||
|
||||
#ranomraspr()
|
||||
#createdb()
|
||||
app.run(debug=True, host='0.0.0.0', port='3800')
|
||||
|
||||
Binary file not shown.
Binary file not shown.
32
migrations/versions/10da3140ab2e_.py
Normal file
32
migrations/versions/10da3140ab2e_.py
Normal file
@@ -0,0 +1,32 @@
|
||||
"""empty message
|
||||
|
||||
Revision ID: 10da3140ab2e
|
||||
Revises: 4eacd6dcd461
|
||||
Create Date: 2024-04-05 01:25:48.931573
|
||||
|
||||
"""
|
||||
from alembic import op
|
||||
import sqlalchemy as sa
|
||||
|
||||
|
||||
# revision identifiers, used by Alembic.
|
||||
revision = '10da3140ab2e'
|
||||
down_revision = '4eacd6dcd461'
|
||||
branch_labels = None
|
||||
depends_on = None
|
||||
|
||||
|
||||
def upgrade():
|
||||
# ### commands auto generated by Alembic - please adjust! ###
|
||||
with op.batch_alter_table('oboruds', schema=None) as batch_op:
|
||||
batch_op.add_column(sa.Column('kolichestvo', sa.Integer(), nullable=True))
|
||||
|
||||
# ### end Alembic commands ###
|
||||
|
||||
|
||||
def downgrade():
|
||||
# ### commands auto generated by Alembic - please adjust! ###
|
||||
with op.batch_alter_table('oboruds', schema=None) as batch_op:
|
||||
batch_op.drop_column('kolichestvo')
|
||||
|
||||
# ### end Alembic commands ###
|
||||
54
migrations/versions/4eacd6dcd461_.py
Normal file
54
migrations/versions/4eacd6dcd461_.py
Normal file
@@ -0,0 +1,54 @@
|
||||
"""empty message
|
||||
|
||||
Revision ID: 4eacd6dcd461
|
||||
Revises: c208cbc25232
|
||||
Create Date: 2024-04-03 23:25:42.271936
|
||||
|
||||
"""
|
||||
from alembic import op
|
||||
import sqlalchemy as sa
|
||||
|
||||
|
||||
# revision identifiers, used by Alembic.
|
||||
revision = '4eacd6dcd461'
|
||||
down_revision = 'c208cbc25232'
|
||||
branch_labels = None
|
||||
depends_on = None
|
||||
|
||||
|
||||
def upgrade():
|
||||
# ### commands auto generated by Alembic - please adjust! ###
|
||||
with op.batch_alter_table('oboruds', schema=None) as batch_op:
|
||||
batch_op.add_column(sa.Column('numberved', sa.String(length=100), nullable=True))
|
||||
batch_op.add_column(sa.Column('numberppasu', sa.String(length=100), nullable=True))
|
||||
batch_op.add_column(sa.Column('balancenumber', sa.Integer(), nullable=True))
|
||||
batch_op.alter_column('nazvanie',
|
||||
existing_type=sa.TEXT(length=500),
|
||||
type_=sa.String(length=500),
|
||||
existing_nullable=True)
|
||||
batch_op.alter_column('raspologenie',
|
||||
existing_type=sa.TEXT(length=200),
|
||||
type_=sa.String(length=200),
|
||||
existing_nullable=True)
|
||||
batch_op.drop_column('buhnumberpp')
|
||||
|
||||
# ### end Alembic commands ###
|
||||
|
||||
|
||||
def downgrade():
|
||||
# ### commands auto generated by Alembic - please adjust! ###
|
||||
with op.batch_alter_table('oboruds', schema=None) as batch_op:
|
||||
batch_op.add_column(sa.Column('buhnumberpp', sa.VARCHAR(length=100), nullable=True))
|
||||
batch_op.alter_column('raspologenie',
|
||||
existing_type=sa.String(length=200),
|
||||
type_=sa.TEXT(length=200),
|
||||
existing_nullable=True)
|
||||
batch_op.alter_column('nazvanie',
|
||||
existing_type=sa.String(length=500),
|
||||
type_=sa.TEXT(length=500),
|
||||
existing_nullable=True)
|
||||
batch_op.drop_column('balancenumber')
|
||||
batch_op.drop_column('numberppasu')
|
||||
batch_op.drop_column('numberved')
|
||||
|
||||
# ### end Alembic commands ###
|
||||
34
migrations/versions/6fc3d1adb061_.py
Normal file
34
migrations/versions/6fc3d1adb061_.py
Normal file
@@ -0,0 +1,34 @@
|
||||
"""empty message
|
||||
|
||||
Revision ID: 6fc3d1adb061
|
||||
Revises: be7c94c549e5
|
||||
Create Date: 2024-04-02 16:32:23.180273
|
||||
|
||||
"""
|
||||
from alembic import op
|
||||
import sqlalchemy as sa
|
||||
|
||||
|
||||
# revision identifiers, used by Alembic.
|
||||
revision = '6fc3d1adb061'
|
||||
down_revision = 'be7c94c549e5'
|
||||
branch_labels = None
|
||||
depends_on = None
|
||||
|
||||
|
||||
def upgrade():
|
||||
# ### commands auto generated by Alembic - please adjust! ###
|
||||
with op.batch_alter_table('oboruds', schema=None) as batch_op:
|
||||
batch_op.add_column(sa.Column('buhnumberpp', sa.String(length=100), nullable=True))
|
||||
batch_op.add_column(sa.Column('kolichestvo', sa.Integer(), nullable=True))
|
||||
|
||||
# ### end Alembic commands ###
|
||||
|
||||
|
||||
def downgrade():
|
||||
# ### commands auto generated by Alembic - please adjust! ###
|
||||
with op.batch_alter_table('oboruds', schema=None) as batch_op:
|
||||
batch_op.drop_column('kolichestvo')
|
||||
batch_op.drop_column('buhnumberpp')
|
||||
|
||||
# ### end Alembic commands ###
|
||||
32
migrations/versions/885bdd7b5161_.py
Normal file
32
migrations/versions/885bdd7b5161_.py
Normal file
@@ -0,0 +1,32 @@
|
||||
"""empty message
|
||||
|
||||
Revision ID: 885bdd7b5161
|
||||
Revises: be7c94c549e5
|
||||
Create Date: 2024-04-02 23:03:59.401369
|
||||
|
||||
"""
|
||||
from alembic import op
|
||||
import sqlalchemy as sa
|
||||
|
||||
|
||||
# revision identifiers, used by Alembic.
|
||||
revision = '885bdd7b5161'
|
||||
down_revision = 'be7c94c549e5'
|
||||
branch_labels = None
|
||||
depends_on = None
|
||||
|
||||
|
||||
def upgrade():
|
||||
# ### commands auto generated by Alembic - please adjust! ###
|
||||
with op.batch_alter_table('oboruds', schema=None) as batch_op:
|
||||
batch_op.add_column(sa.Column('kolichestvo', sa.Integer(), nullable=True))
|
||||
|
||||
# ### end Alembic commands ###
|
||||
|
||||
|
||||
def downgrade():
|
||||
# ### commands auto generated by Alembic - please adjust! ###
|
||||
with op.batch_alter_table('oboruds', schema=None) as batch_op:
|
||||
batch_op.drop_column('kolichestvo')
|
||||
|
||||
# ### end Alembic commands ###
|
||||
54
migrations/versions/8e5efc4de919_.py
Normal file
54
migrations/versions/8e5efc4de919_.py
Normal file
@@ -0,0 +1,54 @@
|
||||
"""empty message
|
||||
|
||||
Revision ID: 8e5efc4de919
|
||||
Revises: c208cbc25232
|
||||
Create Date: 2024-04-03 22:36:46.208266
|
||||
|
||||
"""
|
||||
from alembic import op
|
||||
import sqlalchemy as sa
|
||||
|
||||
|
||||
# revision identifiers, used by Alembic.
|
||||
revision = '8e5efc4de919'
|
||||
down_revision = 'c208cbc25232'
|
||||
branch_labels = None
|
||||
depends_on = None
|
||||
|
||||
|
||||
def upgrade():
|
||||
# ### commands auto generated by Alembic - please adjust! ###
|
||||
with op.batch_alter_table('oboruds', schema=None) as batch_op:
|
||||
batch_op.add_column(sa.Column('numberved', sa.String(length=100), nullable=True))
|
||||
batch_op.add_column(sa.Column('numberppasu', sa.String(length=100), nullable=True))
|
||||
batch_op.add_column(sa.Column('balancenumber', sa.Integer(), nullable=True))
|
||||
batch_op.alter_column('nazvanie',
|
||||
existing_type=sa.TEXT(length=500),
|
||||
type_=sa.String(length=500),
|
||||
existing_nullable=True)
|
||||
batch_op.alter_column('raspologenie',
|
||||
existing_type=sa.TEXT(length=200),
|
||||
type_=sa.String(length=200),
|
||||
existing_nullable=True)
|
||||
batch_op.drop_column('buhnumberpp')
|
||||
|
||||
# ### end Alembic commands ###
|
||||
|
||||
|
||||
def downgrade():
|
||||
# ### commands auto generated by Alembic - please adjust! ###
|
||||
with op.batch_alter_table('oboruds', schema=None) as batch_op:
|
||||
batch_op.add_column(sa.Column('buhnumberpp', sa.TEXT(length=100), nullable=True))
|
||||
batch_op.alter_column('raspologenie',
|
||||
existing_type=sa.String(length=200),
|
||||
type_=sa.TEXT(length=200),
|
||||
existing_nullable=True)
|
||||
batch_op.alter_column('nazvanie',
|
||||
existing_type=sa.String(length=500),
|
||||
type_=sa.TEXT(length=500),
|
||||
existing_nullable=True)
|
||||
batch_op.drop_column('balancenumber')
|
||||
batch_op.drop_column('numberppasu')
|
||||
batch_op.drop_column('numberved')
|
||||
|
||||
# ### end Alembic commands ###
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
34
migrations/versions/be7c94c549e5_.py
Normal file
34
migrations/versions/be7c94c549e5_.py
Normal file
@@ -0,0 +1,34 @@
|
||||
"""empty message
|
||||
|
||||
Revision ID: be7c94c549e5
|
||||
Revises: 8e838956713f
|
||||
Create Date: 2024-04-01 15:09:52.082987
|
||||
|
||||
"""
|
||||
from alembic import op
|
||||
import sqlalchemy as sa
|
||||
|
||||
|
||||
# revision identifiers, used by Alembic.
|
||||
revision = 'be7c94c549e5'
|
||||
down_revision = '8e838956713f'
|
||||
branch_labels = None
|
||||
depends_on = None
|
||||
|
||||
|
||||
def upgrade():
|
||||
# ### commands auto generated by Alembic - please adjust! ###
|
||||
with op.batch_alter_table('oboruds', schema=None) as batch_op:
|
||||
batch_op.add_column(sa.Column('balancenumber', sa.String(length=30), nullable=True))
|
||||
batch_op.drop_column('typeBalanse')
|
||||
|
||||
# ### end Alembic commands ###
|
||||
|
||||
|
||||
def downgrade():
|
||||
# ### commands auto generated by Alembic - please adjust! ###
|
||||
with op.batch_alter_table('oboruds', schema=None) as batch_op:
|
||||
batch_op.add_column(sa.Column('typeBalanse', sa.VARCHAR(length=30), nullable=True))
|
||||
batch_op.drop_column('balancenumber')
|
||||
|
||||
# ### end Alembic commands ###
|
||||
24
migrations/versions/c208cbc25232_.py
Normal file
24
migrations/versions/c208cbc25232_.py
Normal file
@@ -0,0 +1,24 @@
|
||||
"""empty message
|
||||
|
||||
Revision ID: c208cbc25232
|
||||
Revises: 6fc3d1adb061, 885bdd7b5161
|
||||
Create Date: 2024-04-03 22:11:15.008480
|
||||
|
||||
"""
|
||||
from alembic import op
|
||||
import sqlalchemy as sa
|
||||
|
||||
|
||||
# revision identifiers, used by Alembic.
|
||||
revision = 'c208cbc25232'
|
||||
down_revision = ('6fc3d1adb061', '885bdd7b5161')
|
||||
branch_labels = None
|
||||
depends_on = None
|
||||
|
||||
|
||||
def upgrade():
|
||||
pass
|
||||
|
||||
|
||||
def downgrade():
|
||||
pass
|
||||
24
migrations/versions/d4a8e4c9e65a_.py
Normal file
24
migrations/versions/d4a8e4c9e65a_.py
Normal file
@@ -0,0 +1,24 @@
|
||||
"""empty message
|
||||
|
||||
Revision ID: d4a8e4c9e65a
|
||||
Revises: 10da3140ab2e, 8e5efc4de919
|
||||
Create Date: 2024-05-06 08:27:39.088982
|
||||
|
||||
"""
|
||||
from alembic import op
|
||||
import sqlalchemy as sa
|
||||
|
||||
|
||||
# revision identifiers, used by Alembic.
|
||||
revision = 'd4a8e4c9e65a'
|
||||
down_revision = ('10da3140ab2e', '8e5efc4de919')
|
||||
branch_labels = None
|
||||
depends_on = None
|
||||
|
||||
|
||||
def upgrade():
|
||||
pass
|
||||
|
||||
|
||||
def downgrade():
|
||||
pass
|
||||
@@ -16,17 +16,17 @@ class Oboruds(db.Model):
|
||||
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
|
||||
invNumber=db.Column(db.Integer)
|
||||
nazvanie=db.Column(db.String(500))
|
||||
typeBalanse = db.Column(db.String(30))
|
||||
raspologenie = db.Column(db.String(200))
|
||||
numberved = db.Column(db.String(100))
|
||||
numberppasu = db.Column(db.String(100))
|
||||
kolichestvo = db.Column(db.Integer)
|
||||
balancenumber = db.Column(db.Integer)
|
||||
aud_id = db.Column(db.Integer, db.ForeignKey(Auditory.id))
|
||||
|
||||
|
||||
|
||||
class Zametki(db.Model):
|
||||
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
|
||||
txtzam=db.Column(db.String(10000))
|
||||
created_date = db.Column(db.DateTime, default=datetime.datetime.utcnow)
|
||||
rmdt = db.Column(db.DateTime)
|
||||
|
||||
|
||||
|
||||
6
serve.py
Normal file
6
serve.py
Normal file
@@ -0,0 +1,6 @@
|
||||
from waitress import serve
|
||||
from app import app
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
serve(app, port='3800')
|
||||
@@ -54,7 +54,7 @@ button {
|
||||
|
||||
.card {
|
||||
|
||||
width: 200px;
|
||||
/*width: 200px; */
|
||||
margin: 10px;
|
||||
border-radius: 15px;
|
||||
border-color: #E07D54;
|
||||
@@ -67,7 +67,6 @@ h5 {
|
||||
}
|
||||
|
||||
|
||||
|
||||
.hidden-column {
|
||||
display: none;
|
||||
}
|
||||
@@ -78,8 +77,17 @@ nav{
|
||||
|
||||
}
|
||||
|
||||
.table{
|
||||
table {
|
||||
word-break: break-all;
|
||||
border-collapse: separate !important;
|
||||
}
|
||||
|
||||
.table td {
|
||||
font-size: 14px;
|
||||
padding: 0;
|
||||
max-width: 10rem;
|
||||
word-break: break-all;
|
||||
border-collapse: separate !important;
|
||||
}
|
||||
|
||||
.aud {
|
||||
@@ -91,8 +99,9 @@ nav{
|
||||
}
|
||||
|
||||
.rasp {
|
||||
max-width: 200px;
|
||||
width: 200px;
|
||||
word-break: break-word;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
#modal_matcenn {
|
||||
@@ -100,6 +109,17 @@ nav{
|
||||
margin-left: 20px;
|
||||
}
|
||||
|
||||
.datatable {
|
||||
background-color: whitesmoke;
|
||||
}
|
||||
|
||||
|
||||
.datatable th:nth-child(7) {
|
||||
width: 200px;
|
||||
|
||||
}
|
||||
|
||||
|
||||
@media print {
|
||||
|
||||
* {
|
||||
@@ -130,6 +150,7 @@ nav{
|
||||
width: 100%;
|
||||
|
||||
}
|
||||
|
||||
.no-print {
|
||||
display: none;
|
||||
}
|
||||
@@ -140,11 +161,13 @@ nav{
|
||||
font-size: 14pt;
|
||||
|
||||
}
|
||||
|
||||
table.rs-table-bordered > thead > tr > th {
|
||||
border: 1px solid #000000;
|
||||
padding: 2px;
|
||||
font-size: 14pt;
|
||||
}
|
||||
|
||||
table.rs-table-bordered > tbody > tr > td {
|
||||
border: 1px solid #000000;
|
||||
padding: 10px;
|
||||
@@ -153,6 +176,4 @@ nav{
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
282
static/js/allmatc.js
Normal file
282
static/js/allmatc.js
Normal file
@@ -0,0 +1,282 @@
|
||||
function clearTable() {
|
||||
var table = document.getElementById("alldatatable");
|
||||
var rowCount = table.rows.length;
|
||||
|
||||
// Iterate through each row and remove it
|
||||
for (var i = rowCount - 1; i > 0; i--) {
|
||||
table.deleteRow(i);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function getAllData() {
|
||||
|
||||
clearTable();
|
||||
|
||||
let tableBody = document.getElementById('alldatatable').getElementsByTagName("tbody")[0];
|
||||
i = 0;
|
||||
$.getJSON("/getall", function (data) {
|
||||
$.each(data, function (index, item) {
|
||||
let newRow = tableBody.insertRow(tableBody.rows.length);
|
||||
let cell1 = newRow.insertCell(0);
|
||||
let cell2 = newRow.insertCell(1);
|
||||
let cell3 = newRow.insertCell(2);
|
||||
let cell4 = newRow.insertCell(3);
|
||||
let cell5 = newRow.insertCell(4);
|
||||
let cell6 = newRow.insertCell(5);
|
||||
let cell7 = newRow.insertCell(6);
|
||||
let cell8 = newRow.insertCell(7);
|
||||
|
||||
i++;
|
||||
|
||||
cell1.innerText = i;
|
||||
cell2.innerText = item.numberved;
|
||||
cell3.innerText = item.invNumber;
|
||||
cell4.innerText = item.nazvanie;
|
||||
cell5.innerText = item.kolichestvo;
|
||||
cell6.innerText = item.balancenumber;
|
||||
cell7.innerText = item.aud;
|
||||
cell8.innerText = item.raspologenie;
|
||||
|
||||
|
||||
$(newRow).data('itemData', i);
|
||||
|
||||
|
||||
$(newRow).on("click", function () {
|
||||
|
||||
let vednumbertxt = newRow.cells[1].innerText;
|
||||
let invnomertxt = newRow.cells[2].innerText;
|
||||
let nazvanietxt = newRow.cells[3].innerText;
|
||||
let kolvotxt = newRow.cells[4].innerText;
|
||||
let schettxt = newRow.cells[5].innerText;
|
||||
let raspologtxt = newRow.cells[7].innerText;
|
||||
|
||||
|
||||
$('#getmodal').modal('show');
|
||||
|
||||
|
||||
let vedomost = document.getElementById('modal_vednumber')
|
||||
let invnom = document.getElementById('modal_invnom')
|
||||
let matcen = document.getElementById('modal_matcenn')
|
||||
let kolvo = document.getElementById('modal_kolvo')
|
||||
let balancenumber = document.getElementById('modal_balance')
|
||||
let rasp = document.getElementById('modal_rapolog')
|
||||
|
||||
invnom.innerText = invnomertxt
|
||||
matcen.innerText = nazvanietxt.substring(0, 20)
|
||||
|
||||
if (vednumbertxt.length > 0) {
|
||||
vedomost.value = vednumbertxt;
|
||||
}
|
||||
|
||||
if (kolvotxt.length > 0) {
|
||||
kolvo.value = kolvotxt;
|
||||
}
|
||||
|
||||
if (schettxt.length > 0) {
|
||||
balancenumber.value = schettxt;
|
||||
}
|
||||
|
||||
if (raspologtxt.length > 0) {
|
||||
rasp.value = raspologtxt;
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
$(document).ready(function () {
|
||||
|
||||
getAllData();
|
||||
|
||||
});
|
||||
|
||||
|
||||
$('#modalclose').click(function () {
|
||||
|
||||
|
||||
let vednumber = document.getElementById('modal_vednumber')
|
||||
let kolvo = document.getElementById('modal_kolvo')
|
||||
let balancenumber = document.getElementById('modal_balance')
|
||||
let matcen = document.getElementById('modal_matcenn')
|
||||
let rasp = document.getElementById('modal_rapolog')
|
||||
|
||||
|
||||
vednumber.value = '';
|
||||
kolvo.value = '';
|
||||
balancenumber.value = '';
|
||||
matcen.value = '';
|
||||
rasp.value = '';
|
||||
$('#getmodal').modal('hide')
|
||||
|
||||
|
||||
})
|
||||
|
||||
$('#modalsavetodb').click(function () {
|
||||
|
||||
let invnom = document.getElementById('modal_invnom')
|
||||
let vednumber = document.getElementById('modal_vednumber')
|
||||
let kolvo = document.getElementById('modal_kolvo')
|
||||
let balancenumber = document.getElementById('modal_balance')
|
||||
let matcen = document.getElementById('modal_matcenn')
|
||||
let rasp = document.getElementById('modal_rapolog')
|
||||
let nazv = document.getElementById('modal_nazvanie')
|
||||
|
||||
|
||||
let changeddata = new Array()
|
||||
|
||||
changeddata[0] = invnom.text;
|
||||
changeddata[1] = vednumber.value;
|
||||
changeddata[2] = kolvo.value;
|
||||
changeddata[3] = balancenumber.value;
|
||||
changeddata[4] = rasp.value;
|
||||
|
||||
|
||||
let sendData = changeddata.join(',')
|
||||
console.log(sendData)
|
||||
|
||||
$.ajax({
|
||||
|
||||
url: "/addraspved",
|
||||
type: "POST",
|
||||
contentType: "application/json;charset=utf-8",
|
||||
dataType: "json",
|
||||
data: sendData,
|
||||
|
||||
success: function () {
|
||||
$('#getmodal').modal('hide')
|
||||
|
||||
vednumber.value = '';
|
||||
kolvo.value = '';
|
||||
balancenumber.value = '';
|
||||
matcen.value = '';
|
||||
rasp.value = '';
|
||||
changeddata = [];
|
||||
window.location.reload();
|
||||
},
|
||||
})
|
||||
|
||||
|
||||
})
|
||||
|
||||
|
||||
$('#addoborud').click(function () {
|
||||
|
||||
$('#addmodal').modal('show');
|
||||
|
||||
})
|
||||
|
||||
$('#modal2savetodb').click(function () {
|
||||
|
||||
let invnomer = document.getElementById('modal2_invnom')
|
||||
let vednumber = document.getElementById('modal2_vednumber')
|
||||
let kolvo = document.getElementById('modal2_kolvo')
|
||||
let balancenumber = document.getElementById('modal2_balance')
|
||||
let matcen = document.getElementById('modal2_matcenn')
|
||||
let rasp = document.getElementById('modal2_rapolog')
|
||||
let nazv = document.getElementById('modal2_nazvanie')
|
||||
|
||||
|
||||
let changeddata = new Array()
|
||||
|
||||
changeddata[0] = invnomer.value;
|
||||
changeddata[1] = vednumber.value;
|
||||
changeddata[2] = kolvo.value;
|
||||
changeddata[3] = balancenumber.value;
|
||||
changeddata[4] = rasp.value;
|
||||
changeddata[5] = nazv.value;
|
||||
|
||||
|
||||
let sendData = changeddata.join(',')
|
||||
console.log(sendData)
|
||||
|
||||
$.ajax({
|
||||
|
||||
url: "/addoborudasu",
|
||||
type: "POST",
|
||||
contentType: "application/json;charset=utf-8",
|
||||
dataType: "json",
|
||||
data: sendData,
|
||||
|
||||
success: function () {
|
||||
vednumber.value = '';
|
||||
invnomer.value = '';
|
||||
nazvanie.value = '';
|
||||
kolvo.value = '';
|
||||
balancenumber.value = '';
|
||||
matcen.value = '';
|
||||
rasp.value = '';
|
||||
|
||||
$('#addmodal').modal('hide')
|
||||
window.location.reload()
|
||||
|
||||
},
|
||||
|
||||
})
|
||||
|
||||
|
||||
})
|
||||
|
||||
$('#modal2close').click(function () {
|
||||
|
||||
|
||||
let vednumber = document.getElementById('modal2_vednumber')
|
||||
let invnomer = document.getElementById('modal2_invnom')
|
||||
let nazvanie = document.getElementById('modal2_nazvanie')
|
||||
let kolvo = document.getElementById('modal2_kolvo')
|
||||
let balancenumber = document.getElementById('modal2_balance')
|
||||
let matcen = document.getElementById('modal2_matcenn')
|
||||
let rasp = document.getElementById('modal2_rapolog')
|
||||
|
||||
|
||||
vednumber.value = '';
|
||||
invnomer.value = '';
|
||||
nazvanie.value = '';
|
||||
kolvo.value = '';
|
||||
balancenumber.value = '';
|
||||
matcen.value = '';
|
||||
rasp.value = '';
|
||||
|
||||
$('#addmodal').modal('hide')
|
||||
|
||||
|
||||
})
|
||||
|
||||
$('#modal2').on('hidden.bs.modal', function () {
|
||||
location.reload();
|
||||
})
|
||||
|
||||
$(document).ready(function () {
|
||||
// Слушаем событие клика по заголовкам таблицы
|
||||
$('#alldatatable thead th').on('click', function () {
|
||||
var columnIndex = $(this).index(); // Индекс колонки
|
||||
var sortColumn = $(this).text().toLowerCase(); // Текст заголовка колонки
|
||||
|
||||
// Сортируем таблицу по выбранной колонке
|
||||
$('#alldatatable tbody tr').sort(function (a, b) {
|
||||
var valA;
|
||||
var valB;
|
||||
|
||||
if (isNaN(parseFloat($(a).find('td:eq(' + columnIndex + ')').text()))) {
|
||||
// если это текстовая колонка, то сортируем по алфавиту
|
||||
valA = $(a).find('td:eq(' + columnIndex + ')').text().toLowerCase();
|
||||
valB = $(b).find('td:eq(' + columnIndex + ')').text().toLowerCase();
|
||||
} else {
|
||||
// если это числовая колонка, то сортируем по числовому значению
|
||||
valA = parseFloat($(a).find('td:eq(' + columnIndex + ')').text());
|
||||
valB = parseFloat($(b).find('td:eq(' + columnIndex + ')').text());
|
||||
}
|
||||
|
||||
if (valA < valB) return -1;
|
||||
if (valA > valB) return 1;
|
||||
return 0;
|
||||
}).appendTo('#alldatatable tbody');
|
||||
|
||||
// Обновляем классы для активной колонки
|
||||
$('#alldatatable thead th').removeClass('active');
|
||||
$(this).addClass('active');
|
||||
});
|
||||
});
|
||||
35
static/js/allmatcen.js
Normal file
35
static/js/allmatcen.js
Normal file
@@ -0,0 +1,35 @@
|
||||
function getData(){
|
||||
|
||||
const audid = document.getElementById('auditory')
|
||||
$.ajax({
|
||||
|
||||
url: "/getall",
|
||||
type: "get",
|
||||
contentType: 'application/json',
|
||||
dataType: 'json',
|
||||
|
||||
success: function(response){
|
||||
|
||||
var data = response;
|
||||
const table = document.getElementById('datatable')
|
||||
table.innerHTML = ''
|
||||
var headTable = '<tr> <td >Номер в Инв. вед</td> <td id="invnomer">Инв. номер</td><td>Название</td><td class="no-print aud">Аудитория</td> <td >Расположение</td> <td id="proverka"class="hidden-column"> Проверено</td> </tr>'
|
||||
table.innerHTML += headTable
|
||||
var tr =""
|
||||
|
||||
|
||||
data.forEach(element => {
|
||||
tr += '<tr onclick="tableclick(this)">'
|
||||
tr += '<td>' + element.num_ved + '</td>'
|
||||
tr += '<td clas="inv">' + element.inv_number + '</td>'
|
||||
tr += '<td>' + element.oboruds_id + '</td>'
|
||||
tr += '<td class="no-print">' + element.auditory_name + '</td>'
|
||||
tr += '<td class="rasp">' +element.raspolog + '</td>'
|
||||
tr += '<td>' + '\n' + '</td>'
|
||||
|
||||
tr += '</tr>'
|
||||
});
|
||||
table.innerHTML += tr
|
||||
}
|
||||
})
|
||||
}
|
||||
@@ -13,12 +13,12 @@ function getData(){
|
||||
},
|
||||
|
||||
success: function(response){
|
||||
console.log(response)
|
||||
|
||||
var data = response;
|
||||
const table = document.getElementById('datatable')
|
||||
table.innerHTML = ''
|
||||
|
||||
var headTable = '<tr> <td >Номер в Инв. вед</td> <td id="invnomer">Инв. номер</td><td>Название</td><td class="no-print aud">Аудитория</td> <td >Расположение</td> <td id="proverka"class="hidden-column"> Проверено</td> </tr>'
|
||||
table.innerHTML += headTable
|
||||
|
||||
var tr =""
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@ function getData(){
|
||||
|
||||
tr += '</tr>'
|
||||
});
|
||||
table.innerHTML += tr
|
||||
table.innerHTML = headTable + tr
|
||||
}
|
||||
})
|
||||
}
|
||||
@@ -42,64 +42,84 @@ $("#searchbutton").click(function(){
|
||||
getData();
|
||||
})
|
||||
|
||||
function tableclick(x){
|
||||
let data = document.getElementById(x.rowIndex)
|
||||
$('#modalsavetodb').click(function(){
|
||||
|
||||
let datas = x.innerText.split('\t')
|
||||
|
||||
|
||||
|
||||
|
||||
$('#getmodal').modal('show')
|
||||
|
||||
let rasp = document.getElementById('rapolog')
|
||||
let vedomost = document.getElementById('vednumber')
|
||||
let rasp = document.getElementById('modal_rapolog')
|
||||
let vedomost = document.getElementById('modal_vednumber')
|
||||
let invnom = document.getElementById('modal_invnom')
|
||||
let matcen = document.getElementById('modal_matcenn')
|
||||
|
||||
invnom.innerText=datas[1]+"\t"
|
||||
matcen.innerText=datas[2].substring(0,15)
|
||||
let changeddata = new Array()
|
||||
|
||||
changeddata[0] = invnom.text
|
||||
changeddata[1] = vedomost.value
|
||||
changeddata[2] = rasp.value
|
||||
|
||||
if (datas[4].length>0){
|
||||
rasp.value=datas[4];
|
||||
}
|
||||
|
||||
if (datas[0].length>0){
|
||||
vedomost.value=datas[0]
|
||||
}
|
||||
|
||||
$('#modalclose').click(function(){
|
||||
|
||||
$('#getmodal').modal('hide');
|
||||
|
||||
} )
|
||||
|
||||
$('#modalsavetodb').click(function(){
|
||||
|
||||
let sendData = changeddata.join(',')
|
||||
|
||||
changeddata = []
|
||||
$.ajax({
|
||||
|
||||
url: "/addraspved",
|
||||
type: "POST",
|
||||
contentType: "application/json;charset=utf-8",
|
||||
dataType: "json",
|
||||
data: {
|
||||
rasp: rasp.value,
|
||||
ved: vedomost.value,
|
||||
inv: datas[1]
|
||||
},
|
||||
data: sendData,
|
||||
|
||||
})
|
||||
rasp.value = '';
|
||||
vedomost.value= '';
|
||||
|
||||
datas = [];
|
||||
|
||||
$('#getmodal').modal('hide');
|
||||
success: function(){
|
||||
/*
|
||||
rasp='',
|
||||
vedomost = '',
|
||||
invnom = '',
|
||||
matcen = '',
|
||||
|
||||
changeddata = []
|
||||
*/
|
||||
$('#getmodal').modal('hide').data( 'bs.modal', null );
|
||||
getData();
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
})
|
||||
|
||||
|
||||
function tableclick(tableRow){
|
||||
|
||||
let nomved = tableRow.childNodes[0].innerHTML;
|
||||
let invnomer = tableRow.childNodes[1].innerHTML;
|
||||
let nazvanie = tableRow.childNodes[2].innerHTML;
|
||||
let raspolog = tableRow.childNodes[4].innerHTML;
|
||||
|
||||
$('#getmodal').modal('show')
|
||||
|
||||
let rasp = document.getElementById('modal_rapolog')
|
||||
let vedomost = document.getElementById('modal_vednumber')
|
||||
let invnom = document.getElementById('modal_invnom')
|
||||
let matcen = document.getElementById('modal_matcenn')
|
||||
|
||||
invnom.innerText = invnomer
|
||||
matcen.innerText = nazvanie.substring(0,15)
|
||||
|
||||
if (nomved.length >0){
|
||||
|
||||
vedomost.value = nomved
|
||||
}
|
||||
|
||||
if(raspolog.length>0){
|
||||
rasp.value = raspolog
|
||||
}
|
||||
|
||||
$("#mimodal").on('hidden.bs.modal', function () {
|
||||
$(this).data('bs.modal', null);
|
||||
});
|
||||
|
||||
|
||||
$('#modalclose').click(function(){
|
||||
|
||||
$('#getmodal').modal('hide').data( 'bs.modal', null );
|
||||
|
||||
} )
|
||||
|
||||
|
||||
}
|
||||
47
static/js/tmp.js
Normal file
47
static/js/tmp.js
Normal file
@@ -0,0 +1,47 @@
|
||||
function tableclick(x){
|
||||
// let data = document.getElementById(x.rowIndex)
|
||||
|
||||
let datas = x.innerText.split('\t')
|
||||
|
||||
|
||||
|
||||
invnom.innerText=datas[1]+"\t"
|
||||
matcen.innerText=datas[2]
|
||||
|
||||
|
||||
if (datas[4].length>0){
|
||||
rasp.value=datas[4];
|
||||
}
|
||||
|
||||
if (datas[0].length>0){
|
||||
vedomost.value=datas[0]
|
||||
}
|
||||
|
||||
$('#modalclose').click(function(){
|
||||
|
||||
$('#getmodal').modal('hide');
|
||||
|
||||
} )
|
||||
|
||||
$('#modalsavetodb').click(function(){
|
||||
$.ajax({
|
||||
|
||||
url: "/addraspved",
|
||||
type: "POST",
|
||||
contentType: "application/json;charset=utf-8",
|
||||
dataType: "json",
|
||||
data: {
|
||||
rasp: rasp.value,
|
||||
ved: vedomost.value,
|
||||
inv: invnomer
|
||||
},
|
||||
success:function() {
|
||||
rasp.value = '';
|
||||
vedomost.value= '';
|
||||
data=[];
|
||||
rasp
|
||||
$('#getmodal').modal('hide');
|
||||
getData();
|
||||
}
|
||||
})
|
||||
})}
|
||||
@@ -3,38 +3,145 @@
|
||||
|
||||
{% block content %}
|
||||
|
||||
<div class="row">
|
||||
<div class="card col-md-10 col-10">
|
||||
<div class="card-body">
|
||||
<!-- Modal -->
|
||||
<div class="modal fade" id="getmodal" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenterTitle" aria-hidden="true">
|
||||
<div class="modal-dialog modal-dialog-centered" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-body" id="textarea">
|
||||
|
||||
<form>
|
||||
<h3 class=" no-print card-title"> Все мат. ценности </h3>
|
||||
<button id="printallbutton"> Печать </button>
|
||||
<table class="table pagebreak" col-md-10>
|
||||
<div class="row">
|
||||
<a id="modal_invnom"> </a><a id="modal_matcenn"></a>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
№ из ведомости
|
||||
<input type="text" class="form-control" id ='modal_vednumber' placeholder="Номер из ведомости">
|
||||
</div>
|
||||
|
||||
|
||||
<div class="row">
|
||||
Количество
|
||||
<input type="text" class="form-control" id ='modal_kolvo' placeholder="Количество">
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
Балансовый счёт
|
||||
<input type="text" class="form-control" id ='modal_balance' placeholder="Балансовый счёт">
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
Расположение
|
||||
<input type="text" class="form-control" id ='modal_rapolog' placeholder="Введите расположение">
|
||||
</div>
|
||||
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-dismiss="modal" id="modalclose">Закрыть</button>
|
||||
<button type="button" class="btn btn-primary" id="modalsavetodb" >Сохранить изменения</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<!-- Modal2 -->
|
||||
<div class="modal fade" id="addmodal" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenterTitle" aria-hidden="true">
|
||||
<div class="modal-dialog modal-dialog-centered" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-body" id="textarea">
|
||||
|
||||
<div class="row">
|
||||
<a id="modal_invnom"> </a><a id="modal2_matcenn"></a>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
№ из ведомости
|
||||
<input type="text" class="form-control" id ='modal2_vednumber' placeholder="Номер из ведомости">
|
||||
|
||||
|
||||
|
||||
<div class="row">
|
||||
Инвентарный номер
|
||||
<input type="text" class="form-control" id ='modal2_invnom' placeholder="Инвентарный номер">
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
Название
|
||||
<input type="text" class="form-control" id ='modal2_nazvanie' placeholder="Название">
|
||||
</div>
|
||||
|
||||
|
||||
<div class="row">
|
||||
Количество
|
||||
<input type="text" class="form-control" id ='modal2_kolvo' placeholder="Количество">
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
Балансовый счёт
|
||||
<input type="text" class="form-control" id ='modal2_balance' placeholder="Балансовый счёт">
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
Расположение
|
||||
<input type="text" class="form-control" id ='modal2_rapolog' placeholder="Введите расположение">
|
||||
</div>
|
||||
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-dismiss="modal" id="modal2close">Закрыть</button>
|
||||
<button type="button" class="btn btn-primary" id="modal2savetodb" >Сохранить изменения</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="row">
|
||||
|
||||
<h3 id ='123' class=" no-print"> Все мат. ценности </h3>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div class="row col-12">
|
||||
<button class="button" id="printallbutton"> Печать </button>
|
||||
</div>
|
||||
|
||||
<div class="row col-12">
|
||||
<button class="button" id="addoborud"> Добавить </button>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="card col-md-11 table-responsive">
|
||||
<table id="alldatatable" class="alldatable table pagebreak" >
|
||||
<thead>
|
||||
<tr>
|
||||
<th scope="col">№ <br>п/п <br>АСУ</th>
|
||||
<th scope="col">№ п/п <br>вед</th>
|
||||
<th scope="col">Инв. номер</th>
|
||||
<th scope="col">Название</th>
|
||||
<th scope="col">Аудитория</th>
|
||||
<th scope="col">Кол-во</th>
|
||||
<th scope="col">Счёт</th>
|
||||
<th scope="col">Ауд - я</th>
|
||||
<th scope="col">Расположение</th>
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
{% for item in res: %}
|
||||
<tr>
|
||||
<td> <input type="hidden" name="invnomer" value="{{ item[0] }}"> {{ item[0] }} </td>
|
||||
<td> {{ item[1] }} </td>
|
||||
|
||||
|
||||
<td>
|
||||
{{ item[2] }}
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
|
||||
</table>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<script src="{{url_for('static', filename='js/allmatc.js') }}"></script>
|
||||
|
||||
{% endblock %}
|
||||
@@ -10,3 +10,4 @@
|
||||
<script src="{{url_for('static', filename='js/searchonaud.js') }}"></script>
|
||||
<script src="{{url_for('static', filename='js/print.js') }}"></script>
|
||||
<script src="{{url_for('static', filename='js/modal.js') }}"></script>
|
||||
<script src="{{url_for('static', filename='js/allmatc.js') }}"></script>
|
||||
|
||||
62
templates/login.html
Normal file
62
templates/login.html
Normal file
@@ -0,0 +1,62 @@
|
||||
{% extends 'base.html' %}
|
||||
|
||||
|
||||
{% block content %}
|
||||
|
||||
|
||||
<div class="row">
|
||||
<div class="card col-4" >
|
||||
<div class="card-body">
|
||||
|
||||
|
||||
<form class="form-horizontal">
|
||||
<fieldset>
|
||||
|
||||
<!-- Form Name -->
|
||||
<legend>Авторизация</legend>
|
||||
|
||||
<!-- Text input-->
|
||||
<div class="form-group">
|
||||
<label control-label" for="logininput">Логин</label>
|
||||
<div>
|
||||
<input id="logininput" name="logininput" type="text" placeholder="Введите логин" class="form-control input-md">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Password input-->
|
||||
<div class="form-group">
|
||||
<label class="control-label" for="passwordinput">Пароль</label>
|
||||
<input id="passwordinput" name="passwordinput" type="password" placeholder="Введите пароль" class="form-control input-md">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<button id="btn_login" name="btn_login" class="btn btn-primary">Войти</button>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</fieldset>
|
||||
</form>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
{% endblock %}
|
||||
|
||||
@@ -4,31 +4,45 @@
|
||||
|
||||
|
||||
<!-- Modal -->
|
||||
<div class="modal fade" id="getmodal" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenterTitle" aria-hidden="true">
|
||||
<div class="modal fade" id="getmodal" tabindex="-1" role="dialog" aria-labelledby="exampleModalCenterTitle"
|
||||
aria-hidden="true">
|
||||
<div class="modal-dialog modal-dialog-centered" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-body" id="textarea">
|
||||
<div class="row">
|
||||
<a id="modal_invnom"> 111 </a> <a id="modal_matcenn">2222</a>
|
||||
</div>
|
||||
|
||||
<input type="text" class="form-control" id='vednumber' placeholder="Номер из веломости">
|
||||
<input type="text" class="form-control" id='rapolog' placeholder="Введите расположение">
|
||||
|
||||
|
||||
<div class="row">
|
||||
<a id="modal_invnom"> </a><a id="modal_matcenn"></a>
|
||||
|
||||
</div>
|
||||
|
||||
<form method="POST" action="/addraspved">
|
||||
<div class="row">
|
||||
№ из ведомости
|
||||
<input type="text" class="form-control" id ='vednumber' placeholder="Номер из ведомости">
|
||||
<input type="text" class="form-control" name="modal_vednumber" id='modal_vednumber'
|
||||
placeholder="Номер из ведомости">
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
Расположение
|
||||
<input type="text" class="form-control" id ='rapolog' placeholder="Введите расположение">
|
||||
<input type="text" class="form-control" name="modal_rapolog" id='modal_rapolog'
|
||||
placeholder="Введите расположение">
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</form>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-dismiss="modal" id="modalclose">Закрыть</button>
|
||||
<button type="button" class="btn btn-secondary" data-dismiss="modal" id="modalclose">Закрыть
|
||||
</button>
|
||||
<button type="button" class="btn btn-primary" id="modalsavetodb">Сохранить изменения</button>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -66,7 +80,7 @@
|
||||
<th>Расположение</th>
|
||||
|
||||
|
||||
{% for item in res: %}
|
||||
{% for item in res %}
|
||||
|
||||
<td><input type="hidden" name="invnomer" value="{{ item[0] }}"> {{ item[0] }} </td>
|
||||
<td> {{ item[1] }} </td>
|
||||
|
||||
Reference in New Issue
Block a user