프로젝트

일반

사용자정보

개정판 c6503eaa

IDc6503eaa4517705deef7a30755171a04bcca7df6
상위 1a379be0
하위 e2cfc5e9

gaqhf 이(가) 3년 이상 전에 추가함

dev issue #000 : dev equip

Change-Id: Ia41abf502381c603baf6a7af96a03da8552ff7d0

차이점 보기:

DTI_PID/ID2PSN/DB.cs
491 491

  
492 492
            return dt;
493 493
        }
494
        public static DataTable SelectSymbolAttribute()
495
        {
496
            DataTable dt = new DataTable();
497
            ID2Info id2Info = ID2Info.GetInstance();
498
            using (SQLiteConnection connection = new SQLiteConnection(string.Format(CultureInfo.CurrentCulture, "Data Source = {0}", id2Info.DBFilePath), true))
499
            {
500
                try
501
                {
502
                    connection.Open();
503
                    using (SQLiteCommand cmd = connection.CreateCommand())
504
                    {
505
                        cmd.CommandText = "SELECT DISTINCT Attribute, DisplayAttribute FROM SymbolAttribute;";
506
                        using (SQLiteDataReader dr = cmd.ExecuteReader())
507
                            dt.Load(dr);
508
                    }
509
                    connection.Close();
510
                }
511
                catch (Exception ex)
512
                {
513
                    Log.Write(ex.Message + "\r\n" + ex.StackTrace);
514
                }
515
                finally
516
                {
517
                    connection.Dispose();
518
                }
519
            }
520
            return dt;
521
        }
494 522

  
495 523
        public static bool SavePSNData(PSN item)
496 524
        {
DTI_PID/ID2PSN/Document.cs
122 122
        {
123 123
            Equipment item = new Equipment();
124 124
            item.UID = element.Element("UID").Value;
125
            item.Attributes = GetAttributes(element.Element("SYMBOLATTRIBUTES"));
125 126
            string[] sPoint = element.Element("POINT").Value.Split(new char[] { '/' });
126 127
            foreach (var sp in sPoint)
127 128
            {
......
138 139
            equipment.Name = item.Name;
139 140
            equipment.UID = item.UID;
140 141
            equipment.POINT.Add(item.POINT);
142
            equipment.Attributes.AddRange(item.Attributes);
141 143
            return equipment;
142 144
        }
143 145
        private List<Relation> GetRelations(XElement element)
DTI_PID/ID2PSN/Form/MainForm.Designer.cs
33 33
            this.ribbonControl = new DevExpress.XtraBars.Ribbon.RibbonControl();
34 34
            this.defaultLookAndFeel = new DevExpress.LookAndFeel.DefaultLookAndFeel(this.components);
35 35
            this.layoutControl1 = new DevExpress.XtraLayout.LayoutControl();
36
            this.comboBoxEditEquipTagName = new DevExpress.XtraEditors.ComboBoxEdit();
36 37
            this.btnSave = new DevExpress.XtraEditors.SimpleButton();
37 38
            this.btnPriority = new DevExpress.XtraEditors.SimpleButton();
38 39
            this.btnRun = new DevExpress.XtraEditors.SimpleButton();
......
56 57
            this.emptySpaceItem1 = new DevExpress.XtraLayout.EmptySpaceItem();
57 58
            this.layoutControlItem5 = new DevExpress.XtraLayout.LayoutControlItem();
58 59
            this.layoutControlItem6 = new DevExpress.XtraLayout.LayoutControlItem();
60
            this.layoutControlItem7 = new DevExpress.XtraLayout.LayoutControlItem();
59 61
            this.layoutControlGroup2 = new DevExpress.XtraLayout.LayoutControlGroup();
60 62
            this.layoutControlItem1 = new DevExpress.XtraLayout.LayoutControlItem();
61 63
            this.splitterItem1 = new DevExpress.XtraLayout.SplitterItem();
62 64
            this.contextMenuPSN = new System.Windows.Forms.ContextMenuStrip(this.components);
63 65
            this.toolStripMenuItemPathItems = new System.Windows.Forms.ToolStripMenuItem();
66
            this.layoutControlGroup3 = new DevExpress.XtraLayout.LayoutControlGroup();
67
            this.checkEditEquipTag = new DevExpress.XtraEditors.CheckEdit();
68
            this.layoutControlItem8 = new DevExpress.XtraLayout.LayoutControlItem();
64 69
            ((System.ComponentModel.ISupportInitialize)(this.ribbonControl)).BeginInit();
65 70
            ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).BeginInit();
66 71
            this.layoutControl1.SuspendLayout();
72
            ((System.ComponentModel.ISupportInitialize)(this.comboBoxEditEquipTagName.Properties)).BeginInit();
67 73
            ((System.ComponentModel.ISupportInitialize)(this.xtraTabControlPSN)).BeginInit();
68 74
            this.xtraTabControlPSN.SuspendLayout();
69 75
            this.pagePSN.SuspendLayout();
......
83 89
            ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).BeginInit();
