프로젝트

일반

사용자정보

개정판 cacb37e0

IDcacb37e0e0dbff13cd215fc627a36b747e26aaa9
상위 9cbe2c80
하위 9c49a15e

함의성이(가) 4년 이상 전에 추가함

issue #1489: hmb from to change

Change-Id: I0c2110e213ea6984f4dbb9ecd2ac0a463c2136e0

차이점 보기:

DTI_PID/DTI_PID/AppDocData.py
2697 2697
            try:
2698 2698
                cursor = conn.cursor()
2699 2699
                """delete stream line which has stream number is given data"""
2700
                sql = "delete from HMB_From_To where Stream_No_UID=?"
2700
                sql = "delete from HMB_From_To where Stream_No=?"
2701 2701
                params = (stream_line_list[0],)
2702 2702
                cursor.execute(sql, params)
2703 2703
                """up to here"""
2704 2704

  
2705 2705
                for stream_line in stream_line_list[1]:
2706
                    sql = f"insert into HMB_From_To(UID,[Drawing_UID],[From_Component_UID],[To_Component_UID],[Stream_No_UID]) values" \
2706
                    sql = f"insert into HMB_From_To(UID,[Drawing_UID],[From_Component_UID],[To_Component_UID],[Stream_No]) values" \
2707 2707
                          f"(?,?,?,?,?)"
2708 2708
                    params = (str(uuid.uuid4()), stream_line[0], stream_line[1], stream_line[2], stream_line[3])
2709 2709
                    cursor.execute(sql, params)
......
2716 2716
                          f"{sys.exc_info()[-1].tb_lineno}"
2717 2717
                App.mainWnd().addMessage.emit(MessageType.Error, message)
2718 2718

  
2719
    def get_stream_from_to(self, hmb_uid: str = None, drawing_uid: str = None) -> list:
2719
    def get_stream_from_to(self, stream_no: str = None, drawing_uid: str = None) -> list:
2720 2720
        """get stream lines related to hmb"""
2721 2721

  
2722 2722
        with self.project.database.connect() as conn:
......
2727 2727
                if hmb_uid:
2728 2728
                    sql = f"select h.Drawing_UID, h.From_Component_UID, h.To_Component_UID, d.Name from HMB_From_To h " \
2729 2729
                          f"inner join Drawings d on d.UID=h.Drawing_UID " \
2730
                          f"where Stream_No_UID = ?"
2731
                    params = (hmb_uid,)
2730
                          f"where Stream_No = ?"
2731
                    params = (stream_no,)
2732 2732
                else:
2733 2733
                    sql = f"select h.From_Component_UID, h.To_Component_UID, s.Stream_No from HMB_From_To h " \
2734 2734
                          f"inner join Stream_No s on s.UID=h.Stream_No_UID " \
DTI_PID/DTI_PID/Scripts/MSSQL/ID2.sql
3216 3216
	[UID]	varchar ( 37 ) NOT NULL,
3217 3217
	[Name]	TEXT NOT NULL,
3218 3218
	Description	TEXT,
3219
	PRIMARY KEY(`UID`)
3219
	PRIMARY KEY([UID])
3220 3220
);
3221 3221

  
3222 3222
CREATE TABLE InstCodes (
......
3228 3228
	NewCode	varchar ( 128 ) NOT NULL,
3229 3229
	[Expression]	varchar ( 1024 ),
3230 3230
	[Priority]	varchar ( 37 ),
3231
	FOREIGN KEY(`Table_UID`) REFERENCES `InstTables`(`UID`),
3232
	PRIMARY KEY(`UID`)
3231
	FOREIGN KEY([Table_UID]) REFERENCES [InstTables]([UID]),
3232
	PRIMARY KEY([UID])
3233 3233
);
3234 3234

  
3235 3235
CREATE TABLE IF NOT EXISTS Stream_No ( 
3236 3236
	[UID] VARCHAR(37), 
3237 3237
	[Stream_No] VARCHAR ( 100 ) NOT NULL, 
3238 3238
	[From] VARCHAR ( 100 ), 
3239
	[To] VARCHAR ( 100 ), PRIMARY KEY(`UID`) 
3239
	[To] VARCHAR ( 100 ), 
3240
	PRIMARY KEY([UID]) 
3240 3241
);
3241 3242

  
3242
CREATE TABLE IF NOT EXISTS HMB_From_To ( 
3243
CREATE TABLE [HMB_From_To] ( 
3243 3244
	[UID] VARCHAR ( 37 ), 
3244 3245
	[Drawing_UID] VARCHAR ( 37 ), 
3245 3246
	[From_Component_UID] VARCHAR ( 37 ), 
3246 3247
	[To_Component_UID] VARCHAR ( 37 ), 
3247
	[Stream_No_UID] VARCHAR ( 37 ), 
3248
	FOREIGN KEY([Stream_No_UID]) REFERENCES [Stream_No]([UID]), 
3248
	[Stream_No] VARCHAR ( 100 ), 
3249 3249
	FOREIGN KEY([From_Component_UID]) REFERENCES [Components]([UID]) ON DELETE CASCADE, 
3250
	FOREIGN KEY([To_Component_UID]) REFERENCES [Components]([UID]) ON DELETE CASCADE, 
3251
	FOREIGN KEY([Drawing_UID]) REFERENCES [Drawings]([UID]]) ON DELETE CASCADE 
3252
);
3250
	FOREIGN KEY([Drawing_UID]) REFERENCES [Drawings]([UID]) ON DELETE CASCADE, 
