using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using gregn6Lib; using SQLHelper; using DBUtility; using System.IO; using System.Drawing; namespace Kanban { public partial class Sc_GWKB : Form { public Sc_GWKB() { InitializeComponent(); } public DBUtility.frmBillQueryCondition_New frmCondition; public string ViewName = "h_v_Sc_GWKB"; public string ModCaption = "工位看板"; public const string ModName = "3702"; public const string ModRightName = "Sc_GWKB"; public const string ModRightNameEdit = ModRightName + "_Edit"; public const string ModRightNameCheck = ModRightName + "_Check"; public const string ModRightNameClose = ModRightName + "_Close"; public const string ModRightNameDelete = ModRightName + "_Delete"; Pub_Class.ClsGridListSum oSumGrid = new Pub_Class.ClsGridListSum(); DataSet DSet; Int64 HICMOInterID; //任务单ID Int64 HStationID; //工位ID bool HCheck; //0:手动,1:自动 int HQty; //图片数量/2 int HNow; //当前页数 DataSet iniDs; //图片信息 // private void initGrid() { //DBUtility.Xt_BaseBillFun.initGridList(grdMain,this.Name); //列标题 //grdMain.ColumnHeadersDefaultCellStyle.BackColor = Color.FromArgb(60, 134, 202); //grdMain.ColumnHeadersDefaultCellStyle.ForeColor = Color.White; //grdMain.ColumnHeadersDefaultCellStyle.SelectionBackColor = Color.FromArgb(60, 134, 202); //grdMain.ColumnHeadersDefaultCellStyle.SelectionForeColor = Color.White; //grdMain.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter; //grdMain.ColumnHeadersHeight = 40; //grdMain.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.DisableResizing; ////奇数行 //grdMain.AlternatingRowsDefaultCellStyle.BackColor = Color.FromArgb(104, 97, 118); //grdMain.AlternatingRowsDefaultCellStyle.ForeColor = Color.White; //grdMain.AlternatingRowsDefaultCellStyle.SelectionBackColor = Color.FromArgb(104, 97, 118); //grdMain.AlternatingRowsDefaultCellStyle.SelectionForeColor = Color.White; ////网格背景色 //grdMain.BackgroundColor = Color.FromArgb(104, 97, 118); ////列标题边框样式 //grdMain.ColumnHeadersBorderStyle = DataGridViewHeaderBorderStyle.None; ; ////标题样式是否使用用户当前主题的样式 //grdMain.EnableHeadersVisualStyles = false; ////隐藏行标题 //grdMain.RowHeadersVisible = false; ////单元格 //grdMain.RowsDefaultCellStyle.BackColor = Color.FromArgb(47, 47, 47); //grdMain.RowsDefaultCellStyle.ForeColor = Color.White; //grdMain.RowsDefaultCellStyle.SelectionBackColor = Color.FromArgb(47, 47, 47); //grdMain.RowsDefaultCellStyle.SelectionForeColor = Color.White; //grdMain.RowsDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter; //-------------------- DBUtility.Xt_BaseBillFun.initKanBan(this.Name, grdMain, Tool, lblTitleCaption, splitContainer1.Panel1,ref FY, timer2, timer3); } // private void Display() { ClsCN oCn = new ClsCN(); iniDs = oCn.RunProcReturn("select * from h_v_Sc_GWKB where HICMOInterID= " + HICMOInterID + " and HWorkStationID=" + HStationID + " order by HSno", "h_v_Sc_GWKB", ref ClsPub.sErrInfo); if (iniDs == null) { MessageBox.Show("读取数据出错:" + ClsPub.sErrInfo); return; } //HQty = iniDs.Tables[0].Rows.Count / 2; HQty = ClsPub.isInt(Math.Ceiling((double)iniDs.Tables[0].Rows.Count / (double)2));  HNow = 0; DataRow dr = null; byte[] mybyte = null; MemoryStream mss = null; if (iniDs.Tables[0].Rows.Count != 0) { dr = iniDs.Tables[0].Rows[0] ; mybyte = (byte[])dr["HFile"]; mss = new MemoryStream(mybyte); pictureBox1.Image = Image.FromStream(mss); if (iniDs.Tables[0].Rows.Count != 1) { dr = iniDs.Tables[0].Rows[1]; mybyte = (byte[])dr["HFile"]; mss = new MemoryStream(mybyte); pictureBox2.Image = Image.FromStream(mss); } txtHICMONo.Tag = HICMOInterID; txtHICMONo.Text = iniDs.Tables[0].Rows[0]["HICMOBillNo"].ToString(); txtHMaterNumber.Tag = ClsPub.isLong(iniDs.Tables[0].Rows[0]["HMaterID"].ToString()); txtHMaterNumber.Text = iniDs.Tables[0].Rows[0]["HNumber"].ToString(); txtHMaterName.Text = iniDs.Tables[0].Rows[0]["HName"].ToString(); txtHModel.Text = iniDs.Tables[0].Rows[0]["HModel"].ToString(); txtHStationID.Tag = ClsPub.isLong(iniDs.Tables[0].Rows[0]["HWorkStationID"].ToString()); txtHStationID.Text = iniDs.Tables[0].Rows[0]["HStationName"].ToString(); txtHProcID.Tag = ClsPub.isLong(iniDs.Tables[0].Rows[0]["HProcID"].ToString()); txtHProcID.Text = iniDs.Tables[0].Rows[0]["HProcName"].ToString(); txtHStatus.Text = iniDs.Tables[0].Rows[0]["HStatus"].ToString(); } //ClsCN SubCn = new ClsCN(); //string sSql = ""; //string sWhere = ""; ////过滤条件 ////if (frmCondition.SqlStr.Trim().Length == 0) //// return; //sSql = "exec h_p_Sc_GWKB "+txtHICMONo.Tag; //// //DSet = SubCn.RunProcReturn(sSql, ViewName, ref DBUtility.ClsPub.sExeReturnInfo); ////生成首行标题 //if (DSet == null) //{ // MessageBox.Show("没有返回任何结果,请在过滤框中点击【恢复】按钮,尝试再次查询!" + DBUtility.ClsPub.sExeReturnInfo); // return; //} ////释放冻结 //DBUtility.Xt_BaseBillFun.CancelFrozenCol(grdMain); //// //grdMain.DataSource = DSet.Tables[0].DefaultView; ////-----------预警状态 小于等于 显示 红色, 小于7 橙色,小于等于14 黄色 //int HYJDateCol = Fun_GetCol("预警状态(天)"); //int HSumUnDownQtyCol = Fun_GetCol("未下采购量"); //for (int i = 0; i < grdMain.Rows.Count; i++) //{ // if (DBUtility.ClsPub.isDoule(grdMain.Rows[i].Cells[HYJDateCol].Value) <= 0) // { // grdMain.Rows[i].Cells[HYJDateCol].Style.BackColor = Color.Red; // } // else if (DBUtility.ClsPub.isDoule(grdMain.Rows[i].Cells[HYJDateCol].Value) > 0 && DBUtility.ClsPub.isDoule(grdMain.Rows[i].Cells[HYJDateCol].Value) < 7) // { // grdMain.Rows[i].Cells[HYJDateCol].Style.BackColor = Color.Orange; // } // else if (DBUtility.ClsPub.isDoule(grdMain.Rows[i].Cells[HYJDateCol].Value) >= 7 && DBUtility.ClsPub.isDoule(grdMain.Rows[i].Cells[HYJDateCol].Value) <= 14) // { // grdMain.Rows[i].Cells[HYJDateCol].Style.BackColor = Color.Yellow; // grdMain.Rows[i].Cells[HYJDateCol].Style.ForeColor = Color.Black; // } // //================= //------------未下单 大于0 显示红色 // if (DBUtility.ClsPub.isDoule(grdMain.Rows[i].Cells[HSumUnDownQtyCol].Value) > 0) // { // grdMain.Rows[i].Cells[HSumUnDownQtyCol].Style.BackColor = Color.Red; // } //} ////---------------------- //if (grdMain.Rows.Count != 0) //{ // grdMain.Rows[0].Selected = false; //} ////设置合计列 ////string sTotalCol = ""; ////sTotalCol = DBUtility.Gy_BaseFun.GetTotalCols(DSet); ////string[] sT; ////sT = sTotalCol.Split(Convert.ToChar(",")); ////oSumGrid.BuildTotalCols(sT); //// ////冻结 //int FrCol = DBUtility.ClsPub.isInt(frmCondition.txtFrozenCol.Text); //string s = frmCondition.cmbHComplete.Text; //DBUtility.Xt_BaseBillFun.DisplayGrid(grdMain, this.Name, s, FrCol); ////画线 ////GraphLine(); ////Total(); // } // private void timer1_Tick(object sender, EventArgs e) { timer1.Enabled=false; initGrid(); //if (ClsPub.isLong( txtHICMONo.Tag )!= 0) //{ // Display(); //} } private void tc_Click(object sender, EventArgs e) { //保存列宽 DBUtility.Xt_BaseBillFun.SaveGrid(grdMain, this.Name); this.Close(); } private void sx_Click(object sender, EventArgs e) { timer1.Enabled = true; } private void dj_Click(object sender, EventArgs e) { Sub_ShowBill(); } //显示单据 private void Sub_ShowBill() { } // private Int32 Fun_GetCol(string sCol) { return DBUtility.Xt_BaseBillFun.Fun_GetCol(sCol, grdMain); } // private void Sc_GWKB_Load(object sender, EventArgs e) { // frmCondition = new frmBillQueryCondition_New(); this.Text = ModCaption; //lblCaption.Text = ModCaption; oSumGrid.ogrdMain = grdMain; //初始化 new oSumGrid.oGridsum = grdSum; initGrid(); //读取ini HICMOInterID = ClsPub.isLong(Pub_Class.ClsIni.ReadIni(this.Name, "HICMOInterID", DBUtility.ClsPub.AppPath + @"/KanbanInfo.ini")); HStationID = ClsPub.isLong(Pub_Class.ClsIni.ReadIni(this.Name, "HStationID", DBUtility.ClsPub.AppPath + @"/KanbanInfo.ini")); HCheck = ClsPub.isBool(Pub_Class.ClsIni.ReadIni(this.Name, "HCheck", DBUtility.ClsPub.AppPath + @"/KanbanInfo.ini")); if (HCheck == true) { radioButton1.Checked = false; radioButton2.Checked = true; } else { radioButton1.Checked = true; radioButton2.Checked = false; } Display(); } private void grdMain_DblClick(object sender, EventArgs e) { //Sub_ShowBill(); } private void cx_Click(object sender, EventArgs e) { //frmCondition = new frmBillQueryCondition_New(); //SetCondition(frmCondition, ViewName, this.Name); //frmCondition.ShowDialog(); //if (frmCondition.Tag.ToString() == "OK") //{ Display(); //} } public void SetCondition(frmBillQueryCondition_New frmCondition, string ViewName, string Name) { frmCondition.Tag = ""; frmCondition.ViewName = ViewName; frmCondition.ModName = Name; } private void xz_Click(object sender, EventArgs e) { // } private void sc_Click(object sender, EventArgs e) { Sub_DeleteBill(); } //删除 private void Sub_DeleteBill() { } int FY = 29; private void timer2_Tick(object sender, EventArgs e) { } private void bclk_Click(object sender, EventArgs e) { //保存列宽 DBUtility.Xt_BaseBillFun.SaveGrid(grdMain, this.Name); } private void mrlk_Click(object sender, EventArgs e) { DBUtility.Xt_BaseBillFun.DefaultGridView(grdMain, this.Name); } // private void GraphLine() { int MainIDCol = Fun_GetCol("hmainid"); int SubIDCol = Fun_GetCol("hsubid"); string s = frmCondition.cmbHComplete.Text; long n=0; DBUtility.Xt_BaseBillFun.GraphLine(grdMain, MainIDCol, SubIDCol, s,ref n); //显示 //lbldj.Text = "查询出 " + n.ToString() + " 张单据"; //lbljl.Text = "共有 " + grdMain.RowCount.ToString() + " 条记录"; } //审核 private void sh_Click(object sender, EventArgs e) { this.Sub_CheckBill(); } //审核单据 private void Sub_CheckBill() { } //反审单据 private void Sub_AbandonCheck() { } //反审核 private void qsh_Click(object sender, EventArgs e) { Sub_AbandonCheck(); } private void GraphicsGrid() { DBUtility.Xt_BaseBillFun.GraphicsGrid(grdMain); } #region //打印设置 GridppReport Report; //预览 private void yl_Click(object sender, EventArgs e) { //选择打印模板 BLL.Gy_OpenTmp oFrm = new BLL.Gy_OpenTmp(); oFrm.sBillName = ModName; oFrm.sBillModel = ModCaption; oFrm.ShowDialog(); if (oFrm.OKTag == Pub_Class.ClsPub.Enum_OKTag.OKTag_OK) { // Sub_SetReport(oFrm.sOpenTmp); Report.PrintPreview(true); } } private void Sub_SetReport(string sOpenTmp) { //判断行数 // Report = new GridppReport(); Report.LoadFromFile(DBUtility.ClsPub.AppPath + @"\" + sOpenTmp + ".grf"); //here . Report.FetchRecord += new _IGridppReportEvents_FetchRecordEventHandler(ReportFetchRecordByDataTable); } private void ReportFetchRecordByDataTable() { try { BLL.Utility.FillRecordToReport(Report, grdMain, grdPrint, Fun_GetCol("HMaterID")); } catch (Exception e) { MessageBox.Show("打印失败!:" + e.Message); } } #endregion // private void grdMain_Paint(object sender, PaintEventArgs e) { GraphicsGrid(); } //合计 new private void Total() { if (grdMain.Rows.Count > 0 && grdMain.ColumnCount>0) { oSumGrid.SetGridsum(); oSumGrid.Total(); } } //合计 new private void grdMain_ColumnWidthChanged(object sender, DataGridViewColumnEventArgs e) { Total(); } //合计 new private void grdMain_CellMouseUp(object sender, DataGridViewCellMouseEventArgs e) { Total(); } //引出EXCEL private void dc_Click(object sender, EventArgs e) { DBUtility.Gy_BaseFun.DataToExcel(this.Text, grdMain); } private void txtHICMONo_KeyDown(object sender, KeyEventArgs e) { ClsCN oCn = new ClsCN(); DataSet Ds; if (e.KeyCode == Keys.Enter) { //// ////获取控件位置 //int x = 0; int y = 0; //BLL.ClsPub_BLL.SetXY(this, splitContainer1.Panel1, txtHICMONo, ref x, ref y); ////选择基础 //BLL.ClsBaseDownSelect.SetTextByK3Mater(txtHICMONo, x, y); //// //if (ClsPub.isLong( txtHICMONo.Tag) == 0) //{ // MessageBox.Show("产品不存在!"); // return; //} //Ds = oCn.RunProcReturn("exec h_p_KB_GetICMOQty " + txtHICMONo.Tag, "h_p_KB_GetICMOQty", ref DBUtility.ClsPub.sErrInfo); //if (Ds == null) //{ // MessageBox.Show("查询任务单数量出错,原因:" + DBUtility.ClsPub.sErrInfo); // return; //} //if (Ds.Tables[0].Rows.Count == 0) //{ // MessageBox.Show("任务单不存在!"); // return; //} ////txtHICMONo.Tag = ClsPub.isLong(Ds.Tables[0].Rows[0]["HICMOID"]); //txtHMaterNumber.Text = ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HModel"]); //txtHQty.Text = ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HQty"]); ////txtHType.Text = ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HStatus"]); ////dtpHDate.Value = ClsPub.isDate(Ds.Tables[0].Rows[0]["HStartDate"]); //Display(); } } public void SetXY(Form frm, Panel p, TextBox t, ref int x, ref int y) { x = frm.Location.X + p.Location.X + t.Location.X; y = frm.Location.Y + p.Location.Y + t.Location.Y + t.Height + 35; } private void toolStripButton1_Click(object sender, EventArgs e) { if (toolStripButton1.Text == "暂停") { toolStripButton1.Text = "运行"; timer2.Enabled = false; } else { toolStripButton1.Text = "暂停"; timer2.Enabled = true; } } private void toolStripButton2_Click(object sender, EventArgs e) { //保存列宽 DBUtility.Xt_BaseBillFun.SaveGrid(grdMain, this.Name); //保存过滤信息到ini Pub_Class.ClsIni.WriteIni(this.Name, "HICMOInterID",ClsPub.isStrNull( txtHICMONo.Tag), DBUtility.ClsPub.AppPath + @"/KanbanInfo.ini"); Pub_Class.ClsIni.WriteIni(this.Name, "HStationID", ClsPub.isStrNull(txtHStationID.Tag), DBUtility.ClsPub.AppPath + @"/KanbanInfo.ini"); if (radioButton1.Checked = true) { Pub_Class.ClsIni.WriteIni(this.Name, "HCheck", "0", DBUtility.ClsPub.AppPath + @"/KanbanInfo.ini"); } else { Pub_Class.ClsIni.WriteIni(this.Name, "HCheck", "1", DBUtility.ClsPub.AppPath + @"/KanbanInfo.ini"); } // this.Close(); } private void toolStripButton3_Click(object sender, EventArgs e) { Kanban_BaseSet oSZ = new Kanban_BaseSet(); oSZ.HName = this.Name; oSZ.ShowDialog(); timer1.Enabled = true; } private void timer3_Tick(object sender, EventArgs e) { } private void grdMain_Sorted(object sender, EventArgs e) { } private void toolStripButton4_Click(object sender, EventArgs e) { DBUtility.Gy_BaseFun.DataToExcel(this.Text, grdMain); } private void button1_Click(object sender, EventArgs e) { Sc_SCJHList oList = new Sc_SCJHList(); oList.txtHStation.Tag = ClsPub.isLong(txtHStationID.Tag); oList.txtHStation.Text = txtHStationID.Text; oList.txtHMaterNumber.Tag = ClsPub.isLong(txtHMaterNumber.Tag); oList.txtHMaterNumber.Text = txtHMaterNumber.Text; oList.txtHMaterName.Text = txtHMaterName.Text; oList.txtHModel.Text = txtHModel.Text; oList.ShowDialog(); HICMOInterID = oList.HICMOInterID; HStationID = ClsPub.isLong(oList.txtHStation.Tag); Display(); } private void button3_Click(object sender, EventArgs e) { if (HNow > 0) { DataRow dr = null; byte[] mybyte = null; MemoryStream mss = null; HNow = HNow - 1; int a = HNow * 2; int b = HNow * 2+1; //第一张图片 dr = iniDs.Tables[0].Rows[a]; mybyte = (byte[])dr["HFile"]; mss = new MemoryStream(mybyte); pictureBox1.Image = Image.FromStream(mss); //第二张图片 dr = iniDs.Tables[0].Rows[b]; mybyte = (byte[])dr["HFile"]; mss = new MemoryStream(mybyte); pictureBox2.Image = Image.FromStream(mss); } } private void button2_Click(object sender, EventArgs e) { if (HNow < HQty - 1) { DataRow dr = null; byte[] mybyte = null; MemoryStream mss = null; HNow = HNow + 1; int a = HNow * 2; int b = HNow * 2 + 1; //第一张图片 dr = iniDs.Tables[0].Rows[a]; mybyte = (byte[])dr["HFile"]; mss = new MemoryStream(mybyte); pictureBox1.Image = Image.FromStream(mss); //第二张图片 if (b < iniDs.Tables[0].Rows.Count) { dr = iniDs.Tables[0].Rows[b]; mybyte = (byte[])dr["HFile"]; mss = new MemoryStream(mybyte); pictureBox2.Image = Image.FromStream(mss); } else { pictureBox2.Image = null; } } } } }