신규 스케쥴 추가시 조회되지 않는 현상 수정
스케쥴 승인,1,2 기능 구현
This commit is contained in:
@@ -16,7 +16,8 @@ namespace FPJ0000
|
||||
int projectindex = 0;
|
||||
EEEntities db;
|
||||
List<EETGW_ProjectsSchedule> list;
|
||||
Boolean bini = false;
|
||||
Boolean bInit = false;
|
||||
|
||||
public fProjectSchedule(int project_)
|
||||
{
|
||||
InitializeComponent();
|
||||
@@ -26,6 +27,7 @@ namespace FPJ0000
|
||||
fn_fpcolsize2 = util.MakeFilePath(util.CurrentPath, "formSetting", "fp2_" + this.Name + ".ini");
|
||||
this.FormClosed += FProjectSchedule_FormClosed;
|
||||
this.FormClosing += FProjectSchedule_FormClosing;
|
||||
this.dsPRJ.EETGW_ProjectsSchedule.TableNewRow += ProjectsSchedule_TableNewRow;
|
||||
}
|
||||
|
||||
private void FProjectSchedule_FormClosing(object sender, FormClosingEventArgs e)
|
||||
@@ -33,7 +35,7 @@ namespace FPJ0000
|
||||
this.Validate();
|
||||
this.bs.EndEdit();
|
||||
this.bsTodo.EndEdit();
|
||||
|
||||
|
||||
if (dsPRJ.HasChanges())
|
||||
{
|
||||
var dlg = FCOMMON.Util.MsgQ("변경된 자료가 있습니다. 지금 화면을 닫으면 해당 자료는 손실됩니다\n화면을 닫을까요?");
|
||||
@@ -47,7 +49,7 @@ namespace FPJ0000
|
||||
|
||||
private void FProjectSchedule_FormClosed(object sender, FormClosedEventArgs e)
|
||||
{
|
||||
|
||||
this.dsPRJ.EETGW_ProjectsSchedule.TableNewRow -= ProjectsSchedule_TableNewRow;
|
||||
this.dsPRJ.EETGW_ProjectsSchedule.RowChanged += EETGW_ProjectsSchedule_RowChanged;
|
||||
}
|
||||
|
||||
@@ -56,6 +58,8 @@ namespace FPJ0000
|
||||
e.Row["wuid"] = FCOMMON.info.Login.no;
|
||||
e.Row["wdate"] = DateTime.Now;
|
||||
e.Row["project"] = this.projectindex;
|
||||
e.Row["appoval"] = 0; //신규추가는 확정안되는 데이터이다
|
||||
e.Row["no"] = int.Parse(this.comboBox1.Text);
|
||||
}
|
||||
|
||||
private void fProjectSchedule_Load(object sender, EventArgs e)
|
||||
@@ -63,11 +67,35 @@ namespace FPJ0000
|
||||
//프로젝트 정보 채우기
|
||||
this.taProjectInfo.FillByIDX(this.dsPRJ.Projects, this.projectindex);
|
||||
|
||||
//스케쥴 그룹(no)
|
||||
var db = new EEEntities();
|
||||
var nolist = db.EETGW_ProjectsSchedule.AsNoTracking().Where(t => t.gcode == FCOMMON.info.Login.gcode && t.project == this.projectindex).GroupBy(t => t.no).ToList();
|
||||
this.comboBox1.Items.Clear();
|
||||
foreach (var item in nolist)
|
||||
{
|
||||
if (item.Key == null) this.comboBox1.Items.Add("1");
|
||||
else this.comboBox1.Items.Add(item.Key.ToString());
|
||||
}
|
||||
db.Dispose();
|
||||
|
||||
if (this.comboBox1.Items.Count == 0)
|
||||
{
|
||||
util.MsgE("이 프로젝트에는 스케쥴이 등록되지 않았습니다\n" +
|
||||
"스케쥴을 등록한 후 에는 관리자이 승인과정이 필요하며 승인이 완료되면 계획은 수정할 수 없습니다");
|
||||
this.comboBox1.Items.Add("1");
|
||||
this.comboBox1.SelectedIndex = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.comboBox1.SelectedIndex = this.comboBox1.Items.Count - 1;
|
||||
}
|
||||
this.comboBox1.Items.Add("스케쥴 추가");
|
||||
|
||||
|
||||
RefreshData();
|
||||
RefreshGraph();
|
||||
this.dsPRJ.EETGW_ProjectsSchedule.RowChanged += EETGW_ProjectsSchedule_RowChanged;
|
||||
bini = true;
|
||||
|
||||
|
||||
//시작할떄 cww 를 가져오낟.
|
||||
var sql = "select dbo.getWorkWeek('" + DateTime.Now.ToShortDateString() + "')";
|
||||
@@ -77,14 +105,14 @@ namespace FPJ0000
|
||||
CWW = int.Parse(wccstr.ToString());
|
||||
cmd.Connection.Close();
|
||||
cmd.Dispose();
|
||||
|
||||
bInit = true;
|
||||
}
|
||||
|
||||
int CWW = 0;
|
||||
|
||||
private void EETGW_ProjectsSchedule_RowChanged(object sender, DataRowChangeEventArgs e)
|
||||
{
|
||||
if (bini == false) return;
|
||||
if (bInit == false) return;
|
||||
RefreshGraph();
|
||||
}
|
||||
|
||||
@@ -94,10 +122,12 @@ namespace FPJ0000
|
||||
}
|
||||
void RefreshData()
|
||||
{
|
||||
var scno = int.Parse(comboBox1.Text);
|
||||
try
|
||||
{
|
||||
//list = db.EETGW_ProjectsSchedule.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.project == this.projectindex).OrderBy(t => t.seq).ToList();
|
||||
this.ta.Fill(this.dsPRJ.EETGW_ProjectsSchedule, FCOMMON.info.Login.gcode, this.projectindex);
|
||||
|
||||
this.ta.Fill(this.dsPRJ.EETGW_ProjectsSchedule, FCOMMON.info.Login.gcode, this.projectindex, scno);
|
||||
this.taTodo.Fill(this.dsPRJ.EETGW_ProjectToDo, this.projectindex);
|
||||
//this.bs.DataSource = list;//.ToList();// db.EETGW_ProjectsSchedule.Local;
|
||||
//this.fpSpread1_Sheet1.DataSource = this.bs;
|
||||
@@ -108,6 +138,45 @@ namespace FPJ0000
|
||||
{
|
||||
System.Windows.Forms.MessageBox.Show(ex.Message);
|
||||
}
|
||||
Application.DoEvents();
|
||||
|
||||
//해당스케쥴의 승인상태를 확인
|
||||
var db = new EEEntities();
|
||||
var dr = db.EETGW_ProjectsSchedule.Where(t => t.project == this.projectindex && t.no == scno).FirstOrDefault();
|
||||
if (dr == null || dr.appoval == 0)
|
||||
{
|
||||
chkapp1.Checked = false;
|
||||
chkapp2.Checked = false;
|
||||
|
||||
|
||||
}
|
||||
else if (dr.appoval == 1)
|
||||
{
|
||||
chkapp1.Checked = true;
|
||||
chkapp2.Checked = false;
|
||||
|
||||
this.fpSpread1.Sheets[0].Columns[2].Locked = true;
|
||||
this.fpSpread1.Sheets[0].Columns[3].Locked = true;
|
||||
this.fpSpread1.Sheets[0].Columns[2].BackColor = Color.FromArgb(230, 230, 230);
|
||||
this.fpSpread1.Sheets[0].Columns[3].BackColor = Color.FromArgb(230, 230, 230);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
chkapp1.Checked = true;
|
||||
chkapp2.Checked = true;
|
||||
|
||||
this.fpSpread1.Sheets[0].Columns[2].Locked = true;
|
||||
this.fpSpread1.Sheets[0].Columns[3].Locked = true;
|
||||
this.fpSpread1.Sheets[0].Columns[2].BackColor = Color.FromArgb(230, 230, 230);
|
||||
this.fpSpread1.Sheets[0].Columns[3].BackColor = Color.FromArgb(230, 230, 230);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
private void projectsScheduleBindingNavigatorSaveItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
@@ -405,7 +474,7 @@ namespace FPJ0000
|
||||
//actual
|
||||
if (ww >= swa && ww <= ewa)
|
||||
e.Graphics.FillRectangle(new SolidBrush(ABg), rect2BP.Left, rect2BP.Top, rect2BP.Width, rect2BP.Height);
|
||||
else if (isEmpty == false && isBusy && ww >= swa && ww <= this.CWW )
|
||||
else if (isEmpty == false && isBusy && ww >= swa && ww <= this.CWW)
|
||||
{
|
||||
e.Graphics.FillRectangle(new SolidBrush(Color.Pink), rect2BP.Left, rect2BP.Top, rect2BP.Width, rect2BP.Height);
|
||||
}
|
||||
@@ -515,5 +584,65 @@ namespace FPJ0000
|
||||
//lad
|
||||
FPUtil.ColSizeLoad(ref this.fpSpread2, fn_fpcolsize2);
|
||||
}
|
||||
|
||||
private void chkapp1_Click(object sender, EventArgs e)
|
||||
{
|
||||
//권한이 있어야한다.
|
||||
var db = new EEEntities();
|
||||
var dr = db.Auth.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.user == FCOMMON.info.Login.no).FirstOrDefault();
|
||||
if (dr == null || dr.scheapp == null || dr.scheapp < 1)
|
||||
{
|
||||
util.MsgE("'승인권한1'이 없습니다");
|
||||
return;
|
||||
}
|
||||
if(chkapp1.Checked)
|
||||
{
|
||||
util.MsgE("'승인해제1'는 현재 구현 중");
|
||||
}
|
||||
else
|
||||
{
|
||||
chkapp1.Checked = true;
|
||||
foreach(var item in this.dsPRJ.EETGW_ProjectsSchedule)
|
||||
{
|
||||
if (item.RowState == DataRowState.Deleted || item.RowState == DataRowState.Deleted) continue;
|
||||
item.appoval = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void chkapp2_Click(object sender, EventArgs e)
|
||||
{
|
||||
//권한이 있어야한다.
|
||||
var db = new EEEntities();
|
||||
var dr = db.Auth.Where(t => t.gcode == FCOMMON.info.Login.gcode && t.user == FCOMMON.info.Login.no).FirstOrDefault();
|
||||
if (dr == null || dr.scheapp == null || dr.scheapp < 2)
|
||||
{
|
||||
util.MsgE("'승인권한2'이 없습니다");
|
||||
return;
|
||||
}
|
||||
if (chkapp2.Checked)
|
||||
{
|
||||
util.MsgE("승인해제2'는 현재 구현 중");
|
||||
}
|
||||
else
|
||||
{
|
||||
chkapp2.Checked = true;
|
||||
foreach (var item in this.dsPRJ.EETGW_ProjectsSchedule)
|
||||
{
|
||||
if (item.RowState == DataRowState.Deleted || item.RowState == DataRowState.Deleted) continue;
|
||||
item.appoval = 2;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (bInit == false) return;
|
||||
if(comboBox1.SelectedIndex == this.comboBox1.Items.Count-1)
|
||||
{
|
||||
util.MsgE("스케쥴 신규 추가 기능은 준비 중 입니다");
|
||||
this.comboBox1.SelectedIndex = this.comboBox1.Items.Count - 2;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user