From 65a9633ebcf5cf4c0871d1c857a743ec7694c157 Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期三, 30 十月 2024 17:29:43 +0800
Subject: [PATCH] 1.生产入库功能接口 2.生产入库单报表接口
---
VueWebCoreApi/DLL/BLL/ReportManagerBLL.cs | 24 +
VueWebCoreApi/DLL/BLL/WorkOrderBLL.cs | 16 +
VueWebCoreApi/DLL/DAL/ReportManagerDAL.cs | 340 ++++++++++++++++++++++-
VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs | 257 +++++++++++++++++-
VueWebCoreApi/Tools/DapperHelper.cs | 4
VueWebCoreApi/Models/InventoryModel/StorageRecord.cs | 55 +++
VueWebCoreApi/Controllers/WorkOrderController.cs | 36 ++
VueWebCoreApi/Controllers/ReportManagerController.cs | 86 ++++++
8 files changed, 771 insertions(+), 47 deletions(-)
diff --git a/VueWebCoreApi/Controllers/ReportManagerController.cs b/VueWebCoreApi/Controllers/ReportManagerController.cs
index e766bb4..78395a4 100644
--- a/VueWebCoreApi/Controllers/ReportManagerController.cs
+++ b/VueWebCoreApi/Controllers/ReportManagerController.cs
@@ -5,6 +5,8 @@
using System.Linq;
using System.Threading.Tasks;
using VueWebCoreApi.DLL.BLL;
+using VueWebCoreApi.Models;
+using VueWebCoreApi.Models.InventoryModel;
using VueWebCoreApi.Tools;
namespace VueWebCoreApi.Controllers
@@ -596,5 +598,89 @@
return Json(mes);
}
#endregion
+
+
+ #region[鍏ュ簱璁板綍]
+ /// <summary>
+ /// 鍏ュ簱璁板綍
+ /// </summary>
+ /// <param name="page">椤电爜</param>
+ /// <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+ /// <param name="prop">鎺掑簭瀛楁</param>
+ /// <param name="order">鎺掑簭瑙勫垯</param>
+ /// <param name="hbillno">鍏ュ簱鍗曞彿</param>
+ /// <param name="sono">閿�鍞崟鍙�</param>
+ /// <param name="mono">璁㈠崟鍙�</param>
+ /// <param name="wocode">宸ュ崟鍙�</param>
+ /// <param name="partcode">浜у搧缂栫爜</param>
+ /// <param name="partname">浜у搧鍚嶇О</param>
+ /// <param name="stockcode">浠撳簱缂栫爜</param>
+ /// <param name="responddate">鍗曟嵁鏃ユ湡</param>
+ /// <returns></returns>
+ [Route(template: "StorageRecordSearch")]
+ [HttpGet]
+ public JsonResult StorageRecordSearch(int page, int rows, string prop, string order, string hbillno = null, string sono = null, string mono = null, string wocode = null, string partcode = null,string partname=null, string stockcode=null,string responddate=null)
+ {
+ string respondopendate = ""; //鍗曟嵁寮�濮嬫椂闂�
+ string respondclosedate = ""; //鍗曟嵁缁撴潫鏃堕棿
+ if (responddate != "" && responddate != null)
+ {
+ respondopendate = responddate.Split('~')[0].ToString();
+ respondclosedate = responddate.Split('~')[1].ToString();
+ }
+ int startNum = rows * (page - 1) + 1; //璧峰璁板綍rowNum
+ int endNum = rows * page; //缁撴潫璁板綍 rowNum
+ mes = ReportManagerBLL.StorageRecordSearch(hbillno, sono, mono, wocode, partcode, partname, stockcode, respondopendate, respondclosedate, startNum, endNum, prop, order);
+ return Json(mes);
+ }
+ #endregion
+
+ #region[鍏ュ簱璁板綍鍒犻櫎]
+ /// <summary>
+ /// 鍏ュ簱璁板綍鍒犻櫎
+ /// </summary>
+ /// <param name="json">鎻愪氦鏁版嵁</param>
+ /// <returns></returns>
+ [Route(template: "DeleteStorageRecord")]
+ [HttpPost]
+ public JsonResult DeleteStorageRecord(List<StorageRecord> json)
+ {
+ var token = HttpContext.Request.Headers["Token"].ToString();
+ User us = JwtTools.Denocode(token.ToString());
+ mes = ReportManagerBLL.DeleteStorageRecord(json, us);
+ return Json(mes);
+ }
+ #endregion
+
+ #region[鍏ュ簱璁板綍瀵煎嚭]
+ /// <summary>
+ /// 鍏ュ簱璁板綍瀵煎嚭
+ /// </summary>
+ /// <param name="hbillno">鍏ュ簱鍗曞彿</param>
+ /// <param name="sono">閿�鍞崟鍙�</param>
+ /// <param name="mono">璁㈠崟鍙�</param>
+ /// <param name="wocode">宸ュ崟鍙�</param>
+ /// <param name="partcode">浜у搧缂栫爜</param>
+ /// <param name="partname">浜у搧鍚嶇О</param>
+ /// <param name="stockcode">浠撳簱缂栫爜</param>
+ /// <param name="responddate">鍗曟嵁鏃ユ湡</param>
+ /// <returns></returns>
+ [Route(template: "StorageRecordExcelSearch")]
+ [HttpGet]
+ public JsonResult StorageRecordExcelSearch(string hbillno = null, string sono = null, string mono = null, string wocode = null, string partcode = null,string partname=null, string stockcode = null, string responddate = null)
+ {
+ string respondopendate = ""; //鍗曟嵁寮�濮嬫椂闂�
+ string respondclosedate = ""; //鍗曟嵁缁撴潫鏃堕棿
+ if (responddate != "" && responddate != null)
+ {
+ respondopendate = responddate.Split('~')[0].ToString();
+ respondclosedate = responddate.Split('~')[1].ToString();
+ }
+ mes = ReportManagerBLL.StorageRecordExcelSearch(hbillno, sono, mono, wocode, partcode, partname, stockcode, respondopendate, respondclosedate);
+ return Json(mes);
+ }
+ #endregion
+
+
}
}
diff --git a/VueWebCoreApi/Controllers/WorkOrderController.cs b/VueWebCoreApi/Controllers/WorkOrderController.cs
index 0e3fc37..9e48709 100644
--- a/VueWebCoreApi/Controllers/WorkOrderController.cs
+++ b/VueWebCoreApi/Controllers/WorkOrderController.cs
@@ -833,9 +833,23 @@
}
#endregion
- #region[閫氭槗T8鐢熶骇鍏ュ簱鎻愪氦]
+ #region[鐢熶骇鍏ュ簱鑾峰彇閮ㄩ棬淇℃伅]
/// <summary>
- /// 閫氭槗T8鐢熶骇鍏ュ簱鎻愪氦
+ /// 鐢熶骇鍏ュ簱鑾峰彇閮ㄩ棬淇℃伅
+ /// </summary>
+ /// <returns></returns>
+ [Route(template: "DeptSelectData")]
+ [HttpGet]
+ public JsonResult DeptSelectData()
+ {
+ mes = WorkOrderBLL.DeptSelectData();
+ return Json(mes);
+ }
+ #endregion
+
+ #region[閫氭槗T8鐢熶骇鍏ュ簱鎻愪氦-浠g爜鐗圿
+ /// <summary>
+ /// 閫氭槗T8鐢熶骇鍏ュ簱鎻愪氦-浠g爜鐗�
/// </summary>
/// <param name="data">鎻愪氦鏁版嵁</param>
/// <returns></returns>
@@ -850,5 +864,23 @@
return Json(mes);
}
#endregion
+
+ #region[閫氭槗T8鐢熶骇鍏ュ簱鎻愪氦-瀛樺偍杩囩▼鐗�(閫傜敤鍚屼竴鍙版湇鍔″櫒锛屽悓涓�涓暟鎹簱)]
+ /// <summary>
+ /// 閫氭槗T8鐢熶骇鍏ュ簱鎻愪氦-瀛樺偍杩囩▼鐗�(閫傜敤鍚屼竴鍙版湇鍔″櫒锛屽悓涓�涓暟鎹簱)
+ /// </summary>
+ /// <param name="data">鎻愪氦鏁版嵁</param>
+ /// <returns></returns>
+ [Route(template: "ProductInHouseOrderSpSeave")]
+ [HttpPost]
+ public JsonResult ProductInHouseOrderSpSeave(InReptModel data)
+ {
+ var token = HttpContext.Request.Headers["Token"].ToString();
+ //var token = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyY29kZSI6Ijk5OTkiLCJ1c2VybmFtZSI6Iuezu-e7n-euoeeQhuWRmCIsInN0b3JnX2NvZGUiOiIiLCJzdG9yZ19uYW1lIjoiIiwiaXNfc3lzdGVtX2FkbWluIjoiWSIsInJvbGVfY29kZSI6IiIsInJvbGVfZGF0YXBlcm1pc3Npb25zIjoiIiwidXNlcnR5cGUiOiJQQyIsInJlZGlza2V5IjoiTmV3TUVTTG9naW5Vc2VySURQQzk5OTkiLCJtZXNTZXR0aW5nIjoie1wicm91dGVcIjp0cnVlLFwiaXNPcmRlclwiOnRydWUsXCJkZXZpY2VcIjp0cnVlLFwidGVjaFwiOnRydWUsXCJ3b3JrT3JkZXJcIjp0cnVlLFwiZXZlcnlcIjpmYWxzZSxcImxhc3RcIjpmYWxzZX0iLCJ0aW1lb3V0IjoiMjAyNC0xMC0yNFQxMjozNTo1MC4zNDI1NzE2KzA4OjAwIn0.Nbc-1sXd4QLLsnj8wH9XC7iWEmP0wDG82gwLxIh94e4";
+ User us = JwtTools.Denocode(token.ToString());
+ mes = WorkOrderBLL.ProductInHouseOrderSpSeave(data, us);
+ return Json(mes);
+ }
+ #endregion
}
}
diff --git a/VueWebCoreApi/DLL/BLL/ReportManagerBLL.cs b/VueWebCoreApi/DLL/BLL/ReportManagerBLL.cs
index c48b6ee..1717cd8 100644
--- a/VueWebCoreApi/DLL/BLL/ReportManagerBLL.cs
+++ b/VueWebCoreApi/DLL/BLL/ReportManagerBLL.cs
@@ -3,6 +3,8 @@
using System.Linq;
using System.Threading.Tasks;
using VueWebCoreApi.DLL.DAL;
+using VueWebCoreApi.Models;
+using VueWebCoreApi.Models.InventoryModel;
using VueWebCoreApi.Tools;
namespace VueWebCoreApi.DLL.BLL
@@ -134,5 +136,27 @@
return ReportManagerDAL.AnDonReportSumExcelSearch(wkshopcode, eqpcode, calltypecode, callopendate, callclosedate, respondopendate, respondclosedate);
}
#endregion
+
+
+ #region[鍏ュ簱璁板綍]
+ public static ToMessage StorageRecordSearch(string hbillno, string sono, string mono, string wocode, string partcode,string partname, string stockcode, string respondopendate, string respondclosedate, int startNum, int endNum, string prop, string order)
+ {
+ return ReportManagerDAL.StorageRecordSearch(hbillno,sono,mono,wocode,partcode, partname,stockcode, respondopendate,respondclosedate,startNum,endNum,prop,order);
+ }
+ #endregion
+
+ #region[鍏ュ簱璁板綍鍒犻櫎]
+ public static ToMessage DeleteStorageRecord(List<StorageRecord> json, User us)
+ {
+ return ReportManagerDAL.DeleteStorageRecord(json,us);
+ }
+ #endregion
+
+ #region[鍏ュ簱璁板綍瀵煎嚭]
+ public static ToMessage StorageRecordExcelSearch(string hbillno, string sono, string mono, string wocode, string partcode,string partname, string stockcode, string respondopendate, string respondclosedate)
+ {
+ return ReportManagerDAL.StorageRecordExcelSearch(hbillno, sono, mono, wocode, partcode, partname, stockcode, respondopendate, respondclosedate);
+ }
+ #endregion
}
}
diff --git a/VueWebCoreApi/DLL/BLL/WorkOrderBLL.cs b/VueWebCoreApi/DLL/BLL/WorkOrderBLL.cs
index 99088f8..5c2a0b1 100644
--- a/VueWebCoreApi/DLL/BLL/WorkOrderBLL.cs
+++ b/VueWebCoreApi/DLL/BLL/WorkOrderBLL.cs
@@ -269,11 +269,25 @@
}
#endregion
- #region[閫氭槗T8鐢熶骇鍏ュ簱鎻愪氦]
+ #region[鐢熶骇鍏ュ簱鑾峰彇閮ㄩ棬淇℃伅]
+ public static ToMessage DeptSelectData()
+ {
+ return WorkOrderDAL.DeptSelectData();
+ }
+ #endregion
+
+ #region[閫氭槗T8鐢熶骇鍏ュ簱鎻愪氦-浠g爜鐗圿
public static ToMessage ProductInHouseOrderSeave(InReptModel data, User us)
{
return WorkOrderDAL.ProductInHouseOrderSeave(data, us);
}
#endregion
+
+ #region[閫氭槗T8鐢熶骇鍏ュ簱鎻愪氦-瀛樺偍杩囩▼鐗�(閫傜敤鍚屼竴鍙版湇鍔″櫒锛屽悓涓�涓暟鎹簱)]
+ public static ToMessage ProductInHouseOrderSpSeave(InReptModel data, User us)
+ {
+ return WorkOrderDAL.ProductInHouseOrderSpSeave(data, us);
+ }
+ #endregion
}
}
diff --git a/VueWebCoreApi/DLL/DAL/ReportManagerDAL.cs b/VueWebCoreApi/DLL/DAL/ReportManagerDAL.cs
index ba515a2..cf232b8 100644
--- a/VueWebCoreApi/DLL/DAL/ReportManagerDAL.cs
+++ b/VueWebCoreApi/DLL/DAL/ReportManagerDAL.cs
@@ -5,6 +5,8 @@
using System.Data.SqlClient;
using System.Linq;
using System.Threading.Tasks;
+using VueWebCoreApi.Models;
+using VueWebCoreApi.Models.InventoryModel;
using VueWebCoreApi.Tools;
namespace VueWebCoreApi.DLL.DAL
@@ -20,7 +22,7 @@
#region[鐢熶骇杩涘害鎶ヨ〃]
- public static ToMessage ProductionScheduleReportSearch(string wkshopcode, string status,string socode, string wocode, string partcode, string partname, string partspec, string opendate, string closedate, int startNum, int endNum, string prop, string order)
+ public static ToMessage ProductionScheduleReportSearch(string wkshopcode, string status, string socode, string wocode, string partcode, string partname, string partspec, string opendate, string closedate, int startNum, int endNum, string prop, string order)
{
var dynamicParams = new DynamicParameters();
string search = "";
@@ -118,7 +120,7 @@
#endregion
#region[鐢熶骇杩涘害鎶ヨ〃瀵煎嚭]
- public static ToMessage ProductionScheduleReportExcelSearch(string wkshopcode, string status,string socode, string wocode,string partcode, string partname, string partspec, string opendate, string closedate)
+ public static ToMessage ProductionScheduleReportExcelSearch(string wkshopcode, string status, string socode, string wocode, string partcode, string partname, string partspec, string opendate, string closedate)
{
var dynamicParams = new DynamicParameters();
string search = "";
@@ -222,7 +224,7 @@
#region[鐝粍宸ヨ祫鎶ヨ〃璁板綍鏌ヨ]
- public static ToMessage GroupSalaryReportSearch(string compute,string wkshopcode,string socode, string wocode, string partcode, string partname, string partspec, string stepname, string groupcode, string username, string operopendate, string operclosedate, int startNum, int endNum, string prop, string order)
+ public static ToMessage GroupSalaryReportSearch(string compute, string wkshopcode, string socode, string wocode, string partcode, string partname, string partspec, string stepname, string groupcode, string username, string operopendate, string operclosedate, int startNum, int endNum, string prop, string order)
{
var dynamicParams = new DynamicParameters();
string search = "";
@@ -233,7 +235,7 @@
search += "and P.isend=@isend ";
dynamicParams.Add("@isend", "Y");
}
- if (wkshopcode != "" && wkshopcode != null)
+ if (wkshopcode != "" && wkshopcode != null)
{
search += "and K.wkshp_code=@wkshopcode ";
dynamicParams.Add("@wkshopcode", wkshopcode);
@@ -353,7 +355,7 @@
#endregion
#region[鐝粍宸ヨ祫鎶ヨ〃璁板綍瀵煎嚭]
- public static ToMessage GroupSalaryReportExcelSearch(string compute,string wkshopcode,string socode, string wocode, string partcode, string partname, string partspec, string stepname, string groupcode, string username, string operopendate, string operclosedate)
+ public static ToMessage GroupSalaryReportExcelSearch(string compute, string wkshopcode, string socode, string wocode, string partcode, string partname, string partspec, string stepname, string groupcode, string username, string operopendate, string operclosedate)
{
var dynamicParams = new DynamicParameters();
string search = "";
@@ -455,7 +457,7 @@
#region[浜哄憳宸ヨ祫鏄庣粏鎶ヨ〃]
- public static ToMessage PeopleSalaryReportSearch(string compute,string wkshopcode,string socode, string wocode, string partcode, string partname, string partspec,string stepcode, string stepname, string reportname, string reportopendate, string reportclosedate, int startNum, int endNum, string prop, string order)
+ public static ToMessage PeopleSalaryReportSearch(string compute, string wkshopcode, string socode, string wocode, string partcode, string partname, string partspec, string stepcode, string stepname, string reportname, string reportopendate, string reportclosedate, int startNum, int endNum, string prop, string order)
{
var dynamicParams = new DynamicParameters();
string search = "";
@@ -578,7 +580,7 @@
#endregion
#region[浜哄憳宸ヨ祫鏄庣粏鎶ヨ〃瀵煎嚭]
- public static ToMessage PeopleSalaryReportSearch(string compute,string wkshopcode,string socode, string wocode, string partcode, string partname, string partspec, string stepcode, string stepname, string reportname, string reportopendate, string reportclosedate)
+ public static ToMessage PeopleSalaryReportSearch(string compute, string wkshopcode, string socode, string wocode, string partcode, string partname, string partspec, string stepcode, string stepname, string reportname, string reportopendate, string reportclosedate)
{
var dynamicParams = new DynamicParameters();
string search = "";
@@ -1382,11 +1384,6 @@
dynamicParams.Add("@respondopendate", respondopendate + " 00:00:00");
dynamicParams.Add("@respondclosedate", respondclosedate + " 23:59:59");
}
-
- if (search == "")
- {
- search = "and 1=1 ";
- }
//search = search.Substring(3);//鎴彇绱㈠紩2鍚庨潰鐨勫瓧绗�
// --------------鏌ヨ鎸囧畾鏁版嵁--------------
var total = 0; //鎬绘潯鏁�
@@ -1468,11 +1465,6 @@
dynamicParams.Add("@respondopendate", respondopendate + " 00:00:00");
dynamicParams.Add("@respondclosedate", respondclosedate + " 23:59:59");
}
-
- if (search == "")
- {
- search = "and 1=1 ";
- }
//search = search.Substring(3);//鎴彇绱㈠紩2鍚庨潰鐨勫瓧绗�
// --------------鏌ヨ鎸囧畾鏁版嵁--------------
var total = 0; //鎬绘潯鏁�
@@ -1542,11 +1534,6 @@
dynamicParams.Add("@respondopendate", respondopendate + " 00:00:00");
dynamicParams.Add("@respondclosedate", respondclosedate + " 23:59:59");
}
-
- if (search == "")
- {
- search = "and 1=1 ";
- }
//search = search.Substring(3);//鎴彇绱㈠紩2鍚庨潰鐨勫瓧绗�
// --------------鏌ヨ鎸囧畾鏁版嵁--------------
var total = 0; //鎬绘潯鏁�
@@ -1610,11 +1597,6 @@
dynamicParams.Add("@respondopendate", respondopendate + " 00:00:00");
dynamicParams.Add("@respondclosedate", respondclosedate + " 23:59:59");
}
-
- if (search == "")
- {
- search = "and 1=1 ";
- }
//search = search.Substring(3);//鎴彇绱㈠紩2鍚庨潰鐨勫瓧绗�
// --------------鏌ヨ鎸囧畾鏁版嵁--------------
var total = 0; //鎬绘潯鏁�
@@ -1645,5 +1627,309 @@
return mes;
}
#endregion
+
+
+ #region[鍏ュ簱璁板綍]
+ public static ToMessage StorageRecordSearch(string hbillno, string sono, string mono, string wocode, string partcode, string partname, string stockcode, string respondopendate, string respondclosedate, int startNum, int endNum, string prop, string order)
+ {
+ var dynamicParams = new DynamicParameters();
+ string search = "";
+ try
+ {
+ if (hbillno != "" && hbillno != null)
+ {
+ search += "and AA.hbillno like '%'+@hbillno+'%' ";
+ dynamicParams.Add("@hbillno", hbillno);
+ }
+ if (sono != "" && sono != null)
+ {
+ search += "and AA.salecode like '%'+@sono+'%' ";
+ dynamicParams.Add("@sono", sono);
+ }
+ if (mono != "" && mono != null)
+ {
+ search += "and AA.mo_no like '%'+@mono+'%' ";
+ dynamicParams.Add("@mono", mono);
+ }
+ if (wocode != "" && wocode != null)
+ {
+ search += "and AA.wocode like '%'+@wocode+'%' ";
+ dynamicParams.Add("@wocode", wocode);
+ }
+ if (partcode != "" && partcode != null)
+ {
+ search += "and AA.partcode like '%'+@partcode+'%' ";
+ dynamicParams.Add("@partcode", partcode);
+ }
+ if (partname != "" && partname != null)
+ {
+ search += "and AA.partname like '%'+@partname+'%' ";
+ dynamicParams.Add("@partname", partname);
+ }
+ if (stockcode != "" && stockcode != null)
+ {
+ search += "and AA.stockcode=@stockcode ";
+ dynamicParams.Add("@stockcode", stockcode);
+ }
+ if (respondopendate != "" && respondopendate != null)
+ {
+ search += "and AA.hbdate between @respondopendate and @respondclosedate ";
+ dynamicParams.Add("@respondopendate", respondopendate + " 00:00:00");
+ dynamicParams.Add("@respondclosedate", respondclosedate + " 23:59:59");
+ }
+ //search = search.Substring(3);//鎴彇绱㈠紩2鍚庨潰鐨勫瓧绗�
+ // --------------鏌ヨ鎸囧畾鏁版嵁--------------
+ var total = 0; //鎬绘潯鏁�
+ var sql = @"select * from(
+ select A.hbillno,A.hbdate,B.salecode,B.mo_no,B.wocode,B.partcode,P.partname,P.partspec,M.wkshp_code,T.torg_name as wkshp_name,B.stockcode,S.name as stockname,
+ B.qty,B.inbarcode,R.step_code,E.stepname,R.style,A.create_user,A.create_date
+ from TK_WMS_Inwh_Main A
+ inner join TK_WMS_Inwh_Sub B on A.hbillno=B.hbillno
+ inner join TK_Wrk_Record R on B.inbarcode=R.inbarcode
+ left join TK_Wrk_Man M on B.wocode=M.wo_code
+ left join TMateriel_Info P on B.partcode=P.partcode
+ left join TSecStck S on B.stockcode=S.code
+ left join TStep E on R.step_code=E.stepcode
+ left join TOrganization T on M.wkshp_code=T.torg_code
+ union all
+ select A.hbillno,A.hbdate,B.salecode,B.mo_no,B.wocode,B.partcode,P.partname,P.partspec,M.wkshp_code,T.torg_name as wkshp_name,B.stockcode,S.name as stockname,
+ B.qty,B.inbarcode,O.step_code,E.stepname,O.style,A.create_user,A.create_date
+ from TK_WMS_Inwh_Main A
+ inner join TK_WMS_Inwh_Sub B on A.hbillno=B.hbillno
+ inner join TK_Wrk_OutRecord O on B.inbarcode=O.inbarcode
+ left join TK_Wrk_Man M on B.wocode=M.wo_code
+ left join TMateriel_Info P on B.partcode=P.partcode
+ left join TSecStck S on B.stockcode=S.code
+ left join TStep E on O.step_code=E.stepcode
+ left join TOrganization T on M.wkshp_code=T.torg_code
+ ) as AA where 1=1 " + search;
+ var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
+ mes.code = "200";
+ mes.message = "鏌ヨ鎴愬姛!";
+ mes.count = total;
+ mes.data = data.ToList();
+ }
+ catch (Exception e)
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.message = e.Message;
+ mes.data = null;
+ }
+ return mes;
+ }
+ #endregion
+
+ #region[鍏ュ簱璁板綍鍒犻櫎]
+ public static ToMessage DeleteStorageRecord(List<StorageRecord> json, User us)
+ {
+ var sql = "";
+ List<object> list = new List<object>();
+ var dynamicParams = new DynamicParameters();
+ try
+ {
+ // 浣跨敤LINQ鐨刲ambda琛ㄨ揪寮忔牴鎹甴billno鍒嗙粍骞剁粺璁℃瘡涓粍鐨勬潯鏁�
+ var groupedRecords = json.GroupBy(r => r.hbillno).Select(g => new{hbillno = g.Key,count = g.Count()}).ToList();
+ for (int i = 0; i < groupedRecords.Count; i++)
+ {
+ //鏌ヨ鍏ュ簱鍗曞瓙琛ㄧ殑鏁版嵁鏉℃暟
+ sql = @"select * from TK_WMS_Inwh_Sub where hbillno=@hbillno";
+ dynamicParams.Add("@hbillno", groupedRecords[i].hbillno);
+ var data = DapperHelper.selectdata(sql, dynamicParams);
+ //瀛愯〃鏈夊搴斿叆搴撳崟鍙锋暟鎹笖鏁版嵁鏉℃暟绛変簬鎻愪氦鐨勫叆搴撴潯鏁�
+ if (data.Rows.Count > 0 && data.Rows.Count == groupedRecords[i].count)
+ {
+ //鍒犻櫎鍏ュ簱鍗曚富琛�
+ sql = @"delete TK_WMS_Inwh_Main where hbillno=@hbillno";
+ list.Add(new
+ {
+ str = sql,
+ parm = new
+ {
+ hbillno = groupedRecords[i].hbillno.ToString()
+ }
+ });
+ }
+ }
+
+ for (int i = 0; i < json.Count; i++)
+ {
+ //鍒犻櫎鍏ュ簱鍗曞瓙琛�
+ sql = @"delete TK_WMS_Inwh_Sub where hbillno=@hbillno and inbarcode=@inbarcode";
+ list.Add(new
+ {
+ str = sql,
+ parm = new
+ {
+ hbillno = json[i].hbillno.ToString(),
+ inbarcode = json[i].inbarcode.ToString()
+ }
+ });
+ if (json[i].style == "B")
+ {
+ //鑷埗鎶ュ伐璁板綍琛ㄥ叆搴撴暟閲�
+ sql = @"update TK_Wrk_Record set inhouseqty=inhouseqty-@qty where inbarcode=@inbarcode";
+ list.Add(new
+ {
+ str = sql,
+ parm = new
+ {
+ qty = json[i].qty.ToString(),
+ inbarcode = json[i].inbarcode.ToString()
+ }
+ });
+ }
+ if (json[i].style == "S")
+ {
+ //澶栧崗鏀舵枡璁板綍琛ㄥ叆搴撴暟閲�
+ sql = @"update TK_Wrk_OutRecord set inhouseqty=inhouseqty-@qty where inbarcode=@inbarcode";
+ list.Add(new
+ {
+ str = sql,
+ parm = new
+ {
+ qty = json[i].qty.ToString(),
+ inbarcode = json[i].inbarcode.ToString()
+ }
+ });
+ }
+ //娓呴櫎宸ュ簭浠诲姟琛ㄧ疮璁″叆搴撴暟閲�
+ sql = @"update TK_Wrk_Step set inhouseqty=inhouseqty-@qty where wo_code=@wocode and step_code=@stepcode and isend='Y'";
+ list.Add(new
+ {
+ str = sql,
+ parm = new
+ {
+ qty = json[i].qty.ToString(),
+ wocode = json[i].wocode.ToString(),
+ stepcode = json[i].step_code.ToString()
+ }
+ });
+ }
+ bool aa = DapperHelper.DoTransaction(list);
+ LogHelper.WriteLogData(aa.ToString());
+ if (aa)
+ {
+ //鍐欏叆鎿嶄綔璁板綍琛�
+ LogHelper.DbOperateLog(us.usercode, "鍒犻櫎", "鍒犻櫎浜嗗叆搴撳崟:"+ string.Join(",", json.Select(r => $"{r.hbillno},{r.inbarcode}")), us.usertype);
+ mes.code = "200";
+ mes.count = 0;
+ mes.message = "鍏ュ簱鍗曞垹闄ゆ垚鍔�!";
+ mes.data = null;
+ }
+ else
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.message = "鍏ュ簱鍗曞垹闄ゅけ璐�!";
+ mes.data = null;
+ }
+ }
+ catch (Exception e)
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.message = e.Message;
+ mes.data = null;
+ }
+ return mes;
+ }
+ #endregion
+
+ #region[鍏ュ簱璁板綍瀵煎嚭]
+ public static ToMessage StorageRecordExcelSearch(string hbillno, string sono, string mono, string wocode, string partcode, string partname, string stockcode, string respondopendate, string respondclosedate)
+ {
+ var dynamicParams = new DynamicParameters();
+ string search = "";
+ try
+ {
+ if (hbillno != "" && hbillno != null)
+ {
+ search += "and AA.hbillno like '%'+@hbillno+'%' ";
+ dynamicParams.Add("@hbillno", hbillno);
+ }
+ if (sono != "" && sono != null)
+ {
+ search += "and AA.salecode like '%'+@sono+'%' ";
+ dynamicParams.Add("@sono", sono);
+ }
+ if (mono != "" && mono != null)
+ {
+ search += "and AA.mo_no like '%'+@mono+'%' ";
+ dynamicParams.Add("@mono", mono);
+ }
+ if (wocode != "" && wocode != null)
+ {
+ search += "and AA.wocode like '%'+@wocode+'%' ";
+ dynamicParams.Add("@wocode", wocode);
+ }
+ if (partcode != "" && partcode != null)
+ {
+ search += "and AA.partcode like '%'+@partcode+'%' ";
+ dynamicParams.Add("@partcode", partcode);
+ }
+ if (partname != "" && partname != null)
+ {
+ search += "and AA.partname like '%'+@partname+'%' ";
+ dynamicParams.Add("@partname", partname);
+ }
+ if (stockcode != "" && stockcode != null)
+ {
+ search += "and AA.stockcode=@stockcode ";
+ dynamicParams.Add("@stockcode", stockcode);
+ }
+ if (respondopendate != "" && respondopendate != null)
+ {
+ search += "and A.hbdate between @respondopendate and @respondclosedate ";
+ dynamicParams.Add("@respondopendate", respondopendate + " 00:00:00");
+ dynamicParams.Add("@respondclosedate", respondclosedate + " 23:59:59");
+ }
+ //search = search.Substring(3);//鎴彇绱㈠紩2鍚庨潰鐨勫瓧绗�
+ // --------------鏌ヨ鎸囧畾鏁版嵁--------------
+ var total = 0; //鎬绘潯鏁�
+ var sql = @"select AA.hbillno as 鍏ュ簱鍗曞彿,AA.hbdate as 鍗曟嵁鏃ユ湡,AA.salecode as 閿�鍞崟鍙�,AA.mo_no as 璁㈠崟鍙�,AA.wocode as 宸ュ崟鍙�,AA.partcode as 浜у搧缂栫爜,AA.partname as 浜у搧鍚嶇О,
+ AA.partspec as 浜у搧瑙勬牸,AA.wkshp_code as 杞﹂棿缂栫爜,AA.torg_name as 杞﹂棿鍚嶇О,AA.stockcode as 浠撳簱缂栫爜,AA.stockname as 浠撳簱鍚嶇О, AA.qty as 鍏ュ簱鏁伴噺,
+ AA.step_code as 宸ュ簭缂栫爜,AA.stepname as 宸ュ簭鍚嶇О,AA.create_user as 鍒涘缓浜哄憳,AA.create_date as 鍒涘缓鏃堕棿
+ from(
+ select A.hbillno,A.hbdate,B.salecode,B.mo_no,B.wocode,B.partcode,P.partname,P.partspec,M.wkshp_code,T.torg_name,B.stockcode,S.name as stockname,
+ B.qty,B.inbarcode,R.step_code,E.stepname,R.style,A.create_user,A.create_date
+ from TK_WMS_Inwh_Main A
+ inner join TK_WMS_Inwh_Sub B on A.hbillno=B.hbillno
+ inner join TK_Wrk_Record R on B.inbarcode=R.inbarcode
+ left join TK_Wrk_Man M on B.wocode=M.wo_code
+ left join TMateriel_Info P on B.partcode=P.partcode
+ left join TSecStck S on B.stockcode=S.code
+ left join TStep E on R.step_code=E.stepcode
+ left join TOrganization T on M.wkshp_code=T.torg_code
+ union all
+ select A.hbillno,A.hbdate,B.salecode,B.mo_no,B.wocode,B.partcode,P.partname,P.partspec,M.wkshp_code,T.torg_name as wkshp_name,B.stockcode,S.name as stockname,
+ B.qty,B.inbarcode,O.step_code,E.stepname,O.style,A.create_user,A.create_date
+ from TK_WMS_Inwh_Main A
+ inner join TK_WMS_Inwh_Sub B on A.hbillno=B.hbillno
+ inner join TK_Wrk_OutRecord O on B.inbarcode=O.inbarcode
+ left join TK_Wrk_Man M on B.wocode=M.wo_code
+ left join TMateriel_Info P on B.partcode=P.partcode
+ left join TSecStck S on B.stockcode=S.code
+ left join TStep E on O.step_code=E.stepcode
+ left join TOrganization T on M.wkshp_code=T.torg_code
+ ) as AA where 1=1 " + search;
+ DataTable data = DapperHelper.selectdata(sql, dynamicParams);
+ data.TableName = "Table"; //璁剧疆DataTable鐨勫悕绉�
+ string msg = DownLoad.DataTableToExcel(data, "鍏ュ簱璁板綍鎶ヨ〃");
+ mes.code = "200";
+ mes.message = "鏌ヨ鎴愬姛!";
+ mes.count = total;
+ mes.data = msg;
+ }
+ catch (Exception e)
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.message = e.Message;
+ mes.data = null;
+ }
+ return mes;
+ }
+ #endregion
}
}
diff --git a/VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs b/VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs
index 1aa1222..17a2d83 100644
--- a/VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs
+++ b/VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs
@@ -130,7 +130,7 @@
#endregion
#region[ERP璁㈠崟涓嬭揪]
- public static ToMessage MarkSaveErpOrder(string erporderid, string sbid, string erpordercode, string saleordercode, string partcode,string deptcode, string wkshopcode, string warehousecode, string erpqty, string markqty, string ordernum, string relse_qty, string saleOrderDeliveryDate, string paystartdate, string payenddate, string clerkuser, User us)
+ public static ToMessage MarkSaveErpOrder(string erporderid, string sbid, string erpordercode, string saleordercode, string partcode, string deptcode, string wkshopcode, string warehousecode, string erpqty, string markqty, string ordernum, string relse_qty, string saleOrderDeliveryDate, string paystartdate, string payenddate, string clerkuser, User us)
{
var sql = "";
List<object> list = new List<object>();
@@ -212,7 +212,7 @@
wo_code = wo,
wotype = "PO",
status = "NEW",
- dept_code=deptcode,
+ dept_code = deptcode,
wkshp_code = wkshopcode,
plan_qty = cdqty,
stck_code = warehousecode,
@@ -330,7 +330,7 @@
wo_code = wo,
wotype = "PO",
status = "NEW",
- dept_code=model.deptcode,
+ dept_code = model.deptcode,
wkshp_code = model.wkshopcode,
plan_qty = decimal.Parse(model.erpqty), //璁㈠崟鏁伴噺
stck_code = model.warehousecode,
@@ -1573,12 +1573,15 @@
}
//鏍规嵁鏉′欢鏌ヨ宸ュ崟宸ュ簭浠诲姟(鑷埗宸ュ簭)
sql = @"select A.id,A.status,B.dept_code,B.wkshp_code,T.torg_name as wkshp_name,A.wo_code,M.partcode,M.partname,M.partspec,A.seq,A.isbott,A.isend,
- S.stepcode,S.stepname,S.descr,A.plan_qty,A.good_qty,A.ng_qty,A.laborbad_qty,A.materielbad_qty,B.lm_date
+ S.stepcode,S.stepname,S.descr,A.plan_qty,A.good_qty,A.ng_qty,A.laborbad_qty,A.materielbad_qty,B.lm_date,
+ E.sbid,B.m_po,E.saleOrderCode,E.saleOrderDetailId,E.unitid,E.unitcode,E.unitname,K.code as stockcode,k.name as stockname
from TK_Wrk_Step A
left join TK_Wrk_Man B on A.wo_code=B.wo_code
left join TMateriel_Info M on B.materiel_code=M.partcode
left join TStep S on A.step_code=S.stepcode
left join TOrganization T on B.wkshp_code=T.torg_code
+ left join TKimp_Ewo E on B.sourceid=E.id and B.m_po=E.wo
+ left join TSecStck K on M.idwarehouse=K.code
where A.status in('ALLO','START') and S.flwtype='Z' " + search;
var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
mes.code = "200";
@@ -1677,12 +1680,15 @@
sql = @"select A.id,A.status,B.dept_code,B.wkshp_code,T.torg_name as wkshp_name,A.wo_code,M.partcode,M.partname,M.partspec,A.seq,A.isbott,A.isend,
S.stepcode,S.stepname,S.descr,A.plan_qty,A.good_qty,A.ng_qty,
(select isnull(sum(fqty),0) as fqty from TK_Wrk_OutRecord where wo_code=A.wo_code and step_code=A.step_code and style='F') as fqty,
- A.laborbad_qty,A.materielbad_qty,A.plan_startdate,A.plan_enddate,B.lm_date
+ A.laborbad_qty,A.materielbad_qty,A.plan_startdate,A.plan_enddate,B.lm_date,
+ E.sbid,B.m_po,E.saleOrderCode,E.saleOrderDetailId,E.unitid,E.unitcode,E.unitname,K.code as stockcode,k.name as stockname
from TK_Wrk_Step A
left join TK_Wrk_Man B on A.wo_code=B.wo_code
left join TMateriel_Info M on B.materiel_code=M.partcode
left join TStep S on A.step_code=S.stepcode
left join TOrganization T on B.wkshp_code=T.torg_code
+ left join TKimp_Ewo E on B.sourceid=E.id and B.m_po=E.wo
+ left join TSecStck K on M.idwarehouse=K.code
where A.status in('ALLO','START') and S.flwtype='W' " + search;
var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
mes.code = "200";
@@ -1927,7 +1933,7 @@
else //涓嶆寜搴忔敹鍙戞枡
{
mes = ScanStartReport.NoWXEncodingSeach(SelectType, wocode, stepcode);
- }
+ }
break;
default:
break;
@@ -3386,7 +3392,7 @@
}
}
}
- }
+ }
}
}
else //涓嶆寜搴�
@@ -3394,10 +3400,10 @@
//鎺у埗閫昏緫锛氬綋鍓嶅伐搴忔姤宸ヨ皟鏁�-> (鏈亾宸ュ簭褰撳墠璋冩暣鍚堟牸鏁�+鏈亾宸ュ簭闈炲綋鍓嶆姤宸ュ悎鏍兼�绘暟)<涓嬮亾宸ュ簭鎶ュ伐鎬绘暟(鍚堟牸+涓嶈壇+鎶ュ簾) ==涓嶈兘灏忎簬涓嬮亾鎶ュ伐鎬绘暟
list.Clear();
//鍒ゆ柇褰撳墠宸ュ簭鏄嚜鍒跺伐搴忚繕鏄鍗忓伐搴�
- if (json[0].flw_type.ToString() == "Z")
+ if (json[0].flw_type.ToString() == "Z")
{
-
- //鏌ヨ褰撳墠鎶ュ伐宸ュ簭闈炴娆℃姤宸ワ細鎬绘姤宸ユ暟閲忋�佹�讳笉鑹暟閲忋�佹�诲伐搴熸暟閲忋�佹�绘枡搴熸暟閲�
+
+ //鏌ヨ褰撳墠鎶ュ伐宸ュ簭闈炴娆℃姤宸ワ細鎬绘姤宸ユ暟閲忋�佹�讳笉鑹暟閲忋�佹�诲伐搴熸暟閲忋�佹�绘枡搴熸暟閲�
sql = @"select isnull(sum(good_qty),0) as good_qty,isnull(sum(ng_qty),0) as ng_qty,isnull(sum(laborbad_qty),0) as laborbad_qty,isnull(sum(materielbad_qty),0) as materielbad_qty
from TK_Wrk_Record where wo_code=@wo_code and style='B' and id<>@id and step_code=@step_code";
dynamicParams.Add("@wo_code", json[0].wo_code);
@@ -3419,7 +3425,7 @@
return mes;
}
}
- if (json[0].flw_type.ToString() == "W")
+ if (json[0].flw_type.ToString() == "W")
{
//鑾峰彇褰撳墠宸ュ簭銆佷緵搴斿晢瀵瑰簲鐨勬�诲彂鏂欐暟閲�
sql = @"select isnull(sum(fqty),0) as fqty
@@ -3441,7 +3447,7 @@
decimal notthis_ngqty = decimal.Parse(dt.Rows[0]["ng_qty"].ToString()); //褰撳墠鏈亾宸ュ簭闈炴湰娆℃姤宸ユ�绘暟
decimal notthis_laborbad_qty = decimal.Parse(dt.Rows[0]["laborbad_qty"].ToString()); //褰撳墠鏈亾宸ュ簭闈炴湰娆℃姤宸ュ伐搴熸�绘暟
decimal notthis_materielbad_qty = decimal.Parse(dt.Rows[0]["materielbad_qty"].ToString()); //褰撳墠鏈亾宸ュ簭闈炴湰娆℃姤宸ユ枡搴熸�绘暟
- //鑾峰彇褰撳墠鏈亾宸ュ簭鏀舵枡鎬绘暟閲忥細鏈淇敼鏀舵枡鏁伴噺+鏈淇敼涓嶈壇鏁伴噺+鏈淇敼宸ュ簾鏁伴噺+鏈淇敼鎶ュ伐鏂欏簾鏁伴噺+褰撳墠宸ュ簭闈炴湰娆℃敹鏂欐�绘暟+褰撳墠宸ュ簭闈炴湰娆′笉鑹�绘暟+褰撳墠宸ュ簭闈炴湰娆″伐搴熸�绘暟+褰撳墠宸ュ簭闈炴湰娆℃枡搴熸�绘暟
+ //鑾峰彇褰撳墠鏈亾宸ュ簭鏀舵枡鎬绘暟閲忥細鏈淇敼鏀舵枡鏁伴噺+鏈淇敼涓嶈壇鏁伴噺+鏈淇敼宸ュ簾鏁伴噺+鏈淇敼鎶ュ伐鏂欏簾鏁伴噺+褰撳墠宸ュ簭闈炴湰娆℃敹鏂欐�绘暟+褰撳墠宸ュ簭闈炴湰娆′笉鑹�绘暟+褰撳墠宸ュ簭闈炴湰娆″伐搴熸�绘暟+褰撳墠宸ュ簭闈炴湰娆℃枡搴熸�绘暟
decimal updatereportsumqty = this_reportqty + this_ngqty + this_laborbadqty + this_materielbadqty + notthis_reportqty + notthis_ngqty + notthis_laborbad_qty + notthis_materielbad_qty;
//鍒ゆ柇褰撳墠宸ュ簭渚涘簲鍟嗘敹鏂欐�绘暟>褰撳墠宸ュ簭渚涘簲鍟嗗搴斿彂鏂欐暟閲�
if (updatereportsumqty > decimal.Parse(dt_0.Rows[0]["fqty"].ToString()))
@@ -3489,7 +3495,7 @@
str = sql,
parm = new
{
- step_price=decimal.Parse(json[0].unprice),
+ step_price = decimal.Parse(json[0].unprice),
good_qty = decimal.Parse(json[0].report_dvalue),
ng_qty = this_ng_dvalue,
laborbad_qty = this_laborbad_dvalue,
@@ -3592,7 +3598,7 @@
str = sql,
parm = new
{
- step_price=decimal.Parse(json[0].unprice),
+ step_price = decimal.Parse(json[0].unprice),
good_qty = decimal.Parse(json[0].report_dvalue),
ng_qty = this_ng_dvalue,
laborbad_qty = this_laborbad_dvalue,
@@ -4085,10 +4091,231 @@
}
#endregion
- #region[閫氭槗T8鐢熶骇鍏ュ簱鎻愪氦]
+ #region[鐢熶骇鍏ュ簱鑾峰彇閮ㄩ棬淇℃伅]
+ public static ToMessage DeptSelectData()
+ {
+ var sql = "";
+ var dynamicParams = new DynamicParameters();
+ string search = "";
+ try
+ {
+ sql = @"select * from h_v_TFDepent";
+ var data = DapperHelper.selectdata(sql, dynamicParams);
+ mes.code = "200";
+ mes.message = "鏌ヨ鎴愬姛!";
+ mes.data = data;
+ }
+ catch (Exception e)
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.message = e.Message;
+ mes.data = null;
+ }
+ return mes;
+ }
+ #endregion
+
+ #region[閫氭槗T8鐢熶骇鍏ュ簱鎻愪氦-浠g爜鐗圿
public static ToMessage ProductInHouseOrderSeave(InReptModel data, User us)
{
var sql = "";
+ List<object> list = new List<object>();
+ var dynamicParams = new DynamicParameters();
+ try
+ {
+ list.Clear();
+ //鏌ヨ鍏ュ簱鍗曟槸鍚﹀凡瀛樺湪
+ sql = @"select * from srv_lnk_TFT8.erp_t8_XKDCS.[dbo].[scm_in1] where sheet_no=@hbillno";
+ dynamicParams.Add("@hbillno", data.TableData[0].Rows[0]["hbillno"].ToString());
+ var data0 = DapperHelper.selectdata(sql, dynamicParams);
+ if (data0.Rows.Count > 0)
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.message = "鍏ュ簱鍗曞彿宸插瓨鍦�!";
+ mes.data = null;
+ return mes;
+ }
+ //鍐欏叆鍏ュ簱鍗曚富琛�(MES)
+ sql = @"insert into TK_WMS_Inwh_Main(docu_typecode,hbillno,hbdate,deptno,storehouse_code,status,remark,create_user,create_date)
+ values(@docu_typecode,@hbillno,@hbdate,@deptno,@storehouse_code,@status,@remark,@create_user,@create_date)";
+ list.Add(new
+ {
+ str = sql,
+ parm = new
+ {
+ docu_typecode = "WI",
+ hbillno = data.TableData[0].Rows[0]["hbillno"].ToString(),
+ hbdate = data.TableData[0].Rows[0]["hbdate"].ToString(),
+ deptno = data.TableData[0].Rows[0]["deptno"].ToString(),
+ storehouse_code = data.TableData[0].Rows[0]["storehouse_code"].ToString(),
+ status = data.TableData[0].Rows[0]["status"].ToString(),
+ remark = data.TableData[0].Rows[0]["remark"].ToString(),
+ create_user = data.TableData[0].Rows[0]["create_user"].ToString(),
+ create_date = data.TableData[0].Rows[0]["create_date"].ToString()
+ }
+ });
+ //鍐欏叆鍏ュ簱鍗曚富琛�(T8)
+ sql = @"insert into srv_lnk_TFT8.erp_t8_XKDCS.[dbo].[scm_in1](sheet_type,sheet_no,sheet_sta,sheet_date,dept_no,st_no,sheet_amt,check_sta,create_date,create_user,add_flag)
+ values(@sheet_type,@sheet_no,@sheet_sta,@sheet_date,@dept_no,@st_no,@sheet_amt,@check_sta,@create_date,@create_user,@add_flag)";
+ list.Add(new
+ {
+ str = sql,
+ parm = new
+ {
+ sheet_type = "WI",
+ sheet_no = data.TableData[0].Rows[0]["hbillno"].ToString(),
+ sheet_sta = data.TableData[0].Rows[0]["status"].ToString(),
+ sheet_date = data.TableData[0].Rows[0]["hbdate"].ToString(),
+ dept_no = data.TableData[0].Rows[0]["deptno"].ToString(),
+ st_no = data.TableData[0].Rows[0]["storehouse_code"].ToString(),
+ sheet_amt = "0",
+ check_sta = "0",
+ create_date = data.TableData[0].Rows[0]["create_date"].ToString(),
+ create_user = data.TableData[0].Rows[0]["create_user"].ToString(),
+ add_flag = "1"
+ }
+ });
+
+ for (int i = 0; i < data.TableData[1].Rows.Count; i++)
+ {
+ if (data.TableData[1].Rows[i]["style"].ToString() == "B")
+ {
+ //鏉′欢婊¤冻鏃舵墽琛岀殑鎿嶄綔(鍥炲啓鎶ュ伐璁板綍涓昏〃鐨勫叆搴撴暟閲�)
+ sql = @"update TK_Wrk_Record set inhouseqty=inhouseqty+@qty where inbarcode=@inbarcode";
+ list.Add(new
+ {
+ str = sql,
+ parm = new
+ {
+ qty = data.TableData[1].Rows[i]["qty"].ToString(),
+ inbarcode = data.TableData[1].Rows[i]["inbarcode"].ToString()
+ }
+ });
+ }
+ if (data.TableData[1].Rows[i]["style"].ToString() == "S")
+ {
+ //鏉′欢婊¤冻鏃舵墽琛岀殑鎿嶄綔(鍥炲啓澶栧崗鏀舵枡璁板綍涓昏〃鐨勫叆搴撴暟閲�)
+ sql = @"update TK_Wrk_OutRecord set inhouseqty=inhouseqty+@qty where inbarcode=@inbarcode";
+ list.Add(new
+ {
+ str = sql,
+ parm = new
+ {
+ qty = data.TableData[1].Rows[i]["qty"].ToString(),
+ inbarcode = data.TableData[1].Rows[i]["inbarcode"].ToString()
+ }
+ });
+ }
+ //鍥炲啓宸ュ崟宸ュ簭琛ㄦ湯閬撳伐搴忓凡鍏ュ簱鏁伴噺
+ sql = @"update TK_Wrk_Step set inhouseqty=inhouseqty+@qty where wo_code=@wocode and step_code=@stepcode and isend='Y'";
+ list.Add(new
+ {
+ str = sql,
+ parm = new
+ {
+ qty = data.TableData[1].Rows[i]["qty"].ToString(),
+ wocode = data.TableData[1].Rows[i]["wocode"].ToString(),
+ stepcode = data.TableData[1].Rows[i]["stepcode"].ToString()
+ }
+ });
+ //鍐欏叆鍏ュ簱鍗曞瓙琛�(MES)
+ sql = @"insert into TK_WMS_Inwh_Sub (hbillno,rownumber,inbarcode,mo_id,mo_no,wocode,partcode,unitcode,unit_rate,stockcode,qty,price,saleid,salecode,status,style)
+ values(@hbillno,@rownumber,@inbarcode,@mo_id,@mo_no,@wocode,@partcode,@unitcode,@unit_rate,@stockcode,@qty,@price,@saleid,@salecode,@status,@style)";
+ list.Add(new
+ {
+ str = sql,
+ parm = new
+ {
+ hbillno = data.TableData[1].Rows[i]["hbillno"].ToString(),
+ rownumber = data.TableData[1].Rows[i]["rownumber"].ToString(),
+ inbarcode = data.TableData[1].Rows[i]["inbarcode"].ToString(),
+ mo_id = data.TableData[1].Rows[i]["mo_id"].ToString(),
+ mo_no = data.TableData[1].Rows[i]["mo_no"].ToString(),
+ wocode = data.TableData[1].Rows[i]["wocode"].ToString(),
+ partcode = data.TableData[1].Rows[i]["partcode"].ToString(),
+ unitcode = data.TableData[1].Rows[i]["unitcode"].ToString(),
+ unit_rate = data.TableData[1].Rows[i]["unit_rate"].ToString(),
+ stockcode = data.TableData[1].Rows[i]["stockcode"].ToString(),
+ qty = data.TableData[1].Rows[i]["qty"].ToString(),
+ price = data.TableData[1].Rows[i]["price"].ToString(),
+ saleid = data.TableData[1].Rows[i]["saleid"].ToString(),
+ salecode = data.TableData[1].Rows[i]["salecode"].ToString(),
+ status = data.TableData[1].Rows[i]["status"].ToString(),
+ style = data.TableData[1].Rows[i]["style"].ToString()
+ }
+ });
+ //鍐欏叆鍏ュ簱鍗曞瓙琛�(T8)
+ sql = @"insert into srv_lnk_TFT8.erp_t8_XKDCS.[dbo].[scm_in2] (sheet_no,sheet_id,goods_no,unit_no,unit_rate,st_no,sheet_qty,mo_no,mo_id,sheet_pri,ord_no,ord_id,sheet_sta,add_flag)
+ values(@sheet_no,@sheet_id,@goods_no,@unit_no,@unit_rate,@st_no,@sheet_qty,@mo_no,@mo_id,@sheet_pri,@ord_no,@ord_id,@sheet_sta,@add_flag)";
+ list.Add(new
+ {
+ str = sql,
+ parm = new
+ {
+ sheet_no = data.TableData[1].Rows[i]["hbillno"].ToString(),
+ sheet_id = data.TableData[1].Rows[i]["rownumber"].ToString(),
+ goods_no = data.TableData[1].Rows[i]["partcode"].ToString(),
+ unit_no = data.TableData[1].Rows[i]["unitcode"].ToString(),
+ unit_rate = "1",
+ st_no = data.TableData[1].Rows[i]["stockcode"].ToString(),
+ sheet_qty = data.TableData[1].Rows[i]["qty"].ToString(),
+ mo_no = data.TableData[1].Rows[i]["mo_no"].ToString(),
+ mo_id = data.TableData[1].Rows[i]["mo_id"].ToString(),
+ sheet_pri = "1",
+ ord_no = data.TableData[1].Rows[i]["salecode"].ToString(),
+ ord_id = data.TableData[1].Rows[i]["saleid"].ToString(),
+ sheet_sta = data.TableData[1].Rows[i]["status"].ToString(),
+ add_flag = "1"
+ }
+ });
+ }
+ //鏇存柊鍏ュ簱鍗曟祦姘村彿
+ sql = @" update TCodeRules set value = @incbit, incbit = LEN(CAST(@incbit AS VARCHAR)) where menucode = @rightcode";
+ list.Add(new
+ {
+ str = sql,
+ parm = new
+ {
+ incbit = data.incbit,
+ rightcode = data.rightcode
+ }
+ });
+
+ bool aa = DapperHelper.DoTransaction(list);
+ if (aa)
+ {
+ //鍐欏叆鎿嶄綔璁板綍琛�
+ LogHelper.DbOperateLog(us.usercode, "鍏ュ簱鍗曚繚瀛�", "鍏ュ簱鍗曞彿:" + data.TableData[0].Rows[0]["hbillno"].ToString(), us.usertype);
+ mes.code = "200";
+ mes.count = 0;
+ mes.message = "鎿嶄綔鎴愬姛!";
+ mes.data = null;
+ }
+ else
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.message = "鎿嶄綔澶辫触!";
+ mes.data = null;
+ }
+ }
+ catch (Exception e)
+ {
+ mes.code = "300";
+ mes.count = 0;
+ mes.message = e.Message;
+ mes.data = null;
+ }
+ return mes;
+ }
+ #endregion
+
+ #region[閫氭槗T8鐢熶骇鍏ュ簱鎻愪氦-瀛樺偍杩囩▼鐗�(閫傜敤鍚屼竴鍙版湇鍔″櫒锛屽悓涓�涓暟鎹簱)]
+ public static ToMessage ProductInHouseOrderSpSeave(InReptModel data, User us)
+ {
+ var sql = "";
var dynamicParams = new DynamicParameters();
try
{
diff --git a/VueWebCoreApi/Models/InventoryModel/StorageRecord.cs b/VueWebCoreApi/Models/InventoryModel/StorageRecord.cs
new file mode 100644
index 0000000..948dcf1
--- /dev/null
+++ b/VueWebCoreApi/Models/InventoryModel/StorageRecord.cs
@@ -0,0 +1,55 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Threading.Tasks;
+
+namespace VueWebCoreApi.Models.InventoryModel
+{
+ public class StorageRecord
+ {
+ /// <summary>
+ /// 鍏ュ簱鍗曞彿
+ /// </summary>
+ public string hbillno { get; set; }
+ /// <summary>
+ /// 閿�鍞崟鍙�
+ /// </summary>
+ public string salecode { get; set; }
+ /// <summary>
+ /// 璁㈠崟鍙�
+ /// </summary>
+ public string mo_no { get; set; }
+ /// <summary>
+ /// 宸ュ崟鍙�
+ /// </summary>
+ public string wocode { get; set; }
+ /// <summary>
+ /// 浜у搧缂栫爜
+ /// </summary>
+ public string partcode { get; set; }
+ /// <summary>
+ /// 鍏ュ簱鏁伴噺
+ /// </summary>
+ public string qty { get; set; }
+ /// <summary>
+ /// 杞﹂棿缂栫爜
+ /// </summary>
+ public string wkshop_code { get; set; }
+ /// <summary>
+ /// 浠撳簱缂栫爜
+ /// </summary>
+ public string stockcode { get; set; }
+ /// <summary>
+ /// 鏉$爜
+ /// </summary>
+ public string inbarcode { get; set; }
+ /// <summary>
+ /// 宸ュ簭缂栫爜
+ /// </summary>
+ public string step_code { get; set; }
+ /// <summary>
+ /// 鎶ュ伐绫诲瀷(B:鑷埗/S澶栧崗)
+ /// </summary>
+ public string style { get; set; }
+ }
+}
diff --git a/VueWebCoreApi/Tools/DapperHelper.cs b/VueWebCoreApi/Tools/DapperHelper.cs
index 694a514..5174424 100644
--- a/VueWebCoreApi/Tools/DapperHelper.cs
+++ b/VueWebCoreApi/Tools/DapperHelper.cs
@@ -519,7 +519,7 @@
{
try
{
- DataTable table = new DataTable();
+ //DataTable table = new DataTable();
//var data = conn.ExecuteReader(sql, parm);
var res = conn.ExecuteReader(sql, parm, commandType: CommandType.StoredProcedure);//sql 瀛樺偍杩囩▼
result = true;
@@ -648,7 +648,7 @@
using (IDbConnection conn = sqlConnection())
{
try
- {
+ {
tranction = conn.BeginTransaction();
for (int i = 0; i < sqlList.Count; i++)
{
--
Gitblit v1.9.3