using CefSharp.DevTools.Debugger;
using DevExpress.Spreadsheet;
using DevExpress.XtraEditors;
using Gs.DevApp.ToolBox;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Configuration;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Gs.DevApp.UserControl
{
public partial class CopyXls : DevExpress.XtraEditors.XtraForm
{
private string orderType;
private string orderGuid;
private string orgId;
private static readonly string filePath = AppContext.BaseDirectory + "xlsCopy.xls";
public CopyXls(string orgId, string _orderGuid, string _orderType, string _orgId)
{
InitializeComponent();
this.orderType = _orderType;
this.orderGuid = _orderGuid;
this.orgId = _orgId;
this.spreadsheetControl1.DocumentLoaded += new EventHandler(spreadsheetControl1_DocumentLoaded);
if (!string.IsNullOrEmpty(filePath))
{
if (File.Exists(filePath))
{
IWorkbook workbook = spreadsheetControl1.Document;
workbook.LoadDocument(filePath);
SetCellText(spreadsheetControl1.ActiveWorksheet, "A1", "物料编号", true);
SetCellText(spreadsheetControl1.ActiveWorksheet, "B1", "申请数量", true);
SetCellText(spreadsheetControl1.ActiveWorksheet, "C1", "申请备注", true);
SetCellText(spreadsheetControl1.ActiveWorksheet, "D1", "不良类型", true);
}
else
{
Gs.DevApp.ToolBox.MsgHelper.ShowError("找不到xlsCopy.xls文件,请联系管理员!");
}
}
}
///
/// 文档变化后,实现对新文件名称的显示
///
void spreadsheetControl1_DocumentLoaded(object sender, EventArgs e)
{
string fileName = Path.GetFileName(this.spreadsheetControl1.Document.Path);
if (String.IsNullOrEmpty(fileName))
{
Text = "请选择文件";
}
else
{
//Text = "正在从【" + fileName + "】复制到【" + this.orderType.ToString()+"】";
Text = "正在快捷录入到【" + this.orderType.ToString() + "】,组织ID为【" + this.orgId.ToString() + "】";
}
}
///
/// 保存
///
///
///
private void btnSave_Click(object sender, EventArgs e)
{
var list = new List();
for (int row = 2; row <= spreadsheetControl1.ActiveWorksheet.GetUsedRange().RowCount; row++)
{
string itemNo = spreadsheetControl1.ActiveWorksheet.Cells["A1"].Value.ToString();
string sl = spreadsheetControl1.ActiveWorksheet.Cells["B1"].Value.ToString();
string bz = spreadsheetControl1.ActiveWorksheet.Cells["C1"].Value.ToString();
string bllx = spreadsheetControl1.ActiveWorksheet.Cells["D1"].Value.ToString();
list.Add(new
{
itemNo = itemNo,
sl = sl,
bz = bz,
bllx = bllx,
});
}
UpdateParent?.Invoke(this,
new UpdateParentEventArgs { DynamicList = list });
Close();
}
///
/// 从数据库里读取到Excel
///
///
/// 位置格式如A1 B2
/// 值
/// 是否加粗
private void SetCellText(Worksheet workSheet, string coordinates, string coordValue, bool isBold)
{
workSheet.Cells[coordinates].Value = coordValue;
workSheet.Cells[coordinates].Style.Font.Bold = isBold;
}
///
/// 选择后的回调事件
///
public event EventHandler UpdateParent;
}
}