Files
N_XLXSBJ----MX/BJCPPJDWZL_DR.aspx.cs
2026-08-21 17:03:02 +08:00

233 lines
11 KiB
C#

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Collections.Generic;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using GThinking.N_MISPRO;
using GThinking.N_MISPRO.Data;
using GThinking.N_MODEL.Page;
using GThinking.N_WORKFLOW;
using System.Data.Common;
using GThinking.N_MODEL.Dialog;
using GThinking.N_PUBLIC;
using GThinking.N_PUBLIC2;
using GThinking.N_MISPRO.Utility;
using System.IO;
using System.Text;
using GThinking.N_CONTROL;
using System.Data.OleDb;
using GThinking.N_MISPRO.MISPROAS;
namespace GThinking.N_XLXSBJ
{
[TableMap(DB = "DBERP", DbTableName = "XLBJPJDWZL", Umid = 100860132, IsWorkFlow = false)]
public class MXXX : EntityManager
{
}
public partial class BJCPPJDWZL_DR : SingleCardBase
{
MXXX entity = new MXXX();
protected void Page_Load(object sender, EventArgs e)
{
this.UMID = 100860132;
this.UMName = "导入数据";
base.CurMaster = Master;
base.CurEntity = entity;
this.PageHeight = 180;
this.PageWidth = 420;
Master.EnableAttachBtn = false;
Master.EnableCancelBtn = false;
Master.EnableCopyBtn = false;
Master.EnableDeleteBtn = false;
Master.EnableEditBtn = false;
Master.EnableInsertBtn = false;
Master.EnablePrintBtn = false;
Master.EnableRefreshBtn = false;
Master.EnableSaveBtn = false;
fupdPost.FileSaveType = gtAsyncFileUpload.DFileSaveType.SaveToPath;
fupdPost.Filter = "XLS";
base.InitPage();
}
protected void btnQD_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(fupdPost.FilePath.Trim()))
{
ShowMessage("请选择需要导入的文件!");
return;
}
try
{
StringBuilder Error_SQL = new StringBuilder();
try
{
string sPath = fupdPost.FilePath;
string sColumns = "型号,电压等级,规格,标准,盘具单位重量,报价产品计量单位";
string sMessage = "";
string sErrorMsg_XLGGID = string.Empty;
DataSet aDataExcel = TExcelData.ReadExcel(sPath.Trim(), "sheet1", sColumns, false, ref sMessage);
if (!sMessage.Trim().Equals(""))
{
throw new Exception("导入文件的内容格式不正确,请按帮助文档中要求的内容格式调整导入文件!");
}
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
TSQL sSQL = new TSQL(dberp);
dberp.BeginTrans();
string DRMX = string.Empty;
try
{
aDataExcel.Tables[0].Columns.Add("错误信息", typeof(string));
for (int i = 0; i < aDataExcel.Tables[0].Rows.Count; i++)
{
string ErrorMessage_Export = "";
string sXLXHID = aDataExcel.Tables[0].Rows[i][0].ToString().Trim();
string sDYDJID = aDataExcel.Tables[0].Rows[i][1].ToString().Trim();
string sXLGGID = aDataExcel.Tables[0].Rows[i][2].ToString().Trim();
string sXLBZID = aDataExcel.Tables[0].Rows[i][3].ToString().Trim();
string sDWZL = aDataExcel.Tables[0].Rows[i][4].ToString().Trim();
string sBJCPJLDW = aDataExcel.Tables[0].Rows[i][5].ToString().Trim();
if (sXLXHID.Equals(""))
{
string ErrorMessage = "型号为空;";
ErrorMessage_Export = ErrorMessage_Export + ErrorMessage;
Error_SQL.AppendLine(ErrorMessage);
}
if (sDYDJID.Equals(""))
{
string ErrorMessage = "电压等级为空;";
ErrorMessage_Export = ErrorMessage_Export + ErrorMessage;
Error_SQL.AppendLine(ErrorMessage);
}
else if (sDYDJID.ToUpper().Contains("KV") && (!sDYDJID.Contains("kV")))
{
string ErrorMessage = "电压等级单位大小写错误,应为kV;";
ErrorMessage_Export = ErrorMessage_Export + ErrorMessage;
Error_SQL.AppendLine(ErrorMessage);
}
if (sXLGGID.Equals(""))
{
string ErrorMessage = "规格为空;";
ErrorMessage_Export = ErrorMessage_Export + ErrorMessage;
Error_SQL.AppendLine(ErrorMessage);
}
if (sXLBZID.Equals(""))
{
string ErrorMessage = "标准为空;";
ErrorMessage_Export = ErrorMessage_Export + ErrorMessage;
Error_SQL.AppendLine(ErrorMessage);
}
if (!CMISproDataBase.ExistsRecord("DBERP", "select top 1 XLXHB_XLXHID from XLXHB where XLXHB_XLXHID='" + sXLXHID + "'"))
{
string ErrorMessage = "型号不存在,请检查;";
ErrorMessage_Export = ErrorMessage_Export + ErrorMessage;
Error_SQL.AppendLine(ErrorMessage);
}
if (!CMISproDataBase.ExistsRecord("DBERP", "select top 1 XLDYDJB_DYDJID from XLDYDJB where XLDYDJB_DYDJID='" + sDYDJID + "'"))
{
string ErrorMessage = "电压等级不存在,请检查;";
ErrorMessage_Export = ErrorMessage_Export + ErrorMessage;
Error_SQL.AppendLine(ErrorMessage);
}
if (!CMISproDataBase.ExistsRecord("DBERP", "select top 1 XLBZ_XLBZID from XLBZ where XLBZ_XLBZID='" + sXLBZID + "'"))
{
string ErrorMessage = "标准不存在,请检查;";
ErrorMessage_Export = ErrorMessage_Export + ErrorMessage;
Error_SQL.AppendLine(ErrorMessage);
}
string sSql = string.Format(@"select top 1 XLBJPJDWZL_XLXHID from XLBJPJDWZL
where XLBJPJDWZL_XLXHID='{0}' and XLBJPJDWZL_DYDJID='{1}' and XLBJPJDWZL_XLGGID='{2}' and
XLBJPJDWZL_XLBZID='{3}' ", sXLXHID, sDYDJID, sXLGGID, sXLBZID);
if (!CMISproDataBase.ExistsRecord("DBERP", sSql))
{
sSQL.Clear();
sSQL.Add("insert into XLBJPJDWZL(XLBJPJDWZL_XLXHID, XLBJPJDWZL_DYDJID, XLBJPJDWZL_XLGGID, XLBJPJDWZL_XLBZID, XLBJPJDWZL_PJDWZL,XLBJPJDWZL_BJCPJLDW ,XLBJPJDWZL_WHR, XLBJPJDWZL_WHRID, XLBJPJDWZL_WHSJ)");
sSQL.Add(" values(:XLBJPJDWZL_XLXHID, :XLBJPJDWZL_DYDJID, :XLBJPJDWZL_XLGGID, :XLBJPJDWZL_XLBZID, :XLBJPJDWZL_PJDWZL,:XLBJPJDWZL_BJCPJLDW, :XLBJPJDWZL_WHR, :XLBJPJDWZL_WHRID, :XLBJPJDWZL_WHSJ)");
}
else
{
sSQL.Clear();
sSQL.Add("update XLBJPJDWZL set ");
sSQL.Add("XLBJPJDWZL_PJDWZL =:XLBJPJDWZL_PJDWZL,");
sSQL.Add("XLBJPJDWZL_BJCPJLDW =:XLBJPJDWZL_BJCPJLDW,");
sSQL.Add("XLBJPJDWZL_WHR =:XLBJPJDWZL_WHR,");
sSQL.Add("XLBJPJDWZL_WHRID =:XLBJPJDWZL_WHRID,");
sSQL.Add("XLBJPJDWZL_WHSJ=:XLBJPJDWZL_WHSJ ");
sSQL.Add(" where XLBJPJDWZL_XLXHID =:XLBJPJDWZL_XLXHID and XLBJPJDWZL_DYDJID =:XLBJPJDWZL_DYDJID and XLBJPJDWZL_XLGGID =:XLBJPJDWZL_XLGGID and XLBJPJDWZL_XLBZID =:XLBJPJDWZL_XLBZID");
}
sSQL.ParamByName("XLBJPJDWZL_XLXHID").Value = sXLXHID;
sSQL.ParamByName("XLBJPJDWZL_DYDJID").Value = sDYDJID;
sSQL.ParamByName("XLBJPJDWZL_XLGGID").Value = sXLGGID;
sSQL.ParamByName("XLBJPJDWZL_XLBZID").Value = sXLBZID;
sSQL.ParamByName("XLBJPJDWZL_PJDWZL").Value = sDWZL;
sSQL.ParamByName("XLBJPJDWZL_BJCPJLDW").Value = sBJCPJLDW;
sSQL.ParamByName("XLBJPJDWZL_WHRID").Value = tSession.UserId;
sSQL.ParamByName("XLBJPJDWZL_WHR").Value = tSession.UserName;
sSQL.ParamByName("XLBJPJDWZL_WHSJ").Value = CMISproConvert.ConvertTime(DateTime.Now);
if (String.IsNullOrEmpty(ErrorMessage_Export))
dberp.ExecSQL(sSQL);
aDataExcel.Tables[0].Rows[i]["错误信息"] = ErrorMessage_Export;
}
string ErMessage = Error_SQL.ToString();
if (ErMessage != "")
{
throw new Exception(ErMessage);
}
dberp.CommitTrans();
ShowMessage("导入成功!");
}
catch
{
dberp.RollbackTrans();
string sFILENAME = "线缆报价盘具单位重量导入.xls";
string m_tmpFilePath = FileService.CombineTempPath(Guid.NewGuid().ToString() + sFILENAME);
string sError = "";
TExcelData.CreateExcel_NPOI(m_tmpFilePath, aDataExcel, ref sError);
if (string.IsNullOrEmpty(sError))
{
DialogOperationScript dos = new DialogOperationScript(this);
dos.SetOwnerControlValue(PageParam.GetRTrimString("ClientExportFileURL"), m_tmpFilePath.Replace("\\", "/"));
dos.CloseSelf();
dos.Execute();
}
return;
}
}
catch (Exception ex)
{
ShowMessage("导入失败,错误信息:" + ex.Message);
return;
}
System.IO.File.Delete(fupdPost.FilePath.Trim());
}
catch (Exception ex)
{
ShowMessage("导入失败,错误信息:" + ex.Message);
return;
}
CloseWindowNoQuery();
}
protected void btnQX_Click(object sender, EventArgs e)
{
CloseWindowNoQuery();
}
}
}