84 90
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).BeginInit();
85 91
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).BeginInit();
92
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).BeginInit();
86 93
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).BeginInit();
87 94
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).BeginInit();
88 95
            ((System.ComponentModel.ISupportInitialize)(this.splitterItem1)).BeginInit();
89 96
            this.contextMenuPSN.SuspendLayout();
97
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup3)).BeginInit();
98
            ((System.ComponentModel.ISupportInitialize)(this.checkEditEquipTag.Properties)).BeginInit();
99
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).BeginInit();
90 100
            this.SuspendLayout();
91 101
            // 
92 102
            // ribbonControl
......
111 121
            // 
112 122
            // layoutControl1
113 123
            // 
124
            this.layoutControl1.Controls.Add(this.checkEditEquipTag);
125
            this.layoutControl1.Controls.Add(this.comboBoxEditEquipTagName);
114 126
            this.layoutControl1.Controls.Add(this.btnSave);
115 127
            this.layoutControl1.Controls.Add(this.btnPriority);
116 128
            this.layoutControl1.Controls.Add(this.btnRun);
......
125 137
            this.layoutControl1.TabIndex = 1;
126 138
            this.layoutControl1.Text = "layoutControl1";
127 139
            // 
140
            // comboBoxEditEquipTagName
141
            // 
142
            this.comboBoxEditEquipTagName.Location = new System.Drawing.Point(96, 175);
143
            this.comboBoxEditEquipTagName.MenuManager = this.ribbonControl;
144
            this.comboBoxEditEquipTagName.Name = "comboBoxEditEquipTagName";
145
            this.comboBoxEditEquipTagName.Properties.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
146
            new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
147
            this.comboBoxEditEquipTagName.Size = new System.Drawing.Size(124, 20);
148
            this.comboBoxEditEquipTagName.StyleController = this.layoutControl1;
149
            this.comboBoxEditEquipTagName.TabIndex = 10;
150
            this.comboBoxEditEquipTagName.SelectedIndexChanged += new System.EventHandler(this.comboBoxEditEquipTagName_SelectedIndexChanged);
151
            // 
128 152
            // btnSave
129 153
            // 
130 154
            this.btnSave.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("btnSave.ImageOptions.Image")));
......
287 311
            this.layoutControlItem4,
288 312
            this.emptySpaceItem1,
289 313
            this.layoutControlItem5,
290
            this.layoutControlItem6});
314
            this.layoutControlItem6,
315
            this.layoutControlGroup3});
291 316
            this.layoutControlGroup1.Location = new System.Drawing.Point(0, 0);
292 317
            this.layoutControlGroup1.Name = "layoutControlGroup1";
293 318
            this.layoutControlGroup1.Size = new System.Drawing.Size(236, 874);
......
323 348
            // emptySpaceItem1
324 349
            // 
325 350
            this.emptySpaceItem1.AllowHotTrack = false;
326
            this.emptySpaceItem1.Location = new System.Drawing.Point(0, 78);
351
            this.emptySpaceItem1.Location = new System.Drawing.Point(0, 168);
327 352
            this.emptySpaceItem1.Name = "emptySpaceItem1";
328
            this.emptySpaceItem1.Size = new System.Drawing.Size(212, 673);
353
            this.emptySpaceItem1.Size = new System.Drawing.Size(212, 583);
329 354
            this.emptySpaceItem1.TextSize = new System.Drawing.Size(0, 0);
330 355
            // 
331 356
            // layoutControlItem5
......
346 371
            this.layoutControlItem6.TextSize = new System.Drawing.Size(0, 0);
347 372
            this.layoutControlItem6.TextVisible = false;
348 373
            // 
374
            // layoutControlItem7
375
            // 
376
            this.layoutControlItem7.Control = this.comboBoxEditEquipTagName;
377
            this.layoutControlItem7.Location = new System.Drawing.Point(0, 23);
378
            this.layoutControlItem7.Name = "layoutControlItem7";
379
            this.layoutControlItem7.Size = new System.Drawing.Size(188, 24);
380
            this.layoutControlItem7.Text = "Attr Name";
381
            this.layoutControlItem7.TextSize = new System.Drawing.Size(57, 14);
382
            // 
349 383
            // layoutControlGroup2
350 384
            // 
351 385
            this.layoutControlGroup2.GroupStyle = DevExpress.Utils.GroupStyle.Card;
......
385 419
            this.toolStripMenuItemPathItems.Size = new System.Drawing.Size(167, 22);
386 420
            this.toolStripMenuItemPathItems.Text = "View PSN Details";
387 421
            // 
422
            // layoutControlGroup3
423
            // 
424
            this.layoutControlGroup3.Items.AddRange(new DevExpress.XtraLayout.BaseLayoutItem[] {
425
            this.layoutControlItem7,
426
            this.layoutControlItem8});
427
            this.layoutControlGroup3.Location = new System.Drawing.Point(0, 78);
428
            this.layoutControlGroup3.Name = "layoutControlGroup3";
429
            this.layoutControlGroup3.Size = new System.Drawing.Size(212, 90);
430
            this.layoutControlGroup3.Text = "Equipment Tag No Setting";
431
            // 
432
            // checkEditEquipTag
433
            // 
434
            this.checkEditEquipTag.Location = new System.Drawing.Point(36, 152);
435
            this.checkEditEquipTag.MenuManager = this.ribbonControl;
436
            this.checkEditEquipTag.Name = "checkEditEquipTag";
437
            this.checkEditEquipTag.Properties.Caption = "Use ID2 Attribute";
438
            this.checkEditEquipTag.Size = new System.Drawing.Size(184, 19);
439
            this.checkEditEquipTag.StyleController = this.layoutControl1;
440
            this.checkEditEquipTag.TabIndex = 11;
441
            this.checkEditEquipTag.CheckedChanged += new System.EventHandler(this.checkEdit1_CheckedChanged);
442
            // 
443
            // layoutControlItem8
444
            // 
445
            this.layoutControlItem8.Control = this.checkEditEquipTag;
446
            this.layoutControlItem8.Location = new System.Drawing.Point(0, 0);
447
            this.layoutControlItem8.Name = "layoutControlItem8";
448
            this.layoutControlItem8.Size = new System.Drawing.Size(188, 23);
449
            this.layoutControlItem8.TextSize = new System.Drawing.Size(0, 0);
450
            this.layoutControlItem8.TextVisible = false;
451
            // 
388 452
            // MainForm
389 453
            // 
390 454
            this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F);
......
399 463
            ((System.ComponentModel.ISupportInitialize)(this.ribbonControl)).EndInit();
400 464
            ((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit();
401 465
            this.layoutControl1.ResumeLayout(false);
466
            ((System.ComponentModel.ISupportInitialize)(this.comboBoxEditEquipTagName.Properties)).EndInit();
402 467
            ((System.ComponentModel.ISupportInitialize)(this.xtraTabControlPSN)).EndInit();
403 468
            this.xtraTabControlPSN.ResumeLayout(false);
404 469
            this.pagePSN.ResumeLayout(false);
......
418 483
            ((System.ComponentModel.ISupportInitialize)(this.emptySpaceItem1)).EndInit();
419 484
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem5)).EndInit();
420 485
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem6)).EndInit();
486
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem7)).EndInit();
421 487
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup2)).EndInit();
422 488
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem1)).EndInit();
423 489
            ((System.ComponentModel.ISupportInitialize)(this.splitterItem1)).EndInit();