3251
	PRIMARY KEY([UID]), 
3252
	FOREIGN KEY([To_Component_UID]) REFERENCES [Components]([UID]) ON DELETE CASCADE )
3253 3253

  
3254 3254
CREATE TABLE IF NOT EXISTS HMB_LIST ( 
3255 3255
	[UID] VARCHAR ( 37 ), 
3256 3256
	[Name] VARCHAR ( 100 ) NOT NULL, 
3257 3257
	[Unit] VARCHAR ( 100 ), 
3258 3258
	[index] INTEGER NOT NULL, 
3259
	PRIMARY KEY(`UID`) 
3259
	PRIMARY KEY([UID]) 
3260 3260
);
DTI_PID/DTI_PID/Scripts/SQLite_Project.tables.sql
81 81
	`To` VARCHAR ( 100 ), PRIMARY KEY(`UID`) 
82 82
);
83 83

  
84
CREATE TABLE IF NOT EXISTS `HMB_From_To` ( 
84
CREATE TABLE IF NOT EXISTS "HMB_From_To" ( 
85 85
	`UID` VARCHAR ( 37 ), 
86 86
	`Drawing_UID` VARCHAR ( 37 ), 
87 87
	`From_Component_UID` VARCHAR ( 37 ), 
88 88
	`To_Component_UID` VARCHAR ( 37 ), 
89
	`Stream_No_UID` VARCHAR ( 37 ), 
90
	FOREIGN KEY(`Stream_No_UID`) REFERENCES `Stream_No`(`UID`), 
89
	`Stream_No` VARCHAR ( 100 ), 
91 90
	FOREIGN KEY(`From_Component_UID`) REFERENCES `Components`(`UID`) ON DELETE CASCADE, 
92
	FOREIGN KEY(`To_Component_UID`) REFERENCES `Components`(`UID`) ON DELETE CASCADE, 
93
	FOREIGN KEY(`Drawing_UID`) REFERENCES `Drawings`(`UID`) ON DELETE CASCADE 
94
);
91
	FOREIGN KEY(`Drawing_UID`) REFERENCES `Drawings`(`UID`) ON DELETE CASCADE, 
92
	PRIMARY KEY(`UID`), 
93
	FOREIGN KEY(`To_Component_UID`) REFERENCES `Components`(`UID`) ON DELETE CASCADE )
95 94

  
96 95
CREATE TABLE IF NOT EXISTS "HMB_LIST" ( 
97 96
	`UID` VARCHAR ( 37 ), 
DTI_PID/DTI_PID/StreamlineDialog.py
86 86
            STREAM_NO = hmb.stream_no
87 87
            items = [QStandardItem(UID), QStandardItem(STREAM_NO)]
88 88

  
89
            for data in sorted(hmb.data, key=lambda param:param.index):
89
            for data in sorted(hmb.data, key=lambda param: param.index):
90 90
                if hmbs.index(hmb) == 0:
91
                    header.append(data.name + ' (' + data.unit + ')')
91
                    header.append(f"{data.name}\n({data.unit})" if data.unit else f"{data.name}")
92 92
                items.append(QStandardItem(data.value))
93 93
            model.appendRow(items)
94 94

  
......
105 105

  
106 106
        if selection.indexes():
107 107
            row = selection.indexes()[0].row()
108
            uid = self.ui.tableViewStreamNo.model().item(row, 0).text()
108
            stream_no = self.ui.tableViewStreamNo.model().item(row, 1).text()
109 109

  
110 110
            if not self.ui.tableViewFromTo.model():
111 111
                model = FromToModel()
......
115 115
            model.clear()
116 116

  
117 117
            app_doc_data = AppDocData.instance()
118
            rows = app_doc_data.get_stream_from_to(hmb_uid=uid)
118
            rows = app_doc_data.get_stream_from_to(stream_no=stream_no)
119 119
            if rows:
120 120
                for row_ in rows:
121 121
                    from_ = row_['From_Component_UID']
......
235 235
    def on_save_from_to(self):
236 236
        """save current from/to data"""
237 237
        row = self.ui.tableViewStreamNo.selectionModel().currentIndex().row()
238
        stream_no_uid = self.ui.tableViewStreamNo.model().item(row, 0).text()
238
        stream_no = self.ui.tableViewStreamNo.model().item(row, 1).text()
239 239

  
240 240
        from_to_data = []
241 241

  
......
248 248
            to_ = model.item(row, 2)
249 249
            to_uid = to_.data(Qt.UserRole)
250 250

  
251
            from_to_data.append((drawing_uid, from_uid, to_uid, stream_no_uid))
251
            from_to_data.append((drawing_uid, from_uid, to_uid, stream_no))
252 252

  
253
        AppDocData.save_stream_line_data([stream_no_uid, from_to_data])
253
        AppDocData.save_stream_line_data([stream_no, from_to_data])
254 254

  
255 255
    def accept(self):
256 256
        QDialog.accept(self)

내보내기 Unified diff