188 lines
6.1 KiB
C#
188 lines
6.1 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Windows.Forms;
|
|
|
|
namespace FPJ0000
|
|
{
|
|
public partial class fProjectData : FCOMMON.fBase
|
|
{
|
|
dsPRJ.ProjectsRow dr = null;
|
|
public fProjectData(dsPRJ.ProjectsRow pidx_)
|
|
{
|
|
InitializeComponent();
|
|
this.UseFormSetting = false;
|
|
this.dr = pidx_;
|
|
this.dsPRJ.ProjectsHistory.TableNewRow += ProjectsHistory_TableNewRow;
|
|
}
|
|
|
|
void ProjectsHistory_TableNewRow(object sender, DataTableNewRowEventArgs e)
|
|
{
|
|
e.Row["wuid"] = FCOMMON.info.Login.no;
|
|
e.Row["wdate"] = DateTime.Now;
|
|
e.Row["pidx"] = this.dr.idx;
|
|
e.Row["div"] = "";
|
|
e.Row["remark"] = string.Empty;
|
|
e.Row["pdate"] = DateTime.Now.ToShortDateString();
|
|
}
|
|
private void fProjectData_Load(object sender, EventArgs e)
|
|
{
|
|
//상태
|
|
var dt_eetproc = FCOMMON.DBM.getCodeTable("10");
|
|
this.cmbProcess.DisplayMember = "Value";
|
|
this.cmbProcess.ValueMember = "Value";
|
|
this.cmbProcess.DataSource = dt_eetproc;
|
|
|
|
//공정
|
|
var dt_status = FCOMMON.DBM.getCodeTable("01");
|
|
this.cmbState.DisplayMember = "Value";
|
|
this.cmbState.ValueMember = "Value";
|
|
this.cmbState.DataSource = dt_status;
|
|
|
|
//파트
|
|
var dt_part = FCOMMON.DBM.getCodeTable("11");
|
|
this.cmbPart.DisplayMember = "Value";
|
|
this.cmbPart.ValueMember = "Value";
|
|
this.cmbPart.DataSource = dt_part;
|
|
|
|
this.bs.DataSource = dr;
|
|
|
|
try
|
|
{
|
|
if(dr.idx >= 0)
|
|
this.taHist.Fill(this.dsPRJ.ProjectsHistory,this.dr.idx);
|
|
}
|
|
catch (System.Exception ex)
|
|
{
|
|
System.Windows.Forms.MessageBox.Show(ex.Message);
|
|
}
|
|
|
|
try
|
|
{
|
|
if (dr.idx >= 0)
|
|
this.taSchedule.Fill(this.dsPRJ.ProjectsSchedule, this.dr.idx);
|
|
}
|
|
catch (System.Exception ex)
|
|
{
|
|
System.Windows.Forms.MessageBox.Show(ex.Message);
|
|
}
|
|
this.cmbProcess.Text = dr.process;
|
|
this.cmbState.Text = dr.status;
|
|
this.cmbPart.Text = dr.part;
|
|
|
|
//신규데이터는 추가정보를 바로 저장할 수 없다.
|
|
if(dr.RowState == DataRowState.Detached || dr.RowState == DataRowState.Deleted)
|
|
{
|
|
FCOMMON.Util.MsgI("신규자료는 저장을 하기 전에는 파트리스트/IO맵/주간업무등의 서브데이터를 추가할 수 없습니다.");
|
|
btPart.Enabled = false;
|
|
}
|
|
btIO.Enabled = btPart.Enabled;
|
|
//btWeek.Enabled = btPart.Enabled;
|
|
btMailAddr.Enabled = btPart.Enabled;
|
|
btPath.Enabled = btPart.Enabled;
|
|
|
|
//일반사용자의경우에는 상태를 변경하지 못한다.
|
|
int curLevel = Math.Max(FCOMMON.info.Login.level, FCOMMON.DBM.getAuth(FCOMMON.DBM.eAutoType.project));
|
|
if (curLevel >= 5)
|
|
{
|
|
|
|
}
|
|
else
|
|
{
|
|
tbPath.ReadOnly = true;
|
|
}
|
|
}
|
|
|
|
|
|
private void btSave_Click(object sender, EventArgs e)
|
|
{
|
|
this.dr.process = cmbProcess.Text;
|
|
this.dr.status = cmbState.Text;
|
|
this.dr.part = cmbPart.Text;
|
|
|
|
this.Validate();
|
|
this.bs.EndEdit();
|
|
this.bsWeek.EndEdit();
|
|
|
|
this.taHist.Update(this.dsPRJ.ProjectsHistory);
|
|
this.DialogResult = System.Windows.Forms.DialogResult.OK;
|
|
//this.tableAdapterManager.UpdateAll(this.dsPRJ);
|
|
}
|
|
|
|
|
|
private void btMailAddr_Click(object sender, EventArgs e)
|
|
{
|
|
fMailList f = new fMailList(this.dr.idx);
|
|
f.ShowDialog();
|
|
}
|
|
|
|
private void btPath_Click(object sender, EventArgs e)
|
|
{
|
|
string path = tbPath.Text.Trim();
|
|
if(path == "")
|
|
{
|
|
path = "\\10.131.36.205\\Data\\Projects\\";
|
|
path += tbIdx.Text;
|
|
tbPath.Text = path;
|
|
}
|
|
var dlg = FCOMMON.Util.MsgQ("다음 폴더를 표시할까요?\n\n" +
|
|
path);
|
|
if(dlg == System.Windows.Forms.DialogResult.Yes)
|
|
FCOMMON.Util.RunExplorer(path);
|
|
}
|
|
|
|
private void btPart_Click(object sender, EventArgs e)
|
|
{
|
|
var f = new fPartList(dr.idx);
|
|
f.ShowDialog();
|
|
}
|
|
|
|
private void btIO_Click(object sender, EventArgs e)
|
|
{
|
|
var f = new fProjectIOMap(dr.idx);
|
|
f.ShowDialog();
|
|
}
|
|
|
|
private void btWeek_Click(object sender, EventArgs e)
|
|
{
|
|
|
|
}
|
|
|
|
private void bindingNavigatorDeleteItem_Click(object sender, EventArgs e)
|
|
{
|
|
var drv = this.bsWeek.Current as DataRowView;
|
|
if (drv == null) return;
|
|
var dlg = FCOMMON.Util.MsgQ("선택된 업무현황을 삭제하시겠습니까?" +
|
|
"\n\n메일이 발송 완료된 경우 발송된 메일은 삭제되지 않습니다.");
|
|
if (dlg == System.Windows.Forms.DialogResult.Yes)
|
|
this.bsWeek.RemoveCurrent();
|
|
}
|
|
|
|
private void bindingNavigatorAddNewItem_Click(object sender, EventArgs e)
|
|
{
|
|
var newdr = this.dsPRJ.ProjectsHistory.NewProjectsHistoryRow();
|
|
var f = new fHistAdd(newdr);
|
|
if (f.ShowDialog() == System.Windows.Forms.DialogResult.OK)
|
|
{
|
|
bsWeek.EndEdit();
|
|
this.dsPRJ.ProjectsHistory.AddProjectsHistoryRow(newdr);
|
|
}
|
|
else newdr.Delete();
|
|
}
|
|
|
|
private void btSendMail_Click(object sender, EventArgs e)
|
|
{
|
|
List<int> prjlist = new List<int>();
|
|
prjlist.Add(int.Parse(this.tbIdx.Text));
|
|
fMailSend f = new fMailSend(prjlist);
|
|
f.ShowDialog();
|
|
}
|
|
|
|
|
|
}
|
|
}
|