121 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			121 lines
		
	
	
		
			3.8 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| using System;
 | |
| using System.Collections.Generic;
 | |
| using System.ComponentModel;
 | |
| using System.Data;
 | |
| using System.Drawing;
 | |
| using System.Linq;
 | |
| using System.Runtime.CompilerServices;
 | |
| using System.Text;
 | |
| using System.Threading.Tasks;
 | |
| using System.Windows.Forms;
 | |
| 
 | |
| namespace FCOMMON
 | |
| {
 | |
|     public partial class fSFI : Form
 | |
|     {
 | |
|         public fSFI(string sfi_type, double time, double cnt, double shiftcount, int itemcnt)
 | |
|         {
 | |
|             InitializeComponent();
 | |
|             if (sfi_type == "M")
 | |
|             {
 | |
|                 radM.Checked = true;
 | |
|                 nudMsavetime.Value = (decimal)time;
 | |
|             }
 | |
|             else
 | |
|             {
 | |
|                 radO.Checked = true;
 | |
|                 nudOsavetime.Value = (decimal)time;
 | |
|             }
 | |
|             nudMSaveCnt.Value = (decimal)cnt;
 | |
|             nudShiftCnt.Value = (decimal)shiftcount;
 | |
|             this.nudCnt.Value = (decimal)itemcnt;
 | |
| 
 | |
|         }
 | |
| 
 | |
|         private void label1_Click(object sender, EventArgs e)
 | |
|         {
 | |
| 
 | |
|         }
 | |
| 
 | |
|         private void radioButton1_CheckedChanged(object sender, EventArgs e)
 | |
|         {
 | |
|             panel1.Enabled = radO.Checked;
 | |
|             panel2.Enabled = !panel1.Enabled;
 | |
|         }
 | |
| 
 | |
|         private void numericUpDown1_ValueChanged(object sender, EventArgs e)
 | |
|         {
 | |
|             //mfg 절감시간 업데이트
 | |
|             var nud = sender as NumericUpDown;
 | |
|             if (nud.Tag.ToString().ToLower() == "o")
 | |
|             {
 | |
|                 UpdateOffice();
 | |
|             }
 | |
|             else
 | |
|             {
 | |
|                 updateMFG();
 | |
|             }
 | |
|         }
 | |
|         private void numericUpDown6_ValueChanged(object sender, EventArgs e)
 | |
|         {
 | |
|             var nud = sender as NumericUpDown;
 | |
|             //mfg의 총 절감 시간이 변경되었다
 | |
|             var 총절감시간 = (double)nud.Value;
 | |
|             var sfi = 총절감시간 / (float)numericUpDown5.Value;
 | |
|             nudSFIMFG.Value = (Decimal)sfi;
 | |
|         }
 | |
|         public double Value { get; set; } = 0;
 | |
|         void updateMFG()
 | |
|         {
 | |
|             var 절감시간 = (double)nudMsavetime.Value;
 | |
|             var SHIFT수 = (float)nudMSaveCnt.Value;
 | |
|             var shift총수 = (double)(절감시간 * SHIFT수);
 | |
| 
 | |
|             if (numericUpDown9.Value != (decimal)shift총수)
 | |
|                 numericUpDown9.Value = (decimal)shift총수; //1쉬프트 개선절감횟수
 | |
| 
 | |
|             var 쉬프트수 = (int)nudShiftCnt.Value;
 | |
|             var 장비수 = (int)nudCnt.Value;
 | |
|             numericUpDown6.Value = (decimal)(shift총수 * 쉬프트수 * 장비수);
 | |
|         }
 | |
|         void UpdateOffice()
 | |
|         {
 | |
|             var savetime = (double)nudOsavetime.Value;
 | |
|             var min = (int)numericUpDown2.Value;
 | |
|             var sfi = savetime / min;
 | |
|             var cnt = (int)nudCnt.Value;
 | |
|             nudSFIOffice.Value = (decimal)(sfi * cnt);
 | |
|         }
 | |
| 
 | |
|         private void button1_Click(object sender, EventArgs e)
 | |
|         {
 | |
|             this.Invalidate();
 | |
|             if (radO.Checked)
 | |
|                 this.Value = (double)nudSFIOffice.Value;
 | |
|             else
 | |
|                 this.Value = (double)nudSFIMFG.Value;
 | |
|             DialogResult = DialogResult.OK;
 | |
| 
 | |
|         }
 | |
| 
 | |
|         private void fSFI_Load(object sender, EventArgs e)
 | |
|         {
 | |
|             nudMSaveCnt.DecimalPlaces = 1;
 | |
|         }
 | |
| 
 | |
|         private void nudSIFOffice_ValueChanged(object sender, EventArgs e)
 | |
|         {
 | |
|             //offcie update
 | |
|             var sfi = (double)nudSFIOffice.Value;
 | |
|             //numericUpDown3.Value = (decimal)(sfi * 1.25);
 | |
|         }
 | |
| 
 | |
|         private void numericUpDown4_ValueChanged(object sender, EventArgs e)
 | |
|         {
 | |
|             //mfg update
 | |
|             var sfi = (double)nudSFIMFG.Value;
 | |
|             //numericUpDown1.Value = (decimal)(sfi * 1.25);
 | |
|         }
 | |
|     }
 | |
| }
 | 
