Advertisement
Guest User

Untitled

a guest
Jun 20th, 2019
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.67 KB | None | 0 0
  1. #------------------------------------------------------------------------------------------------------#
  2. #добавляет запиписи в выполненную работу
  3. def add(name,work):
  4. import psycopg2
  5. from datetime import datetime
  6.  
  7. #подключение к базе данных
  8. con = psycopg2.connect(
  9. database="remont",
  10. user="postgres",
  11. password="2611815")
  12. con.autocommit = True
  13.  
  14. cur = con.cursor()
  15.  
  16.  
  17. cur.execute("SELECT executor_id FROM executor WHERE surname ='" + str(name) + "';")
  18. surname_id = cur.fetchall()
  19.  
  20. cur.execute("SELECT work_id FROM work WHERE work_type = '" + str(work) + "';")
  21. work_id = cur.fetchall()
  22.  
  23. now = datetime.now()
  24.  
  25. cur.execute("INSERT INTO executor_work VALUES ("+ str(surname_id[0][0]) +","+ str(work_id[0][0]) + ",'" + now.strftime('%d-%m-%Y %H:%M') + "');")
  26.  
  27. cur.close()
  28. con.close()
  29. #------------------------------------------------------------------------------------------------------#
  30.  
  31. #------------------------------------------------------------------------------------------------------#
  32. #Установка процента для каждого исполнителя
  33. def set_precent(name, precent):
  34. import psycopg2
  35.  
  36. con = psycopg2.connect(
  37.  
  38. database="remont",
  39. user="postgres",
  40. password="2611815")
  41. con.autocommit = True
  42.  
  43. cur = con.cursor()
  44.  
  45. #установка процента для каждого исполнителя
  46. for i in range(1,8):
  47. cur.execute("UPDATE executor SET precent_id =" + str(precent) + "WHERE surname = '" + str(name) + "';")
  48.  
  49. cur.close()
  50. con.close()
  51.  
  52. #------------------------------------------------------------------------------------------------------#
  53.  
  54. #------------------------------------------------------------------------------------------------------#
  55. #возвращает массив с историей выполненных работ
  56. def history():
  57. import psycopg2
  58. from datetime import datetime
  59. history_out = []
  60.  
  61. con = psycopg2.connect(
  62.  
  63. database="remont",
  64. user="postgres",
  65. password="2611815")
  66. con.autocommit = True
  67.  
  68. cur = con.cursor()
  69.  
  70. cur.execute('select executor_id,work_id,date_work FROM executor_work;')
  71. executor_id = cur.fetchall()
  72.  
  73. for i in executor_id:
  74. cur.execute('SELECT surname,precent_id FROM executor WHERE executor_id = ' + str(i[0]) + ';')
  75. rec = cur.fetchall()
  76. cur.execute('SELECT work_type,price FROM work WHERE work_id = ' + str(i[1]) + ';')
  77. rec1 = cur.fetchall()
  78. cur.execute( 'SELECT precent FROM precent WHERE precent_id = ' + str(rec[0][1]) + ';' )
  79. rec2 = cur.fetchall()
  80.  
  81.  
  82. history_out.append(str(rec[0][0]) + ' ' + str(rec2[0][0]) + ' ' + str(rec1[0][0]) + ' ' + str(rec1[0][1]) + ' ' +str(i[2])+ ' ' + str(rec1[0][1] + rec1[0][1]* rec2[0][0]/100))
  83.  
  84.  
  85. cur.close()
  86. con.close()
  87. return history_out
  88.  
  89. #------------------------------------------------------------------------------------------------------#
  90.  
  91. #------------------------------------------------------------------------------------------------------#
  92. #Возвращает список исполнителей
  93. def executors():
  94. import psycopg2
  95. surname = []
  96. con = psycopg2.connect(
  97.  
  98. database="remont",
  99. user="postgres",
  100. password="2611815")
  101. con.autocommit = True
  102.  
  103. cur = con.cursor()
  104. cur.execute("SELECT surname FROM executor;")
  105. rec = cur.fetchall()
  106. for i in rec:
  107. surname.append(str(i[0]))
  108. return surname
  109.  
  110. #------------------------------------------------------------------------------------------------------#
  111.  
  112. #------------------------------------------------------------------------------------------------------#
  113. #Возвращает список работы
  114. def works():
  115. import psycopg2
  116. surname = []
  117. con = psycopg2.connect(
  118.  
  119. database="remont",
  120. user="postgres",
  121. password="2611815")
  122. con.autocommit = True
  123.  
  124. cur = con.cursor()
  125. cur.execute("SELECT work_type FROM work;")
  126. rec = cur.fetchall()
  127. for i in rec:
  128. surname.append(str(i[0]))
  129. return surname
  130.  
  131. #------------------------------------------------------------------------------------------------------#
  132.  
  133. #------------------------------------------------------------------------------------------------------#
  134. #Возвращает процент
  135. def get_precent(name):
  136. import psycopg2
  137. con = psycopg2.connect(
  138.  
  139. database="remont",
  140. user="postgres",
  141. password="2611815")
  142. con.autocommit = True
  143.  
  144. cur = con.cursor()
  145. cur.execute("SELECT precent_id FROM executor WHERE surname = '" + str(name) + "';")
  146. rec = cur.fetchall()
  147. return rec[0][0]
  148.  
  149. #------------------------------------------------------------------------------------------------------#
  150.  
  151. #------------------------------------------------------------------------------------------------------#
  152. #Возвращает стоимость работы
  153. def work_cost(name):
  154. import psycopg2
  155. con = psycopg2.connect(
  156.  
  157. database="remont",
  158. user="postgres",
  159. password="2611815")
  160. con.autocommit = True
  161.  
  162. cur = con.cursor()
  163. cur.execute("SELECT price FROM work WHERE work_type = '" + str(name) + "';")
  164. rec = cur.fetchall()
  165. return rec[0][0]
  166.  
  167. #------------------------------------------------------------------------------------------------------#
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement