| .gitignore | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| WebAPI/Config/kdapi.config | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| WebAPI/Controllers/BaseSet/Gy_MaterialController.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| WebAPI/Controllers/MJGL/Sc_MouldProdInBillController.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| WebAPI/Controllers/MateOutController.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| WebAPI/Controllers/SCGL/日计划管理/DataHelper.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| WebAPI/Controllers/SCGL/日计划管理/JIT_DayPlanPlatFormBillController.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| WebAPI/Controllers/Sc_ProcessMangementController.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| WebAPI/Controllers/基础资料/基础资料/Gy_StockCheckItemBillController.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| WebAPI/Controllers/生产管理/报工台工序/Sc_MESBeginStepWorkBillController.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| WebAPI/InvokeHelper.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| WebAPI/WebAPI.csproj | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
.gitignore
@@ -131,3 +131,4 @@ /NETERPNoWin/obj/Debug/NETERPNoWin.csproj.AssemblyReference.cache /NETERPNoWin/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache /NETERPNoWin/obj/Debug/.NETFramework,Version=v4.0.AssemblyAttributes.cs /WebAPI WebAPI/Config/kdapi.config
@@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" ?> <configuration> <appSettings> <add key="DbId" value="5f9258a311401c"></add> <add key="DbId" value="6204a70eba35fc"></add> <add key="UserName" value="Administrator"></add> <add key="PassWord" value="qaz!@#123"></add> <add key="KDApiUrl" value="http://localhost/K3Cloud/"></add> WebAPI/Controllers/BaseSet/Gy_MaterialController.cs
@@ -1217,7 +1217,7 @@ DataSet ds = new DataSet(); ds = oCN.RunProcReturn("select * from Gy_MouldFileMain where HInterID=" + HInterID, "Gy_MouldFileMain"); DataRow dr = ds.Tables[0].Rows[0]; string Num = dr["HBillNo"].ToString(); string Num = dr["HBarCode"].ToString(); string Num1 = Num.Substring(0,(Num.Length)-5); oCN.BeginTran(); for (int i = StarNum1; i <= EndNum1; i++) @@ -1246,6 +1246,7 @@ if (ds1.Tables[0].Rows.Count == 0 || ds1 == null) { long HItemID = DBUtility.ClsPub.CreateBillID("3899", ref DBUtility.ClsPub.sExeReturnInfo); //string HBillNo = DBUtility.ClsPub.CreateBillCode("3899", ref DBUtility.ClsPub.sExeReturnInfo, true); string sql = string.Format(@"Insert Into Gy_MouldFileMain " + "(HBillType,HBillSubType,HInterID,HBillNo,HDate" + ",HYear,HPeriod,HRemark,HMaker,HMakeDate,HBarCode" + WebAPI/Controllers/MJGL/Sc_MouldProdInBillController.cs
@@ -635,7 +635,16 @@ if (bResult) { string sql = $"exec h_p_Sc_MouldChangeFileStatus 'in','{oBill.omodel.HInterID.ToString()}' "; oCn.RunProc(sql); DataSet db=oCn.RunProcReturn(sql, "h_p_Sc_MouldChangeFileStatus"); if (db.Tables[0].Rows[0]["issuccess"].ToString()=="0") { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "å¨å ·ä½ç½®åæ¥å¤±è´¥ï¼"; //WebAPIController.Add_Log("éè´§å䏿¨", UserName, "çæéè´§å"); objJsonResult.data = 1; return objJsonResult; } objJsonResult.code = "0"; objJsonResult.count = 1; objJsonResult.Message = "ä¿åæåï¼"; WebAPI/Controllers/MateOutController.cs
@@ -1,5 +1,6 @@ using DBUtility; using Model; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using SQLHelper; using System; @@ -844,6 +845,55 @@ } } //å·æ°è¡¨ä½ è¿åæ¡ç åºåä¿¡æ¯ç½é¡µPDAç [Route("KF_ICInventoryByMaterID/GetBillEntry_TmpList_Pack1")] [HttpGet] public object GetBillEntry_TmpList_Pack1(string HBarCode, long sHWHID, long sHSPID, long HOWNERID, string sWhere) { try { SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); List<object> columnNameList = new List<object>(); DataSet ds = oCN.RunProcReturn("exec h_p_KF_ICInventoryByMaterIDList1 '" + HBarCode + "'," + sHWHID + "," + sHSPID+","+ HOWNERID+",'"+ sWhere+"'", "h_p_KF_ICInventoryByMaterIDList"); //æ·»å åå foreach (DataColumn col in ds.Tables[0].Columns) { Type dataType = col.DataType; string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//è·åå°DataColumnå对象çåå } if (ds == null || ds.Tables[0].Rows.Count <= 0) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没æè¿åä»»ä½è®°å½ï¼"; objJsonResult.data = null; return objJsonResult; //DBUtility.ClsPub.MessageBeep((int)DBUtility.ClsPub.BeepType.Warning); } else { objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "è·åä¿¡æ¯æåï¼"; objJsonResult.data = ds.Tables[0]; objJsonResult.list = columnNameList; return objJsonResult; } } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "没æè¿åä»»ä½è®°å½ï¼" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } [Route("MateOutBill/Delete_Json")] [HttpGet] public object Delete_Json(long HInterID, long HMaterID, long HAuxPropID, string HMTONo, long HSourceInterID, long HSourceEntryID, string sHBillType) WebAPI/Controllers/SCGL/Èռƻ®¹ÜÀí/DataHelper.cs
New file @@ -0,0 +1,171 @@ using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Reflection; using System.Text; using System.Threading; using System.Threading.Tasks; using WebAPI.Utility; namespace WebAPI.Controllers.SCGL.æ¥è®¡å管ç { public static class DataHelper { public static List<T> ToModelList<T>(this DataSet ds) where T : new() { try { List<T> list = new List<T>(); if (ds.Tables[0].Rows.Count > 0) { foreach (DataRow row in ds.Tables[0].Rows) { list.Add(row.Put(new T())); } } return list; } catch (Exception ex) { throw; } } public static List<T> ToModelList<T>(this DataTable dt) where T : new() { try { List<T> list = new List<T>(); if (dt.Rows.Count > 0) { foreach (DataRow row in dt.Rows) { list.Add(row.Put(new T())); } } return list; } catch (Exception ex) { throw; } } /// <summary> /// è¿å䏿¡æ°æ®çModel /// </summary> /// <typeparam name="T">Modelç±»å</typeparam> /// <param name="entity">Modelç±»å</param> /// <param name="ds"></param> /// <returns></returns> public static T ToModel<T>(DataSet ds) where T : new() { try { T m = new T(); if (ds.Tables[0].Rows.Count > 0) { m = ds.Tables[0].Rows[0].Put(new T()); } return m; } catch (Exception) { return default(T); //throw; } } public static T Put<T>(this DataRow row, T entity) where T : new() { if (entity == null) { entity = new T(); } Type type = typeof(T); PropertyInfo[] pi = type.GetProperties(); foreach (PropertyInfo item in pi) { int index = row.Table.Columns.IndexOf(item.Name); if (index != -1) { if (row[item.Name] != null && row[item.Name] != DBNull.Value) { if (item.PropertyType == typeof(DateTime)) { //å¦æå¯¹æ¥ææ ¼å¼æç¹æ®è¦æ± å¯ä»¥å¨è¿éè½¬æ¢ item.SetValue(entity, Convert.ToDateTime(row[item.Name].ToString()), null); } else { item.SetValue(entity, ChangeType(row[item.Name], item.PropertyType), null); } } } } return entity; } public static object ChangeType(object obj, Type conversionType) { return ChangeType(obj, conversionType, Thread.CurrentThread.CurrentCulture); } public static object ChangeType(object obj, Type conversionType, IFormatProvider provider) { #region Nullable Type nullableType = Nullable.GetUnderlyingType(conversionType); if (nullableType != null) { if (obj == null) { return null; } return Convert.ChangeType(obj, nullableType, provider); } #endregion if (typeof(System.Enum).IsAssignableFrom(conversionType)) { return Enum.Parse(conversionType, obj.ToString()); } return Convert.ChangeType(obj, conversionType, provider); } public static string ToListParam<T>(this List<T> list) { string str = string.Empty; foreach (var item in list) { str += $"'{item}',"; } str = str.TrimEnd(','); str = $"({str})"; return str; } public static string GetUpdateStr(string table, Dictionary<string, object> dic, string condition) { var strSet = string.Empty; foreach (var item in dic) { var type = Util.GetObjectType(item.Value); switch (type) { case "string": case "date": strSet += $" {item.Key}='{item.Value}' "; break; default: strSet += $" {item.Key}={item.Value} "; break; } } return $"update {table} set {strSet} where 1=1 {condition}"; } } } WebAPI/Controllers/SCGL/Èռƻ®¹ÜÀí/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> /// æ¥è®¡åå·¥åFID /// </summary> public long HInterID { get; set; } /// <summary> /// æ¥è®¡åæç»FEntryID /// </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> /// 主ç产订å主å ç ï¼FHMainICMOInterIDr /// </summary> public string FHMainICMOInterIDr { get; set; } /// <summary> /// 主ç产订ååå ç ï¼FHMainICMOEntryID /// </summary> public string FHMainICMOEntryID { get; set; } /// <summary> /// æ¥è®¡å订å主å ç ï¼FHICMOInterID /// </summary> public string FHICMOInterID { get; set; } /// <summary> /// æ¥è®¡å订ååå ç ï¼FHICMOEntryID /// </summary> public string FHICMOEntryID { get; set; } /// <summary> /// åä»¶ç©æï¼FHMaterID /// </summary> public string FHMaterID { get; set; } /// <summary> /// åºåç»ç»ï¼FHStockOrgID /// </summary> public string FHStockOrgID { get; set; } /// <summary> ///ç产ç»ç»ï¼FHPRDORGID /// </summary> public string FHPRDORGID { get; set; } /// <summary> /// ç产订åå·ï¼FPRDBillNo /// </summary> public string FPRDBillNo { get; set; } /// <summary> /// æ è¯ /// </summary> public string FIdentificat { get; set; } /// <summary> /// 货主åç§°ï¼FOwnerName /// </summary> public string FOwnerName { get; set; } /// <summary> /// 货主ç¼ç ï¼FOwnerId /// </summary> public string FOwnerId { get; set; } /// <summary> /// 货主类åï¼FOwnerTypeId /// </summary> public string FOwnerTypeId { get; set; } /// <summary> /// é½å¥ç¶æ /// </summary> public string FComPlete { get; set; } /// <summary> /// æ°é /// </summary> public string FHUseQty { get; set; } /// <summary> /// åæ¶åºåæ°éï¼FHStockQty /// </summary> public decimal FHStockQty { get; set; } /// <summary> ///å¯ç¨æ°éï¼FHLeftQty /// </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> /// åä½ç¨éï¼FUnitDosage /// </summary> public decimal FUnitDosage { get; set; } /// <summary> /// è®¡åæ»æ°éï¼FSumPlanCount /// </summary> public decimal FSumPlanCount { get; set; } /// <summary> /// é½å¥æ°éï¼FCompleteCount 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("æ¥è®¡åå·¥åids" + 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 ä¸è¦åå¼éæ±æ°éFNeedQty é¢ææ°æ® 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;//ç¨äºè®¡ç®å½æ¶é£ä¸ªè®¡ç®èç¹ç峿¶åºå //计ç®å½åè¿å 个ä»åºæ»çåºåé 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 //è½¦é´ }); //æ£é¤å©ä½å¯ç¨é¢ææ°é _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 //è½¦é´ }); //æ£åæ»åºåæ°é jskcQty = jskcQty >= fCompleteCount ? jskcQty - fCompleteCount : 0; //å©ä½æ¥è®¡åéæ±æ°é need = need >= Inventory.FBASEQTY ? need - Inventory.FBASEQTY : 0; //æ£åæ¶èåºå 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($"é½å¥åæï¼æ°æ®åå¤å®æï¼ä¿åå°Modelå®ä½ï¼æ»è¡æ°ï¼{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 ç产æ¥è®¡åå¹³å° è§£é [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 } } WebAPI/Controllers/Sc_ProcessMangementController.cs
@@ -19,7 +19,7 @@ private json objJsonResult = new json(); SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); DataSet ds; @@ -136,7 +136,7 @@ objJsonResult.Message = "Sucessï¼"; objJsonResult.data = ds.Tables[0]; return objJsonResult; } catch (Exception e) { @@ -216,14 +216,21 @@ DataRow dr1 = ds1.Tables[0].Rows[0]; JObject model = new JObject(); model.Add("FBillType", "50fa7c2eda7947b89fab5431bf25d48e"); //åæ®ç±»å1 model.Add("FBillType", new JObject() { ["Fnumber"] = "SCHBD01_SYS" }); //åæ®ç±»åçäº§æ±æ¥âSCHBD02_SYSâ å ¥åºæ±æ¥SCHBD01_SYS model.Add("FPrdOrgId", new JObject() { ["Fnumber"] = dr1["FPrdOrgNUMBER"].ToString() }); //ç产ç»ç»1 model.Add("FDate", DateTime.Now.ToString("yyyy-MM-dd")); //åæ®æ¥æ1 JArray Fentity = new JArray(); foreach (DataRow item in ds.Tables[0].Rows) { JObject FentityModel = new JObject(); FentityModel.Add("FReportType", "103852");//çäº§æ±æ¥ç±»å FentityModel.Add("FReportType", new JObject() { ["Fnumber"] = "1" });//çäº§æ±æ¥ç±»å FentityModel.Add("FSrcBillType", "PRD_MO");// æºåç±»å FentityModel.Add("FProductType", "1");// 产åç±»å FentityModel.Add("FSrcBillNo", item["ä»»å¡å"].ToString());// æºåç¼å· FentityModel.Add("FSrcInterId", dr1["FMOID"].ToString());// æºåå ç FentityModel.Add("FSrcEntryId", dr1["FMOENTRYID"].ToString());// æºååå½å ç ã FentityModel.Add("FSRCENTRYSEQ", dr1["FMOENTRYSEQ"].ToString());// æºååå½è¡å· FentityModel.Add("FUNITID", new JObject() { ["Fnumber"] = dr1["FUNITNUMBER"].ToString() });//åä½ FentityModel.Add("FTimeUnitId", "1");//æ¶é´åä½ FentityModel.Add("FWorkshipId", new JObject() { ["Fnumber"] = dr1["FWorkShopNUM"].ToString() }); // çäº§è½¦é´ FentityModel.Add("FStandHourUnitId", "3600"); // å使 åå·¥æ¶åä½ @@ -231,25 +238,48 @@ FentityModel.Add("FMoEntrySeq", dr1["HICMOEntryID"].ToString());//ç产订åè¡å· FentityModel.Add("FMoId", dr1["HICMOInterID"].ToString());//ç产订åå ç FentityModel.Add("FFinishQty", item["æ¥æ¶æ°é"].ToString());//宿æ°é1 FentityModel.Add("FQuaQty", item["åæ ¼æ°é"].ToString());//åæ ¼æ°é1 FentityModel.Add("FStockInOrgId ", OrganizationNUM);// å ¥åºç»ç» FentityModel.Add("FQuaQty", item["åæ ¼æ°é"].ToString());//åæ ¼æ°é1FFailQty FentityModel.Add("FFailQty", item["ä¸è¯æ°é"].ToString());//ä¸åæ ¼æ°é FentityModel.Add("FStockInOrgId ", new JObject() { ["Fnumber"] = OrganizationNUM });// å ¥åºç»ç» FentityModel.Add("FStockId", new JObject() { ["Fnumber"] = dr1["FStockNUM"].ToString() }); // ä»åº FentityModel.Add("FSrcBillType", "PRD_MO");// æºåç±»å FentityModel.Add("FSrcBillNo", item["ä»»å¡å"].ToString());// æºåç¼å· FentityModel.Add("FSrcInterId", dr1["HICMOInterID"].ToString());// æºåå ç FentityModel.Add("FSrcEntryId", dr1["HICMOEntryID"].ToString());// æºååå½å ç FentityModel.Add("FMOID", dr1["FMOID"].ToString());// FentityModel.Add("FMOBILLNO", dr1["FMOBILLNO"].ToString());// FentityModel.Add("FMOENTRYID", dr1["FMOENTRYID"].ToString());// FentityModel.Add("FMOENTRYSEQ", dr1["FMOENTRYSEQ"].ToString());// FentityModel.Add("FOwnerTypeId", dr1["FOWNERTYPEID"].ToString()); //货主类åï¼FOwnerTypeId(å¿ å¡«é¡¹) FentityModel.Add("FOwnerId", new JObject() { ["Fnumber"] = dr1["FOwnerNumber"].ToString() }); //货主ï¼FOwnerId(å¿ å¡«é¡¹) FentityModel.Add("FBomId", new JObject() { ["Fnumber"] = dr1["FBOMNUM"].ToString() }); //BOMçæ¬ï¼FBomId(å¿ å¡«é¡¹) FentityModel.Add("FCostRate", dr1["FCostRate"].ToString());// ææ¬æé FentityModel.Add("FISBACKFLUSH", dr1["FISBACKFLUSH"].ToString() == "1" ? true : false);// åå²é¢æ //FFLOWID FFLOWLINEID FRULEID FSTABLENAME //f6e6eec3 - 5267 - 4f02 - 8593 - b633da508a72 3 PRD_MO2MORPT T_PRD_MOENTRY //ä¸å¡æµç¨å¾ï¼FEntity_Link_FFlowId //æ¨è¿è·¯çº¿ï¼FEntity_Link_FFlowLineId //转æ¢è§åï¼FEntity_Link_FRuleId //æºå表å ç ï¼FEntity_Link_FSTableId //æºå表ï¼FEntity_Link_FSTableName //æºåå ç ï¼FEntity_Link_FSBillId //æºååå½å ç ï¼FEntity_Link_FSId //åå§æºå¸¦éï¼FEntity_Link_FBaseQuaQtyOld //ä¿®æ¹æºå¸¦éï¼FEntity_Link_FBaseQuaQty //JArray Fentity2 = new JArray(); //JObject FentityModel2 = new JObject(); //FentityModel2.Add("FDetailEntity_Link_FRULEID", "PUR_PurchaseOrder-PUR_ReceiveBill"); //FentityModel2.Add("FDetailEntity_Link_FSTableName", "t_PUR_POOrderEntry"); //FentityModel2.Add("FDetailEntity_Link_FSBillId", item["FID"].ToString()); //FentityModel2.Add("FDetailEntity_Link_FSId", item["FEntryID"].ToString()); //Fentity2.Add(FentityModel2); //FentityModel.Add("FDetailEntity_Link", Fentity2); //Fentity.Add(FentityModel); JArray Fentity2 = new JArray(); JObject FentityModel2 = new JObject(); FentityModel2.Add("FEntity_Link_FFlowId", "f6e6eec3-5267-4f02-8593-b633da508a72"); FentityModel2.Add("FEntity_Link_FFlowLineId", "PRD_MO2MORPT"); FentityModel2.Add("FEntity_Link_FRuleId", "3"); FentityModel2.Add("FEntity_Link_FSTableId", "0"); FentityModel2.Add("FEntity_Link_FSTableName", "T_PRD_MOENTRY"); FentityModel2.Add("FEntity_Link_FSBillId", dr1["FMOID"].ToString()); FentityModel2.Add("FEntity_Link_FSId", dr1["FMOENTRYID"].ToString()); FentityModel2.Add("FEntity_Link_FBaseQuaQtyOld", item["åæ ¼æ°é"].ToString()); FentityModel2.Add("FEntity_Link_FBaseQuaQty", item["åæ ¼æ°é"].ToString()); Fentity2.Add(FentityModel2); FentityModel.Add("FEntity_Link", Fentity2); FentityModel.Add("FBFLowId", new JObject() { ["FID"] = "f6e6eec3-5267-4f02-8593-b633da508a72" }); // Fentity.Add(FentityModel); } model.Add("FDetailEntity", Fentity); //æç»ä¿¡æ¯ model.Add("FEntity", Fentity); //æç»ä¿¡æ¯ JObject jsonRoot = new JObject() { ["Creator"] = "", @@ -261,14 +291,36 @@ //["IsAutoSubmitAndAudit"] = true,//èªå¨è°ç¨æäº¤åå®¡æ ¸åè½ ["Model"] = model }; string result = InvokeHelper.Submit("PRD_MORPT", JsonConvert.SerializeObject(jsonRoot)); //å¤æå®¡æ ¸æ¯å¦æå LogService.Write("jsonRoot:" + jsonRoot); string result = InvokeHelper.Save("PRD_MORPT", JsonConvert.SerializeObject(jsonRoot));//ä¿å //夿ä¿åæ¯å¦æå if (JObject.Parse(result)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE") { oCN.RollBack(); objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = $"å·¥åºæ±æ¥å ¥åºå忥éè¶äºå¤±è´¥ï¼åå·:{dr["åæ®å·"].ToString()}" + result; objJsonResult.data = null; return objJsonResult; } //æäº¤å®¡æ ¸ string result1 = string.Empty; string result2 = string.Empty; var fID = JObject.Parse(result)["Result"]["Id"].ToString(); var fBillNo = JObject.Parse(result)["Result"]["Number"].ToString(); var json = new { Ids = fID, }; result1 = InvokeHelper.Submit("PRD_MORPT", JsonConvert.SerializeObject(json));//æäº¤ //result2 = InvokeHelper.Audit("PRD_MORPT", JsonConvert.SerializeObject(json));//å®¡æ ¸ if (JObject.Parse(result1)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE") { oCN.RollBack(); objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = $"çäº§æ±æ¥ååå·ï¼{fBillNo}ï¼æäº¤å¤±è´¥" + result; objJsonResult.data = null; return objJsonResult; } @@ -298,7 +350,7 @@ /// </summary> [Route("Sc_ProcessMangement/MES_Sc_ProcessReportList_Json")] [HttpGet] public object MES_Sc_ProcessReportList_Json(string sWhere,string user) public object MES_Sc_ProcessReportList_Json(string sWhere, string user) { DataSet ds; try @@ -321,7 +373,7 @@ else { string sql1 = "select * from h_v_Sc_ProcessReportList where 1 = 1 "; string sql = sql1 + sWhere+ " order by hmainid desc"; string sql = sql1 + sWhere + " order by hmainid desc"; ds = oCN.RunProcReturn(sql, "h_v_Sc_ProcessReportList"); } } @@ -349,11 +401,11 @@ try { SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); if (HInterID<=0) if (HInterID <= 0) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "HInterIDå°äº0ï¼" ; objJsonResult.Message = "HInterIDå°äº0ï¼"; objJsonResult.data = null; return objJsonResult; } @@ -366,9 +418,9 @@ inner join Gy_Department s2 on s1.HDeptID=s2.HItemID and s1.HInterID=" + HInterID; ds = oCN.RunProcReturn(sql1, "Sc_ProcessReportMain"); } } catch (Exception e) { @@ -405,12 +457,12 @@ else { string sql1 =@"select [hmainid], [æ¥æ], [åæ®å·], [HDeptID], [é¨é¨ä»£ç ], [é¨é¨], [HMaterID], [ç©æä»£ç ], [ç©æåç§°], [è§æ ¼åå·], [HUnitID], [计éåä½ä»£ç ], [计éåä½], [HprocID], string sql1 = @"select [hmainid], [æ¥æ], [åæ®å·], [HDeptID], [é¨é¨ä»£ç ], [é¨é¨], [HMaterID], [ç©æä»£ç ], [ç©æåç§°], [è§æ ¼åå·], [HUnitID], [计éåä½ä»£ç ], [计éåä½], [HprocID], [å·¥åºä»£ç ], [å·¥åº], [HGroupID], [çç»ä»£ç ], [çç»åç§°], [HSourceID], [èµæºä»£ç ], [çäº§èµæº], [HWorkerID], [èå代ç ], [èå], [hsubid], [æ°é], [计åå¼å·¥æ¥æ], [计åå®å·¥æ¥æ], [计åå·¥æ¶], [表ä½å¤æ³¨], [HICMOInterID], [ç产任å¡åå·], [HSeOrderInterID], [éå®è®¢åå·], [è¡¨å¤´å¤æ³¨], [å¶å人], [å¶åæ¥æ], [å®¡æ ¸äºº], [å®¡æ ¸æ¥æ], [ä¿®æ¹äºº], [ä¿®æ¹æ¥æ], [å ³é人], [å ³éæ¥æ], [ä½åºäºº], [ä½åºæ¥æ], [æºå主å ç ], [æºååå ç ], [æºååå·], [æºåç±»å], [è¡å ³é人], [HBillType], [HQtyDecimal], [HPriceDecimal] from h_v_Sc_ProcessSendWorkList where hmainid=(select HSourceID from Sc_ProcessReportSub where HInterID="+HInterID+")"; where hmainid=(select HSourceID from Sc_ProcessReportSub where HInterID=" + HInterID + ")"; ds = oCN.RunProcReturn(sql1, "h_v_Sc_ProcessSendWorkList"); @@ -440,7 +492,7 @@ /// </summary> [Route("Sc_ProcessMangement/MES_Sc_ProcessPlanMain_Json")] [HttpGet] public object MES_Sc_ProcessPlanMain_Json(string sWhere,string user) public object MES_Sc_ProcessPlanMain_Json(string sWhere, string user) { DataSet ds; try @@ -462,7 +514,7 @@ else { string sql1 = "select * from h_v_Sc_ProcessPlanList where 1 = 1 "; string sql = sql1 + sWhere+ " order by hmainid desc "; string sql = sql1 + sWhere + " order by hmainid desc "; ds = oCN.RunProcReturn(sql, "h_v_Sc_ProcessPlanList"); } } @@ -542,7 +594,7 @@ ",HRemark,HInnerBillNo,HMaker,HMakeDate" + ") " + " values(" + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + BillType + "','" + BillType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HDate.ToShortDateString() + "','" + omodel.HBillNo + "'," + (omodel.HBillStatus=1) + "," + omodel.HCheckItemNowID.ToString() + "," + omodel.HCheckItemNextID.ToString() + ",'" + omodel.HDate.ToShortDateString() + "','" + omodel.HBillNo + "'," + (omodel.HBillStatus = 1) + "," + omodel.HCheckItemNowID.ToString() + "," + omodel.HCheckItemNextID.ToString() + "," + omodel.HICMOInterID.ToString() + ",'" + omodel.HICMOBillNo + "'," + omodel.HMaterID.ToString() + ",'" + omodel.HMaterNumber + "'," + omodel.HUnitID.ToString() + ",'" + omodel.HUnitNumber + "'," + omodel.HPlanQty.ToString() + ",'" + omodel.HPlanBeginDate.ToShortDateString() + "','" + omodel.HPlanEndDate.ToShortDateString() + "','" + omodel.HExplanation + "'" + ",'" + omodel.HRemark + "','" + omodel.HInnerBillNo + "','" + omodel.HMaker + "',getdate()" + @@ -577,7 +629,7 @@ " where HInterID=" + omodel.HInterID.ToString()); //å é¤å表 oCN.RunProc("Delete From Sc_ProcessPlanSub where HInterID = " + omodel.HInterID.ToString()+ " and hentryid="+ hentryid); oCN.RunProc("Delete From Sc_ProcessPlanSub where HInterID = " + omodel.HInterID.ToString() + " and hentryid=" + hentryid); } //ä¿åå表 objJsonResult = AddBillSub(msg3, hentryid); @@ -624,7 +676,7 @@ ",HBeginDayQty,HBeginFixQty,HFixWorkDays,HTrunWorkDays,HReadyTimes" + ",HReadyTime,HQueueTime,HMoveTime,HBatchNo" + ") values(" + omodel.HInterID.ToString() + "," +(hentryid==-1?i: hentryid) + ",'" + oSub.HBillNo + "'," + oSub.HProcNo.ToString() + "," + oSub.HProcID.ToString() + "," + oSub.HWorkingQty.ToString() + + omodel.HInterID.ToString() + "," + (hentryid == -1 ? i : hentryid) + ",'" + oSub.HBillNo + "'," + oSub.HProcNo.ToString() + "," + oSub.HProcID.ToString() + "," + oSub.HWorkingQty.ToString() + ",'" + oSub.HProcNumber + "','" + oSub.HWorkRemark + "'," + oSub.HCenterID.ToString() + "," + oSub.HDeptID.ToString() + ",'" + oSub.HDeptNumber + "'" + "," + oSub.HGroupID.ToString() + ",'" + oSub.HGroupNumber + "'," + oSub.HWorkerID.ToString() + ",'" + oSub.HWorkerNumber + "'," + oSub.HSourceID.ToString() + "," + oSub.HQty.ToString() + ",'" + oSub.HTimeUnit + "'," + oSub.HPlanWorkTimes.ToString() + ",'" + oSub.HPlanBeginDate.ToString() + "','" + oSub.HPlanEndDate.ToString() + "'" + @@ -733,7 +785,7 @@ { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "åæ®ä¸åå¨;åå :"+DBUtility.ClsPub.sExeReturnInfo; objJsonResult.Message = "åæ®ä¸åå¨;åå :" + DBUtility.ClsPub.sExeReturnInfo; objJsonResult.data = null; return objJsonResult; } @@ -749,7 +801,8 @@ objJsonResult.data = null; return objJsonResult; } else { else { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "å®¡æ ¸å¤±è´¥,åå :" + DBUtility.ClsPub.sExeReturnInfo; @@ -787,7 +840,7 @@ objJsonResult.data = null; return objJsonResult; } } //å®¡æ ¸ public bool CheckBill(Int64 lngBillKey, ref string sReturn) @@ -854,7 +907,7 @@ objJsonResult.data = null; return objJsonResult; } if (oBill.DeleteBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo)) { objJsonResult.code = "1"; @@ -892,7 +945,7 @@ /// <returns></returns> [Route("Sc_ProcessMangement/MES_Sc_ProcessSendWorkMain_Json")] [HttpGet] public object MES_Sc_ProcessSendWorkMain_Json(string sWhere,string user) public object MES_Sc_ProcessSendWorkMain_Json(string sWhere, string user) { DataSet ds; try @@ -915,7 +968,7 @@ else { string sql1 = "select * from h_v_Sc_ProcessSendWorkList where 1 = 1 "; string sql = sql1 + sWhere+ " order by hmainid desc "; string sql = sql1 + sWhere + " order by hmainid desc "; ds = oCN.RunProcReturn(sql, "h_v_Sc_ProcessSendWorkList"); } } @@ -937,7 +990,7 @@ /// <returns></returns> [Route("SaveProcessSendWork")] [HttpPost] public object SaveProcessSendWork([FromBody]JObject msg) public object SaveProcessSendWork([FromBody] JObject msg) { var _value = msg["msg"].ToString(); string msg1 = _value.ToString(); @@ -967,7 +1020,7 @@ msg2 = msg2.Replace("\\", ""); msg2 = msg2.Replace("\n", ""); lsmain = oListModels.getObjectByJson_SendWorkMain(msg2); foreach ( Model.ClsSc_ProcessSendWorkMain oItem in lsmain) foreach (Model.ClsSc_ProcessSendWorkMain oItem in lsmain) { UserName = oItem.HMaker; oItem.HMakeDate = DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd")); @@ -1034,7 +1087,7 @@ objJsonResult.data = 1; return objJsonResult; } if (Convert.ToInt32( sendworksub.HQty) > Convert.ToInt32( oItemSub.è®¡åæ°é)) if (Convert.ToInt32(sendworksub.HQty) > Convert.ToInt32(oItemSub.è®¡åæ°é)) { objJsonResult.code = "0"; objJsonResult.count = 0; @@ -1058,7 +1111,7 @@ sendworksub.HCloseType = false; sendworksub.HSourceBillType = oItemSub.HBillType; lss.Add(sendworksub);//å ææ°æ®åæ¾å°æ´¾å·¥åå表éåé } if (lss.Count > 0) @@ -1208,7 +1261,7 @@ sendworksub.HWorkerNumber = ""; //--æä½å·¥ä»£ç sendworksub.HWorkerID = 0; //--æä½å·¥ID sendworksub.HGroupNumber = ""; //çç»ä»£ç sendworksub.HGroupID =0; //--çç»ID sendworksub.HGroupID = 0; //--çç»ID sendworksub.HSourceNumber = ""; //--çäº§èµæºä»£ç //--çäº§èµæºID sendworksub.HProcNumber = ""; //--å·¥åºä»£ç @@ -1346,7 +1399,7 @@ /// <returns></returns> [Route("Sc_ProcessMangement/MES_QC_NoPassProdCheckBill_Json")] [HttpGet] public object MES_QC_NoPassProdCheckBill_Json(string sWhere,string user) public object MES_QC_NoPassProdCheckBill_Json(string sWhere, string user) { DataSet ds; try @@ -1369,7 +1422,7 @@ else { string sql1 = "select * from h_v_QC_NoPassProdCheckBillList where 1 = 1 "; string sql = sql1 + sWhere+ " order by hmainid desc "; string sql = sql1 + sWhere + " order by hmainid desc "; ds = oCN.RunProcReturn(sql, "h_v_QC_NoPassProdCheckBillList"); } } @@ -1432,7 +1485,7 @@ { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "å é¤å¤±è´¥!"+e.ToString(); objJsonResult.Message = "å é¤å¤±è´¥!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } @@ -1569,7 +1622,7 @@ /// <returns></returns> [Route("SaveProcessReport")] [HttpPost] public object SaveProcessReport([FromBody] JObject msg) public object SaveProcessReport([FromBody] JObject msg) { var _value = msg["msg"].ToString(); string msg1 = _value.ToString(); @@ -1580,7 +1633,7 @@ List<WebAPI.Models.Sc_ProcessReportViewModel> ls = new List<WebAPI.Models.Sc_ProcessReportViewModel>(); ls = oListModels.getObjectByJson_Report(msg1); int i = 0; foreach (Models.Sc_ProcessReportViewModel ItemView in ls) { i++; @@ -1589,23 +1642,23 @@ //å·¥åºæ±æ¥å主表ä¿å ReportMain.HBillType = "3714"; ReportMain.HBillNo = ItemView.HBillNo; ReportMain.HMakeDate=DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd")); ReportMain.HYear=DBUtility.ClsPub.isLong(DateTime.Now.Year); ReportMain.HMakeDate = DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd")); ReportMain.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year); ReportMain.HDate = DateTime.Now; ReportMain.HMaker = ItemView.HEmp; ReportMain.HCloseType = false; ReportMain.HPlanQty = (double)ItemView.HQty; ReportMain.HMainSourceInterID = ItemView.HInterID; ReportMain.HInterID =0; ReportMain.HInterID = 0; ReportMain.HPeriod = 1; ReportMain.HBillSubType = "3714"; ReportMain.HBillStatus = 0; ReportMain.HCheckItemNowID = 0; ReportMain.HCheckItemNextID = 0; ReportMain.HICMOInterID= (long)ItemView.HICMOInterID; ReportMain.HICMOBillNo=ItemView.HICMOBillNo; ReportMain.HICMOInterID = (long)ItemView.HICMOInterID; ReportMain.HICMOBillNo = ItemView.HICMOBillNo; ReportMain.HDeptID = (long)ItemView.HDeptID; ReportMain.HDeptNumber =ItemView.HDeptNumber; ReportMain.HDeptNumber = ItemView.HDeptNumber; ReportMain.HGroupID = (long)ItemView.HGroupID; ReportMain.HGroupNumber = ItemView.HGroupNumber; ReportMain.HMaterID = (long)ItemView.HMaterID; @@ -1617,7 +1670,7 @@ ReportMain.HExplanation = ""; ReportMain.HInnerBillNo = ""; ReportMain.HSupID = 0; //ä¿åå°æ±æ¥å主表 @@ -1636,15 +1689,15 @@ ReportSub.HQty = (double)ItemView.HQty; ReportSub.HProcID = ItemView.HProcID; ReportSub.HProcNumber = ItemView.HProcNumber; ReportSub.HOutPrice =0; ReportSub.HOutPrice = 0; ReportSub.HOutMoney = 0; ReportSub.HSourceID = (long)ItemView.HSourceID; ReportSub.HEmpNumber = ""; ReportSub.HRelBeginDate = DateTime.Now; ReportSub.HRelEndDate = DateTime.Now; ReportSub.HTimes =3; ReportSub.HTimes = 3; ReportSub.HSeOrderInterID = 0; ReportSub.HSeOrderEntryID =0; ReportSub.HSeOrderEntryID = 0; ReportSub.HSeOrderBillNo = ""; ReportSub.HProcPlanInterID = 0; ReportSub.HProcPlanBillNo = ""; @@ -1654,44 +1707,44 @@ ReportSub.HRelationMoney = 0; ReportSub.HMaterID = (long)ItemView.HMaterID; ReportSub.HMaterNumber = ItemView.HMaterNumber; ReportSub.HCheckQty =0; ReportSub.HBadCount =0; ReportSub.HWasterQty =0; ReportSub.HWasterQty2 =0; ReportSub.HPrice =0; ReportSub.HMoney =0; ReportSub.HProcPlanInterID =0; ReportSub.HProcPlanEntryID =0; ReportSub.HProcPlanBillNo =""; ReportSub.HSourceEntryID =0; ReportSub.HSourceBillType =""; ReportSub.HRelationQty =0; ReportSub.HRelationMoney =0; ReportSub.HBadPrirce =0; ReportSub.HBadMoney =0; ReportSub.HWasterPrice =0; ReportSub.HWasterMoney =0; ReportSub.HQualityRate =0; ReportSub.HSecUnitQty1 =0; ReportSub.HSecUnitRate1=0; ReportSub.HSecUnitQty2=0; ReportSub.HSecUnitRate2=0; ReportSub.HUsingQty=0; ReportSub.HSelfBadCount=0; ReportSub.HPreBadCount=0; ReportSub.HPayMentQty=0; ReportSub.HOtherDeduct=0; ReportSub.HRelPay=0; ReportSub.HOtherItem1=""; ReportSub.HOtherItem2=""; ReportSub.HOtherItem3=""; ReportSub.HOtherItem4=""; ReportSub.HOtherItem5=""; ReportSub.HPackType=""; ReportSub.HCheckEmpID=0; ReportSub.HWeight=0; ReportSub.HBatchNo=""; ReportSub.HCheckQty = 0; ReportSub.HBadCount = 0; ReportSub.HWasterQty = 0; ReportSub.HWasterQty2 = 0; ReportSub.HPrice = 0; ReportSub.HMoney = 0; ReportSub.HProcPlanInterID = 0; ReportSub.HProcPlanEntryID = 0; ReportSub.HProcPlanBillNo = ""; ReportSub.HSourceEntryID = 0; ReportSub.HSourceBillType = ""; ReportSub.HRelationQty = 0; ReportSub.HRelationMoney = 0; ReportSub.HBadPrirce = 0; ReportSub.HBadMoney = 0; ReportSub.HWasterPrice = 0; ReportSub.HWasterMoney = 0; ReportSub.HQualityRate = 0; ReportSub.HSecUnitQty1 = 0; ReportSub.HSecUnitRate1 = 0; ReportSub.HSecUnitQty2 = 0; ReportSub.HSecUnitRate2 = 0; ReportSub.HUsingQty = 0; ReportSub.HSelfBadCount = 0; ReportSub.HPreBadCount = 0; ReportSub.HPayMentQty = 0; ReportSub.HOtherDeduct = 0; ReportSub.HRelPay = 0; ReportSub.HOtherItem1 = ""; ReportSub.HOtherItem2 = ""; ReportSub.HOtherItem3 = ""; ReportSub.HOtherItem4 = ""; ReportSub.HOtherItem5 = ""; ReportSub.HPackType = ""; ReportSub.HCheckEmpID = 0; ReportSub.HWeight = 0; ReportSub.HBatchNo = ""; //ä¿åå°æ±æ¥åå表 ReportModel.DetailColl.Add(ReportSub); } @@ -1767,7 +1820,7 @@ /// <returns></returns> [Route("SaveProcessReportList")] [HttpPost] public object SaveProcessReportList([FromBody] JObject msg) public object SaveProcessReportList([FromBody] JObject msg) { var _value = msg["msg"].ToString(); string msg1 = _value.ToString(); @@ -1830,7 +1883,7 @@ List<Model.ClsSc_ProcessReportSub> lsReportSub = new List<Model.ClsSc_ProcessReportSub>(); foreach (WebAPI.Models.Sc_ProcessSendWorkViewModel ItemView in ls) { i++; Model.ClsSc_ProcessReportSub reportSub = new Model.ClsSc_ProcessReportSub(); if (ItemView.æ°é <= 0) @@ -1856,8 +1909,8 @@ reportSub.HRemark = ""; reportSub.HCloseMan = ReportModel.omodel.HCloseMan; reportSub.HCloseType = false; reportSub.HEmpID =0; reportSub.HICMOBillNo =""; reportSub.HEmpID = 0; reportSub.HICMOBillNo = ""; reportSub.HICMOInterID = (long)ItemView.HICMOInterID; reportSub.HRemark = ""; reportSub.HSourceBillType = "3712"; @@ -1923,7 +1976,7 @@ lsReportSub.Add(reportSub); } if (lsReportSub.Count>0) if (lsReportSub.Count > 0) { //ç¶åå¨å¾ªç¯ä¿åå°æ±æ¥ä½å表 foreach (Model.ClsSc_ProcessReportSub item in lsReportSub) @@ -1992,7 +2045,7 @@ /// <returns></returns> [Route("SaveBadReasonList")] [HttpPost] public object SaveBadReasonList([FromBody] JObject msg) public object SaveBadReasonList([FromBody] JObject msg) { var _value = msg["msg"].ToString(); string msg1 = _value.ToString(); @@ -2002,7 +2055,7 @@ string user = sArray[2].ToString(); string UserName=""; string UserName = ""; ListModels oListModels = new ListModels(); try { @@ -2024,7 +2077,7 @@ foreach (Model.ClsQC_NoPassProdCheckBillMain oItem in lsmain) { //oItem.HMaker = ""; UserName=oItem.HMaker; UserName = oItem.HMaker; oItem.HMakeDate = DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd")); oItem.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year); oItem.HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd")); @@ -2032,7 +2085,7 @@ oItem.HBillSubType = "7509"; oItem.HBillStatus = 1; oItem.HPeriod = 0; oItem.HGroupName =""; oItem.HGroupName = ""; oItem.HSourceID = 0; oItem.HICMOInterID = 0; oItem.HICMOBillNo = ""; @@ -2052,7 +2105,7 @@ oItem.HMainSourceInterID = oItem.HInterID; oItem.HInterID = 0; //oItem.HInterID = DBUtility.ClsPub.CreateBillID_SRMProd("1103", ref DBUtility.ClsPub.sExeReturnInfo); if (DBUtility.ClsPub.isStrNull(oItem.HDate)=="") if (DBUtility.ClsPub.isStrNull(oItem.HDate) == "") { objJsonResult.code = "0"; objJsonResult.count = 0; @@ -2061,7 +2114,7 @@ return objJsonResult; } oBill.omodel = oItem; } } //è¡¨ä½æ°æ® //æ },{æ¥æåæ°ç» //廿ãåã msg3 = msg3.Substring(1, msg3.Length - 2); @@ -2079,8 +2132,8 @@ break; } //å°åå°ä¸´æ¶åæ¾çå¼ä¼ è¿æ¥çå¼èµç»å¯¹åºçä¸è¯æ°éåæ®µ oItemSub.HBadQty = Convert.ToDecimal( oItemSub.HMRBChecker); if (oItemSub.HBadQty<=0) oItemSub.HBadQty = Convert.ToDecimal(oItemSub.HMRBChecker); if (oItemSub.HBadQty <= 0) { objJsonResult.code = "0"; objJsonResult.count = 0; @@ -2088,7 +2141,7 @@ objJsonResult.data = 1; return objJsonResult; } if ((double)oItemSub.HBadQty >oBill.omodel.HPlanQty ) if ((double)oItemSub.HBadQty > oBill.omodel.HPlanQty) { objJsonResult.code = "0"; objJsonResult.count = 0; @@ -2096,7 +2149,7 @@ objJsonResult.data = 1; return objJsonResult; } if (DBUtility.ClsPub.isStrNull(oItemSub.HWasterReasonName)=="") if (DBUtility.ClsPub.isStrNull(oItemSub.HWasterReasonName) == "") { objJsonResult.code = "0"; objJsonResult.count = 0; @@ -2123,7 +2176,7 @@ oItemSub.HBadPCSQty = 0; oItemSub.HQCResultID = 0; oBill.DetailColl.Add(oItemSub); } //ä¿åå夿(åæ®å·éå¤ï¼ç¬å½é¡¹ç®) //ä¿å @@ -2176,10 +2229,10 @@ /// <returns></returns> [Route("CloseProcessReportList")] [HttpGet] public object CloseProcessReportList(int HInterID,int IsClose,string CurUserName) public object CloseProcessReportList(int HInterID, int IsClose, string CurUserName) { DataSet ds; string ModRightNameCheck = "Sc_ProcessReport_check"; string ModRightNameCheck = "Sc_ProcessReport_check"; try { //å®¡æ ¸æé @@ -2212,7 +2265,7 @@ } var HChecker = ds.Tables[0].Rows[0]["HChecker"].ToString(); var HCloseMan = ds.Tables[0].Rows[0]["HCloseMan"].ToString(); if (IsClose == 0) { if (HCloseMan.Trim() != "" || HChecker.Trim() == "") @@ -2229,8 +2282,8 @@ objJsonResult.Message = "* åæ®å ³éæåï¼"; objJsonResult.data = null; return objJsonResult; ; } else if(IsClose==1) } else if (IsClose == 1) { if (HCloseMan.Trim() == "" || HChecker.Trim() == "") { @@ -2257,7 +2310,7 @@ return objJsonResult; ; } } catch (Exception e) { @@ -2292,7 +2345,7 @@ objJsonResult.count = 0; objJsonResult.Message = "å®¡æ ¸å¤±è´¥ï¼æ æéï¼"; objJsonResult.data = null; return objJsonResult; return objJsonResult; } SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); if (HInterID <= 0) @@ -2310,11 +2363,11 @@ objJsonResult.count = 0; objJsonResult.Message = "没æè¿ä¸ªåæ®ï¼æ æ³å®¡æ ¸ï¼"; objJsonResult.data = null; return objJsonResult; return objJsonResult; } var HChecker = ds.Tables[0].Rows[0]["HChecker"].ToString();//åå®¡æ ¸äºº var HMaker=ds.Tables[0].Rows[0]["HMaker"].ToString();//åå¶å人 var HCloseMan=ds.Tables[0].Rows[0]["HCloseMan"].ToString();//åå ³é人 var HMaker = ds.Tables[0].Rows[0]["HMaker"].ToString();//åå¶å人 var HCloseMan = ds.Tables[0].Rows[0]["HCloseMan"].ToString();//åå ³é人 if (IsAudit == 0) { if (HChecker.Trim() != "" || HChecker.Trim() == HMaker || HCloseMan != "") @@ -2331,7 +2384,7 @@ objJsonResult.count = 1; objJsonResult.Message = "* åæ®å®¡æ ¸æåï¼"; objJsonResult.data = null; return objJsonResult; return objJsonResult; } else if (IsAudit == 1) { @@ -2349,7 +2402,7 @@ objJsonResult.count = 1; objJsonResult.Message = "* åæ®åå®¡æ ¸æåï¼"; objJsonResult.data = null; return objJsonResult; return objJsonResult; } else { @@ -2357,7 +2410,7 @@ objJsonResult.count = 0; objJsonResult.Message = "åæ®æ æ³å®¡æ ¸ï¼"; objJsonResult.data = null; return objJsonResult; return objJsonResult; } @@ -2379,7 +2432,7 @@ /// <returns></returns> [Route("Sc_ProcessMangement/MES_WW_EntrustProcSendWorkBill_Json")] [HttpGet] public object MES_WW_EntrustProcSendWorkBill_Json(string sqlWhere,string user) public object MES_WW_EntrustProcSendWorkBill_Json(string sqlWhere, string user) { DataSet ds; try @@ -2402,7 +2455,7 @@ else { string sql1 = "select * from h_v_WW_EntrustProcSendWorkBillList where 1 = 1 "; string sql = sql1 + sqlWhere+ " order by hmainid desc "; string sql = sql1 + sqlWhere + " order by hmainid desc "; ds = oCN.RunProcReturn(sql, "h_v_WW_EntrustProcSendWorkBillList"); } } @@ -2424,7 +2477,7 @@ /// <returns></returns> [Route("Sc_ProcessMangement/MES_WW_EntrustProcessReportBill_Json")] [HttpGet] public object MES_WW_EntrustProcessReportBill_Json(string sqlWhere,string user) public object MES_WW_EntrustProcessReportBill_Json(string sqlWhere, string user) { DataSet ds; try @@ -2468,8 +2521,8 @@ /// <param name="sqlWhere"></param> /// <returns></returns> [Route("Sc_ProcessMangement/MES_WW_EntrustProcessSendOutBillList_Json")] [HttpGet] public object MES_WW_EntrustProcessSendOutBillList_Json(string sqlWhere,string user) [HttpGet] public object MES_WW_EntrustProcessSendOutBillList_Json(string sqlWhere, string user) { DataSet ds; try @@ -2492,7 +2545,7 @@ else { string sql1 = "select * from h_v_WW_EntrustProcessSendOutBillList where 1 = 1 "; string sql = sql1 + sqlWhere+ " order by hmainid desc "; string sql = sql1 + sqlWhere + " order by hmainid desc "; ds = oCN.RunProcReturn(sql, "h_v_WW_EntrustProcessSendOutBillList"); } } @@ -2599,7 +2652,7 @@ objJsonResult.data = 1; return objJsonResult; } sendworksub.HEntryID = i; sendworksub.HEntryCloseDate = DBUtility.ClsPub.isDate(DateTime.Now); @@ -2726,7 +2779,7 @@ ReportMain.HCloseType = false; ReportMain.HPrintQty = 0; ReportMain.HMainSourceBillType = "3740"; ReportMain.HMainSourceInterID =0; ReportMain.HMainSourceInterID = 0; ReportMain.HMainSourceBillNo = ItemView.HWW_BillNo; ReportMain.HInterID = 0; ReportMain.HPeriod = 1; @@ -2737,7 +2790,7 @@ ReportMain.HDeptID = Convert.ToInt32(ItemView.HDeptID); ReportMain.HExplanation = ""; ReportMain.HInnerBillNo = ""; ReportMain.HSupID =Convert.ToInt32( ItemView.HSupID); ReportMain.HSupID = Convert.ToInt32(ItemView.HSupID); //ä¿åå°æ±æ¥å主表 @@ -2754,7 +2807,7 @@ ReportSub.HCloseType = false; ReportSub.HSourceBillType = "3740"; ReportSub.HQty = Convert.ToDecimal(ItemView.HQty); ReportSub.HProcID =Convert.ToInt32( ItemView.HProcID); ReportSub.HProcID = Convert.ToInt32(ItemView.HProcID); ReportSub.HTimes = 0; ReportSub.HSeOrderInterID = 0; ReportSub.HSeOrderEntryID = 0; @@ -3166,7 +3219,7 @@ WorkOrdersub.HSourceInterID = oItemSub.hmainid.Value; //--æºåid WorkOrdersub.HSourceEntryID = oItemSub.hsubid.Value; //--æºååID WorkOrdersub.HSourceBillNo = oItemSub.åæ®å·; //--æºååå· WorkOrdersub.HSourceBillType= oItemSub.HBillType; //--æºåç±»å WorkOrdersub.HSourceBillType = oItemSub.HBillType; //--æºåç±»å WorkOrdersub.HRelationQty = 0; //--å ³èæ°é WorkOrdersub.HRelationMoney = 0; //--å ³èéé¢ WorkOrdersub.HOrderBillNo = ""; //--éå®è®¢åå· @@ -3176,9 +3229,9 @@ WorkOrdersub.HQty = (double)oItemSub.è®¡åæ°é; //--è®¢åæ°é WorkOrdersub.HEntrustType = "3739"; //--å§å¤ç±»å WorkOrdersub.HNextProcName = ""; //--ä¸éå·¥åº WorkOrdersub.HPrice =0; //å 工费 WorkOrdersub.HPrice = 0; //å 工费 WorkOrdersub.HOutQty = 0; //--å ³èååºæ°é WorkOrdersub.HInQty =0; //--å ³èæ¥æ¶æ°é WorkOrdersub.HInQty = 0; //--å ³èæ¥æ¶æ°é WorkOrdersub.HBackSupDate = DateTime.Now; //--å®é äº¤è´§æ¥æ WorkOrdersub.HInDate = DateTime.Now; //--äº¤è´§æ¥æ WorkOrdersub.HWorkProcFlow = ""; //--å·¥èºæµ WebAPI/Controllers/»ù´¡×ÊÁÏ/»ù´¡×ÊÁÏ/Gy_StockCheckItemBillController.cs
@@ -211,7 +211,7 @@ ")", ref DBUtility.ClsPub.sExeReturnInfo); //ä¿®æ¹ä¸çº§ä¸ºéæ«çº§ä»£ç oCn.RunProc("Update Gy_StockCheckItem set HEndflag=0 where HItemID=" + oBill.HParentID, ref DBUtility.ClsPub.sExeReturnInfo); objJsonResult.code = "0"; objJsonResult.count = 1; objJsonResult.Message = "ä¿åæåï¼"; @@ -252,6 +252,46 @@ } #endregion #region çç¹åæåè¡¨å¤æå½åéæ©ççç¹æ¹æ¡æ¯å¦çæè¿åæ® [Route("Gy_StockCheckItemBill/StockItemSubIsExistence")] [HttpGet] public object StockItemSubIsExistence(string sID) { try { DataSet ds; SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); string sql; sql = string.Format(@"select * from Gy_StockCheckItemSub where HInterID=" + sID); ds = oCN.RunProcReturn(sql, "Gy_StockCheckItemSub"); if (ds.Tables[0].Rows.Count == 0) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "ææªçæ"; return objJsonResult; } else { objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "å·²çæ"; return objJsonResult; } } catch (Exception ex) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "æ¥è¯¢æ°æ®å¼å¸¸ï¼è¯·ä¸ç®¡çåèç³»ï¼" + ex.ToString(); objJsonResult.data = null; return objJsonResult; } } #endregion #region çç¹åæå表 [Route("Gy_StockCheckItemBill/Get_InventoryAnalysisList")] [HttpGet] @@ -263,15 +303,30 @@ try { SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); if (sID == null || sID == "") //夿æ¯å¦éæ©çç¹æ¹æ¡ï¼æ¯=>ï¼ç¨çç¹æ¹æ¡å表å对æ¯ï¼ï¼å¦=>ï¼ç¨å¨å ·æ¡£æ¡å对æ¯ï¼ if (sID==null|| sID == "") { sql = string.Format(@"select * from h_v_Sc_MouldInventoryAnalysisList where " + sWhere + " order by HItemID desc "); if (sWhere=="pk") { sql = string.Format(@"select * from h_v_Sc_MouldInventoryAnalysisPK"); } else { sql = string.Format($"exec h_p_Sc_MouldInventoryAnalysisList2 '{sWhere}'"); } } else { sql = string.Format(@"select * from h_v_Sc_MouldInventoryAnalysisList where " + sWhere + " and HSourceInterID=(select HItemID from Gy_StockCheckItem where HItemID=" + sID + ") and HMakeDate<=(select HEndDate from Gy_StockCheckItem where HItemID=" + sID + ") order by HItemID desc "); if (sWhere == "pk") { sql = string.Format(@"select * from h_v_Sc_MouldInventoryAnalysisPK2 WHERE HInterID="+ sID); } else { sql = string.Format($"exec h_p_Sc_MouldInventoryAnalysisList '{sID}','{sWhere}'"); } } ds = oCN.RunProcReturn(sql, "Sc_MouldStockBillMain_Temp"); ds = oCN.RunProcReturn(sql, "h_p_Sc_MouldInventoryAnalysisList"); list.Add(ds.Tables[0]); objJsonResult.code = "1"; WebAPI/Controllers/Éú²ú¹ÜÀí/±¨¹¤Ì¨¹¤Ðò/Sc_MESBeginStepWorkBillController.cs
@@ -1622,7 +1622,7 @@ Ids = Ds.Tables[0].Rows[0][0].ToString(), //PkEntryIds = (EntyID).Split('-')[1] }; LogService.Write("json=" + json); //LogService.Write("json=" + json); string result1 = string.Empty; string result2 = string.Empty; WebAPI/InvokeHelper.cs
@@ -37,9 +37,9 @@ HttpClient httpClient = new HttpClient(); httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.AuthService.ValidateUser.common.kdsvc"); List<object> Parameters = new List<object>(); Parameters.Add("5f9258a311401c");//è´¦å¥æ 示 Parameters.Add("622703e117d642");//è´¦å¥æ 示 Parameters.Add("Administrator");//ç¨æ·å Parameters.Add("qaz!@#123");//å¯ç Parameters.Add("sa@123456");//å¯ç Parameters.Add(2052);//2052ä»£è¡¨ä¸æ httpClient.Content = JsonConvert.SerializeObject(Parameters); WebAPI/WebAPI.csproj
@@ -378,6 +378,7 @@ <Compile Include="Controllers\CJGL\Cj_StationInBillController.cs" /> <Compile Include="Controllers\CJGL\Cj_StationEntrustOutBillController.cs" /> <Compile Include="Controllers\CJGL\Sc_WorkBillAutoSortBillMainController.cs" /> <Compile Include="Controllers\SCGL\æ¥è®¡å管ç\DataHelper.cs" /> <Compile Include="Controllers\SCGL\æ¥è®¡å管ç\JIT_Cg_PODemandPlanBillController.cs" /> <Compile Include="Controllers\SCGL\Sc_CallGoodsBackRequestBillController.cs" /> <Compile Include="Controllers\SCGL\Sc_ComplementGoodBillController.cs" />