| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515 |
- 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;
- using CoreFS.CA06;
- using System.Collections;
- using Core.Mes.Client.Comm.Control;
- using Core.StlMes.Client.PlnSaleOrd.BLL;
- using System.Diagnostics;
- using Infragistics.Win.UltraWinGrid;
- using Core.Mes.Client.Comm.Server;
- namespace Core.StlMes.Client.PlnSaleOrd.Control
- {
- public partial class ComOrdExportCtrl : UserControl
- {
- ComOrdExportBLL comBll = null;
- public ComOrdExportCtrl()
- {
- InitializeComponent();
- }
- public void ComBLL(OpeBase _ob)
- {
- comBll = new ComOrdExportBLL(_ob);
- }
- private void ComOrdExportCtrl_Load(object sender, EventArgs e)
- {
- PlanComm.setGridSummarySet(this.ultraGridExport, 3,
- "ORDERWEIGHT", "PLAN_WT_D", "PAYDOWNWEIGHT");
- PlanComm.setGridSummarySet(this.ultraGridExport, 0, "PAYDOWN_NUM");
- ultraComboFinishEditor.SelectedIndex = 0;
- ultraComboEditAcpStatus.SelectedIndex = 1;
- ultraGridExport.DisplayLayout.Bands[0].Columns["MONITORDEMAND"].EditorComponent = ultraFileLook;
- ultraGridExport.DisplayLayout.Bands[0].Columns["MONITORDEMAND"].ButtonDisplayStyle
- = Infragistics.Win.UltraWinGrid.ButtonDisplayStyle.Always;
- }
- /// <summary>
- /// 导出查询
- /// </summary>
- public void DoQueryExp()
- {
- ArrayList param = new ArrayList();
- bool notCraft = false;
- bool isImportOrd = false;
- string status = "";
- string strAcceptNo = "";//接收批次号
- string strOrderNo = ""; //合同号
- string strRollMonth = "";//轧制月份
- //string strDateForm = "1000/01/01"; //交货结束日期从,默认最小日期
- //string strDateTo = "9999/12/31"; //交货结束日期到,默认最大日期
- string strFinish = "";
- if (this.checkBoxAcceptNoexport.Checked)
- {
- //接收批次号
- strAcceptNo = this.ultraTextAcceptNo.Text.Trim();
- }
- if (this.checkBoxORDER_NOexpor.Checked)
- {
- //合同号
- strOrderNo = this.ultraTextORDER_NO.Text.Trim();
- }
- //if (this.checkBoxDELVRY_EDATEexport.Checked)
- //{
- // //接收日期
- // strDateForm = this.ultraDateTimeDELVRY_EDATEFrom.DateTime.ToString("yyyy/MM/dd");
- // strDateTo = this.ultraDateTimeDELVRY_EDATETo.DateTime.ToString("yyyy/MM/dd");
- //}
- if (checkBoxAcpStatus.Checked)
- {
- //合同状态
- status = ultraComboEditAcpStatus.Value.ToString();
- }
- if (checkBoxImport.Checked)
- {
- isImportOrd = true;
- }
- if (checkBoxNotCraft.Checked)
- {
- notCraft = true;
- }
- if (checkBoxFinish.Checked)
- {
- strFinish = ultraComboFinishEditor.Value.ToString();
- }
- if (checkBoxRollMonth.Checked)
- {
- strRollMonth = ultraDateTimeRollMonth.DateTime.ToString("yyyy-MM");
- }
- param.Add(strAcceptNo);
- param.Add(strOrderNo);
- param.Add(strRollMonth);
- param.Add(status);
- DataTable dt = comBll.Query(param, strFinish, notCraft, isImportOrd);
- GridHelper.CopyDataToDatatable(dt, dataTable1, true);
- ///设置grid不可编辑
- PlanComm.setGridActivation(ultraGridExport.DisplayLayout.Bands[0]);
- PlanComm.setGridDigitalCol(ultraGridExport.DisplayLayout.Bands[0], 5, 3,
- "ORDER_QTY", "ORDERWEIGHT", "CONFIRM_WT_SUM", "Z_ORDERWEIGHT");
- PlanComm.setGridDigitalCol(ultraGridExport.DisplayLayout.Bands[0], 5, 2,
- "TOTLENGTH", "HEIGHT_YLG", "DIMATER_YLG");
- PlanComm.setGridDigitalCol(ultraGridExport.DisplayLayout.Bands[0], 5, 0,
- "Z_ORDERNUM");
- }
- /// <summary>
- /// 导出excl
- /// </summary>
- public void DoExport()
- {
- try
- {
- int rowCount = this.ultraGridExport.Rows.Count;
- int colCount = this.ultraGridExport.DisplayLayout.Bands[0].Columns.Count - 11;
- object[,] arr = new object[rowCount, colCount];
- for (int j = 0; j < rowCount; j++)
- {
- for (int i = 0; i < colCount; i++)
- {
- string output = ultraGridExport.Rows[j].Cells[i].Value.ToString();
- if (ultraGridExport.DisplayLayout.Bands[0].Columns[i].Key.Equals("GROUP_ROLL"))
- {
- //产线
- int plineCode = 0;
- output = output.Replace("机组", "");
- if (int.TryParse(output, out plineCode))
- {
- output = "'" + plineCode.ToString();
- }
- }
- if (ultraGridExport.DisplayLayout.Bands[0].Columns[i].Key.Equals("STEELNAME"))
- {
- //钢级
- double grade = 0;
- if (double.TryParse(output, out grade))
- {
- output = "'" + output;
- }
- }
- if (ultraGridExport.DisplayLayout.Bands[0].Columns[i].Key.Equals("ROLL_MONTH"))
- {
- //轧制月份
- DateTime dt = new DateTime();
- if (DateTime.TryParse(output, out dt))
- {
- output = "'" + dt.ToString("yyyyMM");
- }
- }
- if (ultraGridExport.DisplayLayout.Bands[0].Columns[i].Key.Equals("MONITORDEMAND"))
- {
- //监制
- if (!ultraGridExport.Rows[j].Cells["PRDCRPRO"].Value.ToString().Equals(""))
- {
- output = output + "(" + ultraGridExport.Rows[j].Cells["PRDCRPRO"].Value.ToString() + ")";
- }
- }
- arr[j, i] = output;
- }
- }
- string path = System.Windows.Forms.Application.StartupPath + "\\model";
- string tempExcel = path + "\\FrmSaleOrdmodel.xls";
- string outPutExcl = "销售合同" + DateTime.Now.ToString("yyyyMMdd");
- if (!System.IO.File.Exists(tempExcel))//检察模板是否存在
- {
- MessageBox.Show(this, "未找到报表模板!");
- return;
- }
- if (ultraGridExport.Rows.Count == 0) return;
- if (outPutExcl.Length == 0) outPutExcl = "未命名";
- SaveFileDialog dlg = new SaveFileDialog();
- dlg.Title = "保存";
- dlg.OverwritePrompt = true;
- dlg.Filter = "Excel文件(*.xls)|*.xls";
- dlg.AddExtension = true;
- dlg.FileName = outPutExcl;
- if (dlg.ShowDialog() == DialogResult.OK)
- {
- outPutExcl = dlg.FileName;
- PlanComm.WaitFromOpen(this.Cursor);
- ExcelHelper excelport = new ExcelHelper(tempExcel, outPutExcl);
- if (excelport.ArrayToExcel(arr, 2, 1, "Sheet"))
- {
- PlanComm.WaitFromColse(this.Cursor);
- if (MessageBox.Show("数据导出成功!\n需要打开所导出文件吗?", "提示",
- MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
- {
- ProcessStartInfo p = new ProcessStartInfo(outPutExcl);
- p.WorkingDirectory = System.IO.Path.GetDirectoryName(outPutExcl);
- Process.Start(p);
- }
- }
- else
- {
- PlanComm.WaitFromColse(this.Cursor);
- MessageBox.Show("数据导出失败!");
- return;
- }
- }
- }
- catch (Exception ex)
- {
- PlanComm.WaitFromColse(this.Cursor);
- MessageBox.Show(ex.Message);
- }
- }
- /// <summary>
- /// 按Grid格式导出
- /// </summary>
- public void DoGridExport()
- {
- PlanComm.Export(ref ultraGridExport, "排产" +
- DateTime.Now.ToString("yyyyMMdd"), ultraGridExcelExporter1);
- }
- /// <summary>
- /// 查看上传工艺文件
- /// </summary>
- public void DoLookCraftFile(OpeBase _ob)
- {
- UltraGridRow ugr = this.ultraGridExport.ActiveRow;
- if (ugr == null)
- {
- return;
- }
- string plnDivideId = "01";
- string ordLnDlyPk = ugr.Cells["ORD_LN_DLY_PK"].Value.ToString();
- if (ordLnDlyPk.Contains('-'))
- {
- plnDivideId = ordLnDlyPk.Substring(ordLnDlyPk.LastIndexOf('-') + 1,
- ordLnDlyPk.Length - ordLnDlyPk.LastIndexOf('-') - 1);
- ordLnDlyPk = ordLnDlyPk.Substring(0, ordLnDlyPk.LastIndexOf('-'));
- }
- DataTable dtPath = ServerHelper.GetData("com.steering.pss.plnsaleord.order.CoreSaleOrderReceive.queryCraftFilePath",
- new object[] { ordLnDlyPk, plnDivideId }, _ob);
- if (dtPath != null && dtPath.Rows.Count > 0)
- {
- ArrayList listPIC = new ArrayList();
- foreach (DataRow dr in dtPath.Rows)
- {
- listPIC.Add(dr["CRAFT_PATH"].ToString());
- }
- dlgOrderAskLook orderAsk = new dlgOrderAskLook(_ob, listPIC);
- orderAsk.Text = "查看上传工艺文件";
- orderAsk.Show();
- }
- }
- /// <summary>
- /// 合同行工艺文件
- /// </summary>
- public void TechOrderLine()
- {
- UltraGridRow ugr = ultraGridExport.ActiveRow;
- if (ugr == null)
- {
- return;
- }
- string ordLnDlyPkId = ugr.Cells["ORD_LN_DLY_PK"].Value.ToString();
- if (!ordLnDlyPkId.Equals("")
- && ordLnDlyPkId.Length >= 41)
- {
- string ordLnPk = ordLnDlyPkId.Substring(0, ordLnDlyPkId.Length - 6);
- string designKey = ugr.Cells["DESGIN_KEY"].Value.ToString();
- string url = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepTechOrderLineCraft.cpt&__bypagesize__=false&format=pdf&__embed__=true"
- + "&desgin_key=" + designKey + "&lnpk=" + ordLnPk;
- FrmOutExcel outPut = new FrmOutExcel(url);
- outPut.Show();
- }
- }
- #region 查询区事件
- private void checkBoxDELVRY_EDATEexport_CheckedChanged(object sender, EventArgs e)
- {
- if (checkBoxDELVRY_EDATEexport.Checked)
- {
- ultraDateTimeDELVRY_EDATEFrom.Enabled = true;
- ultraDateTimeDELVRY_EDATETo.Enabled = true;
- }
- else
- {
- ultraDateTimeDELVRY_EDATEFrom.Enabled = false;
- ultraDateTimeDELVRY_EDATETo.Enabled = false;
- }
- }
- private void checkBoxORDER_NOexpor_CheckedChanged(object sender, EventArgs e)
- {
- if (checkBoxORDER_NOexpor.Checked)
- {
- ultraTextORDER_NO.Enabled = true;
- }
- else
- {
- ultraTextORDER_NO.Enabled = false;
- }
- }
- private void checkBoxAcpStatus_CheckedChanged(object sender, EventArgs e)
- {
- if (checkBoxAcpStatus.Checked)
- {
- this.ultraComboEditAcpStatus.Enabled = true;
- }
- else
- {
- this.ultraComboEditAcpStatus.Enabled = false;
- }
- }
- private void checkBoxAcceptNoexport_CheckedChanged(object sender, EventArgs e)
- {
- if (checkBoxAcceptNoexport.Checked)
- {
- ultraTextAcceptNo.Enabled = true;
- }
- else
- {
- ultraTextAcceptNo.Enabled = false;
- }
- }
- private void ultraDateTimeDELVRY_EDATEFrom_ValueChanged(object sender, EventArgs e)
- {
- ultraDateTimeDELVRY_EDATETo.MinDate = ultraDateTimeDELVRY_EDATEFrom.DateTime.Date;
- }
- private void ultraDateTimeDELVRY_EDATETo_ValueChanged(object sender, EventArgs e)
- {
- ultraDateTimeDELVRY_EDATEFrom.MaxDate = ultraDateTimeDELVRY_EDATETo.DateTime.AddDays(1).Date.AddSeconds(-1);
- }
- #endregion
- #region
- public System.Windows.Forms.CheckBox CheckBoxDELVRY_EDATEexport
- {
- get { return checkBoxDELVRY_EDATEexport; }
- set { checkBoxDELVRY_EDATEexport = value; }
- }
- public Infragistics.Win.UltraWinEditors.UltraDateTimeEditor UltraDateTimeDELVRY_EDATEFrom
- {
- get { return ultraDateTimeDELVRY_EDATEFrom; }
- set { ultraDateTimeDELVRY_EDATEFrom = value; }
- }
- public Infragistics.Win.UltraWinEditors.UltraDateTimeEditor UltraDateTimeDELVRY_EDATETo
- {
- get { return ultraDateTimeDELVRY_EDATETo; }
- set { ultraDateTimeDELVRY_EDATETo = value; }
- }
- public System.Windows.Forms.CheckBox CheckBoxORDER_NOexpor
- {
- get { return checkBoxORDER_NOexpor; }
- set { checkBoxORDER_NOexpor = value; }
- }
- public Infragistics.Win.UltraWinEditors.UltraTextEditor UltraTextORDER_NO
- {
- get { return ultraTextORDER_NO; }
- set { ultraTextORDER_NO = value; }
- }
- public System.Windows.Forms.CheckBox CheckBoxAcpStatus
- {
- get { return checkBoxAcpStatus; }
- set { checkBoxAcpStatus = value; }
- }
- public Infragistics.Win.UltraWinEditors.UltraComboEditor UltraComboEditAcpStatus
- {
- get { return ultraComboEditAcpStatus; }
- set { ultraComboEditAcpStatus = value; }
- }
- public System.Windows.Forms.CheckBox CheckBoxAcceptNoexport
- {
- get { return checkBoxAcceptNoexport; }
- set { checkBoxAcceptNoexport = value; }
- }
- public Infragistics.Win.UltraWinEditors.UltraTextEditor UltraTextAcceptNo
- {
- get { return ultraTextAcceptNo; }
- set { ultraTextAcceptNo = value; }
- }
- public System.Windows.Forms.CheckBox CheckBoxNotCraft
- {
- get { return checkBoxNotCraft; }
- set { checkBoxNotCraft = value; }
- }
- public System.Windows.Forms.CheckBox CheckBoxImport
- {
- get { return checkBoxImport; }
- set { checkBoxImport = value; }
- }
- public Infragistics.Win.UltraWinGrid.UltraGrid UltraGridExport
- {
- get { return ultraGridExport; }
- set { ultraGridExport = value; }
- }
- private void checkBoxFinish_CheckedChanged(object sender, EventArgs e)
- {
- if (checkBoxFinish.Checked)
- {
- ultraComboFinishEditor.Enabled = true;
- }
- else
- {
- ultraComboFinishEditor.Enabled = false;
- }
- }
- private void checkBoxRollMonth_CheckedChanged(object sender, EventArgs e)
- {
- if (checkBoxRollMonth.Checked)
- {
- ultraDateTimeRollMonth.Enabled = true;
- }
- else
- {
- ultraDateTimeRollMonth.Enabled = false;
- }
- }
- #endregion
- /// <summary>
- /// 查看监制文件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraFileLook_EditorButtonClick(object sender,
- Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e)
- {
- UltraGridRow ugr = ultraGridExport.ActiveRow;
- if (ugr == null)
- {
- return;
- }
-
- //ArrayList listPIC = new ArrayList();
- //listPIC.Add(ugr.Cells["PRDCR_PATH"].Value.ToString());
- //comBll.DoLookMon(listPIC);
- string ordLnDlyPkId = ugr.Cells["ORD_LN_DLY_PK"].Value.ToString();
- if (!ordLnDlyPkId.Equals("")
- && ordLnDlyPkId.Length >= 41)
- {
- string ordLnDlyPk = ordLnDlyPkId.Substring(0, ordLnDlyPkId.Length - 3);
- string plnDivideId = ordLnDlyPkId.Replace(ordLnDlyPk + "-", "");
- FrmOrdLinePrdcrLst prdcr = new FrmOrdLinePrdcrLst(ordLnDlyPk,
- plnDivideId, comBll._ob);
- prdcr.Show();
- }
- }
- private void ultraGridExcelExporter1_CellExported(object sender, Infragistics.Win.UltraWinGrid.ExcelExport.CellExportedEventArgs e)
- {
- // Apply a formula to the "Total" cells. This only applies to the Formulas grid, since
- // the images grid has no "Total" column.
- if (e.GridColumn.Key == "RANGE_MIN"
- || e.GridColumn.Key == "RANGE_MAX")
- {
- // This cell should be the product of the previous 2 cells in the same row.
- // Using R1C1 notation is easier, because we can use relative row and column indices
- //string formulaString = "=R[0]C[-2] * R[0]C[-1]";
- // Get the cell to which the formula will be applied.
- Infragistics.Excel.WorksheetCell worksheetCell = e.CurrentWorksheet.Rows[
- e.CurrentRowIndex].Cells[e.CurrentColumnIndex];
- // Apply the formula.
- //worksheetCell.ApplyFormula(formulaString);
- // Format the cell as currency.
- worksheetCell.CellFormat.FormatString = "##0.00%";
- double value = 0;
- if (e.Value != null)
- {
- double.TryParse(e.Value.ToString(), out value);
- value = value / 100;
- }
- worksheetCell.Value = value;
- }
- }
- }
- }
|