From d74b85f0c08da89bf57c0de6eed3d74066dbd627 Mon Sep 17 00:00:00 2001
From: yusijie <ysj@hz-kingdee.com>
Date: 星期五, 07 二月 2025 10:36:37 +0800
Subject: [PATCH] 1
---
WebAPI/Controllers/POOrderBillExcelController.cs | 125 +++++++++++++++++++++--------------------
1 files changed, 63 insertions(+), 62 deletions(-)
diff --git a/WebAPI/Controllers/POOrderBillExcelController.cs b/WebAPI/Controllers/POOrderBillExcelController.cs
index 323e83b..097e66e 100644
--- a/WebAPI/Controllers/POOrderBillExcelController.cs
+++ b/WebAPI/Controllers/POOrderBillExcelController.cs
@@ -1,4 +1,5 @@
-锘縰sing System;
+锘縰sing Newtonsoft.Json.Linq;
+using System;
using System.Collections.Generic;
using System.Data;
using System.IO;
@@ -13,7 +14,7 @@
public class POOrderBillExcelController : ApiController
{
private JsonResult objJsonResult = new JsonResult();
- SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM();
+ SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
#region 閲囪喘璁㈠崟 鏌ヨ
[Route("POOrderBillExcel/POOrderBillExcelList")]
@@ -25,11 +26,11 @@
DataTable dt = new DataTable();
try
{
- ds = oCn.RunProcReturn("select * from POOrderBill_Excel ", "POOrderBill_Excel");
+ ds = oCn.RunProcReturn("select HORGName,SupplierName,MaterialNum,HPackFlag,sum(HQty) HQty from POOrderBill_Excel group by HORGName, SupplierName, MaterialNum, HPackFlag ", "POOrderBill_Excel");
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
- ds1 = oCn.RunProcReturn($"exec h_p_POOrderBill_Excel {ds.Tables[0].Rows[i]["HQty"].ToString()},'{ds.Tables[0].Rows[i]["MaterialNum"].ToString()}'", "POOrderBill_Excel");
+ ds1 = oCn.RunProcReturn($"exec h_p_POOrderBill_Excel {ds.Tables[0].Rows[i]["HQty"].ToString()},'{ds.Tables[0].Rows[i]["MaterialNum"].ToString()}','1'", "POOrderBill_Excel");
if (i == 0)
{
@@ -46,10 +47,6 @@
}
}
-
-
-
-
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "";
@@ -83,7 +80,7 @@
file.SaveAs(ExcelPath);
NpoiHelper np = new NpoiHelper();
- DataSet ExcelDs = np.ReadExcel(ExcelPath, 1, 1, "2");
+ DataSet ExcelDs = np.ReadExcel(ExcelPath, 1, 1, "0");
//鍒犻櫎鏂囦欢
File.Delete(ExcelPath);
@@ -105,7 +102,15 @@
{
row[j] = ExcelDs.Tables[0].Rows[i][j].ToString();
}
- tb2.Rows.Add(row);
+ //濡傛灉琛ㄦ牸绗琲琛岀殑绗竴鍒椾负绌猴紝鍒欏垽鏂负杩欎竴琛岀殑鏁版嵁涓虹┖锛岃烦鍑哄惊鐜苟涓斾笉鎶婃暟鎹啓鍏� tb2
+ if (ExcelDs.Tables[0].Rows[i][0].ToString() == "")
+ {
+ continue;
+ }
+ else
+ {
+ tb2.Rows.Add(row);
+ }
}
@@ -130,6 +135,18 @@
if (!tb2.Columns.Contains("鍖呰鏍囪瘑"))
error += "娌℃湁鎵惧埌銆愬寘瑁呮爣璇嗐�戠殑鏍囬,";
+ if (!tb2.Columns.Contains("鍒拌揣鏃ユ湡"))
+ error += "娌℃湁鎵惧埌銆愬埌璐ф棩鏈熴�戠殑鏍囬,";
+
+ if (!tb2.Columns.Contains("鐗╂祦鍗曞彿"))
+ error += "娌℃湁鎵惧埌銆愮墿娴佸崟鍙枫�戠殑鏍囬,";
+
+ if (!tb2.Columns.Contains("鐗╂祦鍏徃"))
+ error += "娌℃湁鎵惧埌銆愮墿娴佸叕鍙搞�戠殑鏍囬,";
+
+ if (!tb2.Columns.Contains("绠卞彿"))
+ error += "娌℃湁鎵惧埌銆愮鍙枫�戠殑鏍囬,";
+
if (error.Length > 0)
{
objJsonResult.code = "0";
@@ -144,14 +161,14 @@
{
for (int j = 0; j < tb2.Columns.Count; j++)
{
- if (tb2.Rows[i][j].ToString() == "")
+ if (tb2.Rows[i][j].ToString() == ""&& tb2.Columns[j].ToString()!= "鍖呰鏍囪瘑" && tb2.Columns[j].ToString() != "鍒拌揣鏃ユ湡" && tb2.Columns[j].ToString() != "鐗╂祦鍗曞彿" && tb2.Columns[j].ToString() != "鐗╂祦鍏徃" && tb2.Columns[j].ToString() != "绠卞彿")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = $"Excel妯℃澘瀛樺湪閿欒,绗瑊(i + 1)}琛岀{(j + 1)}鍒楀�间笉鑳戒负绌�!\r\n";
objJsonResult.data = null;
return objJsonResult;
- }
+ }
}
}
@@ -167,9 +184,11 @@
for (int i = 0; i < tb2.Rows.Count; i++)
{
oCn.RunProc("insert into POOrderBill_Excel(HItemID,HORGName, SupplierName, Warehouse_Shou," +
- " MaterialNum, HQty, HPackFlag)values" +
+ " MaterialNum, HQty, HPackFlag, HArrivalDate, HExpressNumberSub, HExpressSupplierSub, HBoxNumber)values" +
$"({(i + 1)},'{tb2.Rows[i]["缁勭粐"].ToString()}', '{tb2.Rows[i]["渚涘簲鍟�"].ToString()}', '{tb2.Rows[i]["鏀舵枡浠撳簱"].ToString()}', " +
- $"'{tb2.Rows[i]["鐗╂枡缂栫爜"].ToString()}', {tb2.Rows[i]["鏁伴噺"].ToString()}, '{tb2.Rows[i]["鍖呰鏍囪瘑"].ToString()}')");
+ $"'{tb2.Rows[i]["鐗╂枡缂栫爜"].ToString()}', {tb2.Rows[i]["鏁伴噺"].ToString()}, '{tb2.Rows[i]["鍖呰鏍囪瘑"].ToString()}'," +
+ $"'{tb2.Rows[i]["鍒拌揣鏃ユ湡"].ToString()}','{tb2.Rows[i]["鐗╂祦鍗曞彿"].ToString()}','{tb2.Rows[i]["鐗╂祦鍏徃"].ToString()}'," +
+ $"'{tb2.Rows[i]["绠卞彿"].ToString()}')");
}
objJsonResult.code = "1";
@@ -193,75 +212,52 @@
private object Checkdata(DataTable dt)
{
DataSet ds = new DataSet();
+ string error = "";
for (int i = 0; i < dt.Rows.Count; i++)
{
//缁勭粐
ds = oCn.RunProcReturn("select * from Xt_ORGANIZATIONS where Hname='" + dt.Rows[i]["缁勭粐"].ToString() + "' ", "Xt_ORGANIZATIONS");
if (ds.Tables[0].Rows.Count == 0)
{
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = $"绗瑊(i + 1)}琛�,缁勭粐涓簕dt.Rows[i]["缁勭粐"].ToString()}涓嶅瓨鍦�!";
- objJsonResult.data = null;
- return objJsonResult;
+ error = error+ $"绗瑊(i + 1)}琛�,缁勭粐涓簕dt.Rows[i]["缁勭粐"].ToString()}涓嶅瓨鍦�!";
}
//渚涘簲鍟�
ds = oCn.RunProcReturn("select * from Gy_Supplier where Hname='" + dt.Rows[i]["渚涘簲鍟�"].ToString() + "' ", "Gy_Supplier");
if (ds.Tables[0].Rows.Count == 0)
{
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = $"绗瑊(i + 1)}琛�,渚涘簲鍟嗕负{dt.Rows[i]["渚涘簲鍟�"].ToString()}涓嶅瓨鍦�!";
- objJsonResult.data = null;
- return objJsonResult;
+ error = error + $"绗瑊(i + 1)}琛�,渚涘簲鍟嗕负{dt.Rows[i]["渚涘簲鍟�"].ToString()}涓嶅瓨鍦�!";
}
//鏀舵枡浠撳簱
ds = oCn.RunProcReturn("select * from Gy_Warehouse where Hname='" + dt.Rows[i]["鏀舵枡浠撳簱"].ToString() + "' ", "Gy_Warehouse");
if (ds.Tables[0].Rows.Count == 0)
{
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = $"绗瑊(i + 1)}琛�,鏀舵枡浠撳簱涓簕dt.Rows[i]["鏀舵枡浠撳簱"].ToString()}涓嶅瓨鍦�!";
- objJsonResult.data = null;
- return objJsonResult;
+ error = error + $"绗瑊(i + 1)}琛�,鏀舵枡浠撳簱涓簕dt.Rows[i]["鏀舵枡浠撳簱"].ToString()}涓嶅瓨鍦�!";
}
//鐗╂枡缂栫爜
if (!DBUtility.ClsPub.AllowNumber(dt.Rows[i]["鐗╂枡缂栫爜"].ToString()))
{
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = "鐗╂枡浠g爜涓笉鑳藉嚭鐜拌繛缁��.鈥欏苟涓旈浣嶆湯浣嶄笉鑳戒负鈥�.鈥欙紒";
- objJsonResult.data = null;
- return objJsonResult;
+ error = error + "鐗╂枡浠g爜涓笉鑳藉嚭鐜拌繛缁��.鈥欏苟涓旈浣嶆湯浣嶄笉鑳戒负鈥�.鈥欙紒";
}
- ds = oCn.RunProcReturn("select * from Gy_Material where HNumber='" + dt.Rows[i]["鐗╂枡缂栫爜"].ToString() + "' ", "Gy_Material");
+ ds = oCn.RunProcReturn("select top 1 HItemID from Gy_Material where HNumber='" + dt.Rows[i]["鐗╂枡缂栫爜"].ToString() + "' ", "Gy_Material");
if (ds.Tables[0].Rows.Count == 0)
{
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = $"绗瑊(i + 1)}琛�,鐗╂枡缂栫爜涓簕dt.Rows[i]["鐗╂枡缂栫爜"].ToString()}涓嶅瓨鍦�!";
- objJsonResult.data = null;
- return objJsonResult;
+ error = error + $"绗瑊(i + 1)}琛�,鐗╂枡缂栫爜涓簕dt.Rows[i]["鐗╂枡缂栫爜"].ToString()}涓嶅瓨鍦�!";
}
//鏁伴噺
if (dt.Rows[i]["鏁伴噺"].ToString() == "0")
{
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = $"绗瑊(i + 1)}琛�,鏁伴噺涓嶄负0!";
- objJsonResult.data = null;
- return objJsonResult;
+ error = error + $"绗瑊(i + 1)}琛�,鏁伴噺涓嶄负0!";
}
//鍒ゆ柇瀵煎叆鐗╂枡鐨勬暟閲忔槸鍚﹀ぇ浜庡崟鎹墿鏂欑殑鎬诲拰鏁伴噺
- ds = oCn.RunProcReturn("select * from h_v_POOrderBill_Excel " +
+ ds = oCn.RunProcReturn("select 鍓╀綑鏀舵枡鏁伴噺 from h_v_POOrderBill_Excel " +
$"where 閲囪喘缁勭粐='{dt.Rows[i]["缁勭粐"].ToString()}' and 渚涘簲鍟�='{dt.Rows[i]["渚涘簲鍟�"].ToString()}' " +
$"and 鍖呰鏍囪瘑='{dt.Rows[i]["鍖呰鏍囪瘑"].ToString()}'" +
- $"and 鐗╂枡缂栫爜='{dt.Rows[i]["鐗╂枡缂栫爜"].ToString()}' and 鍏抽棴鐘舵��='鏈叧闂�' and 瀹℃牳鐘舵��='宸插鏍�' ", "h_v_POOrderBill_Excel");
+ $"and 鐗╂枡缂栫爜='{dt.Rows[i]["鐗╂枡缂栫爜"].ToString()}' and 鍏抽棴鐘舵��='鏈叧闂�' ", "h_v_POOrderBill_Excel");
if (ds.Tables[0].Rows.Count != 0)
{
double NumCount = 0;//鎬绘暟閲�
@@ -272,29 +268,34 @@
if (NumCount < double.Parse(dt.Rows[i]["鏁伴噺"].ToString()))
{
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = $"绗瑊(i + 1)}琛屽鍏ユ暟閲忓ぇ浜庨噰璐鍗曞悎璁℃暟閲�,璇锋壘閲囪喘鍛樼敵璇峰仛閲囪喘璁㈠崟!";
- objJsonResult.data = null;
- return objJsonResult;
+ error = error + $"绗瑊(i + 1)}琛�,鐗╂枡缂栫爜:{dt.Rows[i]["鐗╂枡缂栫爜"].ToString()},鍖呰鏍囪瘑:{dt.Rows[i]["鍖呰鏍囪瘑"].ToString()},瀵煎叆鏁伴噺:{dt.Rows[i]["鏁伴噺"].ToString()} 澶т簬 閲囪喘璁㈠崟鍚堣鏁伴噺:{NumCount},璇锋壘閲囪喘鍛樼敵璇峰仛閲囪喘璁㈠崟!";
}
}
else
{
- objJsonResult.code = "0";
- objJsonResult.count = 0;
- objJsonResult.Message = $"绗瑊(i + 1)}琛�,鍖归厤涓嶅埌鐗╂枡淇℃伅!";
- objJsonResult.data = null;
- return objJsonResult;
+ error = error + $"绗瑊(i + 1)}琛�,鐗╂枡缂栫爜:{dt.Rows[i]["鐗╂枡缂栫爜"].ToString()},鍖呰鏍囪瘑:{dt.Rows[i]["鍖呰鏍囪瘑"].ToString()},閲囪喘璁㈠崟鍙敤鏁伴噺:0,灏忎簬璁㈠崟鎬婚渶姹傛暟閲�:{dt.Rows[i]["鏁伴噺"].ToString()},鍖归厤涓嶅埌鏁版嵁淇℃伅!";
}
}
- objJsonResult.code = "1";
- objJsonResult.count = 1;
- objJsonResult.Message = "娌℃湁闂";
- objJsonResult.data = null;
- return objJsonResult;
+ if (error == "")
+ {
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "娌℃湁闂";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ else
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = error;
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
}
#endregion
+
+
}
}
--
Gitblit v1.9.1