From 9c2cf57d942f23a371bf1d47961d1d32a11f5f1e Mon Sep 17 00:00:00 2001
From: 王 垚 <1402714037@qq.com>
Date: 星期二, 26 七月 2022 10:08:19 +0800
Subject: [PATCH] nothing
---
WebAPI/Controllers/SCGL/日计划管理/JIT_DayPlanPlatFormBillController.cs | 854 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 850 insertions(+), 4 deletions(-)
diff --git "a/WebAPI/Controllers/SCGL/\346\227\245\350\256\241\345\210\222\347\256\241\347\220\206/JIT_DayPlanPlatFormBillController.cs" "b/WebAPI/Controllers/SCGL/\346\227\245\350\256\241\345\210\222\347\256\241\347\220\206/JIT_DayPlanPlatFormBillController.cs"
index 08618dc..b38c925 100644
--- "a/WebAPI/Controllers/SCGL/\346\227\245\350\256\241\345\210\222\347\256\241\347\220\206/JIT_DayPlanPlatFormBillController.cs"
+++ "b/WebAPI/Controllers/SCGL/\346\227\245\350\256\241\345\210\222\347\256\241\347\220\206/JIT_DayPlanPlatFormBillController.cs"
@@ -7,11 +7,13 @@
using WebAPI.Models;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
+using System.Diagnostics;
namespace WebAPI.Controllers.SCGL.鏃ヨ鍒掔鐞�
{
public class JIT_DayPlanPlatFormBillController : ApiController
{
+ List<PRD_Inventory> ListInventory;//搴撳瓨鏄庣粏
private json objJsonResult = new json();
public DataSet ds = new DataSet();
public WebServer webserver = new WebServer();
@@ -22,7 +24,7 @@
#region 鐢熶骇鏃ヨ鍒掑钩鍙� 鏌ヨ
[Route("JIT_DayPlanPlatFormBill/JIT_DayPlanPlatFormBillList")]
[HttpGet]
- public object JIT_DayPlanPlatFormBillList(string sWhere,string user)
+ public object JIT_DayPlanPlatFormBillList(string sWhere, string user)
{
try
{
@@ -38,8 +40,45 @@
omdelMian = JsonConvert.DeserializeObject<Sc_WorkBillSortBillMain>(sWhere);
- ds = oCN.RunProcReturn($"exec h_p_JIT_Sc_WorkBillSortBill_Query '{omdelMian.HPlanBeginDate}',{(omdelMian.HProdORGID==null?0: omdelMian.HProdORGID)},'{omdelMian.HSeOrderBillNo}'" +
+ ds = oCN.RunProcReturn($"exec h_p_JIT_Sc_WorkBillSortBill_Query '{omdelMian.HPlanBeginDate}',{(omdelMian.HProdORGID == null ? 0 : omdelMian.HProdORGID)},'{omdelMian.HSeOrderBillNo}'" +
$",'{omdelMian.HPlanEndDate.AddDays(1).AddSeconds(-1)}',{omdelMian.HMaterID},'{omdelMian.HICMOBillNo}',{omdelMian.HWorkShopID}", "h_p_JIT_Sc_WorkBillSortBill_Query");
+
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "Sucess锛�";
+ objJsonResult.data = ds.Tables[0];
+ return objJsonResult;
+ }
+ catch (Exception e)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "Exception锛�" + e.ToString();
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+
+ /// <summary>
+ /// 鏍规嵁ID鏌ヨ 榻愬鐘舵�� 鍜� 閿佸畾鐘舵��
+ /// </summary>
+ /// <param name="sWhere"></param>
+ /// <param name="user"></param>
+ /// <returns></returns>
+ [Route("JIT_DayPlanPlatFormBill/JIT_DayPlanPlatFormBillHinterIDList")]
+ [HttpGet]
+ public object JIT_DayPlanPlatFormBillHinterIDList(string sWhere,int num)
+ {
+ try
+ {
+ if (num == 1)
+ {
+ ds = oCN.RunProcReturn($"select isnull(DATEDIFF(DAY,GETDATE(),CONVERT(varchar(10),max(HMasterDate),20)),0) DayNum from Sc_WorkBillSortBillSub where HInterID in ({sWhere}) and HMasterDate>=CONVERT(varchar(10),GETDATE(),20) and HLockedSub=1", "Sc_WorkBillSortBillSub");
+ }
+ else if (num == 2)
+ {
+ ds = oCN.RunProcReturn($"select CONVERT(varchar(10),HMasterDate,20) HMasterDate,HComplete,HInterID from Sc_WorkBillSortBillSub where HInterID in ({sWhere}) and HMasterDate>=CONVERT(varchar(10),GETDATE(),20) and (HComplete='榻愬' or HComplete='鏈綈濂�') ", "Sc_WorkBillSortBillSub");
+ }
objJsonResult.code = "1";
objJsonResult.count = 1;
@@ -149,11 +188,11 @@
var HMainSourceInterID = list[i]["婧愬崟涓诲唴鐮�"].ToString();
var HMainSourceEntryID = list[i]["婧愬崟瀛愬唴鐮�"].ToString();
- if (HSourceID=="")
+ if (HSourceID == "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
- objJsonResult.Message = $"绗瑊i+1}琛岀敓浜ц祫婧愪笉鑳戒负绌�!";
+ objJsonResult.Message = $"绗瑊i + 1}琛岀敓浜ц祫婧愪笉鑳戒负绌�!";
objJsonResult.data = null;
return objJsonResult;
}
@@ -278,5 +317,812 @@
return objJsonResult;
}
#endregion
+
+ #region 鐢熶骇鏃ヨ鍒掑钩鍙� 榻愬鍒嗘瀽
+
+ #region 娓呭崟閰嶆枡鏂瑰紡
+ public class PRD_PPBOM
+ {
+
+ /// <summary>
+ /// 鏃ヨ鍒掑伐鍗旻ID
+ /// </summary>
+ public long HInterID { get; set; }
+ /// <summary>
+ /// 鏃ヨ鍒掓槑缁咶EntryID
+ /// </summary>
+ public long HEntryID { get; set; }
+ /// <summary>
+ /// 鐢熶骇鐢ㄦ枡娓呭崟鍗曞彿
+ /// </summary>
+ public string HBillNo { get; set; }
+ /// <summary>
+ /// 鐢熶骇璁㈠崟鍗曞彿
+ /// </summary>
+ public string HICMOBillNo { get; set; }
+ /// <summary>
+ /// 鐢熶骇璁㈠崟鍐呯爜
+ /// </summary>
+ public string HICMOInterID { get; set; }
+ /// <summary>
+ /// 鐖剁骇鐗╂枡ID
+ /// </summary>
+ public string FMaterialID { get; set; }
+ /// <summary>
+ /// 鐖剁骇鐗╂枡鏁伴噺
+ /// </summary>
+ public decimal FQty { get; set; }
+ /// <summary>
+ /// 瀛愰」鐗╂枡ID
+ /// </summary>
+ public string FMATERIALID2 { get; set; }
+ /// <summary>
+ /// 瀛愰」鐗╂枡鍚嶇О
+ /// </summary>
+ public string FNumber { get; set; }
+ /// <summary>
+ /// 闇�姹傛暟閲�
+ /// </summary>
+ public decimal FNeedQty { get; set; }
+ /// <summary>
+ /// 鍗虫椂搴撳瓨
+ /// </summary>
+ public decimal FBASEQTY { get; set; }
+
+ /// <summary>
+ /// 鐢熶骇璁㈠崟涓荤爜
+ /// </summary>
+ public string HICMOInterID_Sec { get; set; }
+ /// <summary>
+ /// 鐢熶骇璁㈠崟瀛愮爜
+ /// </summary>
+ public string HICMOEntryID_Sec { get; set; }
+
+ /// <summary>
+ /// 鏃ヨ鍒掓暟閲�
+ /// </summary>
+ public string HQty { get; set; }
+
+ /// <summary>
+ /// 鏃ヨ鍒掓棩鏈�
+ /// </summary>
+ public DateTime HMasterDate { get; set; }
+
+ /// <summary>
+ /// 璁㈠崟绛夌骇
+ /// </summary>
+ public string HOrderLev { get; set; }
+
+ /// <summary>
+ /// 搴撳瓨缁勭粐
+ /// </summary>
+ public string FStockOrgId { get; set; }
+ /// <summary>
+ /// 缁勭粐鍚嶇О
+ /// </summary>
+ public string OrgFnumber { get; set; }
+
+ /// <summary>
+ /// 鍗曚綅鐢ㄩ噺
+ /// </summary>
+ public decimal dwyl { get; set; }
+
+ /// <summary>
+ /// 棰勮娑堣�楃敤閲�
+ /// </summary>
+ public decimal PlanCount { get; set; }
+ /// <summary>
+ /// 鐗╂枡灞炴��
+ /// </summary>
+ public int FErpClsID { get; set; }
+
+ /// <summary>
+ /// 杞﹂棿
+ /// </summary>
+ public string HWorkShopID { get; set; }
+
+ /// <summary>
+ /// 杞﹂棿缂栫爜
+ /// </summary>
+ public string FHWorkShopNumber { get; set; }
+
+
+ }
+ #endregion
+
+ #region 鍗虫椂搴撳瓨
+ public class PRD_Inventory
+ {
+ /// <summary>
+ /// 鐗╂枡ID
+ /// </summary>
+ public string FMATERIALID { get; set; }
+ /// <summary>
+ /// 鐗╂枡缂栫爜
+ /// </summary>
+ public string FNumber { get; set; }
+ /// <summary>
+ /// 鍗虫椂搴撳瓨
+ /// </summary>
+ public decimal FBASEQTY { get; set; }
+
+ /// <summary>
+ /// 搴撳瓨缁勭粐
+ /// </summary>
+ public string FStockOrgId { get; set; }
+
+ /// <summary>
+ /// 搴撳瓨璐т富绫诲瀷
+ /// </summary>
+ public string FOwnerTypeId { get; set; }
+ /// <summary>
+ /// 搴撳瓨璐т富
+ /// </summary>
+ public string FOwnerId { get; set; }
+
+ /// <summary>
+ /// 璐т富缂栫爜
+ /// </summary>
+ public string FOwnerNumber { get; set; }
+
+ /// <summary>
+ /// 浠撳簱
+ /// </summary>
+ public string FSTOCKID { get; set; }
+
+ /// <summary>
+ /// 浠撳簱缂栫爜
+ /// </summary>
+ public string FStockNumber { get; set; }
+ }
+ #endregion
+
+ #region 杞﹂棿浠撳簱瀵圭収鍒楄〃
+ public class PRD_WorkHouseCompar
+ {
+ /// <summary>
+ /// 缁勭粐
+ /// </summary>
+ public string FORGID { get; set; }
+ /// <summary>
+ /// 杞﹂棿
+ /// </summary>
+ public string FWORKSHOPID { get; set; }
+ /// <summary>
+ /// 浠撳簱
+ /// </summary>
+ public string FSTOCKID { get; set; }
+ }
+ #endregion
+
+ #region 鏃ヨ鍒�+鐢熶骇璁㈠崟
+ public class DayPlanPickedModel
+ {
+ /// <summary>
+ /// 璁㈠崟鍏ュ簱鏁伴噺 鎸夌収鐢熶骇璁㈠崟鏄庣粏琛�
+ /// </summary>
+ public decimal FCXStockInQty { get; set; }
+ /// <summary>
+ /// 涓荤敓浜ц鍗曞瓙鍐呯爜
+ /// </summary>
+ public string FPRDMOENTYID { get; set; }
+ /// <summary>
+ /// 鐗╂枡鍗曚綅鐢ㄩ噺
+ /// </summary>
+ public decimal dwyl { get; set; }
+ /// <summary>
+ /// 宸查鏁伴噺
+ /// </summary>
+ public decimal FPickedQty { get; set; }
+ /// <summary>
+ /// 鍓╀綑鍙敤鏁伴噺
+ /// </summary>
+ public decimal FRemainPickedQty { get; set; }
+ /// <summary>
+ /// 鐗╂枡
+ /// </summary>
+ public string FMATERIALID { get; set; }
+
+ }
+ #endregion
+
+ #region 瀛樺偍涓存椂闇�瑕佹彃鍏ユ暟鎹�
+ public class CompleteAnalysisTempModel
+ {
+ /// <summary>
+ /// 涓荤敓浜ц鍗曚富鍐呯爜锛欶HMainICMOInterIDr
+ /// </summary>
+ public string FHMainICMOInterIDr { get; set; }
+ /// <summary>
+ /// 涓荤敓浜ц鍗曞瓙鍐呯爜锛欶HMainICMOEntryID
+ /// </summary>
+ public string FHMainICMOEntryID { get; set; }
+ /// <summary>
+ /// 鏃ヨ鍒掕鍗曚富鍐呯爜锛欶HICMOInterID
+ /// </summary>
+ public string FHICMOInterID { get; set; }
+ /// <summary>
+ /// 鏃ヨ鍒掕鍗曞瓙鍐呯爜锛欶HICMOEntryID
+ /// </summary>
+ public string FHICMOEntryID { get; set; }
+ /// <summary>
+ /// 瀛愪欢鐗╂枡锛欶HMaterID
+ /// </summary>
+ public string FHMaterID { get; set; }
+
+ /// <summary>
+ /// 搴撳瓨缁勭粐锛欶HStockOrgID
+ /// </summary>
+ public string FHStockOrgID { get; set; }
+
+ /// <summary>
+ ///鐢熶骇缁勭粐锛欶HPRDORGID
+ /// </summary>
+ public string FHPRDORGID { get; set; }
+
+ /// <summary>
+ /// 鐢熶骇璁㈠崟鍙凤細FPRDBillNo
+ /// </summary>
+ public string FPRDBillNo { get; set; }
+ /// <summary>
+ /// 鏍囪瘑
+ /// </summary>
+ public string FIdentificat { get; set; }
+ /// <summary>
+ /// 璐т富鍚嶇О锛欶OwnerName
+ /// </summary>
+ public string FOwnerName { get; set; }
+ /// <summary>
+ /// 璐т富缂栫爜锛欶OwnerId
+ /// </summary>
+ public string FOwnerId { get; set; }
+ /// <summary>
+ /// 璐т富绫诲瀷锛欶OwnerTypeId
+ /// </summary>
+ public string FOwnerTypeId { get; set; }
+ /// <summary>
+ /// 榻愬鐘舵��
+ /// </summary>
+ public string FComPlete { get; set; }
+ /// <summary>
+ /// 鏁伴噺
+ /// </summary>
+ public string FHUseQty { get; set; }
+ /// <summary>
+ /// 鍙婃椂搴撳瓨鏁伴噺锛欶HStockQty
+ /// </summary>
+ public decimal FHStockQty { get; set; }
+ /// <summary>
+ ///鍙敤鏁伴噺锛欶HLeftQty
+ /// </summary>
+ public decimal FHLeftQty { get; set; }
+
+ /// <summary>
+ /// 缂烘枡鏁伴噺
+ /// </summary>
+ public decimal FLackCount { get; set; }
+ /// <summary>
+ /// 鍗犵敤鏁伴噺
+ /// </summary>
+ public decimal FOccupyCount { get; set; }
+ /// <summary>
+ /// 鍗犵敤棰嗘枡鏁伴噺
+ /// </summary>
+ public decimal FOccupyPickedCount { get; set; }
+
+ /// <summary>
+ /// 鍗曚綅鐢ㄩ噺锛欶UnitDosage
+ /// </summary>
+ public decimal FUnitDosage { get; set; }
+ /// <summary>
+ /// 璁″垝鎬绘暟閲忥細FSumPlanCount
+ /// </summary>
+ public decimal FSumPlanCount { get; set; }
+ /// <summary>
+ /// 榻愬鏁伴噺锛欶CompleteCount q
+ /// </summary>
+ public decimal FCompleteCount { get; set; }
+ public decimal FCompleteCount1 { get; set; }
+ /// <summary>
+ /// 鏃ヨ鍒掓棩鏈�
+ /// </summary>
+ public DateTime FPlanDate { get; set; }
+ //鐗╂枡绫诲瀷
+ public int FErpClsID { get; set; }
+ //浠撳簱
+ public string FStock { get; set; }
+ //杞﹂棿
+ public string FWorkShop { get; set; }
+
+ }
+ #endregion
+
+ [Route("JIT_DayPlanPlatFormBill/JIT_CompleteSetAnalysis")]
+ [HttpGet]
+ public object JIT_CompleteSetAnalysis(string sWhere, string user)
+ {
+ try
+ {
+ oCN.BeginTran();
+ Stopwatch sw = new Stopwatch();
+ omdelMian = JsonConvert.DeserializeObject<Sc_WorkBillSortBillMain>(sWhere);
+ string sql = $"exec JIT_qtfx {omdelMian.HProdORGID},{omdelMian.HWorkShopID},'{user}' ";
+ ds = oCN.RunProcReturn(sql, "JIT_qtfx");
+ LogService.Write("榻愬鍒嗘瀽sql:" + sql);
+ List<PRD_PPBOM> BomList = new List<PRD_PPBOM>();
+ DataTable resulTable = ds.Tables[0];
+ if (resulTable.Rows[0][0].ToString().Contains("澶辫触"))
+ {
+ return resulTable.Rows[0][0].ToString();
+ }
+ else
+ {
+ BomList = ds.ToModelList<PRD_PPBOM>();
+ }
+
+ string fDayPlanFids = string.Empty;
+ string fDayPlanFEntryids = string.Empty;
+ if (BomList.Count == 0)
+ {
+ return "娌℃湁闇�瑕佽繘琛岄綈濂楀垎鏋愮殑鏁版嵁";
+ }
+ else
+ {
+ List<string> fidList = BomList.Select(x => x.HInterID.ToString()).Distinct().ToList();
+ List<string> fentryidList = BomList.Select(x => x.HEntryID.ToString()).Distinct().ToList();
+ fDayPlanFids = string.Join(",", fidList);
+ fDayPlanFEntryids = string.Join(",", fentryidList);
+ }
+ LogService.Write("鏃ヨ鍒掑伐鍗昳ds" + fDayPlanFids);
+
+ sw.Start();//寮�濮嬭鏃�
+
+ //鑾峰彇褰撳墠鍗虫椂搴撳瓨 搴撳瓨鏁伴噺+搴撳瓨缁勭粐+鐗╂枡+璐т富+浠撳簱
+ ds = oCN.RunProcReturn(@"
+select distinct isnull(a.FBASEQTY,0) FBASEQTY,b.FNumber,a.FOwnerTypeId,a.FOwnerId,c.FNUMBER as FOwnerNumber,a.FSTOCKID,d.FNUMBER as FStockNumber from
+(
+select distinct a.HProdORGID FStockOrgId,T2.FMATERIALID,FNumber from SC_WORKBILLSORTBILLMAIN a
+join SC_WORKBILLSORTBILLSub b on a.HInterID = b.HInterID
+join AIS20210811135644..T_PRD_PPBOM T1 on a.HICMOInterID_Sec = t1.FMoId and a.HICMOEntryID_Sec = t1.FMOENTRYID
+LEFT JOIN AIS20210811135644..T_PRD_PPBOMENTRY T2 on T1.FID = t2.FID
+join AIS20210811135644..T_BD_MATERIAL T3 on T2.FMATERIALID = T3.FMATERIALID
+) T1
+JOIN AIS20210811135644..T_BD_MATERIAL b on t1.FNUMBER = b.FNUMBER
+LEFT JOIN AIS20210811135644..T_STK_Inventory a on b.FMATERIALID = a.FMATERIALID
+LEFT join (select distinct fitemid,fformid,FNUMBER from AIS20210811135644..V_ITEMCLASS_OWNER) c on a.FOwnerTypeId = c.fformid and a.FOWNERID = c.fitemid
+join AIS20210811135644..t_BD_Stock d on a.FSTOCKID =d.FSTOCKID
+where a.FBASEQTY>0
+", "SC_WORKBILLSORTBILLMAIN");
+ ListInventory = ds.ToModelList<PRD_Inventory>();
+ //杞﹂棿 浠撳簱瀵圭収鍒楄〃
+ ds = oCN.RunProcReturn(@"
+SELECT DISTINCT T1.HOrgId FORGID,HWorkShopID FWORKSHOPID,HWHID FSTOCKID FROM Gy_WorkWarehouseBillMain T1
+JOIN Gy_WorkWarehouseBillMainSub T2 ON T1.HInterID=T2.HInterID
+", "Gy_WorkWarehouseBillMain");
+ List<PRD_WorkHouseCompar> pRD_WorkHouseCompar = ds.ToModelList<PRD_WorkHouseCompar>();
+ int i = 1;//鐢ㄤ簬杩涘害鏉$殑鍔犺浇
+ //鏃ヨ鍒�+鐢熶骇璁㈠崟瀛愯〃缂栫爜ID
+ var DatePlanList = BomList.GroupBy(p => new { p.HMasterDate, p.HICMOEntryID_Sec }).Select(x => new PRD_PPBOM { HMasterDate = x.Key.HMasterDate, HICMOEntryID_Sec = x.Key.HICMOEntryID_Sec }).ToList();
+ //鍙栧簲鍙戞暟閲� FMustQty 涓嶈鍙栧�奸渶姹傛暟閲廎NeedQty 棰嗘枡鏁版嵁
+ string LLsql = string.Format(@"
+select max(t1.FCXStockInQty)FCXStockInQty,FPRDMOENTYID,max(dwyl)dwyl,sum(FPickedQty)FPickedQty,sum(FRemainPickedQty)FRemainPickedQty,FMATERIALID from
+(
+select a.FCXStockInQty, FPRDMOENTYID,convert( decimal(18,2),FMustQty/FQty ) as dwyl,FPickedQty,T2.FMATERIALID,
+case when convert( decimal(18,2),(FPickedQty - a.FCXStockInQty * FMustQty/FQty))< 0 then 0
+else convert( decimal(18,2),(FPickedQty - a.FCXStockInQty * FMustQty/FQty)) end as FRemainPickedQty
+ from
+(
+select sum(HSourceStockInQty)FCXStockInQty,HICMOEntryID_Sec FPRDMOENTYID from SC_WORKBILLSORTBILLMAIN a
+--where a.HInterID IN ({0})
+group by HICMOEntryID_Sec
+) a
+join AIS20210811135644..T_PRD_PPBOM T1 on a.FPRDMOENTYID = t1.FMOENTRYID
+LEFT JOIN AIS20210811135644..T_PRD_PPBOMENTRY t2 on T1.FID = T2.FID
+LEFT JOIN AIS20210811135644..T_PRD_PPBOMENTRY_Q t3 on t2.FENTRYID = T3.FENTRYID
+LEFT JOIN AIS20210811135644..T_BD_MATERIAL T4 ON T2.FMATERIALID = T4.FMATERIALID
+) t1
+group by FPRDMOENTYID,FMATERIALID
+", fDayPlanFids);
+ List<DayPlanPickedModel> DayPlanPickedModel = new List<DayPlanPickedModel>();
+ ds = oCN.RunProcReturn(LLsql, "SC_WORKBILLSORTBILLMAIN");
+ DayPlanPickedModel = ds.ToModelList<DayPlanPickedModel>();
+ //CompleteAnalysisTempModel 鐢ㄤ簬瀛樺偍涓存椂闇�瑕佹彃鍏ユ暟鎹�
+ List<CompleteAnalysisTempModel> completeAnalysisTempModel = new List<CompleteAnalysisTempModel>();
+ //鍒涘缓瀛楀吀 鐢ㄤ簬鍌ㄥ瓨鐗╂枡 + 鍗犵敤鏁伴噺
+ Dictionary<string, decimal> occupyDic = new Dictionary<string, decimal>();
+ LogService.Write($"榻愬鍒嗘瀽锛屾暟鎹噯澶囬樁娈碉紝鐢ㄦ椂" + sw.Elapsed + "鎬昏鏁帮細" + BomList.Count);
+ LogService.Write($"榻愬鍒嗘瀽锛屾暟鎹噯澶囬樁娈碉紝鐢ㄦ椂" + sw.Elapsed + "鎬婚渶瑕佸惊鐜殑bom鏁伴噺锛�" + DatePlanList.Count);
+
+ //绗竴涓惊鐜� 鏃ヨ鍒掑伐鍗曟槑缁� 涓�澶�+涓�涓伐鍗� 涓�涓惊鐜�
+ foreach (var item in DatePlanList)
+ {
+ //鏃ヨ鍒掔敤鏂欐竻鍗曟槑缁� 姣忎竴澶╃殑瀹為檯鐢ㄦ枡鎯呭喌
+ var _BomList = BomList.Where(x => x.HMasterDate == item.HMasterDate && x.HICMOEntryID_Sec == item.HICMOEntryID_Sec).ToList();
+ //姣忎竴涓墿鏂欒繘琛屽簱瀛樿绠�
+ foreach (var _item in _BomList)
+ {
+ //杞﹂棿浠撳簱 瀵圭収琛� 姣忎釜鏃ヨ鍒掑悓灞炰竴涓溅闂� A,B
+ var _pRD_WorkHouseCompar = pRD_WorkHouseCompar.Where(c => c.FWORKSHOPID == _item.HWorkShopID).ToList();
+ decimal jskcQty = 0;//鐢ㄤ簬璁$畻
+ decimal jskcQty2 = 0;//鐢ㄤ簬璁$畻褰撴椂閭d釜璁$畻鑺傜偣鐨勫嵆鏃跺簱瀛�
+ //璁$畻褰撳墠杩欏嚑涓粨搴撴�荤殑搴撳瓨閲�
+ if (_pRD_WorkHouseCompar.Count > 0)
+ {
+ foreach (var _WorkHouse in _pRD_WorkHouseCompar)
+ {
+ //搴撳瓨鏁版嵁鍖归厤
+ List<PRD_Inventory> _ListInventory = ListInventory.Where(c => c.FNumber == _item.FNumber && c.FBASEQTY > 0 && c.FSTOCKID == _WorkHouse.FSTOCKID).ToList();
+ if (_ListInventory.Count > 0)
+ {
+ foreach (var Inventory in _ListInventory)
+ {
+ jskcQty += Inventory.FBASEQTY;
+ }
+ }
+ }
+ }
+ //鎵惧嚭鐗╂枡琚叾瀹冭鍗曞崰鐢ㄦ暟閲�
+ decimal occupyMaterial = 0;
+ if (occupyDic.ContainsKey(_item.HWorkShopID + _item.FMATERIALID2))
+ {
+ occupyMaterial = occupyDic[_item.HWorkShopID + _item.FMATERIALID2];
+ }
+ //铏氭嫙鏃ヨ鍒掔敤鏂欐竻鍗� 闇�姹傛暟閲�
+ decimal planNeed = _item.PlanCount; //涓嶅弬涓庤绠� 鐢ㄤ簬璁板綍
+ decimal need = _item.PlanCount;//鍙備笌璁$畻
+ decimal FOccupyPickedCount = 0;//鍗犵敤棰嗘枡鍗曟暟閲�
+ //鎵惧埌棰嗙敤鏁伴噺
+ var _DayPlanPickedModel = DayPlanPickedModel.Where(c => c.FPRDMOENTYID == _item.HICMOEntryID_Sec && c.FMATERIALID == _item.FMATERIALID2).FirstOrDefault();
+ if (_DayPlanPickedModel.FRemainPickedQty >= need)
+ {
+ //棰嗘枡鏁伴噺婊¤冻浜嗗綋鍓嶈繖涓渶姹傞噺 鐩存帴榻愬 涓嶉渶瑕佸幓鍗犵敤浠撳簱
+ completeAnalysisTempModel.Add(new CompleteAnalysisTempModel
+ {
+ FHMainICMOInterIDr = _item.HICMOInterID_Sec,
+ FHMainICMOEntryID = _item.HICMOEntryID_Sec,
+ FHICMOInterID = _item.HInterID.ToString(),
+ FHICMOEntryID = _item.HEntryID.ToString(),
+ FHMaterID = _item.FMATERIALID2,
+ FErpClsID = _item.FErpClsID,
+ FHStockOrgID = _item.FStockOrgId,
+ FHPRDORGID = _item.FStockOrgId,
+ FPRDBillNo = _item.HICMOBillNo,
+ FOwnerTypeId = "",
+ FUnitDosage = _item.dwyl,//鍗曚綅鐢ㄩ噺
+ FSumPlanCount = planNeed,//璁″垝鎬绘暟閲�
+ FCompleteCount1 = planNeed, //榻愬鏁伴噺
+ FLackCount = 0,//缂烘枡鏁伴噺
+ FHStockQty = jskcQty2,//鍗虫椂搴撳瓨
+ FHLeftQty = jskcQty,//鍙敤鏁伴噺
+ FOccupyCount = occupyMaterial,//鍗犵敤鏁伴噺
+ FOccupyPickedCount = planNeed,//鍗犵敤棰嗘枡鏁伴噺
+ FComPlete = "榻愬",
+ FPlanDate = item.HMasterDate, // 鏃ヨ鍒掓棩鏈�
+ FWorkShop = _item.HWorkShopID //杞﹂棿
+ });
+ //鎵i櫎鍓╀綑鍙敤棰嗘枡鏁伴噺
+ _DayPlanPickedModel.FRemainPickedQty -= need;
+ //寰幆涓嬩竴涓墿鏂�
+ continue;
+ }
+ else
+ {
+ need -= _DayPlanPickedModel.FRemainPickedQty; //鍓╀綑闇�姹傛暟閲�
+ FOccupyPickedCount = _DayPlanPickedModel.FRemainPickedQty;
+ _DayPlanPickedModel.FRemainPickedQty = 0;
+ }
+ if (_pRD_WorkHouseCompar.Count > 0)
+ {
+ //缂烘枡鏁伴噺 闇�姹傛暟閲� - 瀹為檯搴撳瓨 >0 ? 涓�涓墿鏂欎笉绠″崰鐢ㄥ灏戞潯 搴撳瓨+璐т富 鏁版嵁 缂烘枡鏁伴噺鏄悓涓�涓暟閲�
+ decimal _fLackCount = need > jskcQty ? (need - jskcQty) : 0;
+ //LogHelper.Info("缁勭粐锛�" + _item.FStockOrgId + " ,鍙婃椂搴撳瓨" + jskcQty);
+ //鎬诲簱瀛樹负0浜� 鐩存帴缁欏嚭 缂烘枡鏁伴噺
+ if (jskcQty == 0)
+ {
+ completeAnalysisTempModel.Add(new CompleteAnalysisTempModel
+ {
+ FHMainICMOInterIDr = _item.HICMOInterID_Sec,
+ FHMainICMOEntryID = _item.HICMOEntryID_Sec,
+ FHICMOInterID = _item.HInterID.ToString(),
+ FHICMOEntryID = _item.HEntryID.ToString(),
+ FHMaterID = _item.FMATERIALID2,
+ FErpClsID = _item.FErpClsID,
+ FHStockOrgID = _item.FStockOrgId,
+ FHPRDORGID = _item.FStockOrgId,
+ FPRDBillNo = _item.HICMOBillNo,
+ FOwnerTypeId = "",
+ FUnitDosage = _item.dwyl,//鍗曚綅鐢ㄩ噺
+ FSumPlanCount = planNeed,//璁″垝鎬绘暟閲�
+ FCompleteCount1 = FOccupyPickedCount, //榻愬鏁伴噺
+ FLackCount = need,//缂烘枡鏁伴噺
+ FHStockQty = jskcQty2,//鍗虫椂搴撳瓨
+ FHLeftQty = jskcQty,//鍙敤鏁伴噺
+ FOccupyCount = occupyMaterial,//鍗犵敤鏁伴噺
+ FOccupyPickedCount = FOccupyPickedCount,//鍗犵敤棰嗘枡鏁伴噺
+ FComPlete = "鏈綈濂�",
+ FPlanDate = item.HMasterDate, // 鏃ヨ鍒掓棩鏈�
+ FWorkShop = _item.HWorkShopID //杞﹂棿
+ });
+ //缁堟璇ョ墿鏂欒绠� 杩涘叆涓嬩竴涓�
+ continue;
+ }
+ foreach (var WorkHouse in _pRD_WorkHouseCompar)
+ {
+ //搴撳瓨鏁版嵁鍖归厤
+ List<PRD_Inventory> _ListInventory = ListInventory.Where(c => c.FNumber == _item.FNumber && c.FBASEQTY > 0 && c.FSTOCKID == WorkHouse.FSTOCKID).ToList();
+ //闇�姹傛暟閲� 鍗犵敤瀹屽悗鍙互璺冲嚭杞﹂棿浠撳簱寰幆
+ if (need == 0)
+ break;
+ if (_ListInventory.Count > 0)
+ {
+ foreach (var Inventory in _ListInventory)
+ {
+ if (need == 0)
+ break;
+ //榻愬鏁伴噺
+ decimal fCompleteCount = need >= Inventory.FBASEQTY ? Inventory.FBASEQTY : need;
+ if (!occupyDic.ContainsKey(_item.HWorkShopID + _item.FMATERIALID2))
+ {
+ occupyDic.Add(_item.HWorkShopID + _item.FMATERIALID2, fCompleteCount);
+ }
+ else
+ {
+ occupyMaterial = occupyDic[_item.HWorkShopID + _item.FMATERIALID2];
+ occupyDic[_item.HWorkShopID + _item.FMATERIALID2] = occupyMaterial + fCompleteCount;
+ }
+ completeAnalysisTempModel.Add(new CompleteAnalysisTempModel
+ {
+ FHMainICMOInterIDr = _item.HICMOInterID_Sec,
+ FHMainICMOEntryID = _item.HICMOEntryID_Sec,
+ FHICMOInterID = _item.HInterID.ToString(),
+ FHICMOEntryID = _item.HEntryID.ToString(),
+ FHMaterID = _item.FMATERIALID2,
+ FHStockOrgID = _item.FStockOrgId,
+ FHPRDORGID = _item.FStockOrgId,
+ FErpClsID = _item.FErpClsID,
+ FPRDBillNo = _item.HICMOBillNo,
+ FOwnerTypeId = Inventory.FOwnerTypeId,
+ FOwnerId = Inventory.FOwnerId,
+ FUnitDosage = _item.dwyl,//鍗曚綅鐢ㄩ噺
+ FSumPlanCount = planNeed,//璁″垝鎬绘暟閲�
+ FCompleteCount1 = fCompleteCount + FOccupyPickedCount, //榻愬鏁伴噺
+ FLackCount = _fLackCount,//缂烘枡鏁伴噺
+ FHStockQty = jskcQty2,//鍗虫椂搴撳瓨
+ FHLeftQty = jskcQty,//鍙敤鏁伴噺
+ FOccupyCount = occupyMaterial,//鍗犵敤鏁伴噺
+ FOccupyPickedCount = FOccupyPickedCount,//棰嗘枡鍗犵敤鏁伴噺
+ FComPlete = jskcQty >= need ? "榻愬" : "鏈綈濂�",
+ FPlanDate = item.HMasterDate, // 鏃ヨ鍒掓棩鏈�
+ FStock = Inventory.FSTOCKID,//浠撳簱
+ FWorkShop = _item.HWorkShopID //杞﹂棿
+ });
+ //鎵e噺鎬诲簱瀛樻暟閲�
+ jskcQty = jskcQty >= fCompleteCount ? jskcQty - fCompleteCount : 0;
+ //鍓╀綑鏃ヨ鍒掗渶姹傛暟閲�
+ need = need >= Inventory.FBASEQTY ? need - Inventory.FBASEQTY : 0;
+ //鎵e噺娑堣�楀簱瀛�
+ Inventory.FBASEQTY = Inventory.FBASEQTY - fCompleteCount;
+ }
+ }
+ }
+ }
+ //娌℃湁杞﹂棿浠撳簱鏁版嵁 鏃㈡病鏈夊彲鐢ㄥ簱瀛� 涓烘湭榻愬
+ else
+ {
+ if (occupyDic.ContainsKey(_item.HWorkShopID + _item.FMATERIALID2))
+ {
+ occupyMaterial = occupyDic[_item.HWorkShopID + _item.FMATERIALID2];
+ }
+ completeAnalysisTempModel.Add(new CompleteAnalysisTempModel
+ {
+ FHMainICMOInterIDr = _item.HICMOInterID_Sec,
+ FHMainICMOEntryID = _item.HICMOEntryID_Sec,
+ FHICMOInterID = _item.HInterID.ToString(),
+ FHICMOEntryID = _item.HEntryID.ToString(),
+ FHMaterID = _item.FMATERIALID2,
+ FErpClsID = _item.FErpClsID,
+ FHStockOrgID = _item.FStockOrgId,
+ FHPRDORGID = _item.FStockOrgId,
+ FPRDBillNo = _item.HICMOBillNo,
+ FOwnerTypeId = "",
+ FUnitDosage = _item.dwyl,//鍗曚綅鐢ㄩ噺
+ FSumPlanCount = planNeed,//璁″垝鎬绘暟閲�
+ FCompleteCount1 = planNeed - need, //榻愬鏁伴噺
+ FLackCount = need,//缂烘枡鏁伴噺
+ FHStockQty = jskcQty2,//鍗虫椂搴撳瓨
+ FHLeftQty = jskcQty,//鍙敤鏁伴噺
+ FOccupyCount = occupyMaterial,//鍗犵敤鏁伴噺
+ FOccupyPickedCount = FOccupyPickedCount,//鍗犵敤棰嗘枡鏁伴噺
+ FComPlete = "鏈綈濂�",
+ FPlanDate = item.HMasterDate, // 鏃ヨ鍒掓棩鏈�
+ FWorkShop = _item.HWorkShopID //杞﹂棿
+ });
+ }
+ }
+ //Thread.Sleep(6000);
+ i++;
+ }
+ LogService.Write($"榻愬鍒嗘瀽锛屾暟鎹噯澶囧畬鎴愶紝淇濆瓨鍒癕odel瀹炰綋锛屾�昏鏁帮細{completeAnalysisTempModel.Count}锛岃�楁椂锛�" + sw.Elapsed);
+ List<string> sqlList = new List<string>();
+ DataTable insertDT = new DataTable();
+ insertDT.TableName = "JIT_MOMaterReadysBill";
+ insertDT.Columns.Add("FID", typeof(long));
+ insertDT.Columns.Add("FDOCUMENTSTATUS", typeof(string));
+ insertDT.Columns.Add("FHMAINICMOINTERIDR", typeof(long));
+ insertDT.Columns.Add("FHMAINICMOENTRYID", typeof(long));
+ insertDT.Columns.Add("FHICMOINTERID", typeof(long));
+ insertDT.Columns.Add("FHICMOENTRYID", typeof(long));
+ insertDT.Columns.Add("FHMATERID", typeof(long));
+ insertDT.Columns.Add("FHSTOCKORGID", typeof(long));
+ insertDT.Columns.Add("FHSTOCKQTY", typeof(decimal));
+ insertDT.Columns.Add("FHLEFTQTY", typeof(decimal));
+ insertDT.Columns.Add("FHPRDORGID", typeof(long));
+ insertDT.Columns.Add("FUNITDOSAGE", typeof(decimal));
+ insertDT.Columns.Add("FSUMPLANCOUNT", typeof(decimal));
+ insertDT.Columns.Add("FPRDBILLNO", typeof(string));
+ insertDT.Columns.Add("FOWNERID", typeof(long));
+ insertDT.Columns.Add("FOWNERTYPEID", typeof(string));
+ insertDT.Columns.Add("FPLANDATE", typeof(DateTime));
+ insertDT.Columns.Add("FCOMPLETE", typeof(string));
+ insertDT.Columns.Add("FLACKCOUNT", typeof(decimal));
+ insertDT.Columns.Add("FOCCUPYCOUNT", typeof(decimal));
+ insertDT.Columns.Add("FCOMPLETECOUNT1", typeof(decimal));
+ insertDT.Columns.Add("FERPCLSID", typeof(string));
+ insertDT.Columns.Add("FWORKSHOPID", typeof(long));
+ insertDT.Columns.Add("FSTOCKID", typeof(long));
+ insertDT.Columns.Add("FOCCUPYPICKEDCOUNT", typeof(decimal));
+ int jdtmmm = 1;
+ ds = oCN.RunProcReturn("select max(HInterID)FID FROM JIT_MOMaterReadysBill", "JIT_MOMaterReadysBill");
+ int maxFid = int.Parse(ds.Tables[0].Rows[0][0].ToString() == "" ? "0" : ds.Tables[0].Rows[0][0].ToString());
+ foreach (var item in completeAnalysisTempModel)
+ {
+ DataRow dr = insertDT.NewRow();
+ dr["FID"] = maxFid + jdtmmm;
+ dr["FDOCUMENTSTATUS"] = "A";
+ dr["FHMAINICMOINTERIDR"] = item.FHMainICMOInterIDr;
+ dr["FHMAINICMOENTRYID"] = item.FHMainICMOEntryID;
+ dr["FHICMOINTERID"] = item.FHICMOInterID;
+ dr["FHICMOENTRYID"] = item.FHICMOEntryID;
+ dr["FHMATERID"] = item.FHMaterID;
+ dr["FHSTOCKORGID"] = item.FHStockOrgID;
+ dr["FHSTOCKQTY"] = item.FHStockQty;
+ dr["FHLEFTQTY"] = item.FHLeftQty;
+ dr["FHPRDORGID"] = item.FHPRDORGID;
+ dr["FUNITDOSAGE"] = item.FUnitDosage;
+ dr["FSUMPLANCOUNT"] = item.FSumPlanCount;
+ dr["FPRDBILLNO"] = item.FPRDBillNo;
+ dr["FOWNERID"] = item.FOwnerId == null ? "0" : item.FOwnerId;
+ dr["FOWNERTYPEID"] = item.FOwnerTypeId;
+ dr["FPLANDATE"] = item.FPlanDate.ToString("yyyy-MM-dd");
+ dr["FCOMPLETE"] = item.FComPlete;
+ dr["FLACKCOUNT"] = item.FLackCount;
+ dr["FOCCUPYCOUNT"] = item.FOccupyCount;
+ dr["FCOMPLETECOUNT1"] = item.FCompleteCount1;
+ dr["FERPCLSID"] = item.FErpClsID;
+ dr["FWORKSHOPID"] = item.FWorkShop == null ? "0" : item.FWorkShop;
+ dr["FSTOCKID"] = item.FStock == null ? "0" : item.FStock;
+ dr["FOCCUPYPICKEDCOUNT"] = item.FOccupyPickedCount;
+ insertDT.Rows.Add(dr);
+ jdtmmm++;
+ }
+
+ insertDT.EndLoadData(); // 鐏屽叆鏁版嵁缁撴潫
+ //鎻掑叆涔嬪墠鎵ц涓嬫竻绌鸿鍙�(娴嬭瘯鏄惁鑳藉闃叉閲嶅鐢熸垚)
+ string deletesql = $"delete from JIT_MOMaterReadysBill where HICMOInterID in ({fDayPlanFids}) ";
+ oCN.RunProc(deletesql);
+ // 鎵归噺鎻掑叆鍒版暟鎹簱
+ foreach (DataRow item in insertDT.Rows)
+ {
+ oCN.RunProc("insert into JIT_MOMaterReadysBill(HInterID,HDocumentStatus,HMainICMOInterID,HMainICMOEntryID,HICMOInterID" +
+ ", HICMOEntryID, HMaterID, HStockORGID, HStockQty, HLeftQty" +
+ ", HProdORGID, HUnitDosage, HSumPlanQty, HICMOBillNo, HOwnerID" +
+ ", HOwnerTypeID, HPlanDate, HComplete, HLackQty, HOccupyQty" +
+ ", HCompleteQty1, HErpClsID, HWorkShopID, HWHID, HOccupyPickedQTY)values" +
+ $"({item["FID"].ToString()}, 1, {item["FHMAINICMOINTERIDR"].ToString()}, {item["FHMAINICMOENTRYID"].ToString()}, {item["FHICMOINTERID"].ToString()}" +
+ $", {item["FHICMOENTRYID"].ToString()}, {item["FHMATERID"].ToString()}, {item["FHSTOCKORGID"].ToString()}, {item["FHSTOCKQTY"].ToString()}, {item["FHLEFTQTY"].ToString()}" +
+ $" , {item["FHPRDORGID"].ToString()}, {item["FUNITDOSAGE"].ToString()}, {item["FSUMPLANCOUNT"].ToString()}, '{item["FPRDBILLNO"].ToString()}', {item["FOWNERID"].ToString()}" +
+ $", '{item["FOWNERTYPEID"].ToString()}', '{item["FPLANDATE"].ToString()}','{item["FCOMPLETE"].ToString()}', {item["FLACKCOUNT"].ToString()}, {item["FOCCUPYCOUNT"].ToString()}" +
+ $", {item["FCOMPLETECOUNT1"].ToString()}, {item["FERPCLSID"].ToString()}, {item["FWORKSHOPID"].ToString()}, {item["FSTOCKID"].ToString()}, {item["FOCCUPYPICKEDCOUNT"].ToString()})");
+ }
+ LogService.Write("鎵归噺鎻掑叆鍒版暟鎹簱鐢ㄦ椂锛�" + sw.Elapsed);
+ //鎵ц瀹屾垚鍚� 鏇存柊鏃ヨ鍒掑伐鍗曠姸鎬�
+ string updatesql = string.Format(@"
+update Sc_WorkBillSortBillSub set HComplete = '鏈綈濂�' where HEntryID IN
+(select distinct HICMOEntryID from JIT_MOMaterReadysBill
+ where isnull(HComplete,'鏈綈濂�') ='鏈綈濂�'
+ and HICMOEntryID in ({0})
+ )", fDayPlanFEntryids);
+ //LogService.Write(Context, updatesql);
+ oCN.RunProc(updatesql);
+ updatesql = string.Format(@"
+update Sc_WorkBillSortBillSub set HComplete = '榻愬'
+where HEntryID IN ({0}) and HComplete <>'鏈綈濂�'
+", fDayPlanFEntryids);
+ //LogService.Write(updatesql);
+ oCN.RunProc(updatesql);
+ //閲婃斁榻愬鎿嶄綔 閬垮厤澶氫汉鍚屾椂杩涜榻愬鍒嗘瀽
+ oCN.RunProc($"update T_PRD_QTFX set FSTATUS = 0 where FPRDORGID ={omdelMian.HProdORGID} and FSTATUS = 1 ");
+ sw.Stop();//缁撴潫璁℃椂
+ LogService.Write("榻愬鍒嗘瀽杩愯鎬绘椂闀匡細" + sw.Elapsed);
+
+ oCN.Commit();
+
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "鎿嶄綔鎴愬姛";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ catch (Exception e)
+ {
+ oCN.RollBack();
+ LogService.Write("鎿嶄綔澶辫触锛�" + e.Message.ToString());
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "Exception锛�" + e.Message.ToString();
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+ #endregion
+
+ #region 鐢熶骇鏃ヨ鍒掑钩鍙� 閿佸畾
+ [Route("JIT_DayPlanPlatFormBill/JIT_DayPlanPlatFormBillHLockedDay")]
+ [HttpGet]
+ public object JIT_DayPlanPlatFormBillHLockedDay(string sWhere, int HLockedDay)
+ {
+ try
+ {
+ if (sWhere != null && sWhere != "")
+ {
+ oCN.RunProc("update Sc_WorkBillSortBillSub set HLockedSub=1" +
+ $" where HInterID in ({sWhere}) and HMasterDate between DATEADD(day, -1, getdate()) and DATEADD(day,{(HLockedDay - 1)},getdate()) ");
+ }
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "Sucess锛�";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ catch (Exception e)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "Exception锛�" + e.ToString();
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+ #endregion
+
+ #region 鐢熶骇鏃ヨ鍒掑钩鍙� 瑙i攣
+ [Route("JIT_DayPlanPlatFormBill/JIT_DayPlanPlatFormBillHUnlockDay")]
+ [HttpGet]
+ public object JIT_DayPlanPlatFormBillHUnlockDay(string sWhere, int HLockedDay)
+ {
+ try
+ {
+ if (sWhere != null && sWhere != "")
+ {
+ oCN.RunProc("update Sc_WorkBillSortBillSub set HLockedSub=0" +
+ $" where HInterID in ({sWhere}) and HMasterDate between DATEADD(day, -1, getdate()) and DATEADD(day,{(HLockedDay - 1)},getdate()) ");
+ }
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "Sucess锛�";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ catch (Exception e)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "Exception锛�" + e.ToString();
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+ #endregion
+
}
}
\ No newline at end of file
--
Gitblit v1.9.1