parent
12caebeeb3
commit
7b3f8eacfc
@ -0,0 +1,76 @@
|
||||
#!/usr/bin/python
|
||||
import sys, os, re, datetime, subprocess
|
||||
working_path = os.getcwd()
|
||||
|
||||
def get_project_codes():
|
||||
project_codes = []
|
||||
files = os.listdir( working_path )
|
||||
for f in files:
|
||||
code=re.findall("[0-9]{5}_[A-Z]{3}[0-9]{3}",f)
|
||||
if code != []:
|
||||
project_codes.append(code[0])
|
||||
project_codes.sort()
|
||||
return project_codes
|
||||
|
||||
def get_clients_codes():
|
||||
client_codes = []
|
||||
for code in get_project_codes():
|
||||
client_code = code[6:9]
|
||||
if client_code not in client_codes:
|
||||
client_codes.append(client_code)
|
||||
|
||||
return client_codes
|
||||
|
||||
def get_project_structure( my_path ):
|
||||
dirs = list()
|
||||
for (dirpath, dirnames, files) in os.walk(my_path):
|
||||
dirs += [os.path.join(dirpath, d)[len(my_path)+1:] for d in dirnames]
|
||||
return dirs
|
||||
|
||||
def new_project():
|
||||
|
||||
#print( "current clients are : ")
|
||||
|
||||
codes = ""
|
||||
for code in get_clients_codes():
|
||||
codes += code + ","
|
||||
|
||||
#client = input("enter client code:")
|
||||
client = str(subprocess.check_output("echo '" + codes + "' | rofi -dmenu -i -format s -sep ',' -p 'current clients are'", shell=True))
|
||||
client = client[2:5].upper()
|
||||
#client = client[0:3].upper()
|
||||
project_codes = get_project_codes()
|
||||
client_project_n = str( project_codes ).count(client) + 1
|
||||
project_n = int(project_codes[-1][2:5])+1
|
||||
|
||||
#project = input("enter project name:")
|
||||
|
||||
project = str(subprocess.check_output("rofi -dmenu -i -format s -p 'enter project name'", shell=True))[2:-3]
|
||||
|
||||
project = project.replace(" ","_").title()
|
||||
|
||||
new_folder = datetime.datetime.now().strftime("%y")+str(project_n).zfill(3)+"_"+client+str(client_project_n).zfill(3)+"_"+project
|
||||
struct = get_project_structure("/media/TioTigre/00_libreria/tigre_struct")
|
||||
if not os.path.lexists( new_folder ):
|
||||
os.mkdir( new_folder)
|
||||
for d in struct:
|
||||
if not os.path.lexists( new_folder+os.sep+d ):
|
||||
os.mkdir( new_folder+os.sep+d )
|
||||
|
||||
def create_todays_folder():
|
||||
todays_folder=(datetime.datetime.now().strftime("%y%m%d"))
|
||||
if not os.path.lexists( todays_folder ):
|
||||
os.mkdir( todays_folder )
|
||||
|
||||
if sys.argv.count("--newproj") > 0 or sys.argv.count("-n") > 0 :
|
||||
new_project()
|
||||
|
||||
if sys.argv.count("--today") > 0 or sys.argv.count("-t") > 0 :
|
||||
create_todays_folder()
|
||||
|
||||
elif sys.argv.count("--debug") > 0 :
|
||||
subprocess
|
||||
|
||||
else:
|
||||
print("error : no valid arguments given")
|
||||
|
||||
Loading…
Reference in new issue