cdk
9 天以前 cc286e3641ef72fe7cb1312487a6d4e40bda81fe
DevApp/Gs.DevApp/UserControl/CopyXls.cs
@@ -1,11 +1,16 @@
using CefSharp.DevTools.Debugger;
using DevExpress.Spreadsheet;
using DevExpress.Utils.DirectXPaint;
using DevExpress.XtraEditors;
using DevExpress.XtraLayout.Customization;
using Gs.DevApp.ToolBox;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Configuration;
using System.Data;
using System.Data.SqlTypes;
using System.Drawing;
using System.IO;
using System.Linq;
@@ -19,14 +24,15 @@
    {
        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)
        public CopyXls(string _orgId, string _orderGuid, string _orderType)
        {
            InitializeComponent();
            this.Text = "正在复制:" + _orderType;
            this.orderType = _orderType;
            this.orderGuid = _orderGuid;
            this.orgId = _orgId;
            this.spreadsheetControl1.DocumentLoaded += new EventHandler(spreadsheetControl1_DocumentLoaded);
            if (!string.IsNullOrEmpty(filePath))
            {
@@ -34,7 +40,20 @@
                {
                    IWorkbook workbook = spreadsheetControl1.Document;
                    workbook.LoadDocument(filePath);
                    SetCellText(spreadsheetControl1.ActiveWorksheet, "A1", "ddd", true);
                    switch (this.orderType)
                    {
                        case "其它入库":
                            SetCellText(spreadsheetControl1.ActiveWorksheet, "A1", "物料编号", true);
                            SetCellText(spreadsheetControl1.ActiveWorksheet, "B1", "申请数量", true);
                            SetCellText(spreadsheetControl1.ActiveWorksheet, "C1", "申请备注", true);
                            SetCellText(spreadsheetControl1.ActiveWorksheet, "D1", "不良类型", true);
                            break;
                        case "物料调拨":
                            SetCellText(spreadsheetControl1.ActiveWorksheet, "A1", "物料编号", true);
                            SetCellText(spreadsheetControl1.ActiveWorksheet, "B1", "申请数量", true);
                            SetCellText(spreadsheetControl1.ActiveWorksheet, "C1", "申请备注", true);
                            break;
                    }
                }
                else
                {
@@ -55,8 +74,7 @@
            }
            else
            {
                //Text = "正在从【" + fileName + "】复制到【" + this.orderType.ToString()+"】";
                Text = "正在复制到【" + this.orderType.ToString() + "】";
                Text = "正在快捷录入到【" + this.orderType.ToString() + "】,组织ID为【" + this.orgId.ToString() + "】";
            }
        }
@@ -67,7 +85,117 @@
        /// <param name="e"></param>
        private void btnSave_Click(object sender, EventArgs e)
        {
            spreadsheetControl1.SaveDocument();
            int rowsCount = spreadsheetControl1.ActiveWorksheet.GetUsedRange().RowCount;
            spreadsheetControl1.ActiveWorksheet.MoveToEnd();
            if (rowsCount < 2)
            {
                MsgHelper.ShowError("复制失败:表格不能为空!");
                return;
            }
            if (!MsgHelper.AskQuestion("共有【" + (rowsCount - 1).ToString() + "】条数据,确定复制吗?"))
                return;
            var list = new List<dynamic>();
            switch (this.orderType)
            {
                case "其它入库":
                    #region MyRegion
                    {
                        for (int row = 2; row <= rowsCount; row++)
                        {
                            string itemNo = spreadsheetControl1.ActiveWorksheet.Cells["A" + row.ToString()].Value.ToString().Trim();
                            string sl = spreadsheetControl1.ActiveWorksheet.Cells["B" + row.ToString()].Value.ToString().Trim();
                            string bz = spreadsheetControl1.ActiveWorksheet.Cells["C" + row.ToString()].Value.ToString().Trim();
                            string bllx = spreadsheetControl1.ActiveWorksheet.Cells["D" + row.ToString()].Value.ToString().Trim();
                            var _obj = new
                            {
                                itemNo = itemNo,
                                orgId = this.orgId,
                            };
                            try
                            {
                                var strJson = UtilityHelper.HttpPost("", "MesItemsManager/GetModelByOrg", JsonConvert.SerializeObject(_obj));
                                var _rtn = UtilityHelper.ReturnToDynamic(strJson);
                                if (_rtn.rtnCode > 0)
                                {
                                    var dy = _rtn.rtnData;
                                    list.Add(new
                                    {
                                        itemNo = itemNo,
                                        sl = sl,
                                        bz = bz,
                                        bllx = bllx,
                                        itemName = dy.itemName,
                                        itemModel = dy.itemModel,
                                        dwName = dy.kfName,
                                        itemId = dy.itemId
                                    });
                                }
                                else
                                {
                                    MsgHelper.ShowError("复制失败:【" + itemNo + "】可能不存在,请检查后重试!");
                                    return;
                                }
                            }
                            catch (Exception ex)
                            {
                                MsgHelper.ShowError("复制失败:【" + itemNo + "】发生错误,请检查后重试!" + ex.Message);
                                return;
                            }
                        }
                    }
                    #endregion
                    break;
                case "物料调拨":
                    #region MyRegion
                    {
                        for (int row = 2; row <= rowsCount; row++)
                        {
                            string itemNo = spreadsheetControl1.ActiveWorksheet.Cells["A" + row.ToString()].Value.ToString().Trim();
                            string sl = spreadsheetControl1.ActiveWorksheet.Cells["B" + row.ToString()].Value.ToString().Trim();
                            string bz = spreadsheetControl1.ActiveWorksheet.Cells["C" + row.ToString()].Value.ToString().Trim();
                            var _obj = new
                            {
                                itemNo = itemNo,
                                orgId = this.orgId,
                            };
                            try
                            {
                                var strJson = UtilityHelper.HttpPost("", "MesItemsManager/GetModelByOrg", JsonConvert.SerializeObject(_obj));
                                var _rtn = UtilityHelper.ReturnToDynamic(strJson);
                                if (_rtn.rtnCode > 0)
                                {
                                    var dy = _rtn.rtnData;
                                    list.Add(new
                                    {
                                        itemNo = itemNo,
                                        sl = sl,
                                        bz = bz,
                                        itemName = dy.itemName,
                                        itemModel = dy.itemModel,
                                        dwName = dy.kfName,
                                        itemId = dy.itemId
                                    });
                                }
                                else
                                {
                                    MsgHelper.ShowError("复制失败:【" + itemNo + "】可能不存在,请检查后重试!");
                                    return;
                                }
                            }
                            catch (Exception ex)
                            {
                                MsgHelper.ShowError("复制失败:【" + itemNo + "】发生错误,请检查后重试!" + ex.Message);
                                return;
                            }
                        }
                    }
                    #endregion
                    break;
            }
            UpdateParent?.Invoke(this,
                new UpdateParentEventArgs { DynamicList = list });
            Close();
        }
        /// <summary>
@@ -83,5 +211,10 @@
            workSheet.Cells[coordinates].Style.Font.Bold = isBold;
        }
        /// <summary>
        /// 选择后的回调事件
        /// </summary>
        public event EventHandler<UpdateParentEventArgs> UpdateParent;
    }
}