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 Pub_Class; using SQLHelper; using DBUtility; namespace EAM { public partial class Sc_MouldCostList : Form { public Sc_MouldCostList() { InitializeComponent(); } public frmBillQueryCondition_New frmCondition; const string ViewName = "h_v_Sc_MouldCostList"; const string ModCaption = "模具费用列表"; public const string ModName = "1814"; public const string ModRightName = "Sc_MouldCostMoneyBill"; public const string ModRightNameEdit = ModRightName + "_Edit"; public const string ModRightNameCheck = ModRightName + "_Check"; public const string ModRightNameClose = ModRightName + "_Close"; public const string ModRightNameDelete = ModRightName + "_Delete"; public const string ModRightNameMoney = ModRightName + "_Money"; public const string ModRightNameQty = ModRightName + "_Qty"; DAL.ClsSc_MouldCostMoneyBill oBill = new DAL.ClsSc_MouldCostMoneyBill(); public Sc_MouldCostMoneyBill oFrm; public string sDlgWhere = ""; //外窗体递入 Pub_Class.ClsGridListSum oSumGrid = new Pub_Class.ClsGridListSum(); public long HMainID = 0; public long HMainID_New = 0; #region 固定代码 //初始化网格 private void initGrid() { DBUtility.Xt_BaseBillFun.initGridList(grdMain,this.Name); } // //显示 private void Display() { ClsCN SubCn = new ClsCN(); DataSet DSet; string sSql = ""; string sWhere = ""; //特殊条件(日期限制,部门限制) DBUtility.Xt_BaseBillFun.Sub_SQLWhere(ref sWhere); if (sDlgWhere == "") { //过滤条件 if (frmCondition.SqlStr.Trim().Length == 0) return; sSql = frmCondition.SqlStr + sWhere + " order by 年,月 "; } else { sSql = "Select * from " + ViewName + " Where 1=1 " + sWhere + sDlgWhere + " order by 年,月"; } // 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; //设置合计列 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(); Display(); } //退出 private void tc_Click(object sender, EventArgs e) { 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() { //Int64 lngBillKey = 0; //if (grdMain.CurrentRow == null) // return; //lngBillKey =DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("hmainid")].Value); //if (lngBillKey == 0) // return; //DAL.ClsSc_MouldCostMoneyBill oBill = new DAL.ClsSc_MouldCostMoneyBill(); //if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) //{ // oFrm = new Sc_MouldCostMoneyBill(); // oFrm.BillStatus = DBUtility.ClsPub.Enum_BillStatus.BillStatus_View; // oFrm.BillOld = oBill; // oFrm.ShowDialog(); // if (oFrm.BillChange) // { // if (MessageBox.Show("单据列表已经发生变化,是否刷新", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK) // { // timer1.Enabled = true; // } // } //} //else //{ // MessageBox.Show("单据未找到", "提示"); //} //oBill = null; } // private Int32 Fun_GetCol(string sCol) { return DBUtility.Xt_BaseBillFun.Fun_GetCol(sCol, grdMain); } // private void Sc_MouldCostList_Load(object sender, EventArgs e) { // frmCondition = new frmBillQueryCondition_New(); this.Text = ModCaption; lblCaption.Text = ModCaption; oSumGrid.ogrdMain = grdMain; //初始化 new oSumGrid.oGridsum = grdSum; initGrid(); } //双击查看 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) { // //oFrm = new Sc_MouldCostMoneyBill(); //oFrm.ShowDialog(); } private void sc_Click(object sender, EventArgs e) { Sub_DeleteBill(); } //删除 private void Sub_DeleteBill() { //编辑权限 //if (!DBUtility.ClsPub.Security_Log(ModRightNameEdit, 1, true,DBUtility.ClsPub.CurUserName)) //{ // return; //} // //Int64 lngBillKey = 0; //if (grdMain.CurrentRow == null) // return; //lngBillKey = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("hmainid")].Value); //if (lngBillKey == 0) // return; //DAL.ClsSc_MouldCostMoneyBill oBill = new DAL.ClsSc_MouldCostMoneyBill(); //if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) //{ // if (oBill.omodel.HBillStatus > 1) // { // MessageBox.Show("单据当前处于不能删除状态,不能删除!", "提示"); // return; // } // if (oBill.omodel.HChecker != "") // { // MessageBox.Show("单据已经审核,不能删除!", "提示"); // return; // } // if (MessageBox.Show("确定要删除当前单据?", "提示", MessageBoxButtons.OKCancel)==DialogResult.OK) // { // if (!oBill.DeleteBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo)) // { // MessageBox.Show(DBUtility.ClsPub.sExeReturnInfo, "提示"); // return; // } // else // { // Display(); // } // } //} //else //{ // MessageBox.Show("单据未找到", "提示"); //} } private void timer2_Tick(object sender, EventArgs e) { timer2.Enabled = false; //if (sDlgWhere == "") //{ // frmCondition = new frmBillQueryCondition_New(); // SetCondition(frmCondition, ViewName, this.Name); // frmCondition.ShowDialog(); // if (frmCondition.Tag.ToString() == "OK") // { // timer1.Enabled = true; // } //} //else //{ // timer1.Enabled = true; //} } // 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() { //审核权限 //if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, true,DBUtility.ClsPub.CurUserName)) //{ // return; //} //// //Int64 lngBillKey = 0; //if (grdMain.CurrentRow == null) // return; //lngBillKey = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("hmainid")].Value); //if (lngBillKey == 0) // return; //DAL.ClsSc_MouldCostMoneyBill oBill = new DAL.ClsSc_MouldCostMoneyBill(); ////查看是否已审核,关闭,作废 //if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) //{ // if (oBill.omodel.HChecker.Trim() != "") // { // MessageBox.Show("单据已审核!不能再次审核", "提示"); // return; // } // if (oBill.omodel.HCloseMan.Trim() != "") // { // MessageBox.Show("单据已关闭!不能再次审核", "提示"); // return; // } // if (oBill.omodel.HDeleteMan.Trim() != "") // { // MessageBox.Show("单据已作废!不能再次审核", "提示"); // return; // } //} //else //{ // MessageBox.Show("单据不存在!原因:" + DBUtility.ClsPub.sExeReturnInfo, "提示"); // return; //} ////审核 //if (oBill.CheckBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true) //{ // MessageBox.Show("审核成功!", "提示"); // return; //} //else //{ // MessageBox.Show("审核失败!原因:" + DBUtility.ClsPub.sExeReturnInfo, "提示"); // return; //} } //反审单据 private void Sub_AbandonCheck() { ////审核权限 //if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, true,DBUtility.ClsPub.CurUserName)) //{ // return; //} //// //Int64 lngBillKey = 0; //if (grdMain.CurrentRow == null) // return; //lngBillKey = DBUtility.ClsPub.isLong(grdMain.Rows[grdMain.CurrentRow.Index].Cells[Fun_GetCol("hmainid")].Value); //if (lngBillKey == 0) // return; //DAL.ClsSc_MouldCostMoneyBill oBill = new DAL.ClsSc_MouldCostMoneyBill(); ////查看是否已审核,关闭,作废 //if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) //{ // if (oBill.omodel.HChecker.Trim() == "") // { // MessageBox.Show("单据未审核!不需要反审核!", "提示"); // return; // } // if (oBill.omodel.HCloseMan.Trim() != "") // { // MessageBox.Show("单据已关闭!不能再次审核", "提示"); // return; // } // if (oBill.omodel.HDeleteMan.Trim() != "") // { // MessageBox.Show("单据已作废!不能再次审核", "提示"); // return; // } //} //else //{ // MessageBox.Show("单据不存在!原因:" + DBUtility.ClsPub.sExeReturnInfo, "提示"); // return; //} ////反审核 //if (oBill.AbandonCheck(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true) //{ // MessageBox.Show("反审核成功!", "提示"); // return; //} //else //{ // MessageBox.Show("反审核失败!原因:" + DBUtility.ClsPub.sExeReturnInfo, "提示"); // return; //} } //反审核 private void qsh_Click(object sender, EventArgs e) { //Sub_AbandonCheck(); } private void GraphicsGrid() { DBUtility.Xt_BaseBillFun.GraphicsGrid(grdMain); } // 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(); } private void dc_Click(object sender, EventArgs e) { DBUtility.Gy_BaseFun.DataToExcel(this.Text, grdMain); } #endregion #region //打印设置 GridppReport Report; private void set_Click(object sender, EventArgs e) { //选择打印模板 BLL.Gy_OpenTmp oFrm = new BLL.Gy_OpenTmp(); oFrm.sBillName = ModName; oFrm.sBillModel = ModCaption; oFrm.ShowDialog(); } private void dy_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.Print(true); } } //预览 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); HMainID = 0; HMainID_New = 0; for (int i = 0; i <= grdMain.Rows.Count - 1; i++) { HMainID_New = DBUtility.ClsPub.isLong(grdMain.Rows[i].Cells[Fun_GetCol("HMainID")].Value); if (HMainID_New != HMainID && HMainID_New != 0) { HMainID = HMainID_New; Report.PrintPreview(true); } } } } private void Sub_SetReport(string sOpenTmp) { //判断行数 // Report = new GridppReport(); Report.LoadFromFile(DBUtility.ClsPub.AppPath + @"\" + sOpenTmp + ".grf"); //here . Report.BeforePostRecord += new _IGridppReportEvents_BeforePostRecordEventHandler(ReportBeforePostRecord); Report.FetchRecord += new _IGridppReportEvents_FetchRecordEventHandler(ReportFetchRecordByDataTable); } private void ReportBeforePostRecord() { try { //Report.FieldByName("单据号").AsString = "123"; int HPeriodCol = Fun_GetCol("会计月"); int HDateCol = Fun_GetCol("日期"); int HRoomNumberCol = Fun_GetCol("业户代码"); int HRoomNameCol = Fun_GetCol("业户"); int HItMoneyNameCol = Fun_GetCol("费用项目"); int HQtyCol = Fun_GetCol("数量"); int HPriceCol = Fun_GetCol("单价"); int HMoneyCol = Fun_GetCol("金额"); int HWasterCol = Fun_GetCol("损耗"); int HBeginBalanceCol = Fun_GetCol("开始数值"); int HEndBalanceCol = Fun_GetCol("结束数值"); double sQty = 0; // for (int i = 0; i <= grdMain.Rows.Count - 1; i++) { if (DBUtility.ClsPub.isLong(grdMain.Rows[i].Cells[Fun_GetCol("HMainID")].Value) == HMainID_New) { if (DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HItMoneyNameCol].Value) == "冷水") { Report.FieldByName("冷水开始数值").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HBeginBalanceCol].Value); Report.FieldByName("冷水结束数值").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HEndBalanceCol].Value); Report.FieldByName("冷水用量").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HQtyCol].Value); Report.FieldByName("冷水损耗").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HWasterCol].Value); Report.FieldByName("冷水单价").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HPriceCol].Value); Report.FieldByName("冷水金额").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HMoneyCol].Value); sQty = sQty + DBUtility.ClsPub.isDoule(grdMain.Rows[i].Cells[HMoneyCol].Value); } else if (DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HItMoneyNameCol].Value) == "热水") { Report.FieldByName("热水开始数值").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HBeginBalanceCol].Value); Report.FieldByName("热水结束数值").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HEndBalanceCol].Value); Report.FieldByName("热水用量").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HQtyCol].Value); Report.FieldByName("热水损耗").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HWasterCol].Value); Report.FieldByName("热水单价").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HPriceCol].Value); Report.FieldByName("热水金额").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HMoneyCol].Value); sQty = sQty + DBUtility.ClsPub.isDoule(grdMain.Rows[i].Cells[HMoneyCol].Value); } else if (DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HItMoneyNameCol].Value) == "空调") { Report.FieldByName("空调开始数值").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HBeginBalanceCol].Value); Report.FieldByName("空调结束数值").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HEndBalanceCol].Value); Report.FieldByName("空调用量").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HQtyCol].Value); Report.FieldByName("空调损耗").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HWasterCol].Value); Report.FieldByName("空调单价").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HPriceCol].Value); Report.FieldByName("空调金额").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HMoneyCol].Value); sQty = sQty + DBUtility.ClsPub.isDoule(grdMain.Rows[i].Cells[HMoneyCol].Value); } //string[] cnNum = { "零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖" }; string sQty_Big = sQty.ToString(); //for (int j = 0; j < 10; j++) //{ // sQty_Big = sQty_Big.Replace(j.ToString(), cnNum[j]); //} Report.FieldByName("月").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HPeriodCol].Value); Report.FieldByName("业户编号").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HRoomNumberCol].Value); Report.FieldByName("业户").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HRoomNameCol].Value); Report.FieldByName("日期").AsString = DBUtility.ClsPub.isStrNull(grdMain.Rows[i].Cells[HDateCol].Value); Report.FieldByName("大写金额").AsString = sQty.ToString(); Report.FieldByName("小写金额").AsString = sQty_Big; } } } catch (Exception e) { MessageBox.Show("打印失败!表头:" + e.Message); } } private void ReportFetchRecordByDataTable() { try { BLL.Utility.FillRecordToReport(Report, grdMain, grdPrint, 0); } catch (Exception e) { MessageBox.Show("打印失败!表体:" + e.Message); } } #endregion #region 额外方法 //上查 private void shc_Click(object sender, EventArgs e) { // } private void xc_Click(object sender, EventArgs e) { // } #endregion private void toolStripButton1_Click(object sender, EventArgs e) { //InputMode = Enum_InputMode.InputMode_AddNew; //Init(); DataSet Ds = new DataSet(); Sc_MouldCost1 oForm = new Sc_MouldCost1(); Sc_MouldCost2 oForm2 = new Sc_MouldCost2(); Sc_MouldCost3 oForm3 = new Sc_MouldCost3(); Sc_MouldCost4 oForm4 = new Sc_MouldCost4(); Sc_MouldCost5 oForm5 = new Sc_MouldCost5(); //----------------------- oForm3.cmbHPeriod.Text = DateTime.Today.Month.ToString(); oForm3.cmbHYear.Items.Add(DateTime.Today.AddYears(-2).Year); oForm3.cmbHYear.Items.Add(DateTime.Today.AddYears(-1).Year); oForm3.cmbHYear.Items.Add(DateTime.Today.Year); oForm3.cmbHYear.Items.Add(DateTime.Today.AddYears(1).Year); oForm3.cmbHYear.SelectedIndex = 2; //----------------------1:上一步,2:下一步(完成),3:退出 Form1: oForm.ShowDialog(); if (oForm.HCode == 2) { Form2: oForm2.ShowDialog(); if (oForm2.HCode == 1) { goto Form1; } else if (oForm2.HCode == 2) { Form3: oForm3.ShowDialog(); if (oForm3.HCode == 1) { goto Form2; } else if (oForm3.HCode == 2) { Form4: //获取核算信息 oForm4.HYear = DBUtility.ClsPub.isInt(oForm3.cmbHYear.Text); oForm4.HPeriod = DBUtility.ClsPub.isInt(oForm3.cmbHPeriod.Text); oForm4.HBDeptNumber = oForm2.txtHBDeptID.Text; oForm4.HEDeptNumber = oForm2.txtHEDeptID.Text; if (oForm2.rbHDeptAll.Checked == true) { oForm4.HDeptType = 0; //全部 } else if (oForm2.rbHDeptAToB.Checked == true) { oForm4.HDeptType = 1; //部门段 } else { oForm4.HDeptType = 2; //单个部门 oForm4.HBDeptNumber = oForm2.txtHDeptID.Text; } // //if (oForm3.rbHSetType_CZ.Checked == true) //{ // oForm4.HSetType = 0; //按产值 //} //else if (oForm3.rbHSetType_CL.Checked == true) //{ // oForm4.HSetType = 1; //按产量 //} // oForm4.ShowDialog(); if (oForm4.HCode == 1) { goto Form3; } else if (oForm4.HCode == 2) { //Form5: oForm5.ShowDialog(); if (oForm5.HCode == 1) { goto Form4; } else if (oForm5.HCode == 2) { //MessageBox.Show(""); } else { } } else { } } else { } } else { } } else { } } } }