From bfbc267f3c7d337820fb1bb3156ce31d6141fd78 Mon Sep 17 00:00:00 2001
From: YL <YL@LAPTOP-SE03PLUR>
Date: 星期二, 15 六月 2021 15:37:30 +0800
Subject: [PATCH] 工序出站汇报单,图片上传

---
 WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs |  479 +++++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 440 insertions(+), 39 deletions(-)

diff --git a/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs b/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs
index 41eac07..c247d35 100644
--- a/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs
+++ b/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs
@@ -5,12 +5,14 @@
 using System.Collections.Generic;
 using System.Data;
 using System.Data.SqlClient;
+using System.IO;
+using System.Web;
 using System.Web.Http;
 using WebAPI.Models;
 
 namespace WebAPI.Controllers
 {
-    //宸ュ簭鍑虹珯鍙戝嚭鍗旵ontroller
+    //宸ュ簭鍑虹珯姹囨姤鍗旵ontroller
     public class Cj_StationOutBillController : ApiController
     {
         public DBUtility.ClsPub.Enum_BillStatus BillStatus;
@@ -19,7 +21,6 @@
         SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
         DataSet ds;
         DataSet ds1;
-
 
 
         /// <summary>
@@ -38,63 +39,283 @@
                 //鍙嶅簭鍒楀寲
                 msg1 = "[" + msg1.ToString() + "]";
                 List<StationBill> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<StationBill>>(msg1);
-                string BillType = "3790";
+                string eventType = list[0].eventType;
+                string BillType = "3791";
+                string HBillSubType = "3791";
                 long HInterID = list[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D
                 string HBillNo = list[0].HBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿
                 int HBillStatus = 0;
                 string HMaker = list[0].HMaker;//鍒跺崟浜�
+                string HMouldNum = list[0].HMouldNum;//妯$┐鍙�
                 int HYear = 2021;
                 double HPeriod = 1;
                 string HRemark = list[0].HRemark;//澶囨敞
+                string HSourceName = list[0].HSourceName;//鐢熶骇璧勬簮鍚嶇О
+                double HPieceQty = list[0].HPieceQty;//杩涚珯PCS鏁�
+                double HWasterQty = list[0].HWasterQty;//鎶ュ簾鏁伴噺
+                double HPlanPieceQty = list[0].HPlanPieceQty;//杩涚珯PNL鏁�
+                double HBadPNL = list[0].HBadPNL;//鎶ュ簾PNL鏁�
                 long HICMOInterID = list[0].HICMOInterID;//浠诲姟鍗旾D
                 string HICMOBillNo = list[0].HICMOBillNo;//浠诲姟鍗�
                 int HProcPlanInterID = 0;
                 int HProcPlanEntryID = 0;
                 string HProcPlanBillNo = "";
-                int HProcExchInterID = 0;
-                int HProcExchEntryID = 0;
+                long HProcExchInterID = list[0].lngBillKey;
+                long HProcExchEntryID = list[0].lngBillSubKey;
                 string HProcExchBillNo = list[0].HProcExchBillNo;//娴佽浆鍗�
                 long HMaterID = list[0].HMaterID;//浜у搧ID
-                long HProcID = list[0].HProcID;//褰撳墠宸ュ簭
+                long HProcID = list[0].HProcID;//褰撳墠宸ュ簭ID
                 double HICMOQty = list[0].HICMOQty;//浠诲姟鍗曟暟閲�
-                double HPlanQty = list[0].HPlanQty;//娴佽浆鍗℃暟閲�
+                double HPlanQty = list[0].HPlanQty;//绉讳氦PNL鏁�
+                DateTime HStationOutTime = list[0].HStationOutTime;//姹囨姤鏃堕棿
                 long HSourceID = list[0].HSourceID;//鐢熶骇璧勬簮ID
+                long HPayProcID = list[0].HPayProcID;//鏍哥畻宸ュ簭ID
                 long HGroupID = list[0].HGroupID;//鐝粍ID
                 long HDeptID = 0;
-                long HEmpID = list[0].HEmpID;//鎺ユ敹浜篒D
+                long HEmpID = list[0].HEmpID;//鎿嶄綔鍛業D
                 string HBarCode = list[0].HBarCode;//鏉″舰鐮�
                 string HAddr = "";
                 string HBarCodeMaker = "";
+                long HSourceID2 = list[0].HSourceID2;//鐢熶骇璧勬簮2ID
+                long HSourceID3 = list[0].HSourceID3;//鐢熶骇璧勬簮3ID
+                long HSourceID4 = list[0].HSourceID4;//鐢熶骇璧勬簮4ID
+                long HSourceID5 = list[0].HSourceID5;//鐢熶骇璧勬簮5ID
                 long HSupID = 0;
-                double HQty = list[0].HQty;//鎺ユ敹鏁伴噺
+                double HQty = list[0].HQty;//鍚堟牸鏁伴噺
                 double HPrice = 0;
                 double HMoney = 0;
-                double HPieceQty = list[0].HPieceQty;//鎺ユ敹浠舵暟
-                string HSourceName = list[0].HSourceName;//鐢熶骇璧勬簮鍚嶇О
+                double HBadCount = list[0].HBadCount;//涓嶈壇鏁伴噺
                 long HCenterID = list[0].HCenterID;//宸ヤ綔涓績ID
-                string HProcNo = list[0].HProcNo;//娴佹按鍙�
+                long HProcNo = list[0].HProcNo;//娴佹按鍙�
                 string HOrderProcNO = list[0].HOrderProcNO;//璁㈠崟璺熻釜鍙�
+                string HSourceNameList = list[0].HSourceNameList;//璁惧娓呭崟
+                long HMainSourceInterID = list[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D
+                string HMainSourceBillNo = list[0].HBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿
+                string HMainSourceBillType = "3790";
+                bool HLastSubProc = list[0].HLastSubProc;//杞笅宸ュ簭
+                long HEmpID2 = list[0].HEmpID2;//鎿嶄綔鍛�2ID
+                long HEmpID3 = list[0].HEmpID3;//鎿嶄綔鍛�3ID
+                long HEmpID4 = list[0].HEmpID4;//鎿嶄綔鍛�4ID
+                long HEmpID5 = list[0].HEmpID5;//鎿嶄綔鍛�5ID
+                double HDSQty = list[0].HDSQty;//鎶樺集鍒�鏁�
+                double HChongQty = list[0].HChongQty;//NCT鍐叉鏁�
+                double HPriceRate = list[0].HPriceRate;//绯绘暟
+                double HWorkTimes = list[0].HWorkTimes;//宸ユ椂
+                long HQCCheckID = list[0].HQCCheckID;//妫�楠屽憳ID
+                //鍗曟嵁瀹屾暣鎬у垽鏂�
+                if (HProcExchInterID <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "娴佽浆鍗℃病鏈夐�夋嫨锛佽鎵弿鏉″舰鐮佹垨杈撳叆鏉″舰鐮佸悗鍥炶溅";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                if (HProcExchEntryID <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "娴佹按鍙锋病鏈夐�夋嫨锛佽杈撳叆娴佹按鍙峰悗鍥炶溅";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                if (HProcNo <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "娴佹按鍙锋病鏈夐�夋嫨锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                if (HProcExchBillNo == "")
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "娴佽浆鍗″彿娌℃湁閫夋嫨锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                if (HMaterID == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "浜у搧娌℃湁閫夋嫨锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                if (HGroupID == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鐢熶骇鐝粍娌℃湁閫夋嫨锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (HProcID == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "褰撳墠宸ュ簭娌℃湁閫夋嫨锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                if (HEmpID == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鎿嶄綔鍛樻病鏈夐�夋嫨锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                if (HQCCheckID == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "妫�楠屽憳娌℃湁閫夋嫨锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                if (HSourceID == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鐢熶骇璧勬簮娌℃湁閫夋嫨锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                if (HCenterID == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "宸ヤ綔涓績娌℃湁閫夋嫨锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                if (HQty + HWasterQty <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍚堟牸鏁伴噺鍔犳姤搴熸暟閲忎笉鑳戒负0锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                if (HWorkTimes <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "宸ユ椂蹇呴』澶т簬0锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                //if (HEmpID2 == 0 )
+                //{
+                //    objJsonResult.code = "0";
+                //    objJsonResult.count = 0;
+                //    objJsonResult.Message = "鎿嶄綔鍛�2娌℃湁閫夋嫨锛�";
+                //    objJsonResult.data = null;
+                //    return objJsonResult;
+                //}
+                //if (HEmpID3 == 0 )
+                //{
+                //    objJsonResult.code = "0";
+                //    objJsonResult.count = 0;
+                //    objJsonResult.Message = "鎿嶄綔鍛�3娌℃湁閫夋嫨锛�";
+                //    objJsonResult.data = null;
+                //    return objJsonResult;
+                //}
+                //if (HEmpID4 == 0 )
+                //{
+                //    objJsonResult.code = "0";
+                //    objJsonResult.count = 0;
+                //    objJsonResult.Message = "鎿嶄綔鍛�4娌℃湁閫夋嫨锛�";
+                //    objJsonResult.data = null;
+                //    return objJsonResult;
+                //}
+                //if (HEmpID5 == 0 )
+                //{
+                //    objJsonResult.code = "0";
+                //    objJsonResult.count = 0;
+                //    objJsonResult.Message = "鎿嶄綔鍛�5娌℃湁閫夋嫨锛�";
+                //    objJsonResult.data = null;
+                //    return objJsonResult;
+                //}
                 //鑻AINDI閲嶅鍒欓噸鏂拌幏鍙�
                 oCN.BeginTran();
+                if ("Add".Equals(eventType))
+                {
+                    if (!AllowbillNo(HBillNo))
+                    {
+                        oCN.RollBack();
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁鍙烽噸澶嶏紒";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    oCN.RunProc("Insert Into Sc_StationOutBillMain " +
+                    "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate,HMouldNum" +
+                    ",HYear,HPeriod,HRemark,HSourceName,HPieceQty,HWasterQty,HPlanPieceQty,HBadPNL" +
+                    ",HICMOInterID,HICMOBillNo,HProcPlanInterID,HProcPlanEntryID,HProcPlanBillNo,HProcExchInterID,HProcExchEntryID" +
+                    ",HProcExchBillNo,HMaterID,HProcID,HICMOQty,HPlanQty,HStationOutTime,HSourceID,HPayProcID" +
+                    ",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" +
+                    ") " +
+                    " values('" + BillType + "','" + HBillSubType + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate(),'" + HMouldNum + "'" +
+                    "," + HYear + "," + HPeriod + ",'" + HRemark + "','" + HSourceName + "'," + HPieceQty + "," + HWasterQty + "," + HPlanPieceQty + "," + HBadPNL +
+                    "," + HICMOInterID + ",'" + HICMOBillNo + "'," + HProcPlanInterID + "," + HProcPlanEntryID + ",'" + HProcPlanBillNo + "'," + HProcExchInterID + "," + HProcExchEntryID +
+                    ",'" + HProcExchBillNo + "'," + HMaterID + "," + HProcID + "," + HICMOQty + "," + HPlanQty + ",'" + HStationOutTime + "'," + HSourceID + "," + HPayProcID +
+                    "," + 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 +
+                    ") ");
+                }
+                else if ("Modify".Equals(eventType))
+                {
+                    oCN.RunProc("UpDate Sc_StationOutBillMain set  " +
+                    "HUpDater='" + HMaker + "'" +
+                    ",HUpDateDate=getdate()" +
+                    ",HSourceName='" + HSourceName + "'" +
+                    ",HRemark='" + HRemark + "'" +
+                    ",HQCCheckID=" + HQCCheckID +
+                    ",HEmpID=" + HEmpID +
+                    ",HEmpID2=" + HEmpID2 +
+                    ",HEmpID3=" + HEmpID3 +
+                    ",HEmpID4=" + HEmpID4 +
+                    ",HEmpID5=" + HEmpID5 +
+                    ",HSourceID=" + HSourceID +
+                    ",HSourceID2=" + HSourceID2 +
+                    ",HSourceID3=" + HSourceID3 +
+                    ",HSourceID4=" + HSourceID4 +
+                    ",HSourceID5=" + HSourceID5 +
+                    ",HPayProcID=" + HPayProcID +
+                    ",HWorkTimes=" + HWorkTimes +
+                    ",HSaveBillFlag=0 " +
+                    ",HPieceQty=" + HPieceQty +
+                    ",HQty=" + HQty +
+                    ",HDSQty=" + HDSQty +
+                    ",HChongQty=" + HChongQty +
+                    ",HMouldNum='" + HMouldNum + "'" +
+                    ",HSourceNameList='" + HSourceNameList + "'" +
+                    ",HWasterQty=" + HWasterQty +
+                    ",HLastSubProc=" + Convert.ToString(HLastSubProc ? 1 : 0) +
+                    " where HInterID=" + HInterID);
+                }
+                else
+                {
+                    oCN.RollBack();
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鎿嶄綔绫诲瀷鏃犳晥锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
                 //涓昏〃
-                oCN.RunProc("Insert Into Sc_StationInBillMain " +
-                "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" +
-                ",HYear,HPeriod,HRemark" +
-                ",HICMOInterID,HICMOBillNo,HProcPlanInterID,HProcPlanEntryID,HProcPlanBillNo,HProcExchInterID,HProcExchEntryID" +
-                ",HProcExchBillNo,HMaterID,HProcID,HICMOQty,HPlanQty,HStationInTime,HSourceID" +
-                ",HGroupID,HDeptID,HEmpID,HBarCode,HAddr,HBarCodeMaker,HBarCodeMakeDate" +
-                ",HSupID,HQty,HPrice,HMoney,HPieceQty,HSourceName,HCenterID" +
-                ",HProcNo,HOrderProcNO" +
-                ") " +
-                " values('" + BillType + "','" + BillType + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate()" +
-                "," + HYear + "," + HPeriod + ",'" + HRemark + "'" +
-                "," + HICMOInterID + ",'" + HICMOBillNo + "'," + HProcPlanInterID + "," + HProcPlanEntryID + ",'" + HProcPlanBillNo + "'," + HProcExchInterID + "," + HProcExchEntryID +
-                ",'" + HProcExchBillNo + "'," + HMaterID + "," + HProcID + "," + HICMOQty + "," + HPlanQty + ",getdate()," + HSourceID +
-                "," + HGroupID + "," + HDeptID + "," + HEmpID + ",'" + HBarCode + "','" + HAddr + "','" + HBarCodeMaker + "',getdate()" +
-                "," + HSupID + "," + HQty + "," + HPrice + "," + HMoney + "," + HPieceQty + ",'" + HSourceName + "'," + HCenterID +
-                ",'" + HProcNo + "','" + HOrderProcNO + "'" +
-              ") ");
-                ds = oCN.RunProcReturn("exec h_p_MES_StationInBill_QtyCtrl " + HInterID + "", "h_p_MES_StationInBill_QtyCtrl");
+
+                ds = oCN.RunProcReturn("exec h_p_MES_StationOutBill_QtyCtrl " + HInterID + "", "h_p_MES_StationOutBill_QtyCtrl");
                 if (ds == null)
                 {
                     oCN.RollBack();
@@ -118,21 +339,23 @@
                     oCN.RollBack();
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
-                    objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
+                    objJsonResult.Message = "鏁伴噺鎺у埗," + ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
-                oCN.RunProc("exec h_p_Mes_ProcessExchangeRelationQty_In " + HInterID + ",1");
-                //鍒ゆ柇鏄惁鏄� 棣栭亾宸ュ簭
+                oCN.RunProc("exec h_p_Mes_ProcessExchangeRelationQty_Out " + HInterID + ",1");
+                oCN.RunProc("exec h_p_Mes_ProcessExchangeChangeStatus  " + HInterID + " ");
+                oCN.RunProc("exec h_p_Mes_StationOutBillBackBarCode  " + HInterID + " ");
+                //鍒ゆ柇鏄惁鏄� 鏈亾宸ュ簭 
                 ds1 = oCN.RunProcReturn(" select HLastProc,HFstProc from Sc_ProcessExchangeBillMain a  " +
                                     " inner join Sc_ProcessExchangeBillSub b on a.HInterID=b.HInterID  " +
                                     " Where a.HInterID=" + HProcExchInterID + " and b.HEntryID=" + HProcExchEntryID + " ", "Sc_ProcessExchangeBillMain");
-                if (ds1 == null || ds1.Tables[0].Rows.Count == 0)
+                if (ds1 == null || ds1.Tables[0].Rows.Count == 0 || HLastSubProc == false)
                 {
-                    
+
                 }
-                else if (ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HFstProc"]) == "鏄�")
-                { 
+                else if (ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HLastProc"]) == "鏄�")
+                {
 
                 }
                 oCN.Commit();
@@ -144,7 +367,6 @@
             }
             catch (Exception e)
             {
-                oCN.RollBack();
                 objJsonResult.code = "0";
                 objJsonResult.count = 0;
                 objJsonResult.Message = "Exception锛�" + e.ToString();
@@ -153,9 +375,18 @@
             }
         }
 
+        private bool AllowbillNo(string HBillNo)
+        {
+            ds = oCN.RunProcReturn("select HBillNo from Sc_StationOutBillMain where  HBillNo = '" + HBillNo + "'", "Sc_StationOutBillMain");
+            if (ds == null || ds.Tables[0].Rows.Count == 0)
+            {
+                return true;
+            }
+            return false;
+        }
 
         /// <summary>
-        /// 杩斿洖宸ュ簭鍑虹珯鍙戝嚭鍗曞垪琛�
+        /// 杩斿洖宸ュ簭鍑虹珯姹囨姤鍗曞垪琛�
         ///鍙傛暟锛歴tring sql銆�
         ///杩斿洖鍊硷細object銆�
         /// </summary>
@@ -202,7 +433,177 @@
             }
         }
 
+        /// <summary>
+        /// 缂栬緫椤甸潰鏍规嵁id鑾峰彇宸ュ簭鍑虹珯姹囨姤鍗曚俊鎭�
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("Cj_StationOutBill/GetStationOutBill")]
+        [HttpGet]
+        public object GetStationOutBill(int HInterID)
+        {
+            try
+            {
+                ds = oCN.RunProcReturn("select * from h_v_GetStationOutBill where HInterID = " + HInterID, "h_v_GetStationOutBill");
+                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;
+            }
+        }
+
 
         //
+
+
+        [Route("Cj_StationOutBill/UploadFile")]
+        [HttpPost]
+        public object UploadFile()
+        {
+            try
+            {
+                int num = 0;
+                string HBillNo = HttpContext.Current.Request.Params["HBillNo"];  //鍗曟嵁鍙�
+                string HRemark = HttpContext.Current.Request.Params["HRemark"];  //澶囨敞
+                string HUserName = HttpContext.Current.Request.Params["HUserName"];  //鍗曟嵁鍙�
+                string uploadPath = HttpContext.Current.Server.MapPath("~/App_Data/");
+                HttpRequest request = System.Web.HttpContext.Current.Request;
+                HttpFileCollection files = request.Files;
+              
+                string savePath = "";
+                if (files == null || files.Count <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏂囦欢涓嶈兘涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else
+                {
+                    for (int i = 0; i < files.Count; i++)
+                    {
+                   
+                        // 鑾峰彇鏂囦欢
+                        HttpPostedFile httpPostedFile = files[i];
+
+                        string filePath = Path.GetFullPath(httpPostedFile.FileName);//鏂囦欢涓婁紶璺緞
+                        string fileExtension = Path.GetExtension(httpPostedFile.FileName);// 鏂囦欢鎵╁睍鍚�
+                        string filename = httpPostedFile.FileName;
+                        string fileSavePath = uploadPath;// 涓婁紶淇濆瓨璺緞
+                        int filesize = files[i].ContentLength;//鑾峰彇涓婁紶鏂囦欢鐨勫ぇ灏忓崟浣嶄负瀛楄妭byte
+                        int Maxsize = 40000 * 1024;//瀹氫箟涓婁紶鏂囦欢鐨勬渶澶х┖闂村ぇ灏忎负40M
+                        if (filesize >= Maxsize)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "涓婁紶鏂囦欢瓒呰繃40M锛屼笉鑳戒笂浼狅紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        if (Directory.Exists(fileSavePath) == false)//濡傛灉涓嶅瓨鍦ㄥ氨鍒涘缓file鏂囦欢澶�
+                        {
+                            Directory.CreateDirectory(fileSavePath); //娣诲姞鏂囦欢澶�
+                        }
+                        savePath = Path.Combine(fileSavePath, filename);
+                        //鏌ヨ鏂囦欢鍏宠仈琛�,鏄惁宸插瓨鍦ㄤ笂浼犳暟鎹�
+                        ds = oCN.RunProcReturn("select * from MES_AccessoriesList where HSourceBillNo = " + HBillNo, "MES_AccessoriesList");
+                        if (ds == null || ds.Tables[0].Rows.Count == 0)
+                        {
+                            //鍐欏叆鏈嶅姟鍣ㄦ枃浠�
+                            httpPostedFile.SaveAs(savePath);
+                            //鍐欏叆鏁版嵁琛�
+                            oCN.RunProc("Insert into MES_AccessoriesList (HFileName,HFilePath,HFilePath_Cus,HFileType" +
+                                        ",HLoadMan,HLoadDate,HRemark,HVerNum,HFileSize" +
+                                        ",HFileClsID,HSourceBillNo" +
+                                       ") values('"
+                                        + filename.ToString() + "','" + savePath.ToString() + "','" + filePath.ToString() + "','" + fileExtension.ToString()+ "'" +
+                                        ",'" + HUserName + "',getdate(),'" + HRemark + "','V1','" + filesize +
+                                        "','" + 0 + "','" + HBillNo +
+                                       "') ");
+                        }
+                        else 
+                        {
+                            //鍒犻櫎鏈嶅姟鍣ㄦ枃浠�
+                            FileInfo file = new FileInfo(HttpContext.Current.Server.MapPath(savePath));
+                            file.Delete();
+                            //鍒犻櫎鏁版嵁琛ㄦ暟鎹�
+                            ds = oCN.RunProcReturn("delete from MES_AccessoriesList where HSourceBillNo =  " + HBillNo, "MES_AccessoriesList");
+
+                            //鍐欏叆鏈嶅姟鍣ㄦ枃浠�
+                            httpPostedFile.SaveAs(savePath);
+                            //鍐欏叆鏁版嵁琛�
+                            //鍐欏叆鏁版嵁琛�
+                            oCN.RunProc("Insert into MES_AccessoriesList (HFileName,HFilePath,HFilePath_Cus,HFileType" +
+                                       ",HLoadMan,HLoadDate,HRemark,HVerNum,HFileSize" +
+                                       ",HFileClsID,HSourceBillNo" +
+                                      ") values('"
+                                       + filename.ToString() + "','" + savePath.ToString() + "','" + filePath.ToString() + "','" + fileExtension.ToString() + "'" +
+                                       ",'" + HUserName + "',getdate(),'" + HRemark + "','V1','" + filesize +
+                                       "','" + 0 + "','" + HBillNo +
+                                      "') ");
+                        }
+                        //if (Directory.Exists(savePath) == true)  //濡傛灉瀛樺湪閲嶅悕鏂囦欢灏辨彁绀�  
+                        //{
+                        //    objJsonResult.code = "0";
+                        //    objJsonResult.count = 0;
+                        //    objJsonResult.Message = "瀛樺湪鍚屽悕鏂囦欢锛�";
+                        //    objJsonResult.data = null;
+                        //    return objJsonResult;
+                        //}
+                        httpPostedFile.SaveAs(savePath);
+                        string StrPath = "/File/" + filename;
+                        //鍐欏叆鏁版嵁琛�
+
+                        num = num + 1;
+                    }
+                    if (num == files.Count)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "涓婁紶鎴愬姛锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "涓婁紶澶辫触锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = e.Message;
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+           
+        }
     }
 }
\ No newline at end of file

--
Gitblit v1.9.1