diff --git a/dokogen/ui.py b/dokogen/ui.py index dcc27d7..bfdbb9c 100644 --- a/dokogen/ui.py +++ b/dokogen/ui.py @@ -857,6 +857,9 @@ class DokoGenApp: entry = ttk.Entry(subj_frame, width=70) entry.grid(row=i, column=1, padx=8, sticky=tk.EW, pady=1) setattr(self, attr, entry) + ttk.Button(subj_frame, text="πŸ“‹ Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΈΠ· Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ", + command=self._fill_subject_from_company).grid( + row=len(subj_fields), column=0, columnspan=2, sticky=tk.W, pady=(8, 0)) subj_frame.columnconfigure(1, weight=1) # ===== Π’ΠΊΠ»Π°Π΄ΠΊΠ° Β«Π‘Π΅Ρ‚ΡŒΒ» ===== @@ -1591,6 +1594,34 @@ class DokoGenApp: if user: self.users_listbox.insert(tk.END, user) + def _fill_subject_from_company(self): + """Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ поля ΡΡƒΠ±ΡŠΠ΅ΠΊΡ‚Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ (Ссли ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π² Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ).""" + if self._current_is_idx is None: + messagebox.showinfo("Π‘ΡƒΠ±ΡŠΠ΅ΠΊΡ‚", "Π‘Π½Π°Ρ‡Π°Π»Π° Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ КИИ Π² спискС слСва") + return + c = self.model + if not (c.full_name or c.inn): + messagebox.showinfo("Π‘ΡƒΠ±ΡŠΠ΅ΠΊΡ‚", + "Π’ΠΊΠ»Π°Π΄ΠΊΠ° Β«ΠžΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡΒ» пуста.\nΠ‘Π½Π°Ρ‡Π°Π»Π° Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ " + "(ΠΈΠ»ΠΈ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ опросник).") + return + + def _set_entry(attr, value): + w = getattr(self, attr, None) + if w is not None: + w.delete(0, tk.END) + w.insert(0, value or '') + + _set_entry('is_subject_name_entry', c.full_name or c.short_name) + _set_entry('is_subject_address_entry', c.address) + _set_entry('is_subject_inn_entry', c.inn) + _set_entry('is_subject_kpp_entry', c.kpp) + # Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ (ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚) ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° β€” оставляСм ΠΊΠ°ΠΊ Π΅ΡΡ‚ΡŒ, заполняСтся Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ + self.log("πŸ“‹ Π‘ΡƒΠ±ΡŠΠ΅ΠΊΡ‚ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ") + messagebox.showinfo("Π‘ΡƒΠ±ΡŠΠ΅ΠΊΡ‚", + "Поля «НаимСнованиС», «АдрСс», «ИНН», «КПП» Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Ρ‹ ΠΈΠ· Π²ΠΊΠ»Π°Π΄ΠΊΠΈ Β«ΠžΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡΒ».\n" + "Β«Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ (ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚) ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°Β» Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ.") + def _select_users_from_employees(self): """Π’Ρ‹Π±ΠΎΡ€ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ИБ ΠΈΠ· списка сотрудников ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ (Π²ΠΊΠ»Π°Π΄ΠΊΠ° Β«ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈΒ»).""" names = []