New file |
| | |
| | | using Newtonsoft.Json.Linq; |
| | | using Pub_Class; |
| | | using System; |
| | | using System.Collections; |
| | | using System.Collections.Generic; |
| | | using System.Data; |
| | | using System.Data.SqlClient; |
| | | using System.Web.Http; |
| | | using WebAPI.Models; |
| | | |
| | | namespace WebAPI.Controllers |
| | | { |
| | | //å·¥åºæµè½¬å¡Controller |
| | | public class Sc_ProcessExchangeBillController : ApiController |
| | | { |
| | | public DBUtility.ClsPub.Enum_BillStatus BillStatus; |
| | | private json objJsonResult = new json(); |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | DataSet ds; |
| | | |
| | | /// <summary> |
| | | /// æ°å¢åæ®-ä¿åæé® |
| | | ///åæ°ï¼string sqlã |
| | | ///è¿åå¼ï¼objectã |
| | | /// </summary> |
| | | [Route("Sc_ProcessExchangeBill/AddBill")] |
| | | [HttpPost] |
| | | public object AddBill([FromBody] JObject sMainSub) |
| | | { |
| | | var _value = sMainSub["sMainSub"].ToString(); |
| | | string msg1 = _value.ToString(); |
| | | //ä¿ååæ® |
| | | return objJsonResult = AddBillMain(msg1); |
| | | } |
| | | |
| | | public json AddBillMain(string msg1) |
| | | { |
| | | string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); |
| | | string msg2 = sArray[0].ToString(); |
| | | string msg3 = sArray[1].ToString(); |
| | | bool bResult; |
| | | try |
| | | { |
| | | msg2 = "[" + msg2.ToString() + "]"; |
| | | List<Model.ClsSc_ProcessExchangeBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsSc_ProcessExchangeBillMain>>(msg2); |
| | | DAL.ClsSc_ProcessExchangeBill BillNew = new DAL.ClsSc_ProcessExchangeBill(); |
| | | //夿ä¼è®¡ææ¯å¦åç |
| | | string s = ""; |
| | | int sYear = 0; |
| | | int sPeriod = 0; |
| | | DateTime HDate = mainList[0].HDate;//æ¥æ |
| | | if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(HDate, ref sYear, ref sPeriod, ref s) == false) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = s; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | BillNew.omodel.HInterID = mainList[0].HInterID;//éå
¥typeå¾å°çåæ®ID |
| | | BillNew.omodel.HYear = sYear; |
| | | BillNew.omodel.HPeriod = sPeriod; |
| | | BillNew.omodel.HBillNo = mainList[0].HBillNo;//éå
¥typeå¾å°çåæ®å· |
| | | BillNew.omodel.HDate = HDate; |
| | | BillNew.omodel.HRemark = mainList[0].HRemark;//夿³¨ |
| | | BillNew.omodel.HMaker = mainList[0].HMaker; |
| | | BillNew.omodel.HWWOrderInterID = ClsPub.isLong(mainList[0].HWWOrderInterID); |
| | | BillNew.omodel.HWWOrderEntryID = ClsPub.isLong(mainList[0].HWWOrderEntryID); |
| | | BillNew.omodel.HWWOrderBillNo = ClsPub.isStrNull(mainList[0].HWWOrderBillNo); |
| | | BillNew.omodel.HICMOInterID = ClsPub.isLong(mainList[0].HICMOInterID); |
| | | BillNew.omodel.HICMOEntryID = ClsPub.isLong(mainList[0].HICMOEntryID); |
| | | BillNew.omodel.HICMOBillNo = ClsPub.isStrNull(mainList[0].HICMOBillNo); |
| | | BillNew.omodel.HMaterID2 = ClsPub.isLong(mainList[0].HMaterID2); |
| | | BillNew.omodel.HMaterID = ClsPub.isLong(mainList[0].HMaterID); |
| | | BillNew.omodel.HMaterNumber = ClsPub.isStrNull(mainList[0].HMaterNumber); |
| | | BillNew.omodel.HBatchNo = ClsPub.isStrNull(mainList[0].HBatchNo); |
| | | BillNew.omodel.HUnitID = ClsPub.isLong(mainList[0].HUnitID); |
| | | BillNew.omodel.HUnitNumber = ClsPub.isStrNull(mainList[0].HUnitNumber); |
| | | BillNew.omodel.HPlanQty = ClsPub.isDoule(mainList[0].HPlanQty); |
| | | BillNew.omodel.HQty = ClsPub.isDoule(mainList[0].HQty); |
| | | BillNew.omodel.HPlanBeginDate = ClsPub.isDate(mainList[0].HPlanBeginDate); |
| | | BillNew.omodel.HPlanEndDate = ClsPub.isDate(mainList[0].HPlanEndDate); |
| | | BillNew.omodel.HExplanation = ClsPub.isStrNull(mainList[0].HExplanation); |
| | | BillNew.omodel.HInnerBillNo = ClsPub.isStrNull(mainList[0].HInnerBillNo); |
| | | BillNew.omodel.HWorkShopID = ClsPub.isLong(mainList[0].HWorkShopID); |
| | | BillNew.omodel.HSupID = ClsPub.isLong(mainList[0].HSupID); |
| | | BillNew.omodel.HBLFlag = mainList[0].HBLFlag; |
| | | BillNew.omodel.HMainMaterID = ClsPub.isLong(mainList[0].HMainMaterID); |
| | | BillNew.omodel.HKeyMaterID = ClsPub.isLong(mainList[0].HKeyMaterID); |
| | | BillNew.omodel.HOrderProcNO = ClsPub.isStrNull(mainList[0].HOrderProcNO); |
| | | BillNew.omodel.HEquipMentID = ClsPub.isLong(mainList[0].HEquipMentID); |
| | | BillNew.omodel.HMateOutBatchNo = ClsPub.isStrNull(mainList[0].HMateOutBatchNo); |
| | | BillNew.omodel.HProjectNum = ClsPub.isStrNull(mainList[0].HProjectNum); |
| | | BillNew.omodel.HProdMaterCode = ClsPub.isStrNull(mainList[0].HProdMaterCode); |
| | | BillNew.omodel.HSeOrderBillNo = ClsPub.isStrNull(mainList[0].HSeOrderBillNo); |
| | | BillNew.omodel.HCusShortName = ClsPub.isStrNull(mainList[0].HCusShortName); |
| | | BillNew.omodel.HCusNeedMaterial = ClsPub.isStrNull(mainList[0].HCusNeedMaterial); |
| | | BillNew.omodel.HPlanSendGoodsDate = ClsPub.isStrNull(mainList[0].HPlanSendGoodsDate); |
| | | BillNew.omodel.HProdMaterName = ClsPub.isStrNull(mainList[0].HProdMaterName); |
| | | BillNew.omodel.HCusName = ClsPub.isStrNull(mainList[0].HCusName); |
| | | BillNew.omodel.HWorkRemark = ClsPub.isStrNull(mainList[0].HWorkRemark); |
| | | BillNew.omodel.HImportNote = ClsPub.isStrNull(mainList[0].HImportNote); |
| | | BillNew.omodel.HMaterNumber_A = ClsPub.isStrNull(mainList[0].HMaterNumber_A); |
| | | BillNew.omodel.HMaterNumber_B = ClsPub.isStrNull(mainList[0].HMaterNumber_B); |
| | | BillNew.omodel.HMaterNumber_C = ClsPub.isStrNull(mainList[0].HMaterNumber_C); |
| | | BillNew.omodel.HMaterNumber_D = ClsPub.isStrNull(mainList[0].HMaterNumber_D); |
| | | BillNew.omodel.HProdType = ClsPub.isStrNull(mainList[0].HProdType); |
| | | BillNew.omodel.HMaterShortName = ClsPub.isStrNull(mainList[0].HMaterShortName); |
| | | BillNew.omodel.HMaterIDA = ClsPub.isStrNull(mainList[0].HMaterIDA); |
| | | BillNew.omodel.HMaterIDB = ClsPub.isStrNull(mainList[0].HMaterIDB); |
| | | BillNew.omodel.HMaterIDC = ClsPub.isStrNull(mainList[0].HMaterIDC); |
| | | BillNew.omodel.HMaterIDD = ClsPub.isStrNull(mainList[0].HMaterIDD); |
| | | List<Model.ClsSc_ProcessExchangeBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsSc_ProcessExchangeBillSub>>(msg3); |
| | | BillNew.DetailColl = new List<Model.ClsSc_ProcessExchangeBillSub>(); |
| | | for (int i = 0; i < subList.ToArray().Length; i++) |
| | | { |
| | | if (DBUtility.ClsPub.isInt(subList[i].HProcID) != 0)//HQty |
| | | { |
| | | Model.ClsSc_ProcessExchangeBillSub oSub = new Model.ClsSc_ProcessExchangeBillSub(); |
| | | oSub.HEntryID = i; |
| | | oSub.HRemark = DBUtility.ClsPub.isStrNull(subList[i].HRemark); |
| | | oSub.HSourceInterID = ClsPub.isLong(mainList[0].HICMOInterID); |
| | | oSub.HSourceEntryID = ClsPub.isLong(mainList[0].HICMOEntryID); |
| | | oSub.HSourceBillType = "85"; |
| | | oSub.HSourceBillNo = ClsPub.isStrNull(mainList[0].HICMOBillNo); |
| | | oSub.HRelationQty = DBUtility.ClsPub.isDoule(subList[i].HRelationQty); |
| | | //oSub.HRelationQty_In = DBUtility.ClsPub.isDoule(subList[i].HRelationQty_In); |
| | | //oSub.HRelationQty_Out = DBUtility.ClsPub.isDoule(subList[i].HRelationQty_Out); |
| | | //oSub.HRelationQty_WWOrder = DBUtility.ClsPub.isDoule(subList[i].HRelationQty_WWOrder); |
| | | //oSub.HRelationQty_Bad = DBUtility.ClsPub.isDoule(subList[i].HRelationQty_Bad); |
| | | oSub.HRelationMoney = DBUtility.ClsPub.isDoule(subList[i].HRelationMoney); |
| | | oSub.HCloseMan = DBUtility.ClsPub.isStrNull(subList[i].HCloseMan); |
| | | oSub.HEntryCloseDate = DBUtility.ClsPub.isDate(subList[i].HEntryCloseDate); |
| | | oSub.HCloseType = DBUtility.ClsPub.isBool(subList[i].HCloseType); |
| | | oSub.HQty = DBUtility.ClsPub.isDoule(subList[i].HQty); |
| | | if (oSub.HQty <= 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "第" + ClsPub.isStrNull(i + 1) + "è¡ï¼æµè½¬å¡æ°éä¸è½ä¸º0æè
å°äº0"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | oSub.HProcNo = DBUtility.ClsPub.isLong(subList[i].HProcNo); |
| | | if (oSub.HProcNo <= 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "第" + ClsPub.isStrNull(i + 1) + "è¡ï¼æµæ°´å·ä¸è½ä¸º0æè
å°äº0"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | oSub.HProcID = DBUtility.ClsPub.isLong(subList[i].HProcID); |
| | | oSub.HProcNumber = DBUtility.ClsPub.isStrNull(subList[i].HProcNumber); |
| | | oSub.HWorkRemark = DBUtility.ClsPub.isStrNull(subList[i].HWorkRemark); |
| | | oSub.HCenterID = DBUtility.ClsPub.isLong(subList[i].HCenterID); |
| | | oSub.HDeptID = DBUtility.ClsPub.isLong(subList[i].HDeptID); |
| | | oSub.HDeptNumber = DBUtility.ClsPub.isStrNull(subList[i].HDeptNumber); |
| | | ////oSub.HGroupID = DBUtility.ClsPub.isLong(grdMain.Rows[i].Cells[HGroupIDCol].Value); |
| | | oSub.HGroupNumber = DBUtility.ClsPub.isStrNull(subList[i].HGroupNumber); |
| | | oSub.HWorkerID = DBUtility.ClsPub.isLong(subList[i].HWorkerID); |
| | | oSub.HWorkerNumber = DBUtility.ClsPub.isStrNull(subList[i].HWorkerNumber); |
| | | oSub.HSourceID = DBUtility.ClsPub.isLong(subList[i].HSourceID); |
| | | oSub.HTimeUnit = DBUtility.ClsPub.isStrNull(subList[i].HTimeUnit); |
| | | oSub.HPlanWorkTimes = DBUtility.ClsPub.isSingle(subList[i].HPlanWorkTimes); |
| | | oSub.HPlanBeginDate = DBUtility.ClsPub.isDate(subList[i].HPlanBeginDate); |
| | | oSub.HPlanEndDate = DBUtility.ClsPub.isDate(subList[i].HPlanEndDate); |
| | | oSub.HRelBeginDate = DBUtility.ClsPub.isDate(subList[i].HRelBeginDate); |
| | | oSub.HRelEndDate = DBUtility.ClsPub.isDate(subList[i].HRelEndDate); |
| | | oSub.HReadyTime = 0; |
| | | oSub.HQueueTime = 0; |
| | | oSub.HMoveTime = 0; |
| | | oSub.HBeginDayQty = DBUtility.ClsPub.isSingle(subList[i].HBeginDayQty); |
| | | oSub.HBeginFixQty = DBUtility.ClsPub.isSingle(subList[i].HBeginFixQty); |
| | | oSub.HFixWorkDays = DBUtility.ClsPub.isSingle(subList[i].HFixWorkDays); |
| | | oSub.HTrunWorkDays = DBUtility.ClsPub.isSingle(subList[i].HTrunWorkDays); |
| | | oSub.HReadyTimes = DBUtility.ClsPub.isSingle(subList[i].HReadyTimes); |
| | | oSub.HMyWorkDays = DBUtility.ClsPub.isSingle(subList[i].HMyWorkDays); |
| | | oSub.HOutPrice = DBUtility.ClsPub.isSingle(subList[i].HOutPrice); |
| | | oSub.HOutMoney = DBUtility.ClsPub.isSingle(subList[i].HOutMoney); |
| | | oSub.HLastProc = "å¦"; |
| | | oSub.HFstProc = "å¦"; |
| | | oSub.HKeyProc = DBUtility.ClsPub.isStrNull(subList[i].HKeyProc); |
| | | oSub.HSupID = DBUtility.ClsPub.isLong(subList[i].HSupID); |
| | | oSub.HSupFlag = DBUtility.ClsPub.isBool(subList[i].HSupFlag); |
| | | oSub.HBackProc = DBUtility.ClsPub.isBool(subList[i].HBackProc); |
| | | oSub.HEdit = DBUtility.ClsPub.isBool(subList[i].HEdit); |
| | | if (oSub.HCenterID == 0 && oSub.HSupFlag == false) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "第" + ClsPub.isStrNull(i + 1) + "è¡ï¼å·¥ä½ä¸å¿æå§å¤æ è®°ä¸è½åæ¶ä¸ºç©º"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | oSub.HICMOBillNo = DBUtility.ClsPub.isStrNull(subList[i].HICMOBillNo); |
| | | oSub.HICMOInterID = DBUtility.ClsPub.isLong(subList[i].HICMOInterID); |
| | | oSub.HSeOrderInterID = DBUtility.ClsPub.isLong(subList[i].HSeOrderInterID); |
| | | oSub.HSeOrderEntryID = DBUtility.ClsPub.isLong(subList[i].HSeOrderEntryID); |
| | | oSub.HSeOrderBillNo = DBUtility.ClsPub.isStrNull(subList[i].HSeOrderBillNo); |
| | | oSub.HWWOrderInterID = DBUtility.ClsPub.isLong(subList[i].HWWOrderInterID); |
| | | oSub.HWWOrderEntryID = DBUtility.ClsPub.isLong(subList[i].HWWOrderEntryID); |
| | | oSub.HWWOrderBillNo = DBUtility.ClsPub.isStrNull(subList[i].HWWOrderBillNo); |
| | | oSub.HSumPassRate = DBUtility.ClsPub.isSingle(subList[i].HSumPassRate); |
| | | oSub.HPassRate = DBUtility.ClsPub.isSingle(subList[i].HPassRate); |
| | | oSub.HOverRate = DBUtility.ClsPub.isDoule(subList[i].HOverRate); |
| | | oSub.HMaxQty = DBUtility.ClsPub.isDoule(subList[i].HMaxQty); |
| | | oSub.HTechnologyParameter = DBUtility.ClsPub.isStrNull(subList[i].HTechnologyParameter); |
| | | oSub.HPicNum = DBUtility.ClsPub.isStrNull(subList[i].HPicNum); |
| | | oSub.HProcCheckNote = DBUtility.ClsPub.isStrNull(subList[i].HProcCheckNote); |
| | | BillNew.DetailColl.Add(oSub); |
| | | } |
| | | } |
| | | //ä¿å宿¯åå¤ç |
| | | //if (BillStatus == DBUtility.ClsPub.Enum_BillStatus.BillStatus_AddNew) |
| | | //{ |
| | | // bResult = BillNew.AddBill(ref ClsPub.sExeReturnInfo); |
| | | //} |
| | | //else |
| | | //{ |
| | | // bResult = BillNew.ModifyBill(BillNew.omodel.HInterID, ref ClsPub.sExeReturnInfo); |
| | | //} |
| | | bResult = BillNew.AddBill(ref ClsPub.sExeReturnInfo); |
| | | //æç¤º |
| | | if (bResult == true) |
| | | { |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | //objJsonResult.Message = "åæ®åç宿¯!åæ®å·:" + mainList[0].HBillNo.Trim(); |
| | | objJsonResult.Message = ClsPub.sExeReturnInfo+"åæ®å·:" + mainList[0].HBillNo.Trim(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "ä¿å失败!åå :" + ClsPub.sExeReturnInfo; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "Exceptionï¼" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è¿åç产任å¡åæç»è¡ |
| | | /// </summary> |
| | | /// <param name="hmainid">ç产任å¡åID</param> |
| | | /// <returns>object</returns> |
| | | [Route("Sc_ProcessExchangeBill/GetICMOBillDetail")] |
| | | [HttpGet] |
| | | public object GetICMOBillDetail(int hmainid,int OrganizationID) |
| | | { |
| | | try |
| | | { |
| | | if (hmainid == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "ç产任å¡åID为0ï¼"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | ds = oCN.RunProcReturn("select * from h_v_Sc_ICMOBillListDetail where hmainid=" + hmainid + " and HSTOCKINORGID="+ OrganizationID, "h_v_Sc_ICMOBillListDetail"); |
| | | 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; |
| | | } |
| | | } |
| | | |
| | | |
| | | // |
| | | } |
| | | } |