sunucu.py 114 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286
  1. #!/usr/bin/python2
  2. # -*- coding: utf-8 -*-
  3. import os,time
  4. import copy
  5. import json
  6. from flask import Flask, url_for
  7. from flask import g
  8. from flask import render_template #render yapmak icin
  9. from flask import request
  10. from flask import Flask, current_app
  11. import werkzeug
  12. from werkzeug.datastructures import ImmutableMultiDict
  13. from flask import Flask,jsonify, request, Response, session,g,redirect, url_for,abort, render_template, flash
  14. from htmlrapor import *
  15. from mysqlmak import *
  16. from fatura import *
  17. from cari import *
  18. from kullanici import *
  19. from genelfonks import *
  20. from termalsab import *
  21. from yetkilendirme import *
  22. from tblsthar import *
  23. from uyesatislari import *
  24. import sqlite3 as lite
  25. import dizayn
  26. import codecs
  27. import random
  28. import md5
  29. import ctypes
  30. import smtplib
  31. from email.mime.multipart import MIMEMultipart
  32. from email.mime.text import MIMEText
  33. import logging
  34. from logging.handlers import RotatingFileHandler
  35. #from sayidan_yaziya import cevir
  36. #from uyesatislari import *
  37. from iniparse import INIConfig
  38. from iniparse import ConfigParser
  39. import subprocess
  40. import math
  41. from logcu import *
  42. import xlrd
  43. import datetime
  44. import socket
  45. import platform
  46. # configuration
  47. platform=platform.system()
  48. DEBUG = True
  49. SECRET_KEY = 'D3xvb2Gl'
  50. USERNAME = 'giomkull'
  51. PASSWORD = 'giomsifre***'
  52. KULL_ID=-1
  53. LOGGED='hayir'
  54. ADMINMI='hayir'
  55. ICERIK=''
  56. YENISQL='yeni.sql'
  57. DZNDOSYA='serbest.xsql'
  58. INIDOSYA=''
  59. AYARDIZIN='.\sql\\'
  60. UPLOAD_FOLDER = '.\YUKLEMELER\\'
  61. EXNET_FOLDER = '.\exnet\DATA\\'
  62. STKOD=''
  63. KDVDURUM=None
  64. STOKLIST="bos"
  65. STOK=[]
  66. kriter="NULL"
  67. arama=''
  68. STHARSIRA='yeni'
  69. fisno=""
  70. ftip=""
  71. merkez='28'
  72. mak=mysqlmak()
  73. arge=Arge()
  74. yetki=Yetki()
  75. kull=Kullanici()
  76. kull.no="ws"
  77. kull.isim="sss"
  78. l=Logcu()
  79. kullanici=ConfigParser()
  80. kullanici.read('./ayarlar/kullanici.ini')
  81. DATABASE = mak.ayar_al('999','stoklist_db')
  82. etoku_dizin=mak.ayar_al('999','etoku_dizin')
  83. db_dizin=mak.ayar_al('999','db_dizin')
  84. etodizin="etablo"
  85. etoku_komut="etoku\\etYstk.py "
  86. stkdb_yedekal_komut='copy stoklist.db.yedek stoklist.db'
  87. stkdb_yedekle_komut='copy stoklist.db stoklist.db.yedek'
  88. lazeryaz_komut="lazer_yazici.py f "
  89. lazeryaz_komut2="lazer_yazici.py s "
  90. etkyazdir_komut="etk_lzyazdir.bat"
  91. tasima_komutu="move "
  92. kopya_komutu="copy "
  93. ayrac="\\"
  94. if platform=='Linux':
  95. etoku_dizin="etoku/DATA/"
  96. db_dizin="stk_yedek"
  97. etoku_komut="python etoku/etYstk.py "
  98. stkdb_yedekal_komut='cp stoklist.db.yedek stoklist.db'
  99. stkdb_yedekle_komut='cp stoklist.db stoklist.db.yedek'
  100. lazeryaz_komut="python lazer_yazici.py f "
  101. lazeryaz_komut2="python lazer_yazici.py s "
  102. etkyazdir_komut="etk_lzyazdir.sh"
  103. tasima_komutu="mv "
  104. kopya_komutu="cp "
  105. ayrac="/"
  106. app = Flask(__name__)
  107. app.config.from_object(__name__)
  108. #@app.before_request
  109. #def log_request():
  110. #print mak.girdi_isim(session['KULL_ID'])
  111. #print request.headers
  112. #print request.remote_addr
  113. # print "xxxx",request.headers.getlist("Connection")
  114. @app.errorhandler(404)
  115. def notfound_error(exception):
  116. app.logger.info(exception)
  117. #return "404"
  118. return "gecersiz bir sayfa girdiniz."
  119. #return render_template('404.html')
  120. @app.errorhandler(500)
  121. def internal_error(exception):
  122. app.logger.info(exception)
  123. return "500"
  124. @app.route('/')
  125. def anasayfa():
  126. if "KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) :
  127. ip="tanimsiz"
  128. if not request.headers.getlist("X-Forwarded-For"):
  129. ip = request.remote_addr
  130. else:
  131. ip = request.headers.getlist("X-Forwarded-For")[0]
  132. bilgiler=""
  133. g_isim=mak.girdi_isim(session['KULL_ID'])
  134. bilgiler+="<p>"+"erişim ip: ".decode("utf-8")+ip
  135. os.system("uname -a > bilgiler")
  136. bilgiler+="<p>"+"erişim kullanıcısı: ".decode("utf-8")+g_isim
  137. bilgiler+="<p>"+"sunucu makine: "
  138. bilgiler+=open("bilgiler","r").read()
  139. bilgiler+="<p>"+"mysql sunucu ip: "
  140. bilgiler+=MysqlBaglanti.host #open("mysql_ayar.py","r").read()
  141. return render_template('anasayfa.html')+bilgiler
  142. return redirect(url_for('giris'))
  143. @app.route('/giris', methods=['GET', 'POST'])
  144. def giris():
  145. onay='yok'
  146. ip="tanimsiz"
  147. session["KULL_ID"]=-1
  148. if not request.headers.getlist("X-Forwarded-For"):
  149. ip = request.remote_addr
  150. else:
  151. ip = request.headers.getlist("X-Forwarded-For")[0]
  152. error = None
  153. #yetkili ipler
  154. if(ip in ["192.168.1.299"]):session["ID"]=99
  155. if request.method == 'POST':
  156. open("./log/giris.log","a").write(str(datetime.datetime.now())[0:19]+" - "+ip+" - "+request.form['username']+"/"+request.form['password']+"\n")
  157. isim=request.form['username']
  158. sifre=request.form['password']
  159. id=mak.giris_kontrol(isim,sifre)
  160. if(id):
  161. if mak.girdi_kontrol(id) is None:
  162. mak.giris_ekle(id)
  163. session['KULL_ID']=id
  164. return render_template('anasayfa.html')+"KULLANICI IP: "+ip
  165. return render_template('giris.html', error=error)+"KULLANICI IP: "+ip
  166. @app.route('/exit')
  167. def exit():
  168. session['LOGGED']='hayir'
  169. mak.giris_sil(session['KULL_ID'])
  170. session['KULL_ID']=-1
  171. return render_template('giris.html')
  172. @app.route('/temp')
  173. def sayfa1():
  174. return '''<html>
  175. <h2>DENEME SAYFASI</h2>
  176. <a href="../">ANA SAYFA</a> </html>'''
  177. @app.route('/s2')
  178. def s2():
  179. if "KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']):
  180. app.logger.info(mak.girdi_isim(session['KULL_ID']))
  181. return '''<html><h2>DENEME SAYFASI</h2><a href="../">ANA SAYFA</a> </html>'''
  182. else:
  183. return render_template('giris.html')
  184. @app.route('/dys',methods=['GET', 'POST'])
  185. def dys():
  186. if request.method == 'POST':
  187. file = request.files['file']
  188. if file:
  189. mimetype = file.content_type
  190. filename = werkzeug.secure_filename(file.filename)
  191. file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))
  192. return "dosya yuklendi"
  193. return render_template('dys.html')
  194. @app.route('/add_numbers')
  195. def add_numbers():
  196. a = request.args.get('a', 0, type=int)
  197. b = request.args.get('b', 0, type=int)
  198. print a,b
  199. return jsonify(result=a + b)
  200. @app.route('/hareket')
  201. def hareket():
  202. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  203. return render_template('hareket.html')
  204. return render_template('giris.html',error='isim ve sifre giriniz!!!')
  205. @app.route('/otokod',methods=['GET', 'POST'])
  206. def otokod():
  207. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  208. if request.method == 'POST':
  209. if request.form["komut"] == "KULANICI SERVIS YENILEME" :
  210. os.system(".\otokod\KULLANICI.bat")
  211. return "KOMUT YERINE GETIRILDI.KONTROL EDINIZ!!!"+"<br><a href=./otokod>GERI DON</a>"
  212. return render_template('otokod.html')
  213. return render_template('giris.html',error='isim ve sifre giriniz!!!')
  214. @app.route('/exnet',methods=['GET', 'POST'])
  215. def exnet():
  216. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  217. if request.method == 'POST':
  218. file = request.files['file']
  219. if file:
  220. mimetype = file.content_type
  221. filename = werkzeug.secure_filename(file.filename)
  222. file_konum=os.path.join(app.config['EXNET_FOLDER'], filename)
  223. file.save(file_konum)
  224. file2 = request.files['file2']
  225. if file2:
  226. mimetype = file2.content_type
  227. filename2 = werkzeug.secure_filename(file2.filename)
  228. file_konum2=os.path.join(app.config['EXNET_FOLDER'], filename2)
  229. file2.save(file_konum2)
  230. os.system(".\exnet\exnet.py "+file_konum2)
  231. #subprocess.call([".\exnet\exnet.py "+file_konum2,"exnet.log"])
  232. return "EXCEL VERI AKTARIMI YAPILDI!!!"+"<br><a href=./exnet>GERI DON</a>"
  233. else:
  234. return "ini ayar dosya secin"
  235. else:
  236. return "excel veri dosya secin"
  237. return render_template('exnet.html')
  238. return render_template('giris.html',error='isim ve sifre giriniz!!!')
  239. @app.route('/karsilama/')
  240. @app.route('/karsilama/<name>')
  241. def karsilama(name=None):
  242. return render_template('karsilama.html', name=name)
  243. @app.route('/yetkili')
  244. def yetkili():
  245. if(session['ADMINMI'] is "EVET" ):
  246. return '''<html>
  247. <h2>admin bolgesi</h2>
  248. <a href="../">ana sayfa</a> </html>'''
  249. return redirect(url_for('login'))
  250. @app.route('/login', methods=['GET', 'POST'])
  251. def login():
  252. ip="tanimsiz"
  253. if not request.headers.getlist("X-Forwarded-For"):
  254. ip = request.remote_addr
  255. else:
  256. ip = request.headers.getlist("X-Forwarded-For")[0]
  257. error = None
  258. #yetkili ipler
  259. if(ip in ["192.168.1.299"]):session["LOGGED"]="EVET"
  260. if request.method == 'POST':
  261. open("./log/giris.log","a").write(str(datetime.datetime.now())[0:19]+" - "+ip+" - "+request.form['username']+"/"+request.form['password']+"\n")
  262. if request.form['username'] != app.config['USERNAME']:
  263. error = 'kayit disi isim'
  264. elif request.form['password'] != app.config['PASSWORD']:
  265. error = 'kayit disi sifre'
  266. else:
  267. session["LOGGED"]="EVET"
  268. #return karsilama(session['USERNAME'])
  269. return render_template('anasayfa.html')+"KULLANICI IP: "+ip
  270. return render_template('giris.html', error=error)+"KULLANICI IP: "+ip
  271. @app.route('/editor', methods=['GET', 'POST'])
  272. def editor():
  273. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  274. if not DZNDOSYA in session:
  275. session['DZNDOSYA']='serbest.xsql'
  276. dosyalar=os.listdir(app.config["AYARDIZIN"])
  277. if(os.path.isfile(app.config["AYARDIZIN"]+session["DZNDOSYA"])):
  278. gelensql = open(app.config["AYARDIZIN"]+session["DZNDOSYA"], 'r').read()
  279. if request.method == 'POST':
  280. session["DZNDOSYA"]=request.form['sqldosyasi']
  281. session["ICERIK"]=request.form['sqlcumlesi']
  282. if request.form["komut"] == "sec" :
  283. app.config["AYARDIZIN"]=request.form['ayardizini']
  284. dosyalar=os.listdir(app.config["AYARDIZIN"])
  285. return render_template('editor.html', gonderilen=session["ICERIK"],dosyalar=dosyalar,akdos=session["DZNDOSYA"])
  286. if request.form["komut"] == "kaydet" and session["ICERIK"]!="":
  287. f = open(app.config["AYARDIZIN"]+session["DZNDOSYA"],'w')
  288. f.write(session["ICERIK"])
  289. return render_template('editor.html', gonderilen=session["ICERIK"],dosyalar=dosyalar,akdos=session["DZNDOSYA"])
  290. if request.form["komut"] == "yenikaydet" and session["ICERIK"]!="" :
  291. session["YENISQL"]=request.form['yenidosya']
  292. if session["ICERIK"]!="" :
  293. f = open(app.config["AYARDIZIN"]+session["YENISQL"],'w')
  294. f.write(session["ICERIK"])
  295. dosyalar=os.listdir(app.config["AYARDIZIN"])
  296. return render_template('editor.html', gonderilen=session["ICERIK"],dosyalar=dosyalar,akdos=session["DZNDOSYA"])
  297. if request.form["komut"] == "calistir" and session["ICERIK"]!="":
  298. t0 = time.clock()
  299. rapor=htmlrapor()
  300. rapor.sql(session["ICERIK"])
  301. islemhizi="{:10.3f}".format(time.clock()-t0)
  302. #return render_template('editor.html', gonderilen=gelensql,sonuc=rapor.getHtml())
  303. return render_template('editor.html',islemhizi=islemhizi, gonderilen=session["ICERIK"],dosyalar=dosyalar,akdos=session["DZNDOSYA"])+rapor.getHtml()
  304. if request.form["komut"] == "yukle" and session["ICERIK"]!="":
  305. session["DZNDOSYA"]=request.form['sqldosyasi']
  306. if(os.path.isfile(app.config["AYARDIZIN"]+session["DZNDOSYA"])):
  307. gelensql = open(app.config["AYARDIZIN"]+session["DZNDOSYA"], 'r').read()
  308. return render_template('editor.html',gonderilen=gelensql,dosyalar=dosyalar,akdos=session["DZNDOSYA"])
  309. if request.form["komut"] == "sil" :
  310. session["DZNDOSYA"]=request.form['sqldosyasi']
  311. os.remove(app.config["AYARDIZIN"]+session["DZNDOSYA"])
  312. session["DZNDOSYA"]="yeni.sql"
  313. dosyalar=os.listdir(app.config["AYARDIZIN"])
  314. return render_template('editor.html',gonderilen=session["ICERIK"],dosyalar=dosyalar,akdos=session["DZNDOSYA"])
  315. return render_template('editor.html', gonderilen=gelensql,dosyalar=dosyalar,akdos=session["DZNDOSYA"])
  316. return render_template('giris.html', error="isim ve sifre giriniz")
  317. @app.route('/sql')
  318. def sql():
  319. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  320. rapor=htmlrapor()
  321. rapor.sql("select * from dp_otospr where osn='tdm'")
  322. #rapor.sqldosya("a")
  323. #print "sql icinde"
  324. print "deger-->",rapor.deger
  325. return '''<a href="../">ana sayfa</a><br> '''+rapor.getHtml()
  326. '''<html>
  327. <h2>sql server sahifesi</h2>
  328. <a href="../">ana sayfa</a> </html>'''
  329. return render_template('giris.html', error="isim ve sifre giriniz")
  330. @app.route('/raporlama/', methods=['GET', 'POST'])
  331. @app.route('/raporlama/<sayfa>')
  332. def raporlama(sayfa="ana.html"):
  333. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  334. ayarlar=os.listdir(".\ini")
  335. t0 = time.clock()
  336. rapor1=rapor()
  337. if(session["INIDOSYA"] is ''):
  338. session["INIDOSYA"]=ayarlar[0]
  339. if request.method == 'POST':
  340. if request.form["komut"] == "raporla" :
  341. session["INIDOSYA"]=request.form['inidosyasi']
  342. if request.form["komut"] == "ayarla" :
  343. session["INIDOSYA"]=request.form['inidosyasi']
  344. rapor1.ayar_yukle(session["INIDOSYA"])
  345. rapor1.bitir()
  346. rapordos=open("rapor\\"+sayfa, 'r').read()
  347. ishiz="{:10.2f}".format(time.clock()-t0)
  348. return render_template('raporayar.html',dosyalar=ayarlar,iniakdos=session["INIDOSYA"])\
  349. +'''<html>islem hizi:'''+ishiz+'''<br><html>'''\
  350. +rapordos+"<br><a href=./>geri<a>"+"<br><a href=../>ana sayfa</a>"
  351. return render_template('giris.html', error="isim ve sifre giriniz")
  352. @app.route('/uyesatislari', methods=['GET', 'POST'])
  353. def uyesatislari():
  354. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  355. fisler = []
  356. pos_dizin=mak.ayar_al('999','pos_dizin')+"\\AYLIK\\"
  357. if request.method == 'POST':
  358. if "submit_box" in request.form and "uye_no" in request.form :
  359. dosyayolu = pos_dizin + request.form["ay"] + ".GTF"
  360. uyeno = request.form["uye_no"]
  361. toplamAlisveris = 0
  362. gtfDosya = open(dosyayolu, "r")
  363. if gtfDosya :
  364. gtfsatir = gtfDosya.readline()
  365. gtfsatir = gtfDosya.readline()
  366. while gtfsatir:
  367. # satirin basindaki karaktere gore islem yapilacak
  368. # 1 ise fis baslang�c�'''
  369. if gtfsatir[1] == "1" :
  370. # tarih ve uye numarasina bakmak icin ilk satiri parcaliyoruz '''
  371. gtfparcali = gtfsatir.split()
  372. ''' uye no karsilasitirmasi. tutuyorsa fisi olustur '''
  373. if gtfparcali[19] == uyeno :
  374. ''' fisi olu�tururken tarih ve saati de fise ekliyoruz '''
  375. tempsaat = gtfparcali[4][0:2] + ":" + gtfparcali[4][2:4] + ":" + gtfparcali[4][4:]
  376. fis = Fis(gtfparcali[2], tempsaat, 0, [])
  377. ''' fise kaydedilecek urunleri okuyacaz, 2 ile baslayan sira '''
  378. while 1:
  379. gtfsatir = gtfDosya.readline()
  380. ''' fiste urun var demektir, urunler fise eklenecek '''
  381. if gtfsatir[1] == "2" :
  382. urunsatiri = gtfsatir.split()
  383. urunkodu = urunsatiri[2]
  384. stok = mak.stok(urunkodu)
  385. print "kod:",urunkodu
  386. urunismi = stok.isim
  387. miktar = urunsatiri[6]
  388. birim = ""
  389. if urunsatiri[7][0] == "0" :
  390. birim = "AD"
  391. elif urunsatiri[7][0] == "1" :
  392. birim = "GR"
  393. birimfiyat = urunsatiri[7][1:]
  394. # iptal satırlarını bulduruyor.
  395. tutar = ""
  396. if urunsatiri[3][0] == "1" :
  397. tutar = "-" + urunsatiri[8]
  398. else :
  399. tutar = urunsatiri[8]
  400. ''' fisteki urunlerin toplam tutari hesaplanacak '''
  401. fis.toplamtutar += float(tutar.replace(",", "."))
  402. urun = Urun(urunkodu, urunismi, miktar, birim, birimfiyat, tutar)
  403. fis.urunler.append(urun)
  404. elif gtfsatir[1] == "6" :
  405. ''' fiste urunler bitti ( 6 ile baslıyorsa fis sonu geldi) '''
  406. ''' fis tamamlandi. toplam tutar, urunler, tarih ve saat '''
  407. ''' olusturulan fis uye fislerine eklenecek '''
  408. toplamAlisveris += fis.toplamtutar
  409. fisler.append(fis)
  410. del fis
  411. break
  412. elif gtfsatir[1] == "1" :
  413. del fis
  414. break
  415. ''' dosyadan okumaya devam et '''
  416. gtfsatir = gtfDosya.readline()
  417. ''' yazilan fisleri
  418. for temp1 in fisler :
  419. print "---------------------------------------------------"
  420. print "fis: ->tarih:" + temp1.tarih + " saat:" + temp1.saat
  421. for temp2 in temp1.urunler :
  422. print temp2.urunkodu + " " + temp2.urunismi + " " + temp2.miktar + " " + temp2.tutar
  423. print "fis toplamtutar:" + str(temp1.toplamtutar)
  424. '''
  425. return render_template("uyesatislari.html", fisler=fisler, toplamAlisveris=toplamAlisveris)
  426. else :
  427. return render_template("uyesatislari.html")
  428. return render_template('giris.html', error="isim ve sifre giriniz")
  429. @app.route('/faturaDetay', methods=['GET', 'POST'])
  430. def faturaDetay():
  431. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  432. rapor=""
  433. raporbas=""
  434. if('fkod' in request.args):
  435. fkod=request.args.get('fkod')
  436. raporbas=mak.sthar_detay_baslik(fkod,link='/faturaDetay?fkodstk',sonuc='html')
  437. rapor=mak.sthar_detay(fkod,sonuc='html')
  438. irsrapor=mak.fatura_irsler(fkod,sonuc='html')
  439. kytrapor=mak.fatura_kayitbilgi(fkod,sonuc='html')
  440. if('fkodstk' in request.args):
  441. fkodstk=request.args.get('fkodstk')
  442. sonuc=mak.stharYstk(fkodstk)
  443. if(sonuc=="olumsuz"):
  444. return "stk çevrimi olumsuz!"
  445. else:
  446. return redirect(url_for('faturaModul'))
  447. return render_template('faturaDetay.html')+raporbas+"<br>"+rapor+"<br>"+irsrapor+"<br>"+kytrapor
  448. return render_template('giris.html', error="isim ve sifre giriniz")
  449. @app.route('/faturaYardim', methods=['GET', 'POST'])
  450. def faturaYardim():
  451. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  452. return render_template('faturaYardim.html')
  453. return render_template('giris.html', error="isim ve sifre giriniz")
  454. @app.route('/faturaModul', methods=['GET', 'POST'])
  455. def faturaModul():
  456. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  457. if('fkod' in request.args):
  458. fkod=request.args.get('fkod')
  459. islem_turu=mak.fatura_islemturu(fkod)
  460. if(islem_turu=='F'):
  461. return redirect(url_for('faturaDetay', fkod=fkod))
  462. else:
  463. data=mak.sthar_detay_baslik(fkod,sonuc='dizi')
  464. error = None
  465. stkod = ''
  466. stkad = ''
  467. bf='0'
  468. con = lite.connect(app.config["DATABASE"])
  469. #cabuk faturalastirma eklentisi
  470. if not 'merkezsube' in session:
  471. session['merkezsube']='28'
  472. if not 'transsube' in session:
  473. session['transsube']='28'
  474. if not 'fattip' in session:
  475. session['fattip']='DAT'
  476. if not 'urtkod' in session:
  477. session['urtkod']=''
  478. if not kriter in session:
  479. session['kriter']='STOK_ADI'
  480. if not arama in session:
  481. session['arama']=''
  482. if not KDVDURUM in session:
  483. session["KDVDURUM"]=None
  484. if not STKOD in session:
  485. session["STKOD"]=''
  486. if not STOKLIST in session:
  487. session["STOKLIST"]="bos"
  488. hardos = mak.stk_list_al()
  489. kull=mak.kullanici_getir2(session["KULL_ID"])
  490. print kull+" fatura modulunu yeniledi."
  491. kayanlar=mak.ayar_al('999','kayan_yazilar')
  492. return render_template('faturaModul.html',kullanici=kull, hardos=hardos,stok="",kayanlar=kayanlar)
  493. return render_template('giris.html', error="isim ve sifre giriniz")
  494. @app.route('/yeniSTkHarList', methods=['GET', 'POST'])
  495. def yeniSTkHarList():
  496. stkno=str(random.randrange(1,1000))+".stk"
  497. while(mak.stkno_kontrol(stkno)):
  498. stkno=str(random.randrange(1,1000))+".stk"
  499. return stkno
  500. @app.route('/stkSatirSil', methods=['GET', 'POST'])
  501. def stkSatirSil():
  502. print request.form
  503. sirano="yok"
  504. stoklist=""
  505. if request.form["modulAd"] =='fatura':
  506. sirano=request.form["stksira"]
  507. if "stkHarList" in request.form:
  508. stoklist=request.form["stkHarList"]
  509. if request.form["modulAd"] =='sayim':
  510. sirano=request.form["guncelsira"]
  511. if request.form["modulAd"] =='siparis':
  512. sirano=request.form["stksira"]
  513. stksecim="spr"+request.form["stksecim"]
  514. stoklist=request.form[stksecim]
  515. mak.stk_satsil(sirano)
  516. stokTablosu=mak.stk_bilgi(stoklist)
  517. return Response(json.dumps(stokTablosu),mimetype='application/json')
  518. @app.route('/stkHarListGetir', methods=['GET', 'POST'])
  519. def stkHarListGetir():
  520. bx=datetime.datetime.now()
  521. if('stksecim' in request.form):
  522. stksecim=request.form["stksecim"]
  523. if(stksecim=='stk1'):
  524. stoklist=request.form['sprstk1']
  525. if(stksecim=='stk2'):
  526. stoklist=request.form['sprstk2']
  527. if(stksecim=='no'):
  528. stoklist=request.form['sprno']
  529. if(stksecim=='sayimstk'):
  530. stoklist=request.form['stklist']
  531. else:
  532. stoklist=request.form["stkHarList"]
  533. stokTablosu=mak.stk_bilgi(stoklist)
  534. by=datetime.datetime.now()
  535. print "stk getirme sn:",(by-bx).total_seconds()
  536. return Response(json.dumps(stokTablosu), mimetype='application/json')
  537. @app.route('/stkTanimGetir', methods=['GET', 'POST'])
  538. def stkTanimGetir():
  539. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  540. if('stkno' in request.args):
  541. data=None
  542. stkno=request.args.get('stkno')
  543. stk_ayar="@stk_"+stkno
  544. stkayr=mak.ayar_al('999',stk_ayar)
  545. if stkayr:
  546. data=[]
  547. kaynak=stkayr[0]
  548. data.append(kaynak)
  549. hedef=stkayr[1]
  550. data.append(hedef)
  551. gctur=stkayr[2]
  552. data.append(gctur)
  553. return Response(json.dumps(data), mimetype='application/json')
  554. return render_template('giris.html', error="isim ve sifre giriniz")
  555. @app.route('/sthEkle', methods=['GET', 'POST'])
  556. def sthEkle():
  557. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  558. durum="sthbilgi"
  559. stkod=request.form['kod']
  560. if(stkod is not ""):
  561. fisno=request.form['sthFisno']
  562. miktar=str(request.form['sthMiktar']).replace(',','.')
  563. tarih=request.form['sthTarih']
  564. bf=str(request.form['satis_fiat3']).replace(',','.')
  565. olcubr=request.form['olcubr1']
  566. kaynak=str(request.form['gozcari']).split('@')[1]
  567. mak.sth_ekle(kaynak,fisno,tarih,stkod,miktar,olcubr,bf)
  568. durum=mak.sthar_bilgi(stkod,kaynak)
  569. else:
  570. durum="stok kodu boş olamaz"
  571. return Response(json.dumps(durum),mimetype='application/json')
  572. return render_template('giris.html', error="isim ve sifre giriniz")
  573. @app.route('/sthSil2', methods=['GET', 'POST'])
  574. def sthSil2():
  575. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  576. data="olumsuz"
  577. sthkod=request.args.get('sthkod')
  578. sthar=mak.sth_yukle(sthkod)
  579. if sthar.finckeyno==0 or sthar.finckeyno==-1:
  580. mak.sth_sil(sthar.incno)
  581. data="hareket silindi"
  582. else:
  583. data="fatura içi hareket silinemez."
  584. return Response(json.dumps(data),mimetype='application/json')
  585. return render_template('giris.html', error="isim ve sifre giriniz")
  586. @app.route('/sthSil', methods=['GET', 'POST'])
  587. def sthSil():
  588. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  589. sthTablo="x"
  590. merkez=""
  591. fisno=""
  592. if('sthkod' in request.form):
  593. sthkod=request.form["sthkod"]
  594. if('stksecim' in request.form):
  595. stksecim=request.form["stksecim"]
  596. if('merkeznokta' in request.form):
  597. merkez=request.form["merkeznokta"]
  598. merkez=merkez.split('@')[1]
  599. if(stksecim=='sth1'):
  600. fisno=request.form['spr1fis']
  601. if(stksecim=='sth2'):
  602. fisno=request.form['spr2fis']
  603. sthar=mak.sth_yukle(sthkod)
  604. mak.fat_sth_islem(sthar,'s')
  605. sthTablo=mak.sth_bilgi(merkez,fisno,sonuc='html')
  606. return Response(json.dumps(sthTablo),mimetype='application/json')
  607. return render_template('giris.html', error="isim ve sifre giriniz")
  608. @app.route('/sthGetir', methods=['GET', 'POST'])
  609. def sthGetir():
  610. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  611. merkez=""
  612. fisno=""
  613. if('stksecim' in request.form):
  614. stksecim=request.form["stksecim"]
  615. if('merkeznokta' in request.form):
  616. merkez=request.form["merkeznokta"]
  617. merkez=merkez.split('@')[1]
  618. if(stksecim=='sth1'):
  619. fisno=request.form['spr1fis']
  620. if(stksecim=='sth2'):
  621. fisno=request.form['spr2fis']
  622. sthTablo=mak.sth_bilgi(merkez,fisno,sonuc='html')
  623. return Response(json.dumps(sthTablo),mimetype='application/json')
  624. return render_template('giris.html', error="isim ve sifre giriniz")
  625. @app.route('/stkSiraAl', methods=['GET', 'POST'])
  626. def stkSiraAl():
  627. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  628. stoklist=request.args.get('stkno')
  629. data=mak.stk_sira_al(stoklist)
  630. return Response(json.dumps(data), mimetype='application/json')
  631. return render_template('giris.html', error="isim ve sifre giriniz")
  632. @app.route('/stkHarAl', methods=['GET', 'POST'])
  633. def stkHarAl():
  634. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  635. guncelsira=request.args.get('guncelsira')
  636. data=mak.stk_har_al(guncelsira)
  637. return Response(json.dumps(data),mimetype='application/json')
  638. return render_template('giris.html', error="isim ve sifre giriniz")
  639. @app.route('/stkFsbAl', methods=['GET', 'POST'])
  640. def stkFsbAl():
  641. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  642. stoklist=request.args.get('stkno')
  643. gctip=request.args.get('gctip')
  644. data=mak.stk_fsb_al(stoklist,gctip)
  645. if data is None:
  646. data="stk listesinde tanimsiz stok var"
  647. return Response(json.dumps(data),mimetype='application/json')
  648. return render_template('giris.html', error="isim ve sifre giriniz")
  649. @app.route('/nagAl', methods=['GET', 'POST'])
  650. def nagAl():
  651. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  652. stoklist=request.args.get('stkno')
  653. data=mak.nakli_agirlik(stoklist)
  654. if data is None:
  655. data="stk listesinde tanimsiz stok var"
  656. return Response(json.dumps(data),mimetype='application/json')
  657. return render_template('giris.html', error="isim ve sifre giriniz")
  658. @app.route('/barkodTamamla', methods=['GET', 'POST'])
  659. def barkodTamamla():
  660. barkod=request.args.get('barkod')
  661. arge=Arge()
  662. data=arge.barkod_tamamla(barkod)
  663. if data is None:
  664. data="hata"
  665. return Response(json.dumps(data),mimetype='application/json')
  666. @app.route('/stklistAl', methods=['GET', 'POST'])
  667. def stklistAl():
  668. stoklist=mak.stk_list_al()
  669. return Response(json.dumps(stoklist),mimetype='application/json')
  670. @app.route('/addanStokAra', methods=['GET', 'POST'])
  671. def addanStokAra():
  672. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  673. stoklar=[]
  674. aranan = request.args.get('term')
  675. stoklar=mak.stokadlar_getir(aranan)
  676. #print stoklar
  677. return Response(json.dumps(stoklar), mimetype='application/json')
  678. return render_template('giris.html', error="isim ve sifre giriniz")
  679. @app.route('/stokGetir', methods=['GET', 'POST'])
  680. def stokGetir():
  681. #if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  682. stok=Stok()
  683. bf=0
  684. #print request.args
  685. hedef = request.args.get('hedef')
  686. hedef=hedef.split('@')
  687. if(len(hedef)>1):
  688. hedef=hedef[1]
  689. else:
  690. hedef=""
  691. kaynak = request.args.get('kaynak')
  692. kaynak=kaynak.split('@')
  693. if(len(kaynak)>1):
  694. kaynak=kaynak[1]
  695. else:
  696. kaynak=""
  697. kriter = request.args.get('kriter')
  698. if(kriter=='kod'):
  699. stokod = request.args.get('stokod')
  700. stok=mak.stok(stokod)
  701. else:
  702. stokad = request.args.get('stokad')
  703. stok=mak.stok2(stokad)
  704. bftip = request.args.get('bftip')
  705. if(bftip=='3'):
  706. bf=stok.satis_fiat3
  707. if(bftip=='2'):
  708. bf=stok.satis_fiat2
  709. if(bftip=='1'):
  710. bf=stok.satis_fiat1
  711. if(bftip=='4'):
  712. bf=stok.alis_fiat1
  713. if(bftip=='5'):
  714. bf=stok.alis_fiat2
  715. if(bftip=='6'):
  716. bf=stok.alis_fiat3
  717. if(kaynak!="" and hedef!=""):
  718. if(bftip=='7'):
  719. bf=mak.sonalim_bf(kaynak,hedef,stok.kod)
  720. if(bftip=='8'):
  721. bf=mak.sonsatis_bf(kaynak,hedef,stok.kod)
  722. stok = [ stok.kod, stok.isim, bf ]
  723. return Response(json.dumps(stok),mimetype='application/json')
  724. #return render_template('giris.html', error="isim ve sifre giriniz")
  725. @app.route('/stokNesneGetir', methods=['GET', 'POST'])
  726. def stokNesneGetir():
  727. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  728. stok=Stok()
  729. kriter = request.args.get('kriter')
  730. if(kriter=='kod'):
  731. stokod = request.args.get('stokod')
  732. stok=mak.stok(stokod)
  733. else:
  734. stokad = request.args.get('stokad')
  735. stok=mak.stok2(stokad)
  736. if(stok!=None):
  737. stok=stok.jsonla()
  738. else:
  739. stok=""
  740. return Response(json.dumps(stok),mimetype='application/json')
  741. return render_template('giris.html', error="isim ve sifre giriniz")
  742. @app.route('/stokBakiyeGetir', methods=['GET', 'POST'])
  743. def stokBakiyeGetir():
  744. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  745. bakiyeler=[]
  746. stokod=request.args.get('stokod')
  747. merkez=request.args.get('merkez')
  748. if(len(merkez)>1):
  749. merkez=merkez.split('@')[1]
  750. else:
  751. merkez="xxx"
  752. merkezbak=mak.stok_bakiye(stokod,merkez)
  753. bakiyeler.append(merkezbak)
  754. nokta1=request.args.get('nokta1')
  755. if(len(nokta1)>1 and nokta1!='undefined'):
  756. nokta1=nokta1.split('@')[1]
  757. else:
  758. nokta1="xxx"
  759. bak1=mak.stok_bakiye(stokod,nokta1)
  760. bakiyeler.append(bak1)
  761. nokta2=request.args.get('nokta2')
  762. if(len(nokta2)>1 and nokta2!='undefined'):
  763. nokta2=nokta2.split('@')[1]
  764. else:
  765. nokta2="xxx"
  766. bak2=mak.stok_bakiye(stokod,nokta2)
  767. bakiyeler.append(bak2)
  768. return Response(json.dumps(bakiyeler),mimetype='application/json')
  769. return render_template('giris.html', error="isim ve sifre giriniz")
  770. @app.route('/stokSatisGetir', methods=['GET', 'POST'])
  771. def stokSatisGetir():
  772. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  773. satislar=[]
  774. stokod=request.args.get('stokod')
  775. gerigun=request.args.get('gerigun')
  776. nokta1=request.args.get('nokta1')
  777. nokta1=nokta1.split('@')[1]
  778. sat1=mak.stok_satis(stokod,nokta1,gerigun)
  779. satislar.append(sat1)
  780. nokta2=request.args.get('nokta2')
  781. nokta2=nokta2.split('@')[1]
  782. sat2=mak.stok_satis(stokod,nokta2,gerigun)
  783. satislar.append(sat2)
  784. sstrh1=mak.son_satis(stokod,nokta1)
  785. satislar.append(sstrh1)
  786. sstrh2=mak.son_satis(stokod,nokta2)
  787. satislar.append(sstrh2)
  788. sgtrh1=mak.son_giris(stokod,nokta1)
  789. satislar.append(sgtrh1)
  790. sgtrh2=mak.son_giris(stokod,nokta2)
  791. satislar.append(sgtrh2)
  792. saytrh1=mak.son_sayim(stokod,nokta1)
  793. satislar.append(saytrh1)
  794. saytrh2=mak.son_sayim(stokod,nokta2)
  795. satislar.append(saytrh2)
  796. return Response(json.dumps(satislar),mimetype='application/json')
  797. return render_template('giris.html', error="isim ve sifre giriniz")
  798. #siparis hazirlama bilgileri
  799. #5-7-15
  800. @app.route('/stokShb', methods=['GET', 'POST'])
  801. def stokShb():
  802. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  803. data=[]
  804. stokod=request.form["kod"]
  805. '''
  806. stok=mak.stok(stokod)
  807. data.append(stok.kod)
  808. data.append(stok.isim)
  809. data.append(stok.satis_fiat3)
  810. data.append(stok.payda)
  811. stokod=stok.kod
  812. '''
  813. merkez=request.form["merkeznokta"]
  814. if(len(merkez)>1):
  815. merkez=merkez.split('@')[1]
  816. else:
  817. merkez="xxx"
  818. merkezbak=mak.stok_bakiye(stokod,merkez)
  819. data.append(merkezbak)
  820. nokta1=request.form["nokta1"]
  821. if(len(nokta1)>1 and nokta1!='undefined'):
  822. nokta1=nokta1.split('@')[1]
  823. else:
  824. nokta1="xxx"
  825. bak1=mak.stok_bakiye(stokod,nokta1)
  826. data.append(bak1)
  827. nokta2=request.form["nokta2"]
  828. if(len(nokta2)>1 and nokta2!='undefined'):
  829. nokta2=nokta2.split('@')[1]
  830. else:
  831. nokta2="xxx"
  832. bak2=mak.stok_bakiye(stokod,nokta2)
  833. data.append(bak2)
  834. gerigun=request.form["gerigun"]
  835. sat1=mak.stok_satis(stokod,nokta1,gerigun)
  836. data.append(sat1)
  837. sat2=mak.stok_satis(stokod,nokta2,gerigun)
  838. data.append(sat2)
  839. sstrh1=mak.son_satis(stokod,nokta1)
  840. data.append(sstrh1)
  841. sstrh2=mak.son_satis(stokod,nokta2)
  842. data.append(sstrh2)
  843. sgtrh1=mak.son_giris(stokod,nokta1)
  844. data.append(sgtrh1)
  845. sgtrh2=mak.son_giris(stokod,nokta2)
  846. data.append(sgtrh2)
  847. saytrh1=mak.son_sayim(stokod,nokta1)
  848. data.append(saytrh1)
  849. saytrh2=mak.son_sayim(stokod,nokta2)
  850. data.append(saytrh2)
  851. return Response(json.dumps(data),mimetype='application/json')
  852. return render_template('giris.html', error="isim ve sifre giriniz")
  853. @app.route('/stokSorgu', methods=['GET', 'POST'])
  854. def stokSorgu():
  855. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  856. kriter=request.form["kriter"]
  857. aranan=request.form["arama"]
  858. sor_rapor=mak.stok_sorgu(kriter,aranan)
  859. return Response(json.dumps(sor_rapor),mimetype='application/json')
  860. return render_template('giris.html', error="isim ve sifre giriniz")
  861. #yapimda
  862. @app.route('/stokArama', methods=['GET', 'POST'])
  863. def stokArama():
  864. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  865. kriter=request.args.get("kriter")
  866. aranan=request.args.get("aranan")
  867. sira=request.args.get("sira")
  868. sor_rapor=mak.stok_sorgu_perfo(kriter,aranan,sira)
  869. stokod=sor_rapor
  870. return Response(json.dumps(stokod),mimetype='application/json')
  871. @app.route('/stokSorgu2', methods=['GET', 'POST'])
  872. def stokSorgu2():
  873. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  874. stoklar=[]
  875. fkod=request.form["fkod"]
  876. if(fkod!=""):
  877. sor=mak.sthar_detay(fkod,sonuc='dizi')
  878. for sorx in sor:
  879. stoklar.append(sorx[1])
  880. else:
  881. kriter=request.form["kriter"]
  882. aranan=request.form["arama"]
  883. sor=mak.stok_sorgu2(kriter,aranan)
  884. for sorx in sor:
  885. stoklar.append(sorx[0])
  886. return Response(json.dumps(stoklar),mimetype='application/json')
  887. return render_template('giris.html', error="isim ve sifre giriniz")
  888. @app.route('/stokVirman', methods=['GET', 'POST'])
  889. def stokVirman():
  890. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  891. fkod=request.form["fkod"]
  892. kod=request.form["kod"]
  893. if kod<>"":
  894. if(fkod!=""):
  895. sor=mak.sthar_detay(fkod,sonuc='dizi')
  896. else:
  897. kriter=request.form["kriter"]
  898. aranan=request.form["arama"]
  899. sor=mak.stok_sorgu2(kriter,aranan)
  900. if(len(sor)==1):
  901. stokod=sor[1][0]
  902. cevb=mak.stok_virman(kod,stokod)
  903. if(cevb=='tamam'):
  904. sonuc=kod+" --> "+stokod+" stoguna virman edildi."
  905. else:
  906. sonuc="vt sorunu olustu."
  907. else:
  908. sonuc="tek stok secilmelidir."
  909. else:
  910. sonuc="stok kod bos olamaz"
  911. return Response(json.dumps(sonuc),mimetype='application/json')
  912. return render_template('giris.html', error="isim ve sifre giriniz")
  913. @app.route('/sayimHazirla', methods=['GET', 'POST'])
  914. def sayimHazirla():
  915. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  916. sonuc="x"
  917. stkno = request.form['stklist']
  918. tarih = request.form['sayimTarih']
  919. merkez = request.form['sayimCari']
  920. satis = request.form['satisCari']
  921. if '@' in merkez:
  922. merkez=merkez.split('@')[1]
  923. else:
  924. return "gecersiz sayim merkezi"
  925. if '@' in satis:
  926. satis=satis.split('@')[1]
  927. else:
  928. satis=""
  929. sonuc=mak.sayim_hazirla(stkno,merkez,tarih,satis)
  930. return Response(json.dumps(sonuc),mimetype='application/json')
  931. return render_template('giris.html', error="isim ve sifre giriniz")
  932. @app.route('/sayimIslet', methods=['GET', 'POST'])
  933. def sayimIslet():
  934. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  935. sonuc="x"
  936. stkno = request.form['stklist']
  937. kaydeden=mak.kullanici_getir(session["KULL_ID"])[0]
  938. sonuc=mak.sayim_islet(stkno,kaydeden)
  939. return Response(json.dumps(sonuc),mimetype='application/json')
  940. return render_template('giris.html', error="isim ve sifre giriniz")
  941. @app.route('/stokSifirla', methods=['GET', 'POST'])
  942. def stokSifirla():
  943. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  944. sonuc="x"
  945. tarih = request.form['sayimTarih']
  946. carikod = request.form['sayimCari'].split('@')[1]
  947. kriter = request.form['kriter']
  948. aranan = request.form['arama']
  949. sonuc=mak.stok_sifirla(carikod,tarih,kriter,aranan)
  950. return Response(json.dumps(sonuc),mimetype='application/json')
  951. return render_template('giris.html', error="isim ve sifre giriniz")
  952. @app.route('/barkodKontrol', methods=['GET', 'POST'])
  953. def barkodKontrol():
  954. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  955. stok=Stok()
  956. kod = request.args.get('kod')
  957. barkod = request.args.get('barkod')
  958. data=mak.barkod_kontrol(kod,barkod)
  959. if(data is None):
  960. data='##'
  961. return Response(json.dumps(data),mimetype='application/json')
  962. return render_template('giris.html', error="isim ve sifre giriniz")
  963. @app.route('/chEkle', methods=['GET', 'POST'])
  964. def chEkle():
  965. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  966. durum="chbilgi"
  967. mkod=request.form['kod_mcari']
  968. chfkod=request.form['chfkod']
  969. print chfkod,"---------"
  970. if(mkod is not "" and chfkod=='yeni'):
  971. ofatura=Fatura()
  972. kkod=request.form["kod"]
  973. if ',' in kkod:
  974. kkod=kkod.split(',')[0]
  975. ocari=mak.cari(kkod)
  976. if(ocari):
  977. ofatura.kaydeden=mak.kullanici_getir(session["KULL_ID"])[0]
  978. ofatura.fisno=request.form['chFisno']
  979. ofatura.tutar=str(request.form['chTutar']).replace(',','.')
  980. ofatura.islem='A'
  981. ofatura.tarih=request.form['chTarih']
  982. #22-03-2015 fatura trh ile ayni yapildi.
  983. ofatura.vadetarih=request.form['chvdTarih']
  984. #ofatura.vadetarih=ofatura.tarih
  985. if(float(ofatura.tutar)<0):
  986. ofatura.fattip='C'
  987. #ofatura.tutar=-1*float(ofatura.tutar)
  988. else:
  989. ofatura.fattip='G'
  990. ofatura.tutar=float(ofatura.tutar)
  991. ofatura.kaynak=mkod
  992. ofatura.hedef=kkod
  993. ofatura.med='H'
  994. ofatura.irs='H'
  995. ofatura.kdvdurum='E'
  996. ofatura.aciklama=request.form['chAck']
  997. oksonuc=mak.faturalama(ofatura,'y')
  998. if(oksonuc!='tamam'):
  999. durum="ch kaydında bir hata oluştu!"
  1000. else:
  1001. print "ch odeme kaydi tamamlandi."
  1002. #durum=mak.carihar_bilgi(kkod,mkodana,sonuc='html')
  1003. durum=mak.carihar_bilgi(kkod,mkod,tarih="",fisno="",islemturu="",hartip="",irsdurum="",sonuc='html',modul='c')
  1004. print kkod,mkod
  1005. print durum
  1006. else:
  1007. durum="cari tnaimsiz"
  1008. else:
  1009. if (mak.finckeyno_kontrol(chfkod)=="var"):
  1010. yenivade=request.form['chvdTarih']
  1011. sonuc=mak.chvade_duzen(chfkod,yenivade)
  1012. print "chvade:",sonuc
  1013. return Response(json.dumps(durum),mimetype='application/json')
  1014. return render_template('giris.html', error="isim ve sifre giriniz")
  1015. @app.route('/stkEkle', methods=['GET', 'POST'])
  1016. def stkEkle():
  1017. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1018. #print request.form
  1019. kod=""
  1020. ad=""
  1021. miktar=""
  1022. bf=""
  1023. tutardan=""
  1024. sira=""
  1025. stoklist=""
  1026. miktarlar=[]
  1027. modul=request.form['modulAd']
  1028. if(modul=="sayim"):
  1029. if "kod" in request.form :
  1030. kod=request.form['kod']
  1031. if "ad" in request.form :
  1032. ad=request.form['ad']
  1033. if "miktar" in request.form :
  1034. miktar=request.form['miktar']
  1035. if "datfiat" in request.form :
  1036. bf=request.form['datfiat']
  1037. sira=request.form['guncelsira']
  1038. stoklist=request.form['stklist']
  1039. else:
  1040. ad=request.form['stkStokAdi']
  1041. kod=request.form['stkStokKodu']
  1042. sira=request.form['stksira']
  1043. stoklist=request.form['stkHarList']
  1044. miktar=request.form['stkMiktar']
  1045. bf=request.form['stkTutar']
  1046. if 'stkTutardan' in request.form :
  1047. tutardan=request.form['stkTutardan']
  1048. miktar=arge.coklu_topla(miktar)
  1049. bf=arge.coklu_topla(bf)
  1050. if bf.find(",") > 0 :
  1051. bf=bf.replace(',','.')
  1052. if miktar.find(",") > 0 :
  1053. miktar=miktar.replace(',','.')
  1054. bf=float(bf)
  1055. miktar=float(miktar)
  1056. if tutardan=='on' :
  1057. tutar=bf
  1058. bf=tutar/miktar
  1059. bf=round(bf,5)
  1060. else :
  1061. tutar=round(bf*miktar,3)
  1062. #tutar=math.ceil(tutar)
  1063. #satir iskontosunun uygulanmsi
  1064. if 'satisko' in request.form :
  1065. satisko=request.form["satisko"]
  1066. if(satisko!="" and satisko!='0'):
  1067. bf=mak.satisko_icra(bf,satisko)
  1068. tutar=bf*miktar
  1069. stokhar=(kod,ad,miktar,bf,tutar,stoklist)
  1070. con = lite.connect(app.config["DATABASE"])
  1071. cur = con.cursor()
  1072. if(sira =='yeni' ):
  1073. with con:
  1074. cur.execute("INSERT INTO stoklist (stkod,stkad,miktar,bf,tutar,stoklistno) VALUES(?, ?,?, ?, ?,?)", stokhar)
  1075. else :
  1076. with con:
  1077. cur.execute("UPDATE stoklist SET stkod=?,stkad=?,miktar=?,bf=?,tutar=? WHERE sira=?", (kod,ad,miktar,bf,tutar,sira))
  1078. stokTablosu=mak.stk_bilgi(stoklist)
  1079. return Response(json.dumps(stokTablosu),mimetype='application/json')
  1080. return render_template('giris.html', error="isim ve sifre giriniz")
  1081. @app.route('/fiyatDeg', methods=['GET', 'POST'])
  1082. def fiyatDeg():
  1083. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1084. stoklist = request.form['stkHarList']
  1085. bftip=request.form['bftip']
  1086. sonuc=mak.stk_fiyatdeg(stoklist,bftip)
  1087. if sonuc=='tamam':
  1088. stokTablosu=mak.stk_bilgi(stoklist)
  1089. else:
  1090. print "fiyat deisim sorun var"
  1091. return Response(json.dumps(stokTablosu),mimetype='application/json')
  1092. return render_template('giris.html', error="isim ve sifre giriniz")
  1093. @app.route('/sprStkEkle', methods=['GET', 'POST'])
  1094. def sprStkEkle():
  1095. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1096. stkod=request.form['kod']
  1097. stkad=request.form['ad']
  1098. miktar=request.form['otospr']
  1099. stksecim=request.form['stksecim']
  1100. stokList=""
  1101. if(stksecim=='stk1'):
  1102. stokList=request.form['sprstk1']
  1103. if(stksecim=='stk2'):
  1104. stokList=request.form['sprstk2']
  1105. if(stksecim=='no'):
  1106. stokList=request.form['sprno']
  1107. bf=request.form['datfiat']
  1108. if bf.find(",") > 0 :
  1109. bf=bf.replace(',','.')
  1110. if miktar.find(",") > 0 :
  1111. miktar=miktar.replace(',','.')
  1112. bf=float(bf)
  1113. miktar=float(miktar)
  1114. tutar=round(bf*miktar,2)
  1115. stokhar=(stkod,stkad,miktar,bf,tutar,stokList)
  1116. con = lite.connect(app.config["DATABASE"])
  1117. cur = con.cursor()
  1118. with con:
  1119. cur.execute("INSERT INTO stoklist (stkod,stkad,miktar,bf,tutar,stoklistno) VALUES(?, ?,?, ?, ?,?)", stokhar)
  1120. stokTablosu=mak.stk_bilgi(stokList)
  1121. return Response(json.dumps(stokTablosu),mimetype='application/json')
  1122. return render_template('giris.html', error="isim ve sifre giriniz")
  1123. @app.route('/sprSthEkle', methods=['GET', 'POST'])
  1124. def sprSthEkle():
  1125. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1126. sthTablo="eklemede hata"
  1127. stkod=request.form['kod']
  1128. if(stkod is not ""):
  1129. now = datetime.datetime.now()
  1130. simditrh=str(now)[0:19]
  1131. trhdz=simditrh.split()
  1132. trhdz=trhdz[0].split('-')
  1133. kaynak=request.form['merkeznokta']
  1134. kaynak=kaynak.split('@')[1]
  1135. stksecim=request.form['stksecim']
  1136. if stksecim=='sth1':
  1137. fisno=request.form['spr1fis']
  1138. if stksecim=='sth2':
  1139. fisno=request.form['spr2fis']
  1140. tblsthar=Tblsthar()
  1141. tblsthar.finckeyno=mak.fkod_al(fisno,kaynak)
  1142. if tblsthar.finckeyno==-1:
  1143. return "fisno tanimsiz"
  1144. fatura=mak.fatura_yukle(tblsthar.finckeyno)
  1145. tblsthar.stok_kodu=stkod
  1146. tblsthar.miktar=str(request.form['otospr']).replace(',','.')
  1147. tblsthar.bf=str(request.form['datfiat']).replace(',','.')
  1148. tblsthar.nf=tblsthar.bf
  1149. if fatura.kaynak==kaynak:
  1150. tblsthar.kaynak=fatura.kaynak
  1151. else:
  1152. return "kaynak uyumsuzlugu"
  1153. durum=mak.fat_sth_islem(tblsthar,'e')
  1154. if durum=='tamam':
  1155. sthTablo=mak.sth_bilgi(kaynak,fisno,sonuc='html')
  1156. else:
  1157. sonuc="stok kodu boş olamaz"
  1158. return Response(json.dumps(sthTablo),mimetype='application/json')
  1159. return render_template('giris.html', error="isim ve sifre giriniz")
  1160. @app.route('/stkKilitle', methods=['GET', 'POST'])
  1161. def stkKilitle():
  1162. stk=request.form["stkHarList"]
  1163. stkuz=len(stk)
  1164. stk_uza=stk[stkuz-4:stkuz]
  1165. con = lite.connect(app.config["DATABASE"])
  1166. with con:
  1167. cur = con.cursor()
  1168. if stk_uza =='.stk':
  1169. cur.execute("update stoklist set stoklistno='"+str(stk[:stkuz-4])+"' WHERE stoklistno='"+stk+"'")
  1170. else:
  1171. stkye=stk+".stk"
  1172. cur.execute("update stoklist set stoklistno='"+str(stkye)+"' WHERE stoklistno='"+stk+"'")
  1173. hardos = mak.stk_list_al()
  1174. return Response(json.dumps(hardos),mimetype='application/json')
  1175. @app.route('/stkAdGuncelle', methods=['GET', 'POST'])
  1176. def stkAdGuncelle():
  1177. stk=request.form["stkHarList"]
  1178. stkye=request.form["yenistkAd"]
  1179. con = lite.connect(app.config["DATABASE"])
  1180. with con:
  1181. cur = con.cursor()
  1182. cur.execute("update stoklist set stoklistno='"+str(stkye)+"' WHERE stoklistno='"+stk+"'")
  1183. hardos = mak.stk_list_al()
  1184. return Response(json.dumps(hardos),mimetype='application/json')
  1185. @app.route('/stkHarListSil', methods=['GET', 'POST'])
  1186. def stkHarListSil():
  1187. stk=request.form["stkHarList"]
  1188. stkuz=len(stk)
  1189. stk_uza=stk[stkuz-4:stkuz]
  1190. if stk_uza =='.stk':
  1191. con = lite.connect(app.config["DATABASE"])
  1192. with con:
  1193. cur = con.cursor()
  1194. cur.execute("DELETE FROM stoklist WHERE stoklistno='"+stk+"'")
  1195. hardos = mak.stk_list_al()
  1196. return Response(json.dumps(hardos),mimetype='application/json')
  1197. @app.route('/tumStkHarListSil', methods=['GET', 'POST'])
  1198. def tumStkHarListSil():
  1199. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1200. modul_yetki=["98","99"]
  1201. yetki=mak.yetki_al(session['KULL_ID'])
  1202. if(str(yetki) in modul_yetki):
  1203. os.system(stkdb_yedekle_komut)
  1204. con = lite.connect(app.config["DATABASE"])
  1205. with con:
  1206. cur = con.cursor()
  1207. #cur.execute("DROP TABLE IF EXISTS stoklist")
  1208. #cur.execute("CREATE TABLE stoklist(sira INTEGER PRIMARY KEY AUTOINCREMENT,stkod TEXT,stkad TEXT,miktar REAL,bf REAL,tutar REAL,stoklistno INT)")
  1209. cur.execute("delete from stoklist where stoklistno like '%.stk'")
  1210. hardos = mak.stk_list_al()
  1211. return Response(json.dumps(hardos), mimetype='application/json')
  1212. else:
  1213. return "yetkisiz erisim"
  1214. return render_template('giris.html', error="isim ve sifre giriniz")
  1215. @app.route('/tumstkGerial', methods=['GET', 'POST'])
  1216. def tumstkGerial():
  1217. os.system(stkdb_yedekal_komut)
  1218. data="tumstk geri yuklendi."
  1219. return Response(json.dumps(data),mimetype='application/json')
  1220. @app.route('/posAktar', methods=['GET', 'POST'])
  1221. def posAktar():
  1222. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1223. data="sorun olustu"
  1224. pos_dizin=mak.ayar_al('999','pos_dizin')
  1225. posdosya = request.args.get('posdosya')
  1226. poscari = request.args.get('poscari')
  1227. poscari=poscari.split('@')[1]
  1228. if 'merkez' in request.args and request.args.get('merkez')!="":
  1229. merkez = request.args.get('merkez')
  1230. merkez=merkez.split('@')[1]
  1231. if(posdosya!="" and mak.cari(poscari) is not None):
  1232. data=mak.gtfYstk(pos_dizin+ayrac+posdosya,poscari,merkez)
  1233. pdosy=pos_dizin+ayrac+"aktarilan"+ayrac+poscari
  1234. if os.path.isdir(pdosy) is False :
  1235. os.system("mkdir "+pdosy)
  1236. print "yeni klasor tanimlandi."
  1237. komut=tasima_komutu+pos_dizin+ayrac+posdosya+" "+pdosy+ayrac+posdosya
  1238. print "komut",komut
  1239. os.system(komut)
  1240. data="tamam"
  1241. else:
  1242. data="pos noktasi tanimsiz"
  1243. else:
  1244. data="merkez nokta tanimsiz"
  1245. return Response(json.dumps(data),mimetype='application/json')
  1246. return render_template('giris.html', error="isim ve sifre giriniz")
  1247. @app.route('/posGonder', methods=['GET', 'POST'])
  1248. def posGonder():
  1249. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1250. prog_anadizin=mak.ayar_al('999','prog_anadizin')
  1251. pos_dizin=mak.ayar_al('999','pos_dizin')
  1252. kriter = request.args.get('kriter')
  1253. if(kriter==""):
  1254. kriter='kod_1'
  1255. arama = request.args.get('arama')
  1256. data=mak.pos_urunliste(kriter,arama)
  1257. print "posgonder:",kriter,arama
  1258. if(data=='hata'):
  1259. data=""
  1260. else:
  1261. data="pos listesi olusturuldu.kontrol ediniz."
  1262. komut=kopya_komutu+pos_dizin+ayrac+"GNCPLUF.gtf "+prog_anadizin+"static"+ayrac
  1263. print komut
  1264. os.system(komut)
  1265. return Response(json.dumps(data),mimetype='application/json')
  1266. return render_template('giris.html', error="isim ve sifre giriniz")
  1267. @app.route('/posYukle',methods=['GET', 'POST'])
  1268. def posYukle():
  1269. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1270. path=mak.ayar_al('999','prog_anadizin')
  1271. pos_dizin=mak.ayar_al('999','pos_dizin')
  1272. pdosyalar=[]
  1273. if request.method == 'POST':
  1274. file = request.files['pos_dosya']
  1275. if file:
  1276. mimetype = file.content_type
  1277. filename = werkzeug.secure_filename(file.filename)
  1278. print filename, "dosyasi yukleniyor.............."
  1279. file_konum=os.path.join(pos_dizin, filename)
  1280. file.save(file_konum)
  1281. pdosyalar = [f for f in os.listdir(pos_dizin) if re.match(r'.*\.GTF', f)]
  1282. return Response(json.dumps(pdosyalar),mimetype='application/json')
  1283. else:
  1284. return Response(json.dumps(None),mimetype='application/json')
  1285. return render_template('giris.html', error="isim ve sifre giriniz")
  1286. @app.route('/dosYukle',methods=['GET', 'POST'])
  1287. def dosYukle():
  1288. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1289. data="dosya gecersiz"
  1290. if request.method == 'POST':
  1291. file = request.files['sdosya']
  1292. if file:
  1293. mimetype = file.content_type
  1294. filename = werkzeug.secure_filename(file.filename)
  1295. print filename, "dosyasi yukleniyor.............."
  1296. file_konum=os.path.join(filename)
  1297. file.save(file_konum)
  1298. tarih = request.form['sayimTarih']
  1299. carikod = request.form['sayimCari'].split('@')[1]
  1300. sonuc=mak.stok_sifirla(carikod,tarih,"","",arge.dosyaYdizi(filename))
  1301. if sonuc=="tamam":
  1302. data="sifirlama tamam"
  1303. else:
  1304. data="sifirlamada sorun olustu"
  1305. return Response(json.dumps(data),mimetype='application/json')
  1306. else:
  1307. return Response(json.dumps(data),mimetype='application/json')
  1308. return render_template('giris.html', error="isim ve sifre giriniz")
  1309. @app.route('/posdossil',methods=['GET', 'POST'])
  1310. def posdossil():
  1311. prog_anadizin=mak.ayar_al('999','prog_anadizin')
  1312. os.system("del "+prog_anadizin+"static\\gncpluf.gtf")
  1313. return Response(json.dumps("islem tamam"),mimetype='application/json')
  1314. @app.route('/posdosyaal',methods=['GET', 'POST'])
  1315. def posdosyaal():
  1316. if request.method == 'POST':
  1317. sifre=request.form['sifre']
  1318. pos_dizin=mak.ayar_al('999','pos_dizin')
  1319. prog_anadizin=mak.ayar_al('999','prog_anadizin')
  1320. if(sifre==mak.ayar_al('999','pos_sifre')):
  1321. #guncel butun stoklari cekiyor.
  1322. mak.pos_urunliste("kod_1","")
  1323. os.system("copy "+pos_dizin+"\\"+"GNCPLUF.gtf "+prog_anadizin+"static\\kamusal\\")
  1324. return "dosya geldi."
  1325. else:
  1326. hata="aktarim sifreniz hatali"
  1327. return hata
  1328. @app.route('/posdosyasil',methods=['GET', 'POST'])
  1329. def posdosyasil():
  1330. if request.method == 'POST':
  1331. sifre=request.form['sifre']
  1332. prog_anadizin=mak.ayar_al('999','prog_anadizin')
  1333. if(sifre==mak.ayar_al('999','pos_sifre')):
  1334. os.system("del "+prog_anadizin+"static\\kamusal\\GNCPLUF.gtf")
  1335. return "islem bitti."
  1336. else:
  1337. hata="aktarim sifreniz hatali"
  1338. return hata
  1339. @app.route('/posdosyagonder',methods=['GET', 'POST'])
  1340. def posdosyagonder():
  1341. #path = os.path.expanduser(u'~')
  1342. path=mak.ayar_al('999','pos_dizin')
  1343. hata=""
  1344. if request.method == 'POST':
  1345. sifre=request.form['sifre']
  1346. if(sifre==mak.ayar_al('999','pos_sifre')):
  1347. print "dogru sifre"
  1348. file = request.files['file']
  1349. if file:
  1350. mimetype = file.content_type
  1351. filename = werkzeug.secure_filename(file.filename)
  1352. file_konum=os.path.join(path+"/", filename)
  1353. file.save(file_konum)
  1354. os.system("move "+file_konum+" "+path.split('\pos')[0])
  1355. return "DOSYA AKTARIMI YAPILDI!!!"+"<br><a href=./posdosyagonder>GERI DON</a>"
  1356. else:
  1357. return "dosya secin"
  1358. else:
  1359. hata="aktarim sifreniz hatali"
  1360. return render_template('liste2.html', tree=make_tree(path),hata=hata)
  1361. @app.route('/teraziDataAl',methods=['GET', 'POST'])
  1362. def teraziDataAl():
  1363. if request.method == 'POST':
  1364. data="tamam"
  1365. pos_dizin=mak.ayar_al('999','pos_dizin')
  1366. prog_anadizin=mak.ayar_al('999','prog_anadizin')
  1367. #guncel butun stoklari cekiyor.
  1368. mak.teraziYxls()
  1369. os.system("copy terazi_data.xls "+prog_anadizin+"static\\kamusal\\")
  1370. return Response(json.dumps(data),mimetype='application/json')
  1371. @app.route('/fisnoMevcutKontrol', methods=['GET', 'POST'])
  1372. def fisnoMevcutKontrol():
  1373. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1374. fisno=request.args.get('fisno')
  1375. sonuc=mak.fisno_kontrol(fisno)
  1376. return Response(json.dumps(sonuc),mimetype='application/json')
  1377. return render_template('giris.html', error="isim ve sifre giriniz")
  1378. @app.route('/otoFatuNo', methods=['GET', 'POST'])
  1379. def otoFatuNo():
  1380. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1381. fisno=request.form["fatuNo"]
  1382. gctur=request.form["hartip"][0]
  1383. if fisno=="":
  1384. fisno="DP"+gctur
  1385. seriFisNo=mak.fisno_serial2(fisno,gctur)
  1386. return seriFisNo
  1387. return render_template('giris.html', error="isim ve sifre giriniz")
  1388. @app.route('/otoTanimGetir', methods=['GET', 'POST'])
  1389. def otoTanimGetir():
  1390. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1391. onek = request.args.get('onek')
  1392. gctur = request.args.get('gctur')
  1393. otofisno=mak.fisno_serial2(onek,gctur[0])
  1394. islemturu=onek[0]
  1395. #ontanim=kullanici.get('ontanimlar',islemturu).decode('latin5')
  1396. kod=mak.ayar_al(session['KULL_ID'],islemturu+'_noktasi')
  1397. ontanim=mak.cari(kod).isim+"@"+kod
  1398. data=[otofisno,ontanim]
  1399. return Response(json.dumps(data),mimetype='application/json')
  1400. return render_template('giris.html', error="isim ve sifre giriniz")
  1401. @app.route('/cariBilgiGetir', methods=['GET', 'POST'])
  1402. def cariBilgiGetir():
  1403. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1404. data=None
  1405. if 'carikod' in request.args:
  1406. cari=Cari()
  1407. carikod = request.args.get('carikod')
  1408. if('@' in carikod):
  1409. carikod=carikod.split('@')[1]
  1410. cari=mak.cari(carikod)
  1411. #simdilik vadegunu. gerektikce eklenecek
  1412. data=cari.vadegunu
  1413. return Response(json.dumps(data),mimetype='application/json')
  1414. return render_template('giris.html', error="isim ve sifre giriniz")
  1415. @app.route('/cariBul', methods=['GET', 'POST'])
  1416. def cariBul():
  1417. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1418. tip=""
  1419. cariAd = request.args.get('term')
  1420. if "tip" in request.args:
  1421. tip=request.args.get('tip')
  1422. cariler=mak.cariler_getir(cariAd,tip)
  1423. return Response(json.dumps(cariler),mimetype='application/json')
  1424. return render_template('giris.html', error="isim ve sifre giriniz")
  1425. @app.route('/fatuSil', methods=['GET', 'POST'])
  1426. def fatuSil():
  1427. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1428. modul_yetki=["98","99","90"]
  1429. yetki=mak.yetki_al(session['KULL_ID'])
  1430. if(str(yetki) in modul_yetki):
  1431. data=""
  1432. if "fkod" in request.args :
  1433. fkod = request.args.get('fkod')
  1434. l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+mak.fisno_al(fkod)+" faturasini sildi.")
  1435. data=mak.fatura_sil(fkod)
  1436. else :
  1437. data='silinecek fatura mevcut degil!'
  1438. return Response(json.dumps(data),mimetype='application/json')
  1439. else:
  1440. return "yetkisiz islem"
  1441. return render_template('giris.html', error="isim ve sifre giriniz")
  1442. @app.route('/fatuKaydet', methods=['GET', 'POST'])
  1443. def fatuKaydet():
  1444. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1445. odemetip=""
  1446. otogc=""
  1447. if "fatuKDV" in request.form :
  1448. kdvdurum="E"
  1449. else :
  1450. kdvdurum="H"
  1451. if "med" in request.form :
  1452. medurum="E"
  1453. else :
  1454. medurum="H"
  1455. if "irs" in request.form :
  1456. irsdurum="E"
  1457. else :
  1458. irsdurum="H"
  1459. kayitmodu=request.form["kayitmodu"]
  1460. kaynak=request.form["fatuKaynak"]
  1461. hedef=request.form["fatuHedef"]
  1462. kaynakkod=kaynak.split('@')[1]
  1463. if ',' in kaynakkod:
  1464. kaynakkod=kaynakkod.split(',')[0]
  1465. hedefkod=hedef.split('@')[1]
  1466. if ',' in hedefkod:
  1467. hedefkod=hedefkod.split(',')[0]
  1468. if(mak.cari(kaynakkod) is not None and mak.cari(hedefkod) is not None):
  1469. fatura=Fatura()
  1470. fatura.kaydeden=mak.kullanici_getir(session["KULL_ID"])[0]
  1471. print fatura.kaydeden
  1472. fatura.islem=request.form["islemturu"][0]
  1473. gecftip=request.form["hartip"]
  1474. if(gecftip[0]=='G'):
  1475. fatura.fattip='G'
  1476. else:
  1477. fatura.fattip='C'
  1478. vadesay=request.form["vadesay"]
  1479. if(vadesay==0 or vadesay==""):
  1480. vadesay=1
  1481. fatura.vadesay=vadesay
  1482. fatura.tarih=request.form["fatuTarih"]
  1483. turk_tarih=fatura.tarih
  1484. if fatura.islem=='F':
  1485. fatura.vadetarih=request.form["vadeTarih"]
  1486. else:
  1487. fatura.vadetarih=fatura.tarih
  1488. fatura.fisno=request.form["fatuNo"]
  1489. fatura.kaynak=kaynakkod
  1490. fatura.hedef=hedefkod
  1491. fatura.med='H'
  1492. fatura.irs='H'
  1493. if(mak.fisno_kontrol(fatura.fisno)=="var" and kayitmodu=='y'):
  1494. return "fisno mevcut"
  1495. if(fatura.fisno=='' and fatura.islem=='F'):
  1496. return "fisno bos olamaz"
  1497. if 'fkodsec' in request.form :
  1498. fatura.fkod=request.form["fkodsec"]
  1499. if(kayitmodu=='g' and fatura.fkod=='yeni'):
  1500. return "bir fkod seciniz!!!"
  1501. if(kayitmodu=='y' and fatura.fkod!='yeni'):
  1502. return "fkodu yeni seciniz!!!"
  1503. if(fatura.islem=='F'):
  1504. if "stkHarList" in request.form :
  1505. fatura.stharlistno=request.form["stkHarList"]
  1506. stk_onay=mak.stk_kontrol(fatura.stharlistno)
  1507. if(stk_onay=="olumsuz"):
  1508. return "stk listesinde sorun var."
  1509. else:
  1510. return 'stharlist boş olamaz'
  1511. fatura.med=medurum
  1512. fatura.irs=irsdurum
  1513. fatura.kdvdurum=kdvdurum
  1514. fatura.takipkod=request.form["fatuTakipKod"]
  1515. fatura.aciklama=request.form["faciklama"]
  1516. gectutar=request.form["tutar"].replace(',','.')
  1517. if fatura.islem=='F' and gectutar=="":
  1518. gectutar=0
  1519. fatura.tutar=float(gectutar)
  1520. fatisko=request.form["fatisko"]
  1521. if(fatisko!="" and fatisko!=0):
  1522. iskos=mak.fatisko_yap(fatura.stharlistno,fatisko,kdvdurum)
  1523. if(iskos!='tamam'):
  1524. return "iskonto yapilirken hata olustu"
  1525. tutarfsb=mak.stk_fsb_al(fatura.stharlistno)
  1526. if tutarfsb is None:
  1527. return "stk listesinde tanimsiz stok var!"
  1528. tutarsda=float(tutarfsb[0].split('=')[1])
  1529. tutarsha=float(tutarfsb[1].split('=')[1])
  1530. podmsj=""
  1531. #KAPALI-ACIK FATURA ISLEME OLAYI
  1532. if "odemetip" in request.form and fatura.islem=='F':
  1533. ofatura=Fatura()
  1534. ofatura.kaydeden=fatura.kaydeden
  1535. odemenoktasi=request.form["odemenoktasi"]
  1536. odekod=odemenoktasi.split('@')[1]
  1537. ocari=mak.cari(odekod)
  1538. if(ocari):
  1539. ofatura.islem='K'
  1540. ofatura.tarih=fatura.tarih
  1541. #ofatura.vadetarih=fatura.vadetarih
  1542. #22-03-2015 fatura trh ile ayni yapildi.
  1543. ofatura.vadetarih=fatura.tarih
  1544. if(fatura.kdvdurum=='E'):
  1545. ofatura.tutar=tutarsda
  1546. else:
  1547. ofatura.tutar=tutarsha
  1548. if(fatura.fattip=='C'):
  1549. ofatura.fattip='G'
  1550. ofatura.kaynak=odekod
  1551. ofatura.hedef=hedefkod
  1552. else:
  1553. ofatura.fattip='C'
  1554. ofatura.tutar=ofatura.tutar*-1
  1555. ofatura.kaynak=odekod
  1556. ofatura.hedef=hedefkod
  1557. ofatura.fisno=mak.fisno_serial2(ofatura.islem+""+ofatura.fattip,ofatura.fattip)
  1558. ofatura.med='H'
  1559. ofatura.irs='H'
  1560. ofatura.kdvdurum='E'
  1561. ofatura.aciklama=fatura.aciklama+" "+("ödeme").decode('utf-8')
  1562. oksonuc=mak.faturalama(ofatura,'y')
  1563. l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+ofatura.islem+"-"+ofatura.fisno+" fisnolu "+ofatura.kaynak+"<-->"+ofatura.hedef+" tutari "+str(ofatura.tutar)+" faturasini isledi.")
  1564. if(oksonuc!='tamam'):
  1565. podmsj="Peşin Ödeme kaydında bir hata oluştu!"
  1566. else:
  1567. podmsj="pesin odeme kaydi tamamlandi."
  1568. else:
  1569. podmsj="odeme noktasi tanimsiz"
  1570. app.logger.info(podmsj)
  1571. #OTOGC FATURA ISLEME OLAYI
  1572. if "otogc" in request.form and fatura.islem=='F':
  1573. gcfatura=Fatura()
  1574. odmsj=""
  1575. otogcnok=request.form["otogcnok"]
  1576. gckod=otogcnok.split('@')[1]
  1577. gccari=mak.cari(gckod)
  1578. #simdilik vadegunu. gerektikce eklenecek
  1579. if(gccari):
  1580. gcfatura=copy.deepcopy(fatura)
  1581. if(fatura.fattip=='C'):
  1582. gcfatura.fattip='G'
  1583. gcfatura.kaynak=kaynakkod
  1584. gcfatura.hedef=gckod
  1585. else:
  1586. gcfatura.fattip='C'
  1587. gcfatura.kaynak=kaynakkod
  1588. gcfatura.hedef=gckod
  1589. gcfatura.fisno=mak.fisno_serial2(gcfatura.islem+""+gcfatura.fattip,gcfatura.fattip)
  1590. gcfatura.med=fatura.med
  1591. gcfatura.irs='H'
  1592. #vadetarih=datetime(time.strptime(gcfatura.tarih, "%d-%m-%Y")) +datetime.timedelta(days=gccari.vadegunu)
  1593. gcfatura.vadetarih=gcfatura.tarih
  1594. gcfatura.kdvdurum=fatura.kdvdurum
  1595. gcfatura.aciklama=gcfatura.aciklama+" "+fatura.fisno
  1596. otsonuc=mak.faturalama(gcfatura,'y')
  1597. l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+gcfatura.islem+"-"+gcfatura.fisno+" fisnolu "+gcfatura.kaynak+"<-->"+gcfatura.hedef+" tutari "+str(gcfatura.tutar)+" faturasini isledi.")
  1598. if(otsonuc!='tamam'):
  1599. odmsj="otogc kaydında bir hata oluştu!"
  1600. else:
  1601. odmsj="otogc kaydi tamamlandi."
  1602. else:
  1603. odmsj="otogce noktasi tanimsiz"
  1604. app.logger.info(odmsj)
  1605. l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+fatura.islem+"-"+fatura.fisno+" fisnolu "+fatura.kaynak+"<-->"+fatura.hedef+" tutari "+str(fatura.tutar)+" faturasini isledi.")
  1606. sonuc=mak.faturalama(fatura,kayitmodu)#+"---"+podms
  1607. #dizaynkod=request.form["dizaynkod"]
  1608. #if dizaynkod=="3":
  1609. kmakbuz=request.form["kasa_makbuz_bas"]
  1610. if kmakbuz=="1":
  1611. term=TermalSablon()
  1612. term.tarih=turk_tarih
  1613. term.fisno=fatura.fisno
  1614. term.mnot3=request.form["kasiyer"]
  1615. term.mnot=request.form["muhatap"]
  1616. term.tutar=fatura.tutar
  1617. term.hedef=mak.cari(fatura.hedef).isim
  1618. term.ack=fatura.aciklama
  1619. term.yazdir()
  1620. return sonuc
  1621. else:
  1622. return "kaynak veya hedef nokta tanimsiz"
  1623. return render_template('giris.html', error="isim ve sifre giriniz")
  1624. @app.route('/ustGuncelle', methods=['GET', 'POST'])
  1625. def ustGuncelle():
  1626. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1627. gec=0
  1628. fatura=Fatura()
  1629. fatura.fkod=request.form["fkodsec"]
  1630. fisno=request.form["fatuNo"]
  1631. eskifat=mak.fatura_ustbilgi(fatura.fkod)
  1632. eskifis=eskifat[0]
  1633. eski_irsdurum=eskifat[11]
  1634. if fisno==eskifis:
  1635. gec=1
  1636. if(mak.fisno_kontrol(fisno)=='yok' or gec==1 or eski_irsdurum=='E'):
  1637. fatura.fisno=fisno
  1638. fatura.tarih=request.form["fatuTarih"]
  1639. hedef=request.form["fatuHedef"]
  1640. fatura.hedef=hedef.split('@')[1]
  1641. fatura.vadetarih=request.form["vadeTarih"]
  1642. fatura.aciklama=request.form["faciklama"]
  1643. if "med" in request.form :
  1644. medurum="E"
  1645. else :
  1646. medurum="H"
  1647. fatura.med=medurum
  1648. if "irs" in request.form :
  1649. irsdurum="E"
  1650. else :
  1651. irsdurum="H"
  1652. if eski_irsdurum=='E':
  1653. fatura.aciklama+=" irs:"+eskifis
  1654. fatura.irs=irsdurum
  1655. fatura.tutar=float(request.form["tutar"].replace(',','.'))
  1656. return mak.ust_guncelle(fatura)
  1657. else:
  1658. return "fis no mevcut"
  1659. return render_template('giris.html', error="isim ve sifre giriniz")
  1660. @app.route('/vadelemeKontrol', methods=['GET', 'POST'])
  1661. def vadelemeKontrol():
  1662. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1663. fkod = request.args.get('fkod')
  1664. data=mak.vadeleme_kontrol(fkod)
  1665. return Response(json.dumps(data),mimetype='application/json')
  1666. return render_template('giris.html', error="isim ve sifre giriniz")
  1667. @app.route('/faturaUstbilgi', methods=['GET', 'POST'])
  1668. def faturaUstbilgi():
  1669. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1670. fkod = request.args.get('fkod')
  1671. data=mak.fatura_ustbilgi(fkod)
  1672. return Response(json.dumps(data),mimetype='application/json')
  1673. return render_template('giris.html', error="isim ve sifre giriniz")
  1674. @app.route('/fHareketGozlem', methods=['GET', 'POST'])
  1675. def fHareketGozlem():
  1676. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1677. kaynak=""
  1678. tarih=""
  1679. karsicari=""
  1680. fisno=""
  1681. islemturu=""
  1682. hartip=""
  1683. irsdurum='H'
  1684. if('irs' in request.form):
  1685. irsdurum='E'
  1686. if('hartip' in request.form):
  1687. hartip=request.form["hartip"]
  1688. if('fatuKaynak' in request.form):
  1689. kaynak=request.form["fatuKaynak"]
  1690. if('merkeznokta' in request.form):
  1691. kaynak=request.form["merkeznokta"]
  1692. if('fatuTarih' in request.form):
  1693. tarih=request.form["fatuTarih"]
  1694. if('fatuNo' in request.form):
  1695. fisno=request.form["fatuNo"]
  1696. iscari=kaynak.split('@')[1]
  1697. hedef=request.form["fatuHedef"]
  1698. if (hedef!="" and '@' in hedef):
  1699. karsicari=hedef.split('@')[1]
  1700. if('islemturu' in request.form):
  1701. islemturu=request.form["islemturu"]
  1702. islemturu=islemturu[0]
  1703. if(islemturu!='F'):
  1704. hartip=""
  1705. karsicari=""
  1706. har_rapor=mak.carihar_bilgi(iscari,karsicari,tarih,fisno,islemturu,hartip,irsdurum,sonuc='html',modul='f')
  1707. return Response(json.dumps(har_rapor),mimetype='application/json')
  1708. return render_template('giris.html', error="isim ve sifre giriniz")
  1709. '''
  1710. 23:11 30.10.2014
  1711. @app.route('/fkodListAl', methods=['GET', 'POST'])
  1712. def fkodListAl():
  1713. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1714. kaynak=""
  1715. tarih=""
  1716. hedef=""
  1717. fisno=""
  1718. islemturu=""
  1719. if('kaynak' in request.args):
  1720. kaynak=request.args.get('kaynak')
  1721. if kaynak!="":
  1722. iscari=kaynak.split('@')[1]
  1723. else:
  1724. iscari=""
  1725. if('hedef' in request.args):
  1726. hedef=request.args.get('hedef')
  1727. if hedef!="":
  1728. karsicari=hedef.split('@')[1]
  1729. else:
  1730. karsicari=""
  1731. if('tarih' in request.args):
  1732. tarih=request.args.get('tarih')
  1733. sonuc=mak.carihar_bilgi(iscari,karsicari,tarih,fisno,islemturu,sonuc='dizi')
  1734. fkodlar=[]
  1735. if sonuc:
  1736. for satir in sonuc:
  1737. print satir[8]
  1738. fkodlar.append(satir[8])
  1739. return Response(json.dumps(fkodlar),mimetype='application/json')
  1740. return render_template('giris.html', error="isim ve sifre giriniz")
  1741. '''
  1742. @app.route('/sHareketGozlem', methods=['GET', 'POST'])
  1743. def sHareketGozlem():
  1744. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1745. log_yetki=95
  1746. yetki=mak.yetki_al(session['KULL_ID'])
  1747. if('stokod' in request.args and 'kaynak' in request.args and 'shgun' in request.args):
  1748. stkod = request.args.get('stokod')
  1749. iscari = request.args.get('kaynak')
  1750. gun = request.args.get('shgun')
  1751. if(iscari==""):
  1752. iscari=""
  1753. else:
  1754. iscari=iscari.split('@')[1]
  1755. else:
  1756. kaynak=request.form["fatuKaynak"]
  1757. iscari=kaynak.split('@')[1]
  1758. stkod=request.form["stkStokKodu"]
  1759. har_rapor=mak.sthar_bilgi(stkod,iscari,str(gun))
  1760. if (har_rapor=="<br>"):har_rapor="hareket yok."
  1761. if(int(yetki)<log_yetki):
  1762. l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+mak.stok(stkod).isim+" stok hareketi izlendi.")
  1763. return Response(json.dumps(har_rapor),mimetype='application/json')
  1764. return render_template('giris.html', error="isim ve sifre giriniz")
  1765. @app.route('/cHareketGozlem', methods=['GET', 'POST'])
  1766. def cHareketGozlem():
  1767. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1768. tarih=""
  1769. fisno=""
  1770. kaynak=request.form["kod"]
  1771. chgun=request.form["chgun"]
  1772. #kaynak=kaynak.split('@')[1]
  1773. hedef=request.form["kod2"]
  1774. har_rapor=mak.carihar_bilgi(kaynak,hedef,tarih,fisno,islemturu="",hartip="",irsdurum="",sonuc='html',modul="c",chgun=int(chgun))
  1775. l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+mak.cari(kaynak).isim+" carisinin hareketi izlendi.")
  1776. return Response(json.dumps(har_rapor),mimetype='application/json')
  1777. return render_template('giris.html', error="isim ve sifre giriniz")
  1778. @app.route('/cHareketGozlem2', methods=['GET', 'POST'])
  1779. def cHareketGozlem2():
  1780. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1781. kaynak=request.form["kod2"]
  1782. hedef=request.form["kod"]
  1783. bastarih=request.form["hrkBasTrh"]
  1784. sontarih=request.form["hrkSonTrh"]
  1785. har_rapor=mak.carihar_dokum(kaynak,hedef,bastarih,sontarih,sonuc='html')
  1786. return Response(json.dumps(har_rapor),mimetype='application/json')
  1787. return render_template('giris.html', error="isim ve sifre giriniz")
  1788. @app.route('/stokModul', methods=['GET', 'POST'])
  1789. def stokModul():
  1790. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1791. poscari=mak.ayar_al(session['KULL_ID'],'pos_cari')
  1792. pos_dizin=mak.ayar_al('999','pos_dizin')
  1793. pdosyalar=[]
  1794. pdosyalar = [f for f in os.listdir(pos_dizin) if re.match(r'.*\.GTF', f)]
  1795. merkez=mak.ayar_al(session['KULL_ID'],'merkez_cari')
  1796. if('stok' in request.args):
  1797. stokod = request.args.get('stok')
  1798. else:
  1799. stokod='test001'
  1800. if('harkod' in request.args):
  1801. harkod = request.args.get('harkod')
  1802. return "silme islem sonuc: "+mak.sthar_sil(harkod)+"<br><a href=./stokModul>GERI DON</a>"
  1803. return render_template('stokModul.html',stok=mak.stok(stokod),pdosyalar=pdosyalar,merkez_nokta="@"+merkez,poscari="@xx")
  1804. return render_template('giris.html', error="isim ve sifre giriniz")
  1805. @app.route('/stokSil', methods=['GET', 'POST'])
  1806. def stokSil():
  1807. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1808. modul_yetki="99"
  1809. yetki=mak.yetki_al(session['KULL_ID'])
  1810. if(str(yetki) in modul_yetki):
  1811. if('kod' in request.args):
  1812. kod = request.args.get('kod')
  1813. data=""
  1814. stok=Stok()
  1815. stok=mak.stok(kod)
  1816. if(stok):
  1817. if mak.stok_harkont(stok)=='yok':
  1818. sonuc=mak.stok_guncelle(stok,'s')
  1819. if(sonuc=="tamam"):
  1820. data="stok silindi"
  1821. else:
  1822. data="stok silinirken veritabanli hata"
  1823. else:
  1824. data="hareketi olan stok silinemez."
  1825. else:
  1826. data="silinecek stok bulunamadi"
  1827. return Response(json.dumps(data),mimetype='application/json')
  1828. else:
  1829. return "yetkisiz erisim"
  1830. return render_template('giris.html', error="isim ve sifre giriniz")
  1831. @app.route('/stokKaydet', methods=['GET', 'POST'])
  1832. def stokKaydet():
  1833. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1834. data=""
  1835. barkod_onay="hayir"
  1836. stok=Stok()
  1837. kod=request.form["kod"]
  1838. barkod3=request.form["barkod3"]
  1839. barkod2=request.form["barkod2"]
  1840. barkod1=request.form["barkod1"]
  1841. barkod6=request.form["barkod6"]
  1842. barkod5=request.form["barkod5"]
  1843. barkod4=request.form["barkod4"]
  1844. stok=mak.stok(kod)
  1845. if(mak.barkod_kontrol(kod,barkod6) is None or barkod6=="" or barkod6=='NULL'):
  1846. if(mak.barkod_kontrol(kod,barkod5) is None or barkod5=="" or barkod5=='NULL'):
  1847. if(mak.barkod_kontrol(kod,barkod4) is None or barkod4=="" or barkod4=='NULL'):
  1848. if(mak.barkod_kontrol(kod,barkod3) is None or barkod3=="" or barkod3=='NULL'):
  1849. if(mak.barkod_kontrol(kod,barkod2) is None or barkod2=="" or barkod2=='NULL'):
  1850. if(mak.barkod_kontrol(kod,barkod1) is None or barkod1=="" or barkod1=='NULL'):
  1851. barkod_onay="tamam"
  1852. #print "-*",barkod1,barkod2,barkod3,barkod4,barkod5,barkod6
  1853. else:
  1854. barkod_onay="barkod1"
  1855. else:
  1856. barkod_onay="barkod2"
  1857. else:
  1858. barkod_onay="barkod3"
  1859. else:
  1860. barkod_onay="barkod4"
  1861. else:
  1862. barkod_onay="barkod5"
  1863. else:
  1864. barkod_onay="barkod6"
  1865. if(barkod_onay=="tamam"):
  1866. mod='y'
  1867. if(stok):
  1868. mod='g'
  1869. else:
  1870. stok=Stok()
  1871. stok.isim=request.form["ad"]
  1872. stok.alis_fiat1=request.form["al1fiat"]
  1873. stok.alis_fiat2=request.form["al2fiat"]
  1874. stok.alis_fiat3=request.form["al3fiat"]
  1875. stok.satis_fiat1=request.form["satis_fiat1"]
  1876. stok.satis_fiat2=request.form["satis_fiat2"]
  1877. stok.satis_fiat3=request.form["satis_fiat3"]
  1878. stok.barkod1=barkod1
  1879. stok.barkod2=barkod2
  1880. stok.barkod3=barkod3
  1881. stok.barkod4=barkod4
  1882. stok.barkod5=barkod5
  1883. stok.barkod6=barkod6
  1884. stok.alis_kdv_kodu=request.form["alkdv"]
  1885. stok.kdv_orani=request.form["satkdv"]
  1886. stok.grup_kodu=request.form["grupkod"]
  1887. stok.kod_1=request.form["kod1"]
  1888. stok.kod_2=request.form["kod2"]
  1889. stok.kod_3=request.form["kod3"]
  1890. stok.kod_4=request.form["kod4"]
  1891. stok.kod_5=request.form["kod5"]
  1892. stok.olcu_br1=request.form["olcubr1"]
  1893. stok.olcu_br2=request.form["olcubr2"]
  1894. stok.birim_agirlik=request.form["birimag"]
  1895. stok.satici_kodu=request.form["satici_kodu"]
  1896. stok.payda=request.form["pkadet"]
  1897. if(mod=='g'):
  1898. sonuc=mak.stok_guncelle(stok,mod)
  1899. if(sonuc=="tamam"):
  1900. data="stok guncellendi"
  1901. else:
  1902. data="stok guncellenirken veritabanli hata"
  1903. else:
  1904. stok.kod=kod
  1905. #yeni stok olarak eklenecek.
  1906. sonuc=mak.stok_guncelle(stok,mod)
  1907. if(sonuc=="tamam"):
  1908. data="yeni stok eklendi"
  1909. else:
  1910. data="stok eklenirken veritabanli hata"
  1911. else:
  1912. data="tekrarlanan barkod: "+barkod_onay
  1913. return Response(json.dumps(data),mimetype='application/json')
  1914. return render_template('giris.html', error="isim ve sifre giriniz")
  1915. @app.route('/cariNesneGetir', methods=['GET', 'POST'])
  1916. def cariNesneGetir():
  1917. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1918. cari=Cari()
  1919. kriter = request.args.get('kriter')
  1920. if(kriter=='kod'):
  1921. carikod = request.args.get('kod')
  1922. cari=mak.cari(carikod)
  1923. else:
  1924. cariblok = request.args.get('ad')
  1925. if '@' in cariblok:
  1926. carikod=cariblok.split('@')[1]
  1927. cari=mak.cari(carikod)
  1928. else:
  1929. cari=mak.cari2(cariblok)
  1930. if(cari!=None):
  1931. cari=cari.jsonla()
  1932. else:
  1933. cari=""
  1934. return Response(json.dumps(cari),mimetype='application/json')
  1935. return render_template('giris.html', error="isim ve sifre giriniz")
  1936. @app.route('/cariModul', methods=['GET', 'POST'])
  1937. def cariModul():
  1938. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1939. merkez=mak.ayar_al(session['KULL_ID'],'merkez_sube')
  1940. mcari=mak.ayar_al(session['KULL_ID'],'merkez_cari')
  1941. if('fkod' in request.args):
  1942. fkod = request.args.get('fkod')
  1943. islem_turu=mak.fatura_islemturu(fkod)
  1944. f_bilgi=mak.fatura_ustbilgi(fkod)
  1945. kaynak=f_bilgi[6]
  1946. hedef=f_bilgi[7]
  1947. if(islem_turu=='F'):
  1948. return redirect(url_for('faturaDetay', fkod=fkod))
  1949. else:
  1950. return redirect(url_for('cariModul', cari=hedef))
  1951. if('cari' in request.args):
  1952. carikod = request.args.get('cari')
  1953. carikod = carikod.split('@')[1]
  1954. else:
  1955. carikod=mcari
  1956. cari=mak.cari(carikod)
  1957. cari=cari.jsonla()
  1958. return render_template('cariModul.html',cari=cari,mcari=mcari,mkod=merkez)
  1959. return render_template('giris.html', error="isim ve sifre giriniz")
  1960. @app.route('/cariSorgu', methods=['GET', 'POST'])
  1961. def cariSorgu():
  1962. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1963. kriter=request.form["kriter"]
  1964. aranan=request.form["arama"]
  1965. sor_rapor=mak.cari_sorgu(kriter,aranan)
  1966. return Response(json.dumps(sor_rapor),mimetype='application/json')
  1967. return render_template('giris.html', error="isim ve sifre giriniz")
  1968. @app.route('/cariSorgu2', methods=['GET', 'POST'])
  1969. def cariSorgu2():
  1970. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1971. kriter=request.form["kriter"]
  1972. aranan=request.form["arama"]
  1973. sor=mak.cari_sorgu(kriter,aranan,'dizi')
  1974. cariler= []
  1975. for sorx in sor:
  1976. cariler.append(sorx[0])
  1977. return Response(json.dumps(cariler),mimetype='application/json')
  1978. return render_template('giris.html', error="isim ve sifre giriniz")
  1979. @app.route('/cariSil', methods=['GET', 'POST'])
  1980. def cariSil():
  1981. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  1982. sisim=""
  1983. modul_yetki=["99","98"]
  1984. yetki=mak.yetki_al(session['KULL_ID'])
  1985. if(str(yetki) in modul_yetki):
  1986. if('kod' in request.args):
  1987. kod = request.args.get('kod')
  1988. data=""
  1989. cari=Cari()
  1990. cari=mak.cari(kod)
  1991. if(cari):
  1992. sisim=mak.cari(kod).isim
  1993. sonuc=mak.cari_guncelle(cari,'s')
  1994. if(sonuc=="tamam"):
  1995. data="cari silindi"
  1996. else:
  1997. data="cari silinirken veritabanli hata"
  1998. else:
  1999. data="silinecek cari bulunamadi"
  2000. l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+sisim+" "+data)
  2001. return Response(json.dumps(data),mimetype='application/json')
  2002. else:
  2003. return "yetkisiz erisim"
  2004. return render_template('giris.html', error="isim ve sifre giriniz")
  2005. @app.route('/cariKaydet', methods=['GET', 'POST'])
  2006. def cariKaydet():
  2007. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2008. data=""
  2009. cari=Cari()
  2010. kod=request.form["kod"]
  2011. merkez=mak.ayar_al(session['KULL_ID'],'merkez_cari')
  2012. modul_yetki="99"
  2013. yetki=mak.yetki_al(session['KULL_ID'])
  2014. if(str(yetki)!=modul_yetki and kod==merkez):
  2015. return "merkez cari guncellenemez."
  2016. else:
  2017. cari=mak.cari(kod)
  2018. mod='y'
  2019. if(cari!=None):
  2020. mod='g'
  2021. else:
  2022. cari=Cari()
  2023. cari.isim=request.form["ad"]
  2024. cari.adres = request.form["adres"]
  2025. cari.tel=request.form["tel"]
  2026. cari.tel2=request.form["tel2"]
  2027. cari.vergino=request.form["vergino"]
  2028. cari.vergiyer=request.form["vergiyer"]
  2029. cari.eposta=request.form["eposta"]
  2030. cari.cari_tip=request.form["ctip"]
  2031. cari.iban=request.form["iban"]
  2032. cari.grupkod=request.form["grupkod"]
  2033. cari.vade_gunu=request.form["vadegunu"]
  2034. cari.kod1=request.form["kod1"]
  2035. if(mod=='g'):
  2036. sonuc=mak.cari_guncelle(cari,mod)
  2037. if(sonuc=="tamam"):
  2038. data="cari guncellendi"
  2039. else:
  2040. data="cari guncellenirken veritabanli hata"
  2041. else:
  2042. cari.kod=kod
  2043. #yeni cari olarak eklenecek.
  2044. sonuc=mak.cari_guncelle(cari,mod)
  2045. if(sonuc=="tamam"):
  2046. data="yeni cari eklendi"
  2047. else:
  2048. data="cari eklenirken veritabanli hata"
  2049. l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+mak.cari(kod).isim+" "+data)
  2050. return Response(json.dumps(data),mimetype='application/json')
  2051. return render_template('giris.html', error="isim ve sifre giriniz")
  2052. @app.route('/carikodDegis', methods=['GET', 'POST'])
  2053. def carikodDegis():
  2054. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2055. sisim=""
  2056. modul_yetki="99"
  2057. yetki=mak.yetki_al(session['KULL_ID'])
  2058. if(str(yetki)==modul_yetki):
  2059. if('kod' in request.args):
  2060. kod = request.form['kod']
  2061. yenikod = request.form['cariYkod']
  2062. data=""
  2063. cari=Cari()
  2064. cari=mak.cari(kod)
  2065. if(cari):
  2066. sonuc=mak.carikod_degistir(kod,yenikod)
  2067. if(sonuc=="tamam"):
  2068. data="carikod degisti"
  2069. l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+kod+" eski cari "+yenikod+" yeni cari ile degisti.")
  2070. else:
  2071. data="carikod değgisirken veritabanli hata"
  2072. else:
  2073. data="degisecek cari bulunamadi"
  2074. return Response(json.dumps(data),mimetype='application/json')
  2075. else:
  2076. return "yetkisiz erisim"
  2077. return render_template('giris.html', error="isim ve sifre giriniz")
  2078. @app.route('/cariYaslandir', methods=['GET', 'POST'])
  2079. def cariYaslandir():
  2080. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2081. rapor=""
  2082. kod=request.form["kod"]
  2083. merkez=request.form["kod2"]
  2084. tarih=request.form["cariYasTrh"]
  2085. rapor=mak.cari_yaslandirma(merkez,kod,tarih)
  2086. return Response(json.dumps(rapor),mimetype='application/json')
  2087. return render_template('giris.html', error="isim ve sifre giriniz")
  2088. @app.route('/raporParamAl', methods=['GET', 'POST'])
  2089. def raporParamAl():
  2090. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2091. dosya = request.args.get('dosya')
  2092. paramlar=mak.rapor_paramlar(dosya)
  2093. return Response(json.dumps(paramlar),mimetype='application/json')
  2094. return render_template('giris.html', error="isim ve sifre giriniz")
  2095. @app.route('/cariBorcDokum', methods=['GET', 'POST'])
  2096. def cariBorcDokum():
  2097. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2098. l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+" cari borc-dokum raporu aldi.")
  2099. mkod=request.form["mkod"]
  2100. rapor=mak.cari_borc_dokum(str(mkod))
  2101. return Response(json.dumps(rapor),mimetype='application/json')
  2102. return render_template('giris.html', error="isim ve sifre giriniz")
  2103. @app.route('/odemePlani', methods=['GET', 'POST'])
  2104. def odemePlani():
  2105. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2106. l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+" odeme plan raporu aldi.")
  2107. mkod=request.form["mkod"]
  2108. rapor=mak.cari_odeme_plani(str(mkod),"60","html")
  2109. return Response(json.dumps(rapor),mimetype='application/json')
  2110. return render_template('giris.html', error="isim ve sifre giriniz")
  2111. @app.route('/kdvliSrapor', methods=['GET', 'POST'])
  2112. def kdvliSrapor():
  2113. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2114. l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+" market satis raporu aldi.")
  2115. bastarih=request.form["mbas_tarih"]
  2116. sontarih=request.form["mson_tarih"]
  2117. subekodu=request.form["subekod"]
  2118. rapor=mak.satis_raporu_kdvli(subekodu,bastarih,sontarih)
  2119. return Response(json.dumps(rapor),mimetype='application/json')
  2120. return render_template('giris.html', error="isim ve sifre giriniz")
  2121. @app.route('/pazarRapor', methods=['GET', 'POST'])
  2122. def pazarRapor():
  2123. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2124. l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+" pazar satis raporu aldi.")
  2125. mkod=request.form["mkod"]
  2126. bastarih=request.form["pbas_tarih"]
  2127. sontarih=request.form["pson_tarih"]
  2128. subekodu=request.form["pazarkod"]
  2129. rapor=mak.pazar_rapor(mkod,subekodu,bastarih,sontarih)
  2130. return Response(json.dumps(rapor),mimetype='application/json')
  2131. return render_template('giris.html', error="isim ve sifre giriniz")
  2132. @app.route('/kontrolcariBorcDokum', methods=['GET', 'POST'])
  2133. def kontrolcariBorcDokum():
  2134. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2135. l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+" kontrolcariBorcDokum raporu aldi.")
  2136. mkod=request.form["mkod"]
  2137. rapor=mak.kontrol_cari_dokum(str(mkod))
  2138. return Response(json.dumps(rapor),mimetype='application/json')
  2139. return render_template('giris.html', error="isim ve sifre giriniz")
  2140. @app.route('/kontrolCariHareket', methods=['GET', 'POST'])
  2141. def kontrolCariHareket():
  2142. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2143. l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+" kontrolcarihareket2 raporu aldi.")
  2144. mkod=request.form["mkod"]
  2145. rapor=mak.kontrol_cari_hareket(str(mkod))
  2146. return Response(json.dumps(rapor),mimetype='application/json')
  2147. return render_template('giris.html', error="isim ve sifre giriniz")
  2148. @app.route('/ibanDokum', methods=['GET', 'POST'])
  2149. def ibanDokum():
  2150. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2151. l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+" iban dokum raporu aldi.")
  2152. rapor=mak.iban_dokum()
  2153. return Response(json.dumps(rapor),mimetype='application/json')
  2154. return render_template('giris.html', error="isim ve sifre giriniz")
  2155. @app.route('/entegre', methods=['GET', 'POST'])
  2156. def entegre():
  2157. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2158. l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+" entegre raporu aldi.")
  2159. rapor=mak.entegre()
  2160. return Response(json.dumps(rapor),mimetype='application/json')
  2161. return render_template('giris.html', error="isim ve sifre giriniz")
  2162. @app.route('/kasaRapor', methods=['GET', 'POST'])
  2163. def kasaRapor():
  2164. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2165. bastarih=request.form["bas_tarih"]
  2166. sontarih=request.form["son_tarih"]
  2167. kasakod=request.form["kasakod"]
  2168. kasakod=kasakod.split('@')[1]
  2169. rapor=mak.kasa_rapor(kasakod,bastarih,sontarih)
  2170. if 'krlm' in request.form:
  2171. rapor=mak.kasa_rapor_kir(kasakod,bastarih,sontarih)
  2172. return Response(json.dumps(rapor),mimetype='application/json')
  2173. return render_template('giris.html', error="isim ve sifre giriniz")
  2174. @app.route('/kasaBankaRapor', methods=['GET', 'POST'])
  2175. def kasaBankaRapor():
  2176. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2177. merkez=mak.ayar_al(session['KULL_ID'],'merkez_cari')
  2178. rapor=mak.kasabanka_rapor(merkez)
  2179. print "ssss"
  2180. return Response(json.dumps(rapor),mimetype='application/json')
  2181. return render_template('giris.html', error="isim ve sifre giriniz")
  2182. @app.route('/siparisModul', methods=['GET', 'POST'])
  2183. def siparisModul():
  2184. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2185. modul_yetki=["98","99"]
  2186. yetki=mak.yetki_al(session['KULL_ID'])
  2187. if(str(yetki) in modul_yetki):
  2188. if('stok' in request.args):
  2189. stokod = request.args.get('stok')
  2190. else:
  2191. stokod='5555'
  2192. hardos = mak.stk_list_al()
  2193. merkez=mak.ayar_al(session['KULL_ID'],'merkez_cari')
  2194. fisler=mak.spr_fisler(merkez)
  2195. if('fkod' in request.args):
  2196. fkod = request.args.get('fkod')
  2197. return render_template('siparisModul.html',stok=mak.stok(stokod),hardos=hardos,fkod=fkod,fisler=fisler)
  2198. return render_template('siparisModul.html',stok=mak.stok(stokod),hardos=hardos,fisler=fisler)
  2199. else:
  2200. return "yetkisiz erisim"
  2201. return render_template('giris.html', error="isim ve sifre giriniz")
  2202. @app.route('/sayimModul', methods=['GET', 'POST'])
  2203. def sayimModul():
  2204. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2205. hardos = mak.stk_list_al()
  2206. if('fkod' in request.args):
  2207. fkod = request.args.get('fkod')
  2208. return render_template('sayimModul.html',hardos=hardos,fkod=fkod)
  2209. return render_template('sayimModul.html',hardos=hardos)
  2210. return render_template('giris.html', error="isim ve sifre giriniz")
  2211. @app.route('/yetkiliModul', methods=['GET', 'POST'])
  2212. def yetkiliModul():
  2213. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2214. modul_yetki=["99","98"]
  2215. yetki=mak.yetki_al(session['KULL_ID'])
  2216. if(str(yetki) in modul_yetki):
  2217. return render_template('yetkiliModul.html')
  2218. else:
  2219. return "yetkisiz erisim"
  2220. return render_template('giris.html', error="isim ve sifre giriniz")
  2221. @app.route('/kullanicilar', methods=['GET', 'POST'])
  2222. def kullanicilar():
  2223. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2224. data=mak.kullanicilar()
  2225. return Response(json.dumps(data),mimetype='application/json')
  2226. return render_template('giris.html', error="isim ve sifre giriniz")
  2227. @app.route('/kullaniciGetir', methods=['GET', 'POST'])
  2228. def kullaniciGetir():
  2229. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2230. no=request.args.get('no')
  2231. data=mak.kullanici_getir(no)
  2232. return Response(json.dumps(data),mimetype='application/json')
  2233. return render_template('giris.html', error="isim ve sifre giriniz")
  2234. @app.route('/kullaniciEkle', methods=['GET', 'POST'])
  2235. def kullaniciEkle():
  2236. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2237. data=None
  2238. mod='g'
  2239. kull=Kullanici()
  2240. if "kul_isim" in request.form:
  2241. kull.no=request.form['kul_no']
  2242. kull.isim=request.form['kul_isim']
  2243. #if mak.kull_kontrol(kull.isim):
  2244. kull.sifre=request.form['kul_sifre']
  2245. kull.uisim=request.form['kul_uisim']
  2246. kull.eposta=request.form['kul_eposta']
  2247. kull.yetki=request.form['kul_yetki']
  2248. if(kull.no=='yeni'):
  2249. mod='y'
  2250. data=mak.kullanici_islem(kull,mod)
  2251. #else:
  2252. #data="bu kullanici mevcut"
  2253. return Response(json.dumps(data),mimetype='application/json')
  2254. return render_template('giris.html', error="isim ve sifre giriniz")
  2255. @app.route('/kullaniciSil', methods=['GET', 'POST'])
  2256. def kullaniciSil():
  2257. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2258. data=None
  2259. mod='s'
  2260. kull=Kullanici()
  2261. if "kul_isim" in request.form:
  2262. kull.no=request.form['kul_no']
  2263. data=mak.kullanici_islem(kull,mod)
  2264. return Response(json.dumps(data),mimetype='application/json')
  2265. return render_template('giris.html', error="isim ve sifre giriniz")
  2266. @app.route('/bagliKul', methods=['GET', 'POST'])
  2267. def bagliKul():
  2268. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2269. data=None
  2270. data=mak.girdi_liste()
  2271. return Response(json.dumps(data),mimetype='application/json')
  2272. return render_template('giris.html', error="isim ve sifre giriniz")
  2273. @app.route('/bagliSil', methods=['GET', 'POST'])
  2274. def bagliSil():
  2275. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2276. data='vt baglanti silinirken hata olustu.'
  2277. id=request.form['kul_no']
  2278. sonuc=mak.giris_sil(id)
  2279. if sonuc=='tamam':
  2280. data=mak.girdi_liste()
  2281. return Response(json.dumps(data),mimetype='application/json')
  2282. return render_template('giris.html', error="isim ve sifre giriniz")
  2283. @app.route('/ayarEkle', methods=['GET', 'POST'])
  2284. def ayarEkle():
  2285. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2286. data=None
  2287. mod='g'
  2288. ayar=Ayar()
  2289. if "ayar_kulno" in request.form:
  2290. ayar.no=request.form['ayar_no']
  2291. ayar.kulno=request.form['ayar_kulno']
  2292. ayar.bas=request.form['ayar_bas']
  2293. ayar.deger=request.form['ayar_deger']
  2294. if(ayar.no=='yeni'):
  2295. mod='y'
  2296. data=mak.ayar_islem(ayar,mod)
  2297. return Response(json.dumps(data),mimetype='application/json')
  2298. return render_template('giris.html', error="isim ve sifre giriniz")
  2299. @app.route('/ayarSil', methods=['GET', 'POST'])
  2300. def ayarSil():
  2301. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2302. data=None
  2303. mod='s'
  2304. ayar=Ayar()
  2305. if "ayar_kulno" in request.form:
  2306. ayar.no=request.form['ayar_no']
  2307. data=mak.ayar_islem(ayar,mod)
  2308. return Response(json.dumps(data),mimetype='application/json')
  2309. return render_template('giris.html', error="isim ve sifre giriniz")
  2310. @app.route('/ayarlarGetir', methods=['GET', 'POST'])
  2311. def ayarlarGetir():
  2312. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2313. data=None
  2314. data=mak.ayar_liste()
  2315. return Response(json.dumps(data),mimetype='application/json')
  2316. return render_template('giris.html', error="isim ve sifre giriniz")
  2317. @app.route('/ayarGetir', methods=['GET', 'POST'])
  2318. def ayarGetir():
  2319. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2320. no=request.args.get('no')
  2321. data=mak.ayar_getir(no)
  2322. #data[3]=data[3]
  2323. return Response(json.dumps(data),mimetype='application/json')
  2324. return render_template('giris.html', error="isim ve sifre giriniz")
  2325. @app.route('/bakim', methods=['GET', 'POST'])
  2326. def bakim():
  2327. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2328. bakimno=request.form['bakim_no']
  2329. data=mak.bakim1(str(bakimno))
  2330. #print data
  2331. #data[3]=data[3]
  2332. return Response(json.dumps(data),mimetype='application/json')
  2333. return render_template('giris.html', error="isim ve sifre giriniz")
  2334. @app.route('/servisBaslat', methods=['GET', 'POST'])
  2335. def servisBaslat():
  2336. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2337. data="tamam.kontrol ediniz."
  2338. arge=Arge()
  2339. servisler=arge.servisler_al()
  2340. for servis in servisler:
  2341. os.system(servis)
  2342. return Response(json.dumps(data),mimetype='application/json')
  2343. return render_template('giris.html', error="isim ve sifre giriniz")
  2344. @app.route('/raporModul', methods=['GET', 'POST'])
  2345. def raporModul():
  2346. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2347. dizin='rapor'
  2348. merkez=mak.ayar_al(session['KULL_ID'],'merkez_sube')
  2349. raporlist=mak.dizin_cek(dizin,"rpr")
  2350. return render_template('raporModul.html',mkod=merkez,raporlar=raporlist)
  2351. return render_template('giris.html', error="isim ve sifre giriniz")
  2352. @app.route('/altyapiModul', methods=['GET', 'POST'])
  2353. def altyapiModul():
  2354. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2355. modul_yetki=["99","98"]
  2356. yetki=mak.yetki_al(session['KULL_ID'])
  2357. if(str(yetki) in modul_yetki):
  2358. dizin='rapor'
  2359. if('mod' in request.args):
  2360. dizin = request.args.get('mod')
  2361. sqllist=mak.dizin_cek(dizin)
  2362. return render_template('altyapiModul.html',sqller=sqllist,mod=dizin,kayitmodu='w')
  2363. else:
  2364. return "yetkisiz erisim"
  2365. return render_template('giris.html', error="isim ve sifre giriniz")
  2366. @app.route('/veriModul', methods=['GET', 'POST'])
  2367. def veriModul():
  2368. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2369. l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+" veri modulune girdi.")
  2370. dosyalar=[]
  2371. dosyalar = [f for f in os.listdir(etoku_dizin) if re.match(r'.*\.ini', f)]
  2372. dbler = [f for f in os.listdir(db_dizin) if re.match(r'.*\.db', f)]
  2373. tablolist=mak.dizin_cek(etodizin,"","")
  2374. return render_template('veriModul.html',dosyalar=dosyalar,dbler=dbler,tablolar=tablolist)
  2375. return render_template('giris.html', error="isim ve sifre giriniz")
  2376. @app.route('/veriAyarAl', methods=['GET', 'POST'])
  2377. def veriAyarAl():
  2378. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2379. l.yaz("veri ayarlari aliniyor.")
  2380. dosyalar=[]
  2381. dosyalar=os.listdir(etoku_dizin)
  2382. ini_dosya=request.args.get('ini')
  2383. ayar=ConfigParser()
  2384. ayar.read(etoku_dizin+ini_dosya)
  2385. veri_dosya=ayar.get("excel","dosya")
  2386. book = xlrd.open_workbook(etoku_dizin+veri_dosya)
  2387. sayfalar=book.sheet_names()
  2388. data=[]
  2389. data.append(veri_dosya)
  2390. data.append(sayfalar)
  2391. if(sayfalar):
  2392. return Response(json.dumps(data),mimetype='application/json')
  2393. return render_template('veriModul.html',dosyalar=dosyalar)
  2394. return render_template('giris.html', error="isim ve sifre giriniz")
  2395. @app.route('/veriYstk', methods=['GET', 'POST'])
  2396. def veriYstk():
  2397. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2398. secdosya=request.args.get('dosya')
  2399. secsayfa=request.args.get('sayfa')
  2400. komut=etoku_komut+secdosya+" "+secsayfa+" > etoku.log"
  2401. print komut
  2402. komson=os.system(komut)
  2403. if(komson==0):
  2404. data=open('etoku.log','r').read()
  2405. else:
  2406. data="sorun olustu."
  2407. l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+secsayfa+"@"+secdosya+" veriYstk islemi yapti.")
  2408. return Response(json.dumps(data),mimetype='application/json')
  2409. return render_template('giris.html', error="isim ve sifre giriniz")
  2410. @app.route('/vtYedekle', methods=['GET', 'POST'])
  2411. def vtYedekle():
  2412. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2413. l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+" vtyedek aldi.")
  2414. vt_isim=mak.ayar_al("999","veritabani")
  2415. data=mak.vt_yedekle(vt_isim)
  2416. #yedek geri yukleme
  2417. # mysql -u root -pmysql_2828 west < westyedek.sql
  2418. return Response(json.dumps(data),mimetype='application/json')
  2419. return render_template('giris.html', error="isim ve sifre giriniz")
  2420. @app.route('/stkDbAktar', methods=['GET', 'POST'])
  2421. def stkDbAktar():
  2422. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2423. dbsec=request.form["dblist"]
  2424. db_dizin=mak.ayar_al('999','db_dizin')
  2425. data=mak.stkdb_icaktar(db_dizin+dbsec)
  2426. return Response(json.dumps(data),mimetype='application/json')
  2427. return render_template('giris.html', error="isim ve sifre giriniz")
  2428. @app.route('/stkYftr', methods=['GET', 'POST'])
  2429. def stkYftr():
  2430. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2431. data="sunucu parametre eksik"
  2432. kdvdurum='H'
  2433. med='H'
  2434. if "stkno" in request.args :
  2435. stkno=request.args.get('stkno')
  2436. print stkno," faturalastiriliyor...."
  2437. ax=datetime.datetime.now()
  2438. secili=request.args.get('kdv')
  2439. if secili=='true':
  2440. kdvdurum='E'
  2441. secilimed=request.args.get('med')
  2442. if secilimed=='true':
  2443. med='E'
  2444. kaydeden=mak.kullanici_getir(session["KULL_ID"])[0]
  2445. data=mak.stkYftr(stkno,kdvdurum,med,kaydeden)
  2446. hardos = mak.stk_list_al()
  2447. ay=datetime.datetime.now()
  2448. print "faturalastirma bitti.",(ay-ax).total_seconds()
  2449. return Response(json.dumps(data),mimetype='application/json')
  2450. return render_template('giris.html', error="isim ve sifre giriniz")
  2451. @app.route('/stkKopya', methods=['GET', 'POST'])
  2452. def stkKopya():
  2453. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2454. data="parametre eksik"
  2455. if "stkno" in request.args :
  2456. stkno=request.args.get('stkno')
  2457. print "stk_kopyala1",stkno
  2458. data=mak.stk_kopyala(stkno)
  2459. print "stk_kopyala",data
  2460. return Response(json.dumps(data),mimetype='application/json')
  2461. return render_template('giris.html', error="isim ve sifre giriniz")
  2462. @app.route('/shSifirlama', methods=['GET', 'POST'])
  2463. def shSifirlama():
  2464. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2465. data="parametre eksik"
  2466. if "stkno" in request.args :
  2467. stkno=request.args.get('stkno')
  2468. carikod=request.args.get('carikod')
  2469. caribag=request.args.get('caribag')
  2470. data=mak.stk_shsifirlama(stkno,"28",carikod,caribag)
  2471. return Response(json.dumps(data),mimetype='application/json')
  2472. return render_template('giris.html', error="isim ve sifre giriniz")
  2473. @app.route('/logModul', methods=['GET', 'POST'])
  2474. def logModul():
  2475. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2476. modul_yetki=["98","99"]
  2477. yetki=mak.yetki_al(session['KULL_ID'])
  2478. if(str(yetki) in modul_yetki):
  2479. #app.logger.info(mak.girdi_isim(session['KULL_ID'])+"-log modulune girdi.")
  2480. l.yaz(mak.girdi_isim(session['KULL_ID'])+"-log modulune girdi.")
  2481. #logdosya=codecs.open("log.txt",'r','utf-8').read()
  2482. logdosya="s"
  2483. return render_template('logModul.html',log=logdosya)
  2484. else:
  2485. return "yetkisiz islem"
  2486. return render_template('giris.html', error="isim ve sifre giriniz")
  2487. @app.route('/dlogModul', methods=['GET', 'POST'])
  2488. def dlogModul():
  2489. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2490. modul_yetki=["98","99"]
  2491. yetki=mak.yetki_al(session['KULL_ID'])
  2492. if(str(yetki) in modul_yetki):
  2493. #app.logger.info(mak.girdi_isim(session['KULL_ID'])+"-log modulune girdi.")
  2494. l.yaz(mak.girdi_isim(session['KULL_ID'])+"-debug log modulune girdi.")
  2495. #logdosya=codecs.open("log.txt",'r','utf-8').read()
  2496. logdosya="s"
  2497. return render_template('dlogModul.html',log=logdosya)
  2498. else:
  2499. return "yetkisiz islem"
  2500. return render_template('giris.html', error="isim ve sifre giriniz")
  2501. @app.route('/logAl', methods=['GET', 'POST'])
  2502. def logAl():
  2503. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2504. modul_yetki=["98","99"]
  2505. yetki=mak.yetki_al(session['KULL_ID'])
  2506. if(str(yetki) in modul_yetki):
  2507. log=codecs.open("log//log.txt",'r').read()
  2508. l.yaz(mak.girdi_isim(session['KULL_ID'])+"-log yeniledi.")
  2509. return Response(json.dumps(log),mimetype='application/json')
  2510. else:
  2511. return "yetkisiz islem"
  2512. return render_template('giris.html', error="isim ve sifre giriniz")
  2513. @app.route('/dlogAl', methods=['GET', 'POST'])
  2514. def dlogAl():
  2515. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2516. modul_yetki=["98","99"]
  2517. yetki=mak.yetki_al(session['KULL_ID'])
  2518. if(str(yetki) in modul_yetki):
  2519. log=codecs.open("log//sunucu.log",'r').read()
  2520. l.yaz(mak.girdi_isim(session['KULL_ID'])+"-log yeniledi.")
  2521. return Response(json.dumps(log),mimetype='application/json')
  2522. else:
  2523. return "yetkisiz islem"
  2524. return render_template('giris.html', error="isim ve sifre giriniz")
  2525. @app.route('/logSil', methods=['GET', 'POST'])
  2526. def logSil():
  2527. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2528. modul_yetki="99"
  2529. yetki=mak.yetki_al(session['KULL_ID'])
  2530. if(str(yetki)==modul_yetki):
  2531. log=""
  2532. ylog=codecs.open("log//log.txt",'w').write(log)
  2533. return Response(json.dumps(ylog),mimetype='application/json')
  2534. else:
  2535. return "yetkisiz erisim"
  2536. return render_template('giris.html', error="isim ve sifre giriniz")
  2537. @app.route('/rprLazerbas', methods=['GET', 'POST'])
  2538. def rprLazerbas():
  2539. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2540. dizin='./altyapi/rapor/'
  2541. dosya = request.args.get('dosya')
  2542. os.system("python lazermak.py yaz "+dizin+dosya+".deg")
  2543. return Response(json.dumps("tm"),mimetype='application/json')
  2544. return render_template('giris.html', error="isim ve sifre giriniz")
  2545. @app.route('/psqlCalistir', methods=['GET', 'POST'])
  2546. def psqlCalistir():
  2547. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2548. #l.yaz(mak.girdi_isim(session['KULL_ID'])+" "+" parametre raporu aldi.")
  2549. rapormak=statikrapor()
  2550. dizin='./altyapi/rapor/'
  2551. dosya = request.args.get('dosya')
  2552. paramlar = request.args.get('paramlar')
  2553. orjsql=open(dizin+dosya,'r').read()
  2554. yenisql=mak.param_guncelle(dosya,paramlar)
  2555. codecs.open(dizin+dosya+".deg",'w',"iso-8859_9").write(yenisql)
  2556. rapormak.sql(yenisql)
  2557. rapor=rapormak.getHtml()
  2558. return Response(json.dumps(rapor),mimetype='application/json')
  2559. return render_template('giris.html', error="isim ve sifre giriniz")
  2560. @app.route('/sqlCalistir', methods=['GET', 'POST'])
  2561. def sqlCalistir():
  2562. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2563. rapormak=statikrapor()
  2564. sql=request.form["sqlkod"]
  2565. rapormak.sql(sql)
  2566. rapor=rapormak.getHtml()
  2567. return Response(json.dumps(rapor),mimetype='application/json')
  2568. return render_template('giris.html', error="isim ve sifre giriniz")
  2569. @app.route('/sqlAl', methods=['GET', 'POST'])
  2570. def sqlAl():
  2571. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2572. if('mod' in request.args):
  2573. dizin = request.args.get('mod')
  2574. else:
  2575. dizin='rapor'
  2576. if('dosya' in request.args):
  2577. dosya = request.args.get('dosya')
  2578. else:
  2579. dosya='test.sql'
  2580. data=mak.sql_al(dizin,dosya)
  2581. return Response(json.dumps(data),mimetype='application/json')
  2582. return render_template('giris.html', error="isim ve sifre giriniz")
  2583. @app.route('/sqlKaydet', methods=['GET', 'POST'])
  2584. def sqlKaydet():
  2585. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2586. kayitmodu = request.form['kayitmodu']
  2587. kod = request.form['sqlkod']
  2588. if(kayitmodu=='w'):
  2589. dosya = request.form['yeniSql']
  2590. else:
  2591. dosya = request.form['sqllist']
  2592. dizin = request.form['mod']
  2593. sonuc=mak.sql_kaydet(dizin,dosya,kod,kayitmodu)
  2594. return Response(json.dumps(sonuc),mimetype='application/json')
  2595. return render_template('giris.html', error="isim ve sifre giriniz")
  2596. @app.route('/jsonAl', methods=['GET', 'POST'])
  2597. def jsonAl():
  2598. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2599. sablon = request.args.get('sablon')
  2600. print sablon
  2601. #sutunlar=["stok_kod","stok_isim","miktar","bf","tutar"]
  2602. #datax=["","","","","=c2*d2"]
  2603. #datay=["","","","","=c3*d3"]
  2604. #data=[sutunlar,datax,datay];
  2605. jsondata=open(etodizin+"/"+sablon,"r").read()
  2606. data=json.loads(jsondata)
  2607. print data
  2608. return Response(json.dumps(data),mimetype='application/json')
  2609. return render_template('giris.html', error="isim ve sifre giriniz")
  2610. @app.route('/etoKaydet', methods=['GET', 'POST'])
  2611. def etoKaydet():
  2612. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2613. sablon = request.args.get('sablon')
  2614. try:
  2615. sahalar = request.json[0]
  2616. except:
  2617. data=None
  2618. return Response(json.dumps(data),mimetype='application/json')
  2619. jsondata=open(etodizin+"/"+sablon,"r").read()
  2620. data=json.loads(jsondata)
  2621. #deismeden sonra
  2622. yeniveri=sahalar[3]
  2623. xkr=sahalar[0]
  2624. ykr=sahalar[1]
  2625. try:
  2626. data[xkr][ykr]=yeniveri
  2627. except:
  2628. return Response(json.dumps("limit asimi"),mimetype='application/json')
  2629. with open(etodizin+"/"+sablon, 'w') as yazak:
  2630. json.dump(data, yazak)
  2631. return Response(json.dumps(data),mimetype='application/json')
  2632. return render_template('giris.html', error="isim ve sifre giriniz")
  2633. @app.route('/etKaydet', methods=['GET', 'POST'])
  2634. def etKaydet():
  2635. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2636. sablon = request.args.get('sablon')
  2637. data=request.json
  2638. with open(etodizin+"/"+sablon, 'w') as yazak:
  2639. json.dump(data, yazak)
  2640. data="tamam"
  2641. return Response(json.dumps(data),mimetype='application/json')
  2642. return render_template('giris.html', error="isim ve sifre giriniz")
  2643. @app.route('/etoYstk', methods=['GET', 'POST'])
  2644. def etoYstk():
  2645. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2646. sablon = request.args.get('sablon')
  2647. sonuc=mak.etoYstk(etodizin+"/"+sablon)
  2648. return Response(json.dumps(sonuc),mimetype='application/json')
  2649. return render_template('giris.html', error="isim ve sifre giriniz")
  2650. @app.route('/caStokSorgu', methods=['GET', 'POST'])
  2651. def caStokSorgu():
  2652. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2653. stoklar=[]
  2654. if('fkod' in request.args):
  2655. fkod = request.args.get('fkod')
  2656. stharlar=mak.sthar_detay(fkod,sonuc='dizi')
  2657. if stharlar:
  2658. for sthar in stharlar:
  2659. stoklar.append(sthar[1])
  2660. return Response(json.dumps(stoklar),mimetype='application/json')
  2661. return render_template('giris.html', error="isim ve sifre giriniz")
  2662. @app.route('/sprStokSorgu', methods=['GET', 'POST'])
  2663. def sprStokSorgu():
  2664. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2665. stoklar=[]
  2666. if('stkno' in request.args):
  2667. stkno = request.args.get('stkno')
  2668. stharlar=mak.stk_al(stkno)
  2669. for sthar in stharlar:
  2670. stoklar.append(sthar[1])
  2671. return Response(json.dumps(stoklar),mimetype='application/json')
  2672. return render_template('giris.html', error="isim ve sifre giriniz")
  2673. @app.route('/fiyatAktar', methods=['GET', 'POST'])
  2674. def fiyatAktar():
  2675. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2676. data='fiyat aktarmada sorun var!!!'
  2677. if('fkod' in request.args):
  2678. fkod = request.args.get('fkod')
  2679. if(fkod!='yeni'):
  2680. data=mak.fiyat_guncelle(fkod)
  2681. else:
  2682. data='fkodlist değerini seçiniz!!!'
  2683. return Response(json.dumps(data),mimetype='application/json')
  2684. return render_template('giris.html', error="isim ve sifre giriniz")
  2685. @app.route('/stkTopbir', methods=['GET', 'POST'])
  2686. def stkTopbir():
  2687. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2688. fkodlar=[]
  2689. yfisler=request.args.get('fkodlar')
  2690. yfisler=yfisler.split(',')
  2691. for yf in yfisler:
  2692. if yf:
  2693. fis=yf.split('@')[0]
  2694. mrk=yf.split('@')[1]
  2695. fkod=mak.fkod_al(str(fis),str(mrk))
  2696. fkodlar.append(str(fkod))
  2697. if(mak.cogul_stkbir(fkodlar)):
  2698. return "tamam"
  2699. return render_template('giris.html', error="isim ve sifre giriniz")
  2700. @app.route('/irsTopfat', methods=['GET', 'POST'])
  2701. def irsTopfat():
  2702. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2703. kaydeden=mak.kullanici_getir(session["KULL_ID"])[0]
  2704. fkodlar=[]
  2705. yfisler=request.args.get('fkodlar')
  2706. yfisler=yfisler.split(',')
  2707. print "--",yfisler
  2708. if yfisler[0]!='' and 'tarih' in request.args and 'fisno' in request.args:
  2709. tarih=request.args.get('tarih')
  2710. fisno=request.args.get('fisno')
  2711. if fisno!="" and tarih!="":
  2712. for yf in yfisler:
  2713. if yf:
  2714. fis=yf.split('@')[0]
  2715. mrk=yf.split('@')[1]
  2716. fkod=mak.fkod_al(str(fis),str(mrk))
  2717. fkodlar.append(str(fkod))
  2718. sonuc=mak.irs_topfat(fkodlar,tarih,fisno,kaydeden)
  2719. return sonuc
  2720. else:
  2721. return "tarih-fisno bos olamaz"
  2722. else:
  2723. return "irsaliye listesi bos olamaz"
  2724. return render_template('giris.html', error="isim ve sifre giriniz")
  2725. @app.route('/zRaporla', methods=['GET', 'POST'])
  2726. def zRaporla():
  2727. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2728. pos_dizin=mak.ayar_al('999','pos_dizin')
  2729. posdosya = request.form['posdosya']
  2730. arge=Arge()
  2731. rapor=arge.z_rapor_analiz(pos_dizin+"/"+posdosya)
  2732. return Response(json.dumps(rapor),mimetype='application/json')
  2733. return render_template('giris.html', error="isim ve sifre giriniz")
  2734. @app.route('/fatuGonder', methods=['GET', 'POST'])
  2735. def fatuGonder():
  2736. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2737. fkod=""
  2738. kendi=mak.kullanici_posta(session['KULL_ID'])
  2739. if('fkod' in request.args):
  2740. fkod=request.args.get('fkod')
  2741. harrapor=mak.sthar_detay(fkod,sonuc='html',tasarim=2)
  2742. alici=mak.cari((mak.fatura_ustbilgi(fkod)[7]).split('@')[1]).eposta
  2743. return render_template('postagonder.html',fkod=fkod,kposta=alici,kendi=kendi,konu='urun listesi',modul="f")+mak.sthar_detay_baslik(fkod,sonuc='html',tasarim=2)+"<br>"+harrapor
  2744. return render_template('giris.html', error="isim ve sifre giriniz")
  2745. @app.route('/caharGonder', methods=['GET', 'POST'])
  2746. def caharGonder():
  2747. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2748. kendi=mak.kullanici_posta(session['KULL_ID'])
  2749. konu="CARI HAREKET DOKUM"
  2750. l.yaz("caharGonder e girildi.")
  2751. kaynak=request.form["kod2"]
  2752. hedef=request.form["kod"]
  2753. bastarih=request.form["hrkBasTrh"]
  2754. sontarih=request.form["hrkSonTrh"]
  2755. hedef_posta=mak.cari(hedef).eposta
  2756. rapor=mak.carihar_dokum(kaynak,hedef,bastarih,sontarih,sonuc='html')
  2757. codecs.open('sql_cikti/carihar_dokum.html','w','iso-8859_9').write(rapor)
  2758. #return Response(json.dumps(rapor),mimetype='application/json')
  2759. return render_template('postagonder.html',fkod=-1,kposta=hedef_posta,kendi=kendi,konu=konu,modul="c")+rapor
  2760. return render_template('giris.html', error="isim ve sifre giriniz")
  2761. # models.py icindeki nesne kaliplarina gore fatura olusturulmustur.
  2762. # kalemler de aynı dosyadaki kaliba gore olusturulmustur.
  2763. @app.route('/stkGonder', methods=['GET', 'POST'])
  2764. def stkGonder():
  2765. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2766. kendi=mak.kullanici_posta(session['KULL_ID'])
  2767. konu="hareket bilgilendirme"
  2768. stkno=request.args.get('stkno')
  2769. l.yaz(kendi+" stkGonder e girildi.")
  2770. rapor=mak.stk_rapor_al(stkno)
  2771. codecs.open('sql_cikti/stk_dokum.html','w','iso-8859_9').write(rapor)
  2772. #return Response(json.dumps(rapor),mimetype='application/json')
  2773. return render_template('postagonder.html',fkod=-1,kendi=kendi,kposta="x@x.com",konu=konu,modul="stk")+rapor
  2774. return render_template('giris.html', error="isim ve sifre giriniz")
  2775. @app.route('/stkArsiv', methods=['GET', 'POST'])
  2776. def stkArsiv():
  2777. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2778. stkno=request.args.get('stkno')
  2779. l.yaz(" stkArsiv e girildi.-->"+stkno)
  2780. data=mak.stk_kopyala(stkno,stkno)
  2781. #return Response(json.dumps(rapor),mimetype='application/json')
  2782. return Response(json.dumps(data),mimetype='application/json')
  2783. return render_template('giris.html', error="isim ve sifre giriniz")
  2784. @app.route('/lazerYazdir', methods=['GET', 'POST'])
  2785. def lazerYazdir():
  2786. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2787. fkod=request.form['fkodsec']
  2788. data=""
  2789. if fkod !="yeni":
  2790. yazicikod=request.form['yazicikod']
  2791. os.system(lazeryaz_komut+fkod+" "+yazicikod)
  2792. data="tamam"
  2793. return Response(json.dumps(data),mimetype='application/json')
  2794. return render_template('giris.html', error="isim ve sifre giriniz")
  2795. @app.route('/stkTermal', methods=['GET', 'POST'])
  2796. def stkTermal():
  2797. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2798. fkod=request.form['stkHarList']
  2799. data=""
  2800. if fkod !="yeni":
  2801. yazicikod=request.form['yazicikod']
  2802. os.system(lazeryaz_komut2+fkod+" "+yazicikod)
  2803. data="tamam"
  2804. return Response(json.dumps(data),mimetype='application/json')
  2805. return render_template('giris.html', error="isim ve sifre giriniz")
  2806. @app.route('/etkYazdir', methods=['GET', 'POST'])
  2807. def etkYazdir():
  2808. kod = request.form['kod']
  2809. stok=mak.stok(kod)
  2810. bf=stok.satis_fiat1
  2811. #epl 2 progdilinde sablon
  2812. #sablondos="etk.sab"
  2813. #epl 1 prog dilinde
  2814. sablondos="etk_sablon.dos"
  2815. sablon=open(sablondos,"r").read()
  2816. sablon=sablon.replace('@stok_adi@',str(stok.isim[0:29]))
  2817. sablon=sablon.replace('@sf@',str(bf))
  2818. mak.etk_basim_kaydet(kod,bf)
  2819. open("etk.yaz","w").write(sablon)
  2820. os.system(etkyazdir_komut)
  2821. return "tamam"
  2822. @app.route('/etkYazdirKontrol', methods=['GET', 'POST'])
  2823. def etkYazdirKontrol():
  2824. kod = request.form['kod']
  2825. stok=mak.stok(kod)
  2826. bf=stok.satis_fiat1
  2827. onay=mak.etk_basim_kontrol(kod,bf)
  2828. return onay
  2829. @app.route('/belgeTara', methods=['GET', 'POST'])
  2830. def belgeTara():
  2831. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2832. data=""
  2833. belge=request.form['belge_ad']
  2834. if(belge!=""):
  2835. os.system("dinamiko_servis.py dinamiko6060 tara "+belge)
  2836. data= "BELGENIZ TARANDI"
  2837. else:
  2838. data="taranacak belge isim girin."
  2839. return Response(json.dumps(data),mimetype='application/json')
  2840. return render_template('giris.html', error="isim ve sifre giriniz")
  2841. @app.route('/fatuYazdir', methods=['GET', 'POST'])
  2842. def fatuYazdir():
  2843. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2844. fkodlar=[]
  2845. if request.form:
  2846. yfisler=request.form['data']
  2847. yfisler=json.loads(yfisler)
  2848. for yf in yfisler:
  2849. fis=yf.split('@')[0]
  2850. mrk=yf.split('@')[1]
  2851. fkod=mak.fkod_al(fis,mrk)
  2852. fkodlar.append(fkod)
  2853. dizaynno="1"
  2854. else:
  2855. fkod=""
  2856. if('fkod' in request.args):
  2857. fkodlar=request.args.get('fkod')
  2858. fkodlar=fkodlar.split(',')
  2859. else:
  2860. yfisler=request.args.get('fkodlar')
  2861. yfisler=yfisler.split(',')
  2862. for yf in yfisler:
  2863. if yf:
  2864. fis=yf.split('@')[0]
  2865. mrk=yf.split('@')[1]
  2866. fkod=mak.fkod_al(str(fis),str(mrk))
  2867. fkodlar.append(fkod)
  2868. faturalar=[]
  2869. for fkod in fkodlar:
  2870. if(mak.fatura_islemturu(fkod) is None):
  2871. return "stkno iliskili fatura bulunamadi."
  2872. if('dizaynno' in request.args):
  2873. dizaynno = request.args.get('dizaynno')
  2874. ekzaman = int(request.args.get('ekzaman'))
  2875. saat_degeri=str((datetime.datetime.now()+ datetime.timedelta(hours=ekzaman)).time())[0:8]
  2876. faturaust=mak.sthar_detay_baslik(fkod,sonuc='dizi')
  2877. cari=mak.cari(faturaust[13])
  2878. stharlar=mak.sthar_detay(fkod,sonuc='dizi')
  2879. fatura = None
  2880. fatura=dizayn.faturayapi()
  2881. fatura.hedef=cari.isim
  2882. fatura.adres=cari.adres
  2883. fatura.vdaire=cari.vergiyer
  2884. fatura.vergino=cari.vergino
  2885. fatura.tarih=faturaust[0]
  2886. if('ek' in request.args):
  2887. ek = request.args.get('ek')
  2888. sql="SELECT '"+mak.tarih_format(fatura.tarih)+"' + interval "+ek+" day"
  2889. fatura.tarih2=mak.tarih_turk(mak.calistir(sql)[0][0])
  2890. else:
  2891. fatura.tarih2=faturaust[0]
  2892. fatura.saat=saat_degeri
  2893. yaziylatutar=mak.yaziyla("{:.2f}".format(faturaust[7]))
  2894. fatura.tutaryaziyla="#"+yaziylatutar[0]+yaziylatutar[1]+"#"
  2895. fatura.kdvtop=faturaust[7]-faturaust[2]
  2896. fatura.kdvtop="{:.2f}".format(fatura.kdvtop)
  2897. fatura.kdvsiztutar="{:.2f}".format(faturaust[2])
  2898. fatura.kdv1="{:.2f}".format(faturaust[4])
  2899. fatura.kdv8="{:.2f}".format(faturaust[5])
  2900. fatura.kdv18="{:.2f}".format(faturaust[6])
  2901. fatura.gtoplam="{:.2f}".format(faturaust[7])
  2902. fatura.merkezsicilno="MERKEZ TİC. SİCİL NO:xxxxx".decode("utf-8")
  2903. fatura.subesicilno="ŞUBE TİC. SİCİL NO:xxxxxx".decode("utf-8")
  2904. fatura.mersisno=""
  2905. fatura.kaynakwebadresi="www.sirketismi.com.tr".decode("utf-8")
  2906. fatura.kalemler=[]
  2907. kalemsay=len(stharlar)
  2908. for sthar in stharlar:
  2909. kalem=dizayn.kalemyapi()
  2910. kalem.kdv="{:.0f}".format(sthar[9])
  2911. kalem.ad=sthar[2]
  2912. kalem.miktar="{:.2f}".format(sthar[3])
  2913. kalem.birim=sthar[4]
  2914. if str(dizaynno)=="4":
  2915. kalem.brfiyat= "{:.2f}".format(sthar[5])
  2916. kalem.tutar="{:.2f}".format(sthar[3]*sthar[5])
  2917. else:
  2918. kalem.brfiyat= "{:.2f}".format(sthar[6])
  2919. kalem.tutar="{:.2f}".format(sthar[3]*sthar[6])
  2920. #09:19 23.02.2015
  2921. #kalem.tutar="{:.2f}".format(sthar[7])
  2922. fatura.kalemler.append(kalem)
  2923. kalem_adedi=mak.ayar_al('999',"yzc_dizayn_kalem@"+dizaynno)
  2924. kalem_adedi=int(kalem_adedi)
  2925. print_html='yazici_dizayn'+str(dizaynno)+".html"
  2926. dizayner=dizayn.dizaynyapi()
  2927. fatura.sayfayaz=dizayner.sayfala(fatura,kalem_adedi)
  2928. faturalar.append(fatura)
  2929. del dizayner
  2930. del fatura
  2931. return render_template(print_html, faturalar=faturalar)
  2932. return render_template('giris.html', error="isim ve sifre giriniz")
  2933. @app.route('/makbuzYazdir', methods=['GET', 'POST'])
  2934. def makbuzYazdir():
  2935. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2936. fkod=request.form["fkodsec"]
  2937. hedef=request.form["fatuHedef"].split('@')[1]
  2938. term=TermalSablon()
  2939. term.tarih=request.form["fatuTarih"]
  2940. term.fisno=mak.fisno_al(fkod)
  2941. term.mnot3=request.form["kasiyer"]
  2942. term.mnot=request.form["muhatap"]
  2943. term.tutar=request.form["tutar"]
  2944. term.hedef=mak.cari(hedef).isim
  2945. term.ack=request.form["faciklama"]
  2946. term.yazdir()
  2947. data="makbuz basildi."
  2948. return Response(json.dumps(data),mimetype='application/json')
  2949. return render_template('giris.html', error="isim ve sifre giriniz")
  2950. @app.route('/postagonder', methods=['GET', 'POST'])
  2951. def postagonder():
  2952. if("KULL_ID" in session and mak.girdi_kontrol(session['KULL_ID']) ):
  2953. if request.method == 'POST':
  2954. if request.form["komut"] in ["postala","listesiz postala"] :
  2955. #maillog=open("maillog","a")
  2956. fkod = request.form['fkod']
  2957. gmail_user = "obs.giom@gmail.com" #request.form['postaad']
  2958. gmail_pwd = "obs_giom********" #request.form['postasfr']
  2959. gonderen = gmail_user
  2960. alan = [request.form['kime']] #must be a list
  2961. text = (request.form['icerik'])+"</br>"
  2962. msg = MIMEMultipart('alternative')
  2963. msg['Subject'] = request.form['konu']
  2964. msg['From'] = gmail_user
  2965. msg['To'] = request.form['kime']
  2966. cckisi =[request.form['kendi']]
  2967. # Record the MIME types of both parts - text/plain and text/html.
  2968. # Attach parts into message container.
  2969. # According to RFC 2046, the last part of a multipart message, in this case
  2970. # the HTML message, is best and preferred.
  2971. if request.form["komut"] == "listesiz postala" :
  2972. part1 = MIMEText(text+"BU POSTAYI CEVAPLAMAYINIZ!!!", 'html','iso8859_9')
  2973. #msg.set_charset('windows-1254')
  2974. msg.attach(part1)
  2975. if request.form["komut"] == "postala" :
  2976. #rapor=rapor.decode('iso8859_9')
  2977. #part2 = MIMEText(text+rapor.decode('iso8859_9'), 'html')
  2978. rapor=mak.sthar_detay_baslik(fkod,sonuc='html',tasarim=2)+"<br>"+mak.sthar_detay(fkod,sonuc='html',tasarim=2)
  2979. if request.form['modul'] =="c":
  2980. rapor=codecs.open("sql_cikti/carihar_dokum.html",'r','iso-8859_9').read()
  2981. if request.form['modul'] =="stk":
  2982. rapor=codecs.open("sql_cikti/stk_dokum.html",'r','iso-8859_9').read()
  2983. part2 = MIMEText(text+rapor+"BU POSTAYI CEVAPLAMAYINIZ!!!", 'html','iso8859_9')
  2984. msg.attach(part2)
  2985. try:
  2986. #server = smtplib.SMTP(SERVER)
  2987. server = smtplib.SMTP("smtp.gmail.com", 587) #or port 465 doesn't seem to work!
  2988. print server.ehlo()
  2989. server.starttls()
  2990. server.login(gmail_user, gmail_pwd)
  2991. server.sendmail(gonderen,alan+cckisi, msg.as_string())
  2992. #server.quit()
  2993. server.close()
  2994. #maillog.write(gmail_user,gmail_pwd,msg['To'],msg['Subject'])
  2995. return 'MAILINIZ BASARIYLA GONDERILDI.'
  2996. except:
  2997. return "MAIL GONDERME HATA."
  2998. return render_template('postagonder.html')+sqlmak.faturabilgi2(fisno,fattip)
  2999. return render_template('giris.html', error="isim ve sifre giriniz")
  3000. @app.route('/xx', methods=['GET', 'POST'])
  3001. def xx():
  3002. app.logger.info("xx sayfawewew")
  3003. return "xx"
  3004. if app.config['DEBUG']:
  3005. from werkzeug import SharedDataMiddleware
  3006. import os
  3007. app.wsgi_app = SharedDataMiddleware(app.wsgi_app, {
  3008. '/': os.path.join(os.path.dirname(__file__), 'static')
  3009. })
  3010. if __name__ == '__main__':
  3011. #logging.basicConfig(filename='.\log\\log.txt',format='%(message)s',level=logging.DEBUG)
  3012. port_calis=6006
  3013. os.system("mkdir -p log")
  3014. #open("giom.surec",'w').write(str(os.getpid()))
  3015. sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  3016. result = sock.connect_ex(('127.0.0.1',port_calis))
  3017. if result == 99:
  3018. print "sunucu zaten bu portta calisiyor.!!!"
  3019. else:
  3020. '''
  3021. import logging
  3022. from logging.handlers import RotatingFileHandler
  3023. file_handler = RotatingFileHandler('python.log', maxBytes=1024 * 1024 * 100, backupCount=20)
  3024. file_handler.setLevel(logging.DEBUG)
  3025. app.logger.setLevel(logging.DEBUG)
  3026. app.logger.addHandler(file_handler)
  3027. '''
  3028. #import __init__
  3029. #init_db() # or whatever you need to do
  3030. import logging
  3031. logging.basicConfig(filename="log"+ayrac+"sunucu.log",level=logging.DEBUG)
  3032. app.run(host="0.0.0.0",port=port_calis,debug=True,threaded=True)
  3033. '''
  3034. logger = logging.getLogger('werkzeug')
  3035. handler = logging.FileHandler('wwlog.txt')
  3036. logger.addHandler(handler)
  3037. # Also add the handler to Flask's logger for cases
  3038. # where Werkzeug isn't used as the underlying WSGI server.
  3039. app.logger.addHandler(handler)
  3040. '''
  3041. #debug=True kod deise server yenilenir
  3042. # route fonks bi nevi get olunca ne dondurule.