424 490
            this.contextMenuPSN.ResumeLayout(false);
491
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlGroup3)).EndInit();
492
            ((System.ComponentModel.ISupportInitialize)(this.checkEditEquipTag.Properties)).EndInit();
493
            ((System.ComponentModel.ISupportInitialize)(this.layoutControlItem8)).EndInit();
425 494
            this.ResumeLayout(false);
426 495
            this.PerformLayout();
427 496

  
......
460 529
        private DevExpress.XtraGrid.Views.Grid.GridView gridViewPathItems;
461 530
        private System.Windows.Forms.ContextMenuStrip contextMenuPSN;
462 531
        private System.Windows.Forms.ToolStripMenuItem toolStripMenuItemPathItems;
532
        private DevExpress.XtraEditors.ComboBoxEdit comboBoxEditEquipTagName;
533
        private DevExpress.XtraLayout.LayoutControlItem layoutControlItem7;
534
        private DevExpress.XtraEditors.CheckEdit checkEditEquipTag;
535
        private DevExpress.XtraLayout.LayoutControlGroup layoutControlGroup3;
536
        private DevExpress.XtraLayout.LayoutControlItem layoutControlItem8;
463 537
    }
464 538
}
465 539

  
DTI_PID/ID2PSN/Form/MainForm.cs
15 15
using DevExpress.XtraGrid.Views.Grid;
16 16
using DevExpress.XtraGrid.Columns;
17 17
using System.Reflection;
18
using ID2PSN.Properties;
18 19

  
19 20
namespace ID2PSN
20 21
{
......
49 50

  
50 51
            this.Text += string.Format(" v.{0}", Assembly.GetExecutingAssembly().GetName().Version.ToString());
51 52
            toolStripMenuItemPathItems.Click += toolStripPathItemsClick;
53

  
54
            comboBoxEditEquipTagName.Properties.TextEditStyle = DevExpress.XtraEditors.Controls.TextEditStyles.DisableTextEditor;
55
            string equipTag = Settings.Default.EquipTagAttribute;
56
            DataTable dt = DB.SelectSymbolAttribute();
57
            foreach (DataRow row in dt.Rows)
58
            {
59
                string value = row["Attribute"].ToString();
60
                comboBoxEditEquipTagName.Properties.Items.Add(value);
61
                if (!string.IsNullOrEmpty(equipTag) && value.Equals(equipTag))
62
                    comboBoxEditEquipTagName.SelectedItem = value;
63
            }
64

  
65
            checkEditEquipTag.Checked = Settings.Default.UseEquipTag;
66
            comboBoxEditEquipTagName.Enabled = checkEditEquipTag.Checked;
52 67
        }
53 68

  
54 69
        private void showButton_Click(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
......
123 138
            revisionNumber++;
124 139

  
125 140
            PSN psn = new PSN(documents, revisionNumber);
141
            if (checkEditEquipTag.Checked)
142
                psn.EquipTagNoAttributeName = comboBoxEditEquipTagName.SelectedItem.ToString();
126 143
            psn.SetPSNData();
127 144
            currentPSN = psn;
128 145

  
......
445 462
            pagePathItems.Text = string.Format("Path Items - {0}", toolStripMenuItemPathItems.Tag);
446 463
            xtraTabControlPSN.SelectedTabPage = pagePathItems;
447 464
        }
465

  
466
        private void comboBoxEditEquipTagName_SelectedIndexChanged(object sender, EventArgs e)
467
        {
468
            string value = comboBoxEditEquipTagName.SelectedItem.ToString();
469
            Settings.Default.EquipTagAttribute = value;
470
            Settings.Default.Save();
471
        }
472

  
473
        private void checkEdit1_CheckedChanged(object sender, EventArgs e)
474
        {
475
            Settings.Default.UseEquipTag = checkEditEquipTag.Checked;
476
            Settings.Default.Save();
477

  
478
            comboBoxEditEquipTagName.Enabled = checkEditEquipTag.Checked;
479
        }
448 480
    }
449 481
}
DTI_PID/ID2PSN/Object/Item.cs
67 67
        {
68 68
            POINT = new List<double[]>();
69 69
            Nozzles = new List<Item>();
70
            Attributes = new List<Attribute>();
70 71
        }
71 72
        public string Name { get; set; }
72 73
        public string UID { get; set; }
73 74
        public List<double[]> POINT { get; set; }
74 75
        public List<Item> Nozzles { get; set; }
76
        public List<Attribute> Attributes { get; set; }
77
        public string ItemTag { get; set; }
75 78
    }
76 79
    public class LineNumber
77 80
    {
DTI_PID/ID2PSN/PSN.cs
24 24
        private double DrawingWidth = double.NaN;
25 25
        private double DrawingHeight = double.NaN;
26 26
        public int Revision;
27
        public string EquipTagNoAttributeName = string.Empty;
27 28
        public DataTable PathItems { get; set; }
28 29
        public DataTable SequenceData { get; set; }
29 30
        public DataTable PipeSystemNetwork { get; set; }
......
645 646
            {
646 647
                DataRow row = equipDT.NewRow();
647 648
                row["OID"] = equipment.UID;
648
                row["ITEMTAG"] = equipment.Name;
649
                if (!string.IsNullOrEmpty(EquipTagNoAttributeName))
650
                {
651
                    Attribute attribute = equipment.Attributes.Find(x => x.Name == EquipTagNoAttributeName);
652
                    if (attribute != null)
653
                        equipment.ItemTag = attribute.Value;
654
                }
655
                else
656
                    equipment.ItemTag = equipment.Name;
649 657

  
658
                row["ITEMTAG"] = equipment.ItemTag;
650 659
                List<double> xList = equipment.POINT.Select(x => x[0]).ToList();
651 660
                row["XCOORDS"] = (xList.Sum() / (double)xList.Count) / DrawingWidth;
652 661

  
......
993 1002
            else if (StartType == PSNType.Branch)
994 1003
                result = Groups.First().Items.First().LineNumber.Name;
995 1004
            else if (StartType == PSNType.Equipment)
996
                result = Groups.First().Items.First().Equipment.Name;
1005
                result = Groups.First().Items.First().Equipment.ItemTag;
997 1006
            else
998 1007
                result = "Unknown";
999 1008

  
......
1008 1017
            else if (EndType == PSNType.Branch)
1009 1018
                result = Groups.Last().Items.Last().LineNumber.Name;
1010 1019
            else if (EndType == PSNType.Equipment)
1011
                result = Groups.Last().Items.Last().Equipment.Name;
1020
                result = Groups.Last().Items.Last().Equipment.ItemTag;
1012 1021
            else 
1013 1022
                result = "Unknown";
1014 1023
            return result;
DTI_PID/ID2PSN/Properties/Settings.Designer.cs
22 22
                return defaultInstance;
23 23
            }
24 24
        }
25
        
26
        [global::System.Configuration.UserScopedSettingAttribute()]
27
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
28
        [global::System.Configuration.DefaultSettingValueAttribute("")]
29
        public string EquipTagAttribute {
30
            get {
31
                return ((string)(this["EquipTagAttribute"]));
32
            }
33
            set {
34
                this["EquipTagAttribute"] = value;
35
            }
36
        }
37
        
38
        [global::System.Configuration.UserScopedSettingAttribute()]
39
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
40
        [global::System.Configuration.DefaultSettingValueAttribute("False")]
41
        public bool UseEquipTag {
42
            get {
43
                return ((bool)(this["UseEquipTag"]));
44
            }
45
            set {
46
                this["UseEquipTag"] = value;
47
            }
48
        }
25 49
    }
26 50
}
DTI_PID/ID2PSN/Properties/Settings.settings
3 3
  <Profiles>
4 4
    <Profile Name="(Default)" />
5 5
  </Profiles>
6
  <Settings />
6
  <Settings>
7
    <Setting Name="EquipTagAttribute" Type="System.String" Scope="User">
8
      <Value Profile="(Default)"></Value>
9
    </Setting>
10
    <Setting Name="UseEquipTag" Type="System.Boolean" Scope="User">
11
      <Value Profile="(Default)">False</Value>
12
    </Setting>
13
  </Settings>
7 14
</SettingsFile>

내보내기 Unified diff

클립보드 이미지 추가 (최대 크기: 500 MB)