From d84518084c3027a684333929ad80b51a0c32845b Mon Sep 17 00:00:00 2001 From: jhz <jinghz@oceic.com> Date: 星期二, 21 三月 2023 10:23:50 +0800 Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API --- WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs | 355 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 346 insertions(+), 9 deletions(-) diff --git a/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs b/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs index 1441cb9..0d824de 100644 --- a/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs +++ b/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs @@ -1,4 +1,6 @@ -锘縰sing Newtonsoft.Json.Linq; +锘縰sing Model; +using Newtonsoft.Json; +using Newtonsoft.Json.Linq; using Pub_Class; using System; using System.Collections; @@ -99,7 +101,7 @@ double HMoney = 0; double HBadCount = list[0].HBadCount;//涓嶈壇鏁伴噺 long HCenterID = list[0].HCenterID;//宸ヤ綔涓績ID - long HProcNo = list[0].HProcNo;//娴佹按鍙� + string HProcNo = list[0].HProcNo;//娴佹按鍙� string HOrderProcNO = list[0].HOrderProcNO;//璁㈠崟璺熻釜鍙� string HSourceNameList = list[0].HSourceNameList;//璁惧娓呭崟 long HMainSourceInterID = list[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D @@ -115,6 +117,7 @@ double HPriceRate = list[0].HPriceRate;//绯绘暟 double HWorkTimes = list[0].HWorkTimes;//宸ユ椂 long HQCCheckID = list[0].HQCCheckID;//妫�楠屽憳ID + long HPRDOrgID = list[0].HPRDOrgID;//缁勭粐ID //鍗曟嵁瀹屾暣鎬у垽鏂� if (HProcExchInterID <= 0) { @@ -132,7 +135,7 @@ objJsonResult.data = null; return objJsonResult; } - if (HProcNo <= 0) + if (HProcNo == "") { objJsonResult.code = "0"; objJsonResult.count = 0; @@ -213,6 +216,7 @@ objJsonResult.data = null; return objJsonResult; } + //if (HWorkTimes <= 0) //{ // objJsonResult.code = "0"; @@ -253,10 +257,13 @@ // objJsonResult.data = null; // return objJsonResult; //} + var num = 0; + //鑻AINDI閲嶅鍒欓噸鏂拌幏鍙� oCN.BeginTran(); if ("Add".Equals(eventType)) { + num = 1; if (!AllowbillNo(HBillNo)) { oCN.RollBack(); @@ -274,7 +281,7 @@ ",HGroupID,HDeptID,HEmpID,HBarCode,HAddr,HBarCodeMaker,HBarCodeMakeDate,HSourceID2,HSourceID3,HSourceID4,HSourceID5" + ",HSupID,HQty,HPrice,HMoney,HBadCount,HCenterID,HProcNo,HOrderProcNO,HSourceNameList" + ",HMainSourceInterID,HMainSourceBillNo,HMainSourceBillType,HLastSubProc" + - ",HEmpID2,HEmpID3,HEmpID4,HEmpID5,HDSQty,HChongQty,HPriceRate,HWorkTimes,HQCCheckID,HMainInterID" + + ",HEmpID2,HEmpID3,HEmpID4,HEmpID5,HDSQty,HChongQty,HPriceRate,HWorkTimes,HQCCheckID,HMainInterID,HPRDOrgID" + ") " + " values('" + BillType + "','" + HBillSubType + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate(),'" + HMouldNum + "'" + "," + HYear + "," + HPeriod + ",'" + HRemark + "','" + HSourceName + "'," + HPieceQty + "," + HWasterQty + "," + HPlanPieceQty + "," + HBadPNL + @@ -283,11 +290,12 @@ "," + HGroupID + "," + HDeptID + "," + HEmpID + ",'" + HBarCode + "','" + HAddr + "','" + HBarCodeMaker + "',getdate()" + "," + HSourceID2 + "," + HSourceID3 + "," + HSourceID4 + "," + HSourceID5 + "," + HSupID + "," + HQty + "," + HPrice + "," + HMoney + "," + HBadCount + "," + HCenterID + "," + HProcNo + ",'" + HOrderProcNO + "'" + ",'" + HSourceNameList + "'" + "," + HMainSourceInterID + ",'" + HMainSourceBillNo + "','" + HMainSourceBillType + "'," + Convert.ToString(HLastSubProc ? 1 : 0) + - "," + HEmpID2 + "," + HEmpID3 + "," + HEmpID4 + "," + HEmpID5 + "," + HDSQty + "," + HChongQty + "," + HPriceRate + "," + HWorkTimes + "," + HQCCheckID + "," + HMainInterID + + "," + HEmpID2 + "," + HEmpID3 + "," + HEmpID4 + "," + HEmpID5 + "," + HDSQty + "," + HChongQty + "," + HPriceRate + "," + HWorkTimes + "," + HQCCheckID + "," + HMainInterID + "," + HPRDOrgID + ") "); } else if ("Modify".Equals(eventType)) { + num = 2; oCN.RunProc("UpDate Sc_StationOutBillMain set " + "HUpDater='" + HMaker + "'" + ",HUpDateDate=getdate()" + @@ -356,7 +364,7 @@ objJsonResult.data = null; return objJsonResult; } - oCN.RunProc("exec h_p_Mes_ProcessExchangeRelationQty_Out " + HInterID + ",1"); + oCN.RunProc("exec h_p_Mes_ProcessExchangeRelationQty_Out " + HInterID + ","+ num + ""); oCN.RunProc("exec h_p_Mes_ProcessExchangeChangeStatus " + HInterID + " "); oCN.RunProc("exec h_p_Mes_StationOutBillBackBarCode " + HInterID + " "); //鍒ゆ柇鏄惁鏄� 鏈亾宸ュ簭 @@ -392,6 +400,7 @@ } catch (Exception e) { + oCN.RollBack(); objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "Exception锛�" + e.ToString(); @@ -429,6 +438,7 @@ string msg2 = sArray[0].ToString(); string msg3 = sArray[1].ToString(); string msg4 = sArray[2].ToString(); + string msg5 = sArray[3].ToString(); List<Model.ClsSc_StationOutBillMain> list = new List<Model.ClsSc_StationOutBillMain>(); @@ -446,8 +456,8 @@ oBill.omodel.HBillNo = msg3 + "- " + j; oBill.omodel.HBillStatus = 0; oBill.omodel.HMouldNum = list[i].HMouldNum; - oBill.omodel.HYear = 2022; - oBill.omodel.HPeriod = 1; + oBill.omodel.HYear = DateTime.Now.Year; + oBill.omodel.HPeriod = DateTime.Now.Month; oBill.omodel.HRemark = list[i].HRemark; oBill.omodel.HSourceName = list[i].HSourceName; oBill.omodel.HPieceQty = list[i].HPieceQty; @@ -500,6 +510,7 @@ oBill.omodel.HWorkTimes = list[i].HWorkTimes; oBill.omodel.HQCCheckID = list[i].HQCCheckID; oBill.omodel.HMaker = msg4; + oBill.omodel.HEmpNum = msg5; //string HBillSubType = "3791"; //long HInterID = list[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D @@ -702,6 +713,7 @@ { try { + List<object> columnNameList = new List<object>(); //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄� if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Query", 1, false, user)) { @@ -723,11 +735,20 @@ ds = oCN.RunProcReturn(sql, "h_v_MES_StationOutBillList"); } + //娣诲姞鍒楀悕 + 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));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕 + } + //if (ds.Tables[0].Rows.Count != 0 || ds != null) //{ objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess锛�"; + objJsonResult.list = columnNameList; objJsonResult.data = ds.Tables[0]; return objJsonResult; //} @@ -905,6 +926,126 @@ return Result_Ob; } + + + + + [Route("Cj_StationOutBill/UploadFile2")] + [HttpPost] + public object UploadFile2() + { + + string HBillNo = HttpContext.Current.Request.Params["HBillNo"]; //鍗曟嵁鍙� + string HRemark = HttpContext.Current.Request.Params["HRemark"]; //澶囨敞 + string HUserName = HttpContext.Current.Request.Params["HUserName"]; //鍒涘缓浜� + HttpPostedFile files = HttpContext.Current.Request.Files["file"]; + string path = HttpContext.Current.Server.MapPath("~/../Files/" + HBillNo); + //string path = @"D:\\Files\\"+ HBillNo; + dynamic dyResult = UpLoadFile1(files, path, HBillNo, HRemark, HUserName); + if (dyResult != null && dyResult.result == 1) + { + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "涓婁紶鎴愬姛锛�"; + objJsonResult.data = null; + return objJsonResult; + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = dyResult.returnval; + objJsonResult.data = null; + return objJsonResult; + } + + } + + public dynamic UpLoadFile1(HttpPostedFile files, string path, string HBillNo, string HRemark, string HUserName) + { + dynamic Result_Ob = new { result = 1, returnval = "涓婁紶鎴愬姛锛�" }; + string filePath = Path.GetFullPath(files.FileName);//鏂囦欢涓婁紶璺緞 + string fileExtension = Path.GetExtension(files.FileName);// 鏂囦欢鎵╁睍鍚� + string filename = files.FileName;//鏂囦欢鍚� + string fileSavePath = path;// 涓婁紶淇濆瓨璺緞 + int filesize = files.ContentLength;//鑾峰彇涓婁紶鏂囦欢鐨勫ぇ灏忓崟浣嶄负瀛楄妭byte + int Maxsize = 40000 * 1024;//瀹氫箟涓婁紶鏂囦欢鐨勬渶澶х┖闂村ぇ灏忎负40M + try + { + if (files == null || files.ContentLength <= 0) + { + Result_Ob = new { result = 0, returnval = "鏂囦欢涓嶈兘涓虹┖!" }; + return Result_Ob; + } + if (filesize >= Maxsize) + { + Result_Ob = new { result = 0, returnval = "涓婁紶鏂囦欢瓒呰繃40M锛屼笉鑳戒笂浼狅紒" }; + return Result_Ob; + } + + string fileurl = Path.Combine(fileSavePath, filename); + if (Directory.Exists(fileurl) == true) //濡傛灉瀛樺湪閲嶅悕鏂囦欢灏辨彁绀� + { + Result_Ob = new { result = 0, returnval = "瀛樺湪鍚屽悕鏂囦欢锛�" }; + return Result_Ob; + } + //鍒犻櫎鏁版嵁琛ㄦ暟鎹� + ds = oCN.RunProcReturn("delete from MES_AccessoriesList where HSourceBillNo ='" + HBillNo + "' and HFileName='" + filename + "'", "MES_AccessoriesList"); + if (Directory.Exists(path)) + { + File.Delete(fileurl); //鍒犻櫎鎸囧畾鏂囦欢 + files.SaveAs(fileurl); + string StrPath = "/files/" + HBillNo + "/" + filename; + if (File.Exists(fileurl)) + { + //杩欓噷鍙互鎵ц涓�浜涘叾瀹冪殑鎿嶄綔锛屾瘮濡傛洿鏂版暟鎹簱 + //鍐欏叆鏁版嵁琛� + oCN.RunProc("Insert into MES_AccessoriesList (HFileName,HFilePath,HFilePath_Cus,HFileType" + + ",HLoadMan,HLoadDate,HRemark,HVerNum,HFileSize" + + ",HFileClsID,HSourceBillNo" + + ") values('" + + filename.ToString() + "','" + StrPath.ToString() + "','" + filePath.ToString() + "','" + fileExtension.ToString() + "'" + + ",'" + HUserName + "',getdate(),'" + HRemark + "','V1','" + filesize + + "','" + 0 + "','" + HBillNo + + "') "); + } + else + { + Result_Ob = new { result = 0, returnval = "涓婁紶澶辫触锛佹鏂囦欢涓烘伓鎰忔枃浠�" }; + } + } + else + { + Directory.CreateDirectory(fileSavePath); //娣诲姞鏂囦欢澶� + files.SaveAs(fileurl); + string StrPath = "/files/" + HBillNo + "/" + filename; + if (File.Exists(fileurl)) + { + //杩欓噷鍙互鎵ц涓�浜涘叾瀹冪殑鎿嶄綔锛屾瘮濡傛洿鏂版暟鎹簱 + //鍐欏叆鏁版嵁琛� + oCN.RunProc("Insert into MES_AccessoriesList (HFileName,HFilePath,HFilePath_Cus,HFileType" + + ",HLoadMan,HLoadDate,HRemark,HVerNum,HFileSize" + + ",HFileClsID,HSourceBillNo" + + ") values('" + + filename.ToString() + "','" + fileurl.ToString() + "','" + filePath.ToString() + "','" + fileExtension.ToString() + "'" + + ",'" + HUserName + "',getdate(),'" + HRemark + "','V1','" + filesize + + "','" + 0 + "','" + HBillNo + + "') "); + } + else + { + Result_Ob = new { result = 0, returnval = "涓婁紶澶辫触锛佹鏂囦欢涓烘伓鎰忔枃浠�" }; + } + } + + } + catch (Exception e) + { + Result_Ob = new { result = 0, returnval = e.Message }; + } + return Result_Ob; + } + /// <summary> /// 杈撳嚭json缁撴灉 杩斿洖2涓�� result (杈撳嚭succes鐨勫��) returnval (杈撳嚭str鐨勫��) /// </summary> @@ -1068,6 +1209,72 @@ return objJsonResult; } + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "寮傚父锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + #region 鏍规嵁鍗曟嵁鍙� 鍚屾鎶ラ敊鍒犻櫎鍑虹珯鍗� + [Route("Cj_StationOutBill/DelStationOutBill")] + [HttpGet] + public object DelStationOutBill(string HInterID) + { + try + { + DAL.ClsSc_StationOutBill oBill = new DAL.ClsSc_StationOutBill(); + + SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); + + DataTable DTable; + int num = 0; + //鍒ゆ柇鍏ュ簱鏄惁鍚屾 + DTable = oCN.RunProcReturn("select * from Sc_StationOutBillMain where HInterID='" + HInterID + "' and HRelationQty=0", "Sc_StationOutBillMain").Tables[0]; + if (DTable.Rows.Count != 0) + { + num++; + } + //鍒ゆ柇鏈鎶ュ簾鏄惁鍚屾 + DTable = oCN.RunProcReturn("select * from Sc_StationOutBillMain where HProcExchInterID='" + DTable.Rows[0]["HProcExchInterID"].ToString() + "' and HBFFlag=0 ", "Sc_StationOutBillMain").Tables[0]; + if (DTable.Rows.Count != 0) + { + num++; + } + + if (num == 2) + { + if (!oBill.DeleteBill(long.Parse(HInterID), 0, 0, ref DBUtility.ClsPub.sExeReturnInfo)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = DBUtility.ClsPub.sExeReturnInfo; + objJsonResult.data = null; + return objJsonResult; + } + else + { + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "鍒犻櫎鎴愬姛锛�"; + objJsonResult.data = null; + return objJsonResult; + } + } + else + { + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "鏃犻』鍒犻櫎锛�"; + objJsonResult.data = null; + return objJsonResult; + } + } catch (Exception e) { @@ -1433,7 +1640,137 @@ } #endregion + #region 杩斿洖宸ュ簭鍑虹珯姹囨姤鍗曟槑缁嗗垪琛� + [Route("Cj_StationOutBill_Detail/get_Display2")] + [HttpGet] + public object get_Display2(string HMaterID, string HWorkProcID, string HProcExchBillNo) + { + try + { + ds = oCN.RunProcReturn("select * from h_v_GetStationOutBill_Detail where 宸ュ簭ID = " + HWorkProcID + " and 鐗╂枡ID = " + HMaterID + " and 娴佽浆鍗″彿 = '" + HProcExchBillNo + "'" , "h_v_GetStationOutBill_Detail"); + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "宸ュ簭鍑虹珯姹囨姤鍗曟槑缁嗕俊鎭幏鍙栧け璐ワ紒"; + objJsonResult.data = null; + return objJsonResult; + } + else + { + 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; + } + } + #endregion - + #region 鏄庣粏 淇濆瓨/缂栬緫鍔熻兘 + //[Route("Cj_StationOutBill/AddBill_Detail")] + //[HttpPost] + //public object AddBill_Detail([FromBody] JObject sMain) + //{ + // try + // { + // var _value = sMain["sMainSub"].ToString(); + // string msg1 = _value.ToString(); + // oCN.BeginTran(); + // //淇濆瓨涓昏〃 + // objJsonResult = Add_Detail(msg1); + // if (objJsonResult.code == "0") + // { + // oCN.RollBack(); + // objJsonResult.code = "0"; + // objJsonResult.count = 0; + // objJsonResult.Message = objJsonResult.Message; + // objJsonResult.data = null; + // return objJsonResult; + // } + // oCN.Commit(); + // objJsonResult.code = "1"; + // objJsonResult.count = 1; + // objJsonResult.Message = "鍗曟嵁淇濆瓨鎴愬姛锛�"; + // objJsonResult.data = null; + // return objJsonResult; + + // } + // catch (Exception e) + // { + // oCN.RollBack(); + // objJsonResult.code = "0"; + // objJsonResult.count = 0; + // objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString(); + // objJsonResult.data = null; + // return objJsonResult; + // } + //} + + //public json Add_Detail(string msg1) + //{ + // string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); + // string msg2 = sArray[0].ToString(); //琛ㄥご鏁版嵁 + // string msg3 = sArray[1].ToString(); //琛ㄤ綋鏁版嵁 + // int OperationType = int.Parse(sArray[2].ToString()); // 鏁版嵁绫诲瀷 1娣诲姞 3淇敼 + // string user = sArray[3].ToString(); //鐢ㄦ埛鍚� + // try + // { + // List<ClsSc_StationOutBillSub_Emp> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsSc_StationOutBillSub_Emp>>(msg2); + + // List<ClsSc_StationOutBillSub_Emp> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsSc_StationOutBillSub_Emp>>(msg3); + + // long HWorkEmpID = subList[0].HWorkEmpID; + // long HWorkSourceID = subList[0].HWorkSourceID; + // decimal HQty = subList[0].HQty; + // decimal HRate = subList[0].HRate; + // decimal HProcPrice = subList[0].HProcPrice; + // decimal HMoney = subList[0].HMoney; + // long HWorkProcID = mainList[0].HWorkProcID; + + // foreach (ClsSc_StationOutBillSub_Emp oSub in subList) + // { + // //ds = oCN.RunProcReturn("select * from h_v_IF_ICMOBillList where hmainid=" + HInterID + " and 鍗曟嵁鍙�='" + HBillNo + "'", "h_v_IF_ICMOBillList"); + + // if ((OperationType == 1 || OperationType == 2) && ds.Tables[0].Rows.Count == 0)//鏂板 + // { + // //涓昏〃 + // oCN.RunProc(@"Insert Into Sc_StationOutBillSub_Emp + // (HBillNo_bak ,HCloseMan ,HEntryCloseDate ,HCloseType ,HRemark ,HSourceInterID + // ,HSourceEntryID ,HSourceBillNo ,HSourceBillType ,HRelationQty ,HRelationMoney + // ,HWorkEmpID ,HWorkSourceID ,HQty ,HRate ,HProcPrice + // ,HMoney ,HWorkProcID) + // values('3710',1," + HInterID + ",'" + HBillNo + "','" + HDate + "'," + HPRDORGID + + // "," + DateTime.Now.Year + "," + DateTime.Now.Month + ",'" + HRemark + "','" + HMaker + "',getdate()" + + // ",'" + HSeOrderBillNo + "'," + HSeOrderInterID + "," + HSeOrderEntryID + "," + HEmpID + "," + HCusID + + // "," + HCenterID + ",0,0,0,0," + HBomID + ",'','') "); + // } + // } + + // objJsonResult.code = "1"; + // objJsonResult.count = 1; + // objJsonResult.Message = null; + // 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