| | |
| | | using Newtonsoft.Json; |
| | | using Newtonsoft.Json.Linq; |
| | | using Pub_Class; |
| | | using SyntacticSugar.constant; |
| | | using System; |
| | | using System.Collections; |
| | | using System.Collections.Generic; |
| | |
| | | using System.Data.SqlClient; |
| | | using System.Web.Http; |
| | | using WebAPI.Models; |
| | | using Model; |
| | | |
| | | namespace WebAPI.Controllers |
| | | { |
| | |
| | | { |
| | | public DBUtility.ClsPub.Enum_BillStatus BillStatus; |
| | | Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter(); |
| | | |
| | | public DAL.ClsSc_ICMOBill BillOld = new DAL.ClsSc_ICMOBill(); |
| | | private json objJsonResult = new json(); |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | DataSet ds; |
| | |
| | | else |
| | | { |
| | | string sql1 = "select * from h_v_MES_StationEntrustInBillList 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_MES_StationEntrustInBillList"); |
| | | } |
| | | |
| | |
| | | columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名 |
| | | } |
| | | |
| | | //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; |
| | | //} |
| | | //else |
| | | //{ |
| | | //objJsonResult.code = "0"; |
| | | //objJsonResult.count = 0; |
| | | //objJsonResult.Message = "无数据"; |
| | | //objJsonResult.data = null; |
| | | //return objJsonResult; |
| | | //} |
| | | } |
| | | catch (Exception e) |
| | | { |
| | |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region 返回委外工序发出单列表 |
| | | [Route("Cj_StationEntrustInBill/list_Eng")] |
| | | [HttpGet] |
| | | public object list_Eng(string sWhere, string user) |
| | | { |
| | | try |
| | | { |
| | | List<object> columnNameList = new List<object>(); |
| | | //判断是否有查询权限 |
| | | if (!DBUtility.ClsPub.Security_Log("MES_StationEntrustInBill_Query", 1, false, user)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "无查询权限!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | if (sWhere == null || sWhere.Equals("")) |
| | | { |
| | | ds = oCN.RunProcReturn("select * from h_v_MES_StationEntrustInBillList_Eng", "h_v_MES_StationEntrustInBillList_Eng"); |
| | | // order by hmainid desc 排序丢到数据库里进行处理 |
| | | } |
| | | else |
| | | { |
| | | string sql1 = "select * from h_v_MES_StationEntrustInBillList_Eng where 1 = 1 "; |
| | | string sql = sql1 + sWhere + " order by hmainid desc"; |
| | | ds = oCN.RunProcReturn(sql, "h_v_MES_StationEntrustInBillList_Eng"); |
| | | } |
| | | |
| | | //添加列名 |
| | | 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列对象的列名 |
| | | } |
| | | |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "Sucess!"; |
| | | objJsonResult.list = columnNameList; |
| | | 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_StationEntrustInBill/getStationEntrustInBillPage")] |
| | | [HttpGet] |
| | | public json getStationEntrustInBillPage(string sWhere, string user, int page, int size) |
| | | { |
| | | DataSet ds; |
| | | json res = new json(); |
| | | try |
| | | { |
| | | List<object> columnNameList = new List<object>(); |
| | | //判断权限 |
| | | if (!DBUtility.ClsPub.Security_Log("MES_StationEntrustInBill_Query", 1, false, user)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "无权限查询!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | sWhere = sWhere.Replace("'", "''"); |
| | | if (sWhere == null || sWhere.Equals("")) |
| | | { |
| | | ds = oCN.RunProcReturn("exec h_p_Sc_StationEntrustInBillList " + page + "," + size + ",''", "h_p_Sc_StationEntrustInBillList"); |
| | | } |
| | | else |
| | | { |
| | | ds = oCN.RunProcReturn("exec h_p_Sc_StationEntrustInBillList " + page + "," + size + ",'" + sWhere + "'", "h_p_Sc_StationEntrustInBillList"); |
| | | } |
| | | |
| | | //添加列名 |
| | | 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列对象的列名 |
| | | } |
| | | |
| | | res.code = CodeConstant.SUCCEED; |
| | | res.count = int.Parse(ds.Tables[1].Rows[0]["count"].ToString()); |
| | | res.Message = "Sucess!"; |
| | | res.list = columnNameList; |
| | | res.data = ds.Tables[0]; |
| | | return res; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | res.code = CodeConstant.FAIL; |
| | | res.count = CountConstant.FAIL; |
| | | res.Message = "Exception!" + e.ToString(); |
| | | res.data = null; |
| | | return res; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | |
| | | |
| | | #region 委外工序发出单流水号回车获取流转卡信息(委外工序接收、工序进站接收通用) |
| | | [Route("Cj_StationEntrustInBill/txtHBarCode_KeyDown")] |
| | |
| | | } |
| | | #endregion |
| | | |
| | | #region 委外工序发出单流水号回车获取条码信息2(委外工序接收、工序进站接收通用) |
| | | #region 委外工序发出单流水号回车获取条码信息2 |
| | | [Route("Cj_StationBill/txtHBarCode_KeyDown2")] |
| | | [HttpGet] |
| | | public object txtHBarCode_KeyDown2(string HBarCode,string HInterID,string UserID) |
| | | public object txtHBarCode_KeyDown2(string HBarCode,string HInterID,string UserID,string HBillType) |
| | | { |
| | | try |
| | | { |
| | |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "空白码,条形码不能为空!"; |
| | | objJsonResult.Message = "[0000-2-019]空白码,条形码不能为空!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | |
| | | NewBarCode = sBillBarCode.Split(Convert.ToChar("#")); |
| | | sBillBarCode = NewBarCode[0]; |
| | | } |
| | | string sBillNo = sBillBarCode; |
| | | //截取条码类型 |
| | | string BillNoType = sBillNo.Substring(0, Math.Min(3, sBillNo.Length)); |
| | | //截取内码 |
| | | string BillNo = sBillNo.Substring(3, Math.Min(sBillNo.Length - 3,sBillNo.Length)); |
| | | string sBillNo = sBillBarCode; //条形码 |
| | | |
| | | string[] arr = sBillNo.Split('&'); //以符号‘&’分割条形码 |
| | | string BillNo_PGD = arr[0]; //单据号 |
| | | string entryid_PGD = "";//子id |
| | | if(arr.Length > 1) |
| | | { |
| | | entryid_PGD = arr[1]; |
| | | } |
| | | |
| | | //截取条码类型 前两位 |
| | | string BillNoType1 = BillNo_PGD.Substring(0, Math.Min(2, BillNo_PGD.Length)); |
| | | //截取条码类型 前三位 |
| | | string BillNoType = BillNo_PGD.Substring(0, Math.Min(3, BillNo_PGD.Length)); |
| | | //截取条码类型2 前四位 |
| | | string BillNoType2 = BillNo_PGD.Substring(0, Math.Min(4, BillNo_PGD.Length)); |
| | | //截取内码 |
| | | string BillNo = BillNo_PGD.Substring(3, Math.Min(BillNo_PGD.Length - 3, BillNo_PGD.Length)); |
| | | switch (BillNoType1) |
| | | { |
| | | case "20"://流转卡 |
| | | string sErr = ""; |
| | | if (oSystemParameter.ShowBill(ref sErr)) |
| | | { |
| | | if (oSystemParameter.omodel.WMS_CampanyName == "杭州斯莫尔") |
| | | { |
| | | ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillList where 单据号= '" + BillNo_PGD + "'", "h_v_Sc_ProcessExchangeBillList"); |
| | | } |
| | | } |
| | | break; |
| | | case "OP"://流转卡 |
| | | sErr = ""; |
| | | if (oSystemParameter.ShowBill(ref sErr)) |
| | | { |
| | | if (oSystemParameter.omodel.WMS_CampanyName == "海诚") |
| | | { |
| | | //同步工序流转卡 |
| | | oCN.RunProc("exec h_p_IFCLD_ERPSourceBillToLocal_ProcExchAndRouting '" + BillNo_PGD + "'"); |
| | | ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillList where 单据号= '" + BillNo_PGD + "'", "h_v_Sc_ProcessExchangeBillList"); |
| | | } |
| | | else |
| | | { |
| | | //同步工序流转卡 |
| | | oCN.RunProc("exec h_p_IFCLD_ERPSourceBillToLocal_ProcExchAndRouting '" + BillNo_PGD + "'"); |
| | | ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillList where 单据号= '" + BillNo_PGD + "'", "h_v_Sc_ProcessExchangeBillList"); |
| | | } |
| | | } |
| | | |
| | | break; |
| | | case "MO"://流转卡 |
| | | sErr = ""; |
| | | if (oSystemParameter.ShowBill(ref sErr)) |
| | | { |
| | | if (oSystemParameter.omodel.WMS_CampanyName == "华舟") |
| | | { |
| | | ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillList where 单据号= '" + BillNo_PGD + "'", "h_v_Sc_ProcessExchangeBillList"); |
| | | } |
| | | } |
| | | break; |
| | | } |
| | | |
| | | switch (BillNoType2) |
| | | { |
| | | case "GXLZ"://工序流转派工 |
| | | ds = oCN.RunProcReturn("select * from h_v_Sc_ProcExchSendWorkBill where 派工单据号 = '" + BillNo_PGD + "'" + " and HEntryID ='" + entryid_PGD + "'", "h_v_Sc_ProcExchSendWorkBill"); |
| | | break; |
| | | case "GXLX"://流转卡 |
| | | string sErr = ""; |
| | | if (oSystemParameter.ShowBill(ref sErr)) |
| | | { |
| | | if (oSystemParameter.omodel.WMS_CampanyName == "乔一") |
| | | { //系统参数是否为只显示当前登录用户关联的工序信息,N为否,Y为是 |
| | | if (oSystemParameter.omodel.MES_StationInBill_ShowUSERProcess == "Y") |
| | | { |
| | | ds = oCN.RunProcReturn($"exec h_p_ProcessExchangeBillLastHProNo '{BillNo_PGD}','{UserID}','{HBillType}'", "h_v_Gy_ProcessList_GetProcNoByUser"); |
| | | } |
| | | else |
| | | { |
| | | ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillList where 单据号= '" + BillNo_PGD + "'", "h_v_Sc_ProcessExchangeBillList"); |
| | | } |
| | | } |
| | | else if (entryid_PGD != "") //如果子id不为空则加入子id过滤; |
| | | { |
| | | ds = oCN.RunProcReturn("select * from h_v_Sc_ProcessExchangeBillList where 单据号= '" + BillNo_PGD + "'" + " and hsubid ='" + entryid_PGD + "'", "h_v_Sc_ProcessExchangeBillList"); |
| | | } |
| | | else |
| | | { |
| | | ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillList where 单据号= '" + BillNo_PGD + "'", "h_v_Sc_ProcessExchangeBillList"); |
| | | } |
| | | } |
| | | break; |
| | | case "P202"://流转卡 |
| | | case "P203"://流转卡 |
| | | case "P204"://流转卡 |
| | | case "P205"://流转卡 |
| | | case "P201"://流转卡 |
| | | case "MO26"://华舟流转卡 |
| | | case "MO27"://华舟流转卡 |
| | | case "MO28"://华舟流转卡 |
| | | ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillList where 单据号= '" + BillNo_PGD + "'", "h_v_Sc_ProcessExchangeBillList"); |
| | | break; |
| | | } |
| | | switch (BillNoType) |
| | | //得到信息 |
| | | { |
| | | case "HCX"://生产资源码 |
| | | ds = oCN.RunProcReturn("select * from h_v_Gy_SourceList where 条码编号 = '" + BillNo + "'", "h_v_Gy_SourceList"); |
| | | case "htt"://生产资源码 |
| | | |
| | | string sErr = ""; |
| | | if (oSystemParameter.ShowBill(ref sErr)) |
| | | { |
| | | if (oSystemParameter.omodel.WMS_CampanyName == "杭州斯莫尔") |
| | | { |
| | | ds = oCN.RunProcReturn(@"select s.HItemID,s.HName 生产资源名称,s.HNumber from Gy_EquipFileBillMain a |
| | | left join Gy_Source s on a.HSourceID = s.HItemID |
| | | where HBarCode = '" + BillNo_PGD + "'", "Gy_EquipFileBillMain"); |
| | | } |
| | | else { |
| | | ds = oCN.RunProcReturn("select * from h_v_Gy_SourceList where 条码编号 = '" + BillNo + "'", "h_v_Gy_SourceList"); |
| | | } |
| | | } |
| | | |
| | | break; |
| | | case "SBM"://设备码 |
| | | ds = oCN.RunProcReturn("select * from h_v_Gy_EquipMentList where HItemID = '" + BillNo + "'", "h_v_Gy_EquipMentList"); |
| | |
| | | string sReturn = ""; |
| | | if (oSystemParameter.ShowBill(ref sReturn) == true) |
| | | { |
| | | //系统参数是否为只显示当前登录用户关联的工序信息,N为否,Y为是 |
| | | if (oSystemParameter.omodel.MES_StationInBill_ShowUSERProcess == "Y") |
| | | if(HBillType == "In") |
| | | { |
| | | ds = oCN.RunProcReturn("select * from h_v_Gy_ProcessList_GetProcNoByUser where HItemID = '" + BillNo + "' and HInterID = '" + HInterID + "' and 用户编码 = '" + UserID + "'", "h_v_Gy_ProcessList_GetProcNoByUser"); |
| | | //系统参数是否为只显示当前登录用户关联的工序信息,N为否,Y为是 |
| | | if (oSystemParameter.omodel.MES_StationInBill_ShowUSERProcess == "Y") |
| | | { |
| | | ds = oCN.RunProcReturn("select top 1 * from h_v_Gy_ProcessList_GetProcNoByUser where HItemID = '" + BillNo + "' and HInterID = '" + HInterID + "' and 用户编码 = '" + UserID + "'" + " order by 序号 asc", "h_v_Gy_ProcessList_GetProcNoByUser"); |
| | | } |
| | | else |
| | | { |
| | | ds = oCN.RunProcReturn("select * from h_v_Gy_ProcessList_GetProcNo where HItemID = '" + BillNo + "' and HInterID = '" + |
| | | HInterID + "'" + " order by 序号 asc", "h_v_Gy_ProcessList_GetProcNo"); |
| | | } |
| | | } |
| | | else |
| | | else if(HBillType == "Out") |
| | | { |
| | | ds = oCN.RunProcReturn("select * from h_v_Gy_ProcessList_GetProcNo where HItemID = '" + BillNo + "' and HInterID = '" + |
| | | HInterID + "'", "h_v_Gy_ProcessList_GetProcNo"); |
| | | //系统参数是否为只显示当前登录用户关联的工序信息,N为否,Y为是 |
| | | if (oSystemParameter.omodel.MES_StationOutBill_ShowUSERProcess == "Y") |
| | | { |
| | | ds = oCN.RunProcReturn("select top 1 * from h_v_Gy_ProcessList_GetProcNoByUser where HItemID = '" + BillNo + "' and HInterID = '" + HInterID + "' and 用户编码 = '" + UserID + "'" + " order by 序号 asc", "h_v_Gy_ProcessList_GetProcNoByUser"); |
| | | } |
| | | else |
| | | { |
| | | ds = oCN.RunProcReturn("select * from h_v_Gy_ProcessList_GetProcNo where HItemID = '" + BillNo + "' and HInterID = '" + |
| | | HInterID + "'" + " order by 序号 asc", "h_v_Gy_ProcessList_GetProcNo"); |
| | | } |
| | | } |
| | | } |
| | | break; |
| | | case "WLM"://物料码 |
| | | ds = oCN.RunProcReturn("select * from h_v_Gy_MaterialList where HItemID = '" + BillNo + "'", "h_v_Gy_MaterialList"); |
| | | break; |
| | | case "GXL"://流转卡 |
| | | ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillList where 单据号= '" + sBillNo + "'", "h_v_Sc_ProcessExchangeBillList"); |
| | | break; |
| | | break; |
| | | } |
| | | |
| | | //写入信息 |
| | | if (ds == null || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "[0000-2-020]未查询到条码信息!"; |
| | | objJsonResult.data = null; |
| | | if(BillNoType == "PRO") |
| | | { |
| | | ds = oCN.RunProcReturn("select * from h_v_Gy_ProcessList where HItemID = '" + BillNo + "'", "h_v_Gy_ProcessList"); |
| | | if (ds == null || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | objJsonResult.Message = "[0000-2-020]未查询到条码信息!"; |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.Message = "[3790-2-010]用户未关联相关工序或流转卡无此工序,如有需要请维护"; |
| | | } |
| | | } |
| | | return objJsonResult; |
| | | } |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "[0000-1-037]Sucess!"; |
| | | objJsonResult.data = ds.Tables[0]; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "[0000-1-038]Exception!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region 工序出站汇报单PDA扫操作员 |
| | | [Route("Cj_StationBill/txtHBarCode_KeyDown_Operator")] |
| | | [HttpGet] |
| | | public object txtHBarCode_KeyDown_Operator(string HBarCode, string HInterID, string UserID, string HBillType) |
| | | { |
| | | try |
| | | { |
| | | if (HBarCode == null || HBarCode.Equals("")) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "空白码,条形码不能为空!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | ds = oCN.RunProcReturn("select * from h_v_Gy_EmployeeList_New where 职员代码 = '" + HBarCode + "'", "h_v_Gy_EmployeeList_New"); |
| | | |
| | | //写入信息 |
| | | if (ds == null || ds.Tables[0].Rows.Count == 0) |
| | |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "未查询到条码信息!"; |
| | | objJsonResult.data = null; |
| | | if(BillNoType == "PRO") |
| | | { |
| | | ds = oCN.RunProcReturn("select * from h_v_Gy_ProcessList where HItemID = '" + BillNo + "'", "h_v_Gy_ProcessList"); |
| | | if (ds == null || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | objJsonResult.Message = "未查询到条码信息!"; |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.Message = "用户未关联相关工序或流转卡无此工序,如有需要请维护"; |
| | | } |
| | | } |
| | | |
| | | return objJsonResult; |
| | | } |
| | | objJsonResult.code = "1"; |
| | |
| | | } |
| | | #endregion |
| | | |
| | | #region 根据登录用户获取工序 |
| | | [Route("Sc_StationInBill/autoGetProcNo")] |
| | | #region 工序进站扫配件码 |
| | | [Route("Cj_StationBill/txtHBarCode_Mater_KeyDown")] |
| | | [HttpGet] |
| | | public object autoGetProcNo(string HUserID, string HInterID) |
| | | public object txtHBarCode_Mater_KeyDown(string HBarCode, string HInterID) |
| | | { |
| | | string sReturn = ""; |
| | | if (oSystemParameter.ShowBill(ref sReturn) == true) |
| | | try |
| | | { |
| | | //系统参数是否为自动匹配流水号,N为手动输入,Y为自动匹配 |
| | | if (oSystemParameter.omodel.MES_StationOutBill_ShowUSERProcess == "Y") |
| | | if (HBarCode == null || HBarCode.Equals("")) |
| | | { |
| | | try |
| | | { |
| | | if (HUserID == null || HUserID.Equals("")) |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "[0000-2-019]空白码,条形码不能为空!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | //判断条形码是否在条码档案中,判断条形码是否合理 |
| | | //先判断 临时表中是否有数据,条形码的物料是否在清单中,写入 扫码记录表 |
| | | //得到信息 |
| | | ds = oCN.RunProcReturn("exec h_p_MES_StationInBillSub_BindBarCode " + HInterID.ToString() + " ,'" + HBarCode + "'", "h_p_MES_StationInBillSub_BindBarCode"); |
| | | //写入信息 |
| | | if (ds == null || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "[0000-2-020]未查询到条形码信息!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0][0]) == 2) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "[0000-1-038]错误!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0][1]); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | |
| | | DataSet Dsplay = oCN.RunProcReturn("exec h_p_MES_StationInBillSub_BindDisplay " + HInterID.ToString() + " ", "h_p_MES_StationInBillSub_BindDisplay"); |
| | | |
| | | //写入信息 |
| | | if (Dsplay == null) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "[0000-1-045]刷新失败,无数据显示!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | else if (Dsplay.Tables[0].Rows.Count == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "[0000-1-045]查无数据!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "[0000-1-037]绑定成功!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "[0000-1-038]Exception!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region 指引卡扫码获取信息 |
| | | [Route("MES_SampleRecordBill_PDA/SampleRecordBillHBarCode_KeyDown")] |
| | | [HttpGet] |
| | | public object SampleRecordBillHBarCode_KeyDown(string HBarCode, string HInterID, string UserID, string HBillType) |
| | | { |
| | | try |
| | | { |
| | | if (HBarCode == null || HBarCode.Equals("")) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "空白码,条形码不能为空!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //拆分条形码 |
| | | string sBillBarCode = HBarCode.Trim(); |
| | | string[] NewBarCode; |
| | | if (sBillBarCode.CompareTo("#") > 0) |
| | | { |
| | | NewBarCode = sBillBarCode.Split(Convert.ToChar("#")); |
| | | sBillBarCode = NewBarCode[0]; |
| | | } |
| | | string sBillNo = sBillBarCode; //条形码 |
| | | |
| | | string[] arr = sBillNo.Split('&'); //以符号‘&’分割条形码 |
| | | string BillNo_PGD = arr[0]; //单据号 |
| | | string entryid_PGD = "";//子id |
| | | if (arr.Length > 1) |
| | | { |
| | | entryid_PGD = arr[1]; |
| | | } |
| | | |
| | | //截取条码类型 前三位 |
| | | string BillNoType = BillNo_PGD.Substring(0, Math.Min(3, BillNo_PGD.Length)); |
| | | //截取条码类型2 前四位 |
| | | string BillNoType2 = BillNo_PGD.Substring(0, Math.Min(4, BillNo_PGD.Length)); |
| | | //截取内码 |
| | | string BillNo = BillNo_PGD.Substring(3, Math.Min(BillNo_PGD.Length - 3, BillNo_PGD.Length)); |
| | | |
| | | string sErr = ""; |
| | | |
| | | switch (BillNoType2) |
| | | { |
| | | case "GXLX"://流转卡 |
| | | |
| | | string sql = ""; |
| | | if (oSystemParameter.ShowBill(ref sErr)) |
| | | { |
| | | if (oSystemParameter.omodel.WMS_CampanyName == "乔一") |
| | | { //系统参数是否为只显示当前登录用户关联的工序信息,N为否,Y为是 |
| | | if (HBillType == "7505") |
| | | { |
| | | ds = oCN.RunProcReturn("exec h_p_Sc_ProcessExchangeBill__ProcList '" + BillNo_PGD + "' ", "h_p_Sc_ProcessExchangeBill__ProcList"); |
| | | } |
| | | else { |
| | | ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillList where 单据号= '" + BillNo_PGD + "'", "h_v_Sc_ProcessExchangeBillList"); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | if (oSystemParameter.ShowBill(ref sErr)) |
| | | { |
| | | switch (oSystemParameter.omodel.QC_FirstPieceCheckBill_QCSchemeSource) |
| | | { |
| | | case "工序": |
| | | sql = "exec h_p_QC_FirstPieceCheck_GetProcessExchangeBillList " + "'工序','" + BillNo_PGD + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_QC_FirstPieceCheck_GetProcessExchangeBillList"); |
| | | break; |
| | | case "物料": |
| | | sql = "exec h_p_QC_FirstPieceCheck_GetProcessExchangeBillList " + "'物料','" + BillNo_PGD + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_QC_FirstPieceCheck_GetProcessExchangeBillList"); |
| | | break; |
| | | case "工艺路线": |
| | | sql = "exec h_p_QC_FirstPieceCheck_GetProcessExchangeBillList " + "'工艺路线','" + BillNo_PGD + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_QC_FirstPieceCheck_GetProcessExchangeBillList"); |
| | | break; |
| | | } |
| | | |
| | | } |
| | | } |
| | | } |
| | | break; |
| | | case "GXJZ": |
| | | //截取条码类型 前三位 |
| | | string HBillNo = HBarCode.Substring(4, HBarCode.Length - 4); |
| | | ds = oCN.RunProcReturn("select * from Sc_StationInBillMain where HBillNo = '" + HBillNo + "'", "Sc_StationInBillMain"); |
| | | Int64 HStationInInterID = 0; |
| | | |
| | | if (ds != null || ds.Tables[0].Rows.Count > 0) |
| | | { |
| | | HStationInInterID = DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HInterID"]); |
| | | } |
| | | |
| | | if (oSystemParameter.ShowBill(ref sErr)) |
| | | { |
| | | switch (oSystemParameter.omodel.QC_FirstPieceCheckBill_QCSchemeSource) |
| | | { |
| | | case "工序": |
| | | sql = "exec h_p_QC_FirstPiece_GetStationInBillList " + "'工序','" + HStationInInterID + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_QC_FirstPiece_GetStationInBillList"); |
| | | break; |
| | | case "物料": |
| | | sql = "exec h_p_QC_FirstPiece_GetStationInBillList " + "'物料','" + HStationInInterID + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_QC_FirstPiece_GetStationInBillList"); |
| | | break; |
| | | case "工艺路线": |
| | | sql = "exec h_p_QC_FirstPiece_GetStationInBillList " + "'工艺路线','" + HStationInInterID + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_QC_FirstPiece_GetStationInBillList"); |
| | | break; |
| | | } |
| | | |
| | | } |
| | | break; |
| | | case "MO00": |
| | | if (oSystemParameter.ShowBill(ref sErr)) |
| | | { |
| | | switch (oSystemParameter.omodel.QC_FirstPieceCheckBill_QCSchemeSource) |
| | | { |
| | | case "工序": |
| | | sql = "exec h_p_QC_ProcessCheck_GetICMOList " + "'工序','" + HBarCode + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetICMOList"); |
| | | break; |
| | | case "物料": |
| | | sql = "exec h_p_QC_ProcessCheck_GetICMOList " + "'物料','" + HBarCode + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetICMOList"); |
| | | break; |
| | | case "工艺路线": |
| | | sql = "exec h_p_QC_ProcessCheck_GetICMOList " + "'工艺路线','" + HBarCode + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetICMOList"); |
| | | break; |
| | | } |
| | | |
| | | } |
| | | break; |
| | | default: |
| | | if (oSystemParameter.omodel.WMS_CampanyName == "乔一") |
| | | { //系统参数是否为只显示当前登录用户关联的工序信息,N为否,Y为是 |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "用户编码不能为空!"; |
| | | objJsonResult.Message = "条码错误!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //得到信息 |
| | | ds = oCN.RunProcReturn("select * from h_v_Sc_StationBill_autoGetProcNo where HInterID = '" + HInterID + "' and 用户编码 ='" + HUserID + "'", "h_v_Sc_StationBill_autoGetProcNo"); |
| | | //写入信息 |
| | | if (ds == null || ds.Tables[0].Rows.Count == 0) |
| | | else |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "未查询到工序信息!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | 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; |
| | | } |
| | | break; |
| | | } |
| | | } |
| | | |
| | | switch (BillNoType) |
| | | //得到信息 |
| | | { |
| | | case "HCX"://生产资源码 |
| | | ds = oCN.RunProcReturn("select * from h_v_Gy_SourceList where 条码编号 = '" + BillNo + "'", "h_v_Gy_SourceList"); |
| | | break; |
| | | } |
| | | |
| | | if (ds != null) |
| | | { |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "Sucess!"; |
| | | objJsonResult.data = ds.Tables[0]; |
| | | return objJsonResult; |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "手动输入模式"; |
| | | objJsonResult.Message = "没有返回数据,条码前缀错误。"; |
| | | objJsonResult.data = ""; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "Exception!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region PDA工序检验单扫码获取信息 |
| | | [Route("MES_ProcessBill_PDA/HBarCode_KeyDown")] |
| | | [HttpGet] |
| | | public object HBarCode_KeyDown(string HBarCode, string HInterID, string UserID, string HBillType) |
| | | { |
| | | try |
| | | { |
| | | if (HBarCode == null || HBarCode.Equals("")) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "空白码,条形码不能为空!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //拆分条形码 |
| | | string sBillBarCode = HBarCode.Trim(); |
| | | string[] NewBarCode; |
| | | if (sBillBarCode.CompareTo("#") > 0) |
| | | { |
| | | NewBarCode = sBillBarCode.Split(Convert.ToChar("#")); |
| | | sBillBarCode = NewBarCode[0]; |
| | | } |
| | | string sBillNo = sBillBarCode; //条形码 |
| | | |
| | | string[] arr = sBillNo.Split('&'); //以符号‘&’分割条形码 |
| | | string BillNo_PGD = arr[0]; //单据号 |
| | | string entryid_PGD = "";//子id |
| | | if (arr.Length > 1) |
| | | { |
| | | entryid_PGD = arr[1]; |
| | | } |
| | | |
| | | //截取条码类型 前三位 |
| | | string BillNoType = BillNo_PGD.Substring(0, Math.Min(3, BillNo_PGD.Length)); |
| | | //截取条码类型2 前四位 |
| | | string BillNoType2 = BillNo_PGD.Substring(0, Math.Min(4, BillNo_PGD.Length)); |
| | | //截取内码 |
| | | string BillNo = BillNo_PGD.Substring(3, Math.Min(BillNo_PGD.Length - 3, BillNo_PGD.Length)); |
| | | |
| | | string sErr = ""; |
| | | |
| | | switch (BillNoType2) |
| | | { |
| | | case "GXLX"://流转卡 |
| | | |
| | | string sql = ""; |
| | | if (oSystemParameter.ShowBill(ref sErr)) |
| | | { |
| | | if (oSystemParameter.omodel.WMS_CampanyName == "乔一") |
| | | { //系统参数是否为只显示当前登录用户关联的工序信息,N为否,Y为是 |
| | | ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillList where 单据号= '" + BillNo_PGD + "'", "h_v_Sc_ProcessExchangeBillList"); |
| | | } |
| | | else |
| | | { |
| | | if (oSystemParameter.ShowBill(ref sErr)) |
| | | { |
| | | switch (oSystemParameter.omodel.QC_ProcessCheckBill_QCSchemeSource) |
| | | { |
| | | case "工序": |
| | | sql = "exec h_p_QC_ProcessCheck_GetProcessExchangeBillList " + "'工序','" + BillNo_PGD + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetProcessExchangeBillList"); |
| | | break; |
| | | case "物料": |
| | | sql = "exec h_p_QC_ProcessCheck_GetProcessExchangeBillList " + "'物料','" + BillNo_PGD + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetProcessExchangeBillList"); |
| | | break; |
| | | case "工艺路线": |
| | | sql = "exec h_p_QC_ProcessCheck_GetProcessExchangeBillList " + "'工艺路线','" + BillNo_PGD + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetProcessExchangeBillList"); |
| | | break; |
| | | } |
| | | |
| | | } |
| | | } |
| | | } |
| | | break; |
| | | case "GXCZ": |
| | | ds = oCN.RunProcReturn("select * from Sc_StationOutBillMain where HBillNo = '" + HBarCode + "'", "Sc_StationOutBillMain"); |
| | | Int64 HStationOutInterID = 0; |
| | | |
| | | if (ds != null || ds.Tables[0].Rows.Count > 0) |
| | | { |
| | | HStationOutInterID = DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HInterID"]); |
| | | } |
| | | |
| | | if (oSystemParameter.ShowBill(ref sErr)) |
| | | { |
| | | switch (oSystemParameter.omodel.QC_ProcessCheckBill_QCSchemeSource) |
| | | { |
| | | case "工序": |
| | | sql = "exec h_p_QC_ProcessCheck_GetStationOutBillList " + "'工序','" + HStationOutInterID + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetStationOutBillList"); |
| | | break; |
| | | case "物料": |
| | | sql = "exec h_p_QC_ProcessCheck_GetStationOutBillList " + "'物料','" + HStationOutInterID + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetStationOutBillList"); |
| | | break; |
| | | case "工艺路线": |
| | | sql = "exec h_p_QC_ProcessCheck_GetStationOutBillList " + "'工艺路线','" + HStationOutInterID + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetStationOutBillList"); |
| | | break; |
| | | } |
| | | |
| | | } |
| | | break; |
| | | case "MO00": |
| | | if (oSystemParameter.ShowBill(ref sErr)) |
| | | { |
| | | switch (oSystemParameter.omodel.QC_ProcessCheckBill_QCSchemeSource) |
| | | { |
| | | case "工序": |
| | | sql = "exec h_p_QC_ProcessCheck_GetICMOList " + "'工序','" + HBarCode + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetICMOList"); |
| | | break; |
| | | case "物料": |
| | | sql = "exec h_p_QC_ProcessCheck_GetICMOList " + "'物料','" + HBarCode + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetICMOList"); |
| | | break; |
| | | case "工艺路线": |
| | | sql = "exec h_p_QC_ProcessCheck_GetICMOList " + "'工艺路线','" + HBarCode + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetICMOList"); |
| | | break; |
| | | } |
| | | |
| | | } |
| | | break; |
| | | default: |
| | | if (oSystemParameter.omodel.WMS_CampanyName == "乔一") |
| | | { //系统参数是否为只显示当前登录用户关联的工序信息,N为否,Y为是 |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "条码错误!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | else |
| | | { |
| | | break; |
| | | } |
| | | } |
| | | |
| | | switch (BillNoType) |
| | | //得到信息 |
| | | { |
| | | case "HCX"://生产资源码 |
| | | ds = oCN.RunProcReturn("select * from h_v_Gy_SourceList where 条码编号 = '" + BillNo + "'", "h_v_Gy_SourceList"); |
| | | break; |
| | | } |
| | | |
| | | if (ds != null) |
| | | { |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "Sucess!"; |
| | | objJsonResult.data = ds.Tables[0]; |
| | | return objJsonResult; |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "没有返回数据,条码前缀错误。"; |
| | | objJsonResult.data = ""; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "Exception!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region 试样记录 查询列表 |
| | | [Route("MES_SampleRecordBill_PDA/SampleRecordList")] |
| | | [HttpGet] |
| | | public object SampleRecordList(string sWhere,string user) |
| | | { |
| | | try |
| | | { |
| | | //判断是否有编辑权限 |
| | | if (!DBUtility.ClsPub.Security_Log("QC_TestSampleCheckBill_Query", 1, false, user)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "无查询权限!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | string sql = "select * from h_v_QC_TestSampleCheckBillList where 1=1 " + sWhere + " order by 日期 "; |
| | | |
| | | ds = oCN.RunProcReturn(sql, "h_v_QC_TestSampleCheckBillList"); |
| | | |
| | | DataTable dt = ds.Tables[0]; |
| | | |
| | | //获取列名 |
| | | List<object> columnNameList = new List<object>(); |
| | | //添加列名 |
| | | 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列对象的列名 |
| | | } |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "Sucess!"; |
| | | objJsonResult.list = columnNameList; |
| | | objJsonResult.data = dt; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "Exception!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region 试样记录新增保存 |
| | | [Route("MES_SampleRecordBill_PDA/SampleRecordAddBill")] |
| | | [HttpPost] |
| | | public object SampleRecordAddBill([FromBody] JObject oMain) |
| | | { |
| | | var _value = oMain["oMain"].ToString(); |
| | | string msg1 = _value.ToString(); |
| | | string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); |
| | | try |
| | | { |
| | | //反序列化 |
| | | string msg2 = "[" + sArray[0].ToString() + "]"; |
| | | string user = sArray[1].ToString();//用户名 |
| | | string OperationType = sArray[2].ToString();//类型 |
| | | |
| | | //判断是否有编辑权限 |
| | | if (!DBUtility.ClsPub.Security_Log("QC_TestSampleCheckBill_Edit", 1, false, user)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "无编辑权限!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | List<Model.ClsQC_TestSampleCheckBillMain> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_TestSampleCheckBillMain>>(msg2); |
| | | string BillType = "7510"; |
| | | string HBillSubType = "7510"; |
| | | string eventType = list[0].eventType; |
| | | long HInterID = list[0].HInterID;//递入type得到的单据ID |
| | | string HBillNo = list[0].HBillNo;//递入type得到的单据号 |
| | | int HBillStatus = 1; |
| | | string HMaker = user;//制单人 |
| | | int HYear = DateTime.Now.Year; |
| | | double HPeriod = DateTime.Now.Month; |
| | | long HSourceID = list[0].HSourceID;//生产资源 |
| | | long HICMOInterID = list[0].HICMOInterID;//任务单ID |
| | | string HICMOBillNo = list[0].HICMOBillNo;//任务单 |
| | | string HProcExchBillNo = list[0].HProcExchBillNo;//指引卡 |
| | | long HMaterID = list[0].HMaterID;//产品ID |
| | | long HUnitID = list[0].HUnitID;//计量单位 |
| | | long HProcID = list[0].HProcID;//工序ID |
| | | long HPRDORGID = list[0].HPRDORGID;//组织ID |
| | | long HLastResult = list[0].HLastResult;//试样结论 |
| | | |
| | | //单据完整性判断 |
| | | if (HProcExchBillNo =="") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "流转卡没有选择!请扫描条形码或输入条形码后回车"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | var num = 0; |
| | | |
| | | oCN.BeginTran(); |
| | | if ("Add".Equals(eventType)) |
| | | { |
| | | num = 1; |
| | | |
| | | ds = oCN.RunProcReturn("select * from QC_TestSampleCheckBillMain where HBillNo='" + HBillNo + "'", "QC_TestSampleCheckBillMain"); |
| | | if (ds.Tables[0].Rows.Count == 1) |
| | | { |
| | | oCN.RollBack(); |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据号重复!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | oCN.RunProc("Insert Into QC_TestSampleCheckBillMain " + |
| | | "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" + |
| | | ",HYear,HPeriod,HMaterID,HSourceID,HICMOInterID,HICMOBillNo,HProcExchBillNo,HUnitID" + |
| | | ",HPRDORGID,HLastResult)" + |
| | | " values('" + BillType + "','" + HBillSubType + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate()" + |
| | | "," + HYear + "," + HPeriod + ",'" + HMaterID + "','" + HSourceID + "'," + HICMOInterID + ",'" + HICMOBillNo + "','" + HProcExchBillNo + "'," + HUnitID + |
| | | "," + HPRDORGID + ",'" + HLastResult + "') "); |
| | | } |
| | | else |
| | | { |
| | | oCN.RollBack(); |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "操作类型无效!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | oCN.Commit(); |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "新增单据成功!"; |
| | | objJsonResult.data = ds.Tables[0]; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | oCN.RollBack(); |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "Exception!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region 试样记录 审核/反审核功能 |
| | | [Route("MES_SampleRecordBill_PDA/CheckSampleRecordBill")] |
| | | [HttpGet] |
| | | public object CheckSampleRecordBill(string HInterID, int Type, string user) |
| | | { |
| | | try |
| | | { |
| | | //判断是否有删除权限 |
| | | if (!DBUtility.ClsPub.Security_Log("QC_TestSampleCheckBill_Check", 1, false, user)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "无权限审核!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | if (string.IsNullOrWhiteSpace(HInterID)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "HInterID为空!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | BillOld.MvarItemKey = "QC_TestSampleCheckBillMain"; |
| | | oCN.BeginTran();//开始事务 |
| | | |
| | | //Type 1 审核 2 反审核 |
| | | if (Type == 1) |
| | | { |
| | | //判断单据是否已经审核 |
| | | DataSet ds; |
| | | string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID; |
| | | ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey); |
| | | if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0) |
| | | { |
| | | if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据已审核!不需要再审核!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | //审核单据 |
| | | oCN.RunProc(" Update " + BillOld.MvarItemKey + " set HChecker='" + user + "',HCheckDate=getdate(),HBillStatus=2 Where HInterID=" + HInterID.ToString()); |
| | | |
| | | } |
| | | else |
| | | { |
| | | //判断单据是否已经反审核 |
| | | DataSet ds; |
| | | string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID; |
| | | ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey); |
| | | if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0) |
| | | { |
| | | if (ds.Tables[0].Rows[0]["HChecker"] == null || ds.Tables[0].Rows[0]["HChecker"].ToString() == "") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据已反审核!不需要再反审核!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | //反审核单据 |
| | | oCN.RunProc(" Update " + BillOld.MvarItemKey + " set HChecker='',HCheckDate=null,HBillStatus=1 Where HInterID=" + HInterID.ToString()); |
| | | } |
| | | |
| | | oCN.Commit();//提交事务 |
| | | |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "执行成功!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; ; |
| | | |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "执行失败!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region 试样记录 删除功能 |
| | | [Route("MES_SampleRecordBill_PDA/DelSampleRecordBill")] |
| | | [HttpGet] |
| | | public object DelSampleRecordBill(Int64 lngBillKey, string user) |
| | | { |
| | | DataSet ds; |
| | | string ModRightNameCheck = "QC_TestSampleCheckBill_Detete"; |
| | | try |
| | | { |
| | | //删除权限 |
| | | if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, false, user)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "删除失败!无权限!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | if (lngBillKey == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据id为空!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | |
| | | oCN.BeginTran();//开始事务 |
| | | ds = oCN.RunProcReturn("select * from QC_TestSampleCheckBillMain where HInterID=" + lngBillKey, "QC_TestSampleCheckBillMain"); |
| | | if (ds == null || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "没有数据,无法删除!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; ; |
| | | } |
| | | string HChecker = Convert.ToString(ds.Tables[0].Rows[0]["HChecker"]); |
| | | if (HChecker != "") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据已经审核,不能删除!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | oCN.RunProc("delete from QC_TestSampleCheckBillMain where HInterID=" + lngBillKey); |
| | | |
| | | oCN.Commit();//提交事务 |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "* 数据删除成功!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; ; |
| | | |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "删除失败!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region 对色记录 查询列表 |
| | | [Route("ColorRecord/ColorRecordList")] |
| | | [HttpGet] |
| | | public object ColorRecordList(string sWhere,string user) |
| | | { |
| | | try |
| | | { |
| | | |
| | | //判断是否有编辑权限 |
| | | if (!DBUtility.ClsPub.Security_Log("QC_FirstPieceCheckBill_Query", 1, false, user)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "无查询权限!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | ds = oCN.RunProcReturn("select ManagerFlag from gy_czygl where czymc='" + user.Trim() + "'", "gy_czygl"); |
| | | string sErr = ""; |
| | | oSystemParameter.ShowBill(ref sErr); |
| | | if (oSystemParameter.omodel.WMS_CampanyName == "乔一") |
| | | { |
| | | } |
| | | else |
| | | { |
| | | if (!(bool)ds.Tables[0].Rows[0]["ManagerFlag"]) //是否管理员 |
| | | { |
| | | //不是管理员 |
| | | sWhere += " and 制单人 = '" + user + "'"; |
| | | } |
| | | } |
| | | |
| | | string sql = "select * from h_v_QC_FirstPieceCheckBillMainList where 1=1 " + sWhere ; |
| | | |
| | | ds = oCN.RunProcReturn(sql, "h_v_QC_FirstPieceCheckBillMainList"); |
| | | |
| | | DataTable dt = ds.Tables[0]; |
| | | |
| | | //获取列名 |
| | | List<object> columnNameList = new List<object>(); |
| | | //添加列名 |
| | | 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列对象的列名 |
| | | } |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "Sucess!"; |
| | | objJsonResult.list = columnNameList; |
| | | objJsonResult.data = dt; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "Exception!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region 对色记录新增保存 |
| | | [Route("MES_SampleRecordBill_PDA/ColorRecordAddBill")] |
| | | [HttpPost] |
| | | public object ColorRecordAddBill([FromBody] JObject oMain) |
| | | { |
| | | var _value = oMain["oMain"].ToString(); |
| | | string msg1 = _value.ToString(); |
| | | string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); |
| | | try |
| | | { |
| | | //反序列化 |
| | | string msg2 = "[" + sArray[0].ToString() + "]"; |
| | | string user = sArray[1].ToString();//用户名 |
| | | string OperationType = sArray[2].ToString();//类型 |
| | | string msg_entry = sArray[3].ToString(); //明细行信息 |
| | | |
| | | //判断是否有编辑权限 |
| | | if (!DBUtility.ClsPub.Security_Log("QC_FirstPieceCheckBill_Edit", 1, false, user)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "无编辑权限!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | DAL.ClsQC_FirstPieceCheckBill BillNew = new DAL.ClsQC_FirstPieceCheckBill(); |
| | | |
| | | List<Model.ClsQC_FirstPieceCheckBillMain> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_FirstPieceCheckBillMain>>(msg2); |
| | | string BillType = "7505"; |
| | | string HBillSubType = "7505"; |
| | | long HInterID = list[0].HInterID;//递入type得到的单据ID |
| | | string HBillNo = list[0].HBillNo;//递入type得到的单据号 |
| | | int HBillStatus = 1; |
| | | string HMaker = user;//制单人 |
| | | int HYear = DateTime.Now.Year; |
| | | double HPeriod = DateTime.Now.Month; |
| | | long HSourceID = list[0].HSourceID;//生产资源 |
| | | long HICMOInterID = list[0].HICMOInterID;//任务单ID |
| | | long HICMOEntryID = list[0].HICMOEntryID;//任务单子ID |
| | | string HICMOBillNo = list[0].HICMOBillNo;//任务单 |
| | | string HProcExchBillNo = list[0].HProcExchBillNo;//指引卡 |
| | | long HMaterID = list[0].HMaterID;//产品ID |
| | | //long HUnitID = list[0].HUnitID;//计量单位 |
| | | long HProcID = list[0].HProcID;//工序ID |
| | | long HPRDORGID = list[0].HPRDORGID;//组织ID |
| | | bool HLastResult = list[0].HLastResult;//试样结论 |
| | | long HQCSchemeID = list[0].HQCSchemeID;//检验方案 |
| | | long HProcExchInterID = list[0].HProcExchInterID;//流转卡ID |
| | | long HProcExchEntryID = list[0].HProcExchEntryID;//流转卡子ID |
| | | string HBatchNo = list[0].HBatchNo;//流转卡批次号 |
| | | long HMainSourceInterID = list[0].HMainSourceInterID;//源单ID |
| | | long HMainSourceEntryID = list[0].HMainSourceEntryID;//源单子ID |
| | | string HMainSourceBillNo = list[0].HMainSourceBillNo;//源单单号 |
| | | string HMainSourceBillType = list[0].HMainSourceBillType;//源单类型 |
| | | |
| | | //表体数据 |
| | | List<Model.ClsQC_FirstPieceCheckBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_FirstPieceCheckBillSub>>(msg_entry); |
| | | for (int i = 0; i < subList.ToArray().Length; i++) |
| | | { |
| | | if (subList.ToArray().Length >= 0) |
| | | { |
| | | Model.ClsQC_FirstPieceCheckBillSub oSub = new Model.ClsQC_FirstPieceCheckBillSub(); |
| | | oSub.HEntryID = i + 1; |
| | | oSub.HRemark = ClsPub.isStrNull(subList[i].HRemark); |
| | | oSub.HSourceInterID = ClsPub.isLong(subList[i].HSourceInterID); |
| | | oSub.HSourceEntryID = ClsPub.isLong(subList[i].HSourceEntryID); |
| | | oSub.HSourceBillType = ClsPub.isStrNull(subList[i].HSourceBillType); |
| | | oSub.HSourceBillNo = ClsPub.isStrNull(subList[i].HSourceBillNo); |
| | | oSub.HRelationQty = DBUtility.ClsPub.isDoule(subList[i].HRelationQty); |
| | | oSub.HRelationMoney = DBUtility.ClsPub.isDoule(subList[i].HRelationMoney); |
| | | oSub.HCloseMan = DBUtility.ClsPub.isStrNull(subList[i].HCloseMan); |
| | | oSub.HCloseType = DBUtility.ClsPub.isBool(subList[i].HCloseType); |
| | | oSub.HQCCheckItemID = DBUtility.ClsPub.isLong(subList[i].HQCCheckItemID); |
| | | oSub.HQCStd = DBUtility.ClsPub.isStrNull(subList[i].HQCStd); |
| | | oSub.HResult = DBUtility.ClsPub.isStrNull(subList[i].HResult); |
| | | //oSub.HProcCheckTime = HDate; |
| | | //oSub.HBillNo_bak = DBUtility.ClsPub.isStrNull(mainList[0].HBillNo); |
| | | //oSub.HProcCheckEmp = ClsPub.isLong(mainList[0].HFirstCheckEmp); |
| | | oSub.HSampleSchemeID = DBUtility.ClsPub.isLong(subList[i].HSampleSchemeID); |
| | | oSub.HSampleQty = DBUtility.ClsPub.isLong(subList[i].HSampleQty); |
| | | oSub.HSampleDamageQty = DBUtility.ClsPub.isDoule(subList[i].HSampleDamageQty); |
| | | oSub.HAcceptQty = DBUtility.ClsPub.isLong(subList[i].HAcceptQty); |
| | | oSub.HRejectQty = DBUtility.ClsPub.isLong(subList[i].HRejectQty); |
| | | oSub.HSampleUnRightQty = DBUtility.ClsPub.isDoule(subList[i].HSampleUnRightQty); |
| | | oSub.HStatus = DBUtility.ClsPub.isStrNull(subList[i].HStatus); |
| | | oSub.HUnitID = DBUtility.ClsPub.isLong(subList[i].HUnitID); |
| | | oSub.HInspectVal = DBUtility.ClsPub.isStrNull(subList[i].HInspectVal); |
| | | oSub.HTargetVal = DBUtility.ClsPub.isStrNull(subList[i].HTargetVal); |
| | | oSub.HUpLimit = DBUtility.ClsPub.isStrNull(subList[i].HUpLimit); |
| | | oSub.HDownLimit = DBUtility.ClsPub.isStrNull(subList[i].HDownLimit); |
| | | oSub.HUpOffSet = DBUtility.ClsPub.isStrNull(subList[i].HUpOffSet); |
| | | oSub.HDownOffSet = DBUtility.ClsPub.isStrNull(subList[i].HDownOffSet); |
| | | oSub.HAnalysisMethod = DBUtility.ClsPub.isStrNull(subList[i].HAnalysisMethod); |
| | | oSub.HKeyInspect = DBUtility.ClsPub.isLong(subList[i].HKeyInspect); |
| | | oSub.HInspectInstruMentID = DBUtility.ClsPub.isLong(subList[i].HInspectInstruMentID); |
| | | oSub.HInspectResult = DBUtility.ClsPub.isStrNull(subList[i].HResult == "True" ? 1 : 0); |
| | | |
| | | oSub.HQCNote = DBUtility.ClsPub.isStrNull(subList[i].HQCNote);//检验记录 |
| | | oSub.HMax = DBUtility.ClsPub.isStrNull(subList[i].HMax); |
| | | oSub.HMin = DBUtility.ClsPub.isStrNull(subList[i].HMin); |
| | | oSub.HAvg = DBUtility.ClsPub.isStrNull(subList[i].HAvg); |
| | | |
| | | |
| | | |
| | | BillNew.DetailColl.Add(oSub); |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "无明细行信息!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | //单据完整性判断 |
| | | if (HProcExchBillNo == "" && HMainSourceBillNo.Substring(0, Math.Min(2, HMainSourceBillNo.Length)) != "MO" ) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "流转卡没有选择!请扫描条形码或输入条形码后回车"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | var num = 0; |
| | | |
| | | oCN.BeginTran(); |
| | | if (OperationType=="1") |
| | | { |
| | | num = 1; |
| | | |
| | | ds = oCN.RunProcReturn("select * from QC_FirstPieceCheckBillMain where HBillNo='" + HBillNo + "'", "QC_FirstPieceCheckBillMain"); |
| | | if (ds.Tables[0].Rows.Count == 1) |
| | | { |
| | | oCN.RollBack(); |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据号重复!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | oCN.RunProc("Insert Into QC_FirstPieceCheckBillMain " + |
| | | "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" + |
| | | ",HYear,HPeriod,HMaterID,HSourceID,HICMOInterID,HICMOEntryID,HICMOBillNo,HProcExchBillNo" + |
| | | ",HPRDORGID,HLastResult,HProcID,HQCSchemeID,HBatchNo," + |
| | | "HProcExchInterID,HProcExchEntryID,HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType)" + |
| | | " values('" + BillType + "','" + HBillSubType + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate()" + |
| | | "," + HYear + "," + HPeriod + ",'" + HMaterID + "','" + HSourceID + "'," + HICMOInterID + "," + HICMOEntryID + ",'" + HICMOBillNo + "','" + HProcExchBillNo + "'" + |
| | | "," + HPRDORGID + ",'" + HLastResult + "','" + HProcID + "','" + HQCSchemeID + "','" + HBatchNo + "'," + |
| | | "" + HProcExchInterID + "," + HProcExchEntryID + "," + HMainSourceInterID + "," + HMainSourceEntryID + ",'" + HMainSourceBillNo + "','" + HMainSourceBillType + "'" + ") "); |
| | | |
| | | //插入子表 |
| | | foreach (Model.ClsQC_FirstPieceCheckBillSub oSub in BillNew.DetailColl) |
| | | { |
| | | string sql = "Insert into QC_FirstPieceCheckBillSub " + |
| | | " (HInterID,HBillNo_bak,HEntryID" + |
| | | ",HRemark,HSourceInterID" + |
| | | ",HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" + |
| | | ",HQCCheckItemID,HQCStd,HResult" + |
| | | ",HStatus,HUnitID,HKeyInspect,HAnalysisMethod,HInspectInstruMentID,HInspectResult," + |
| | | "HQCNote,HMax,HMin,HAvg" + |
| | | ") values(" |
| | | + HInterID.ToString() + ",'" + oSub.HBillNo_bak + "'," + oSub.HEntryID.ToString() + ",'" + oSub.HRemark + "'," + HMainSourceInterID.ToString() + |
| | | "," + HMainSourceEntryID.ToString() + ",'" + HMainSourceBillNo + "','" + HMainSourceBillType + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() + |
| | | "," + oSub.HQCCheckItemID.ToString() + ",'" + oSub.HQCStd + "','" + oSub.HResult + "'" + |
| | | ",'" + oSub.HStatus + "'," + oSub.HUnitID + "," + oSub.HKeyInspect + ",'" + oSub.HAnalysisMethod + "'," + oSub.HInspectInstruMentID + ",'" + oSub.HInspectResult + "'" + |
| | | ",'" + oSub.HQCNote + "','" + oSub.HMax + "','" + oSub.HMin + "','" + oSub.HAvg + "'" + |
| | | ")"; |
| | | |
| | | oCN.RunProc("Insert into QC_FirstPieceCheckBillSub " + |
| | | " (HInterID,HBillNo_bak,HEntryID" + |
| | | ",HRemark,HSourceInterID" + |
| | | ",HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" + |
| | | ",HQCCheckItemID,HQCStd,HResult" + |
| | | ",HStatus,HUnitID,HKeyInspect,HAnalysisMethod,HInspectInstruMentID,HInspectResult," + |
| | | "HQCNote,HMax,HMin,HAvg" + |
| | | ") values(" |
| | | + HInterID.ToString() + ",'" + oSub.HBillNo_bak + "'," + oSub.HEntryID.ToString() + ",'" + oSub.HRemark + "'," + HMainSourceInterID.ToString() + |
| | | "," + HMainSourceEntryID.ToString() + ",'" + HMainSourceBillNo + "','" + HMainSourceBillType + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() + |
| | | "," + oSub.HQCCheckItemID.ToString() + ",'" + oSub.HQCStd + "','" + oSub.HResult + "'" + |
| | | ",'" + oSub.HStatus + "'," + oSub.HUnitID + "," + oSub.HKeyInspect + ",'" + oSub.HAnalysisMethod + "'," + oSub.HInspectInstruMentID + ",'" + oSub.HInspectResult + "'" + |
| | | ",'" + oSub.HQCNote + "','" + oSub.HMax + "','" + oSub.HMin + "','" + oSub.HAvg + "'" + |
| | | ") "); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | oCN.RollBack(); |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "操作类型无效!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | oCN.Commit(); |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "新增单据成功!"; |
| | | objJsonResult.data = ds.Tables[0]; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | oCN.RollBack(); |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "Exception!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region 对色记录 审核/反审核功能 |
| | | [Route("ColorRecord/CheckColorRecordBill")] |
| | | [HttpGet] |
| | | public object CheckColorRecordBill(string HInterID, int Type, string user) |
| | | { |
| | | try |
| | | { |
| | | //判断是否有删除权限 |
| | | if (!DBUtility.ClsPub.Security_Log("QC_FirstPieceCheckBill_Query", 1, false, user)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "无权限审核!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | if (string.IsNullOrWhiteSpace(HInterID)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "HInterID为空!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | BillOld.MvarItemKey = "QC_FirstPieceCheckBillMain"; |
| | | oCN.BeginTran();//开始事务 |
| | | |
| | | //Type 1 审核 2 反审核 |
| | | if (Type == 1) |
| | | { |
| | | //判断单据是否已经审核 |
| | | DataSet ds; |
| | | string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID; |
| | | ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey); |
| | | if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0) |
| | | { |
| | | if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据已审核!不需要再审核!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | //审核单据 |
| | | oCN.RunProc(" Update " + BillOld.MvarItemKey + " set HChecker='" + user + "',HCheckDate=getdate(),HBillStatus=2 Where HInterID=" + HInterID.ToString()); |
| | | |
| | | } |
| | | else |
| | | { |
| | | //判断单据是否已经反审核 |
| | | DataSet ds; |
| | | string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID; |
| | | ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey); |
| | | if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0) |
| | | { |
| | | if (ds.Tables[0].Rows[0]["HChecker"] == null || ds.Tables[0].Rows[0]["HChecker"].ToString() == "") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据已反审核!不需要再反审核!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | //反审核单据 |
| | | oCN.RunProc(" Update " + BillOld.MvarItemKey + " set HChecker='',HCheckDate=null,HBillStatus=1 Where HInterID=" + HInterID.ToString()); |
| | | } |
| | | |
| | | oCN.Commit();//提交事务 |
| | | |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "执行成功!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; ; |
| | | |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "执行失败!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region 对色记录 删除功能 |
| | | [Route("ColorRecord/DelColorRecordBill")] |
| | | [HttpGet] |
| | | public object DelColorRecordBill(Int64 lngBillKey, string user) |
| | | { |
| | | DataSet ds; |
| | | string ModRightNameCheck = "QC_FirstPieceCheckBill_Delete"; |
| | | try |
| | | { |
| | | //删除权限 |
| | | if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, false, user)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "删除失败!无权限!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | if (lngBillKey == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据id为空!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | |
| | | oCN.BeginTran();//开始事务 |
| | | ds = oCN.RunProcReturn("select * from QC_FirstPieceCheckBillMain where HInterID=" + lngBillKey, "QC_FirstPieceCheckBillMain"); |
| | | if (ds == null || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "没有数据,无法删除!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; ; |
| | | } |
| | | string HChecker = Convert.ToString(ds.Tables[0].Rows[0]["HChecker"]); |
| | | if (HChecker != "") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据已经审核,不能删除!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | oCN.RunProc("delete from QC_FirstPieceCheckBillMain where HInterID=" + lngBillKey); |
| | | |
| | | oCN.Commit();//提交事务 |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "* 数据删除成功!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; ; |
| | | |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "删除失败!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | #region 根据登录用户获取工序 |
| | | [Route("Sc_StationInBill/autoGetProcNo")] |
| | | [HttpGet] |
| | | public object autoGetProcNo(string HUserID, string HInterID, string BillType) |
| | | { |
| | | string sReturn = ""; |
| | | if (oSystemParameter.ShowBill(ref sReturn) == true) |
| | | { |
| | | if(BillType == "In")//工序进站接收单 |
| | | { |
| | | //系统参数是否为自动匹配流水号,N为手动输入,Y为自动匹配 |
| | | if (oSystemParameter.omodel.MES_StationInBill_AutoFindSNO == "Y") |
| | | { |
| | | try |
| | | { |
| | | if (HUserID == null || HUserID.Equals("")) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "[0000-2-021]用户编码不能为空!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //得到信息 |
| | | ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_StationBill_autoGetProcNo where HInterID = '" + HInterID + "' and 用户编码 ='" + HUserID + "'" + " and 累计进站数量 < 计划数量 and 下道流转工序<>'转' and 委外标记=0 order by 序号 asc", "h_v_Sc_StationBill_autoGetProcNo"); |
| | | //写入信息 |
| | | if (ds == null || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "[0000-2-022]未查询到工序信息!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "[0000-1-037]Sucess!"; |
| | | objJsonResult.data = ds.Tables[0]; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "[0000-1-038]Exception!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "[0000-2-024]手动输入模式"; |
| | | objJsonResult.data = ""; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | else if(BillType == "Out")//工序出站汇报单 |
| | | { |
| | | //系统参数是否为自动匹配流水号,N为手动输入,Y为自动匹配 |
| | | if (oSystemParameter.omodel.MES_StationOutBill_AutoFindSNO == "Y") |
| | | { |
| | | try |
| | | { |
| | | if (HUserID == null || HUserID.Equals("")) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "[0000-2-021]用户编码不能为空!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //得到信息 |
| | | ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_StationBill_autoGetProcNo where HInterID = '" + HInterID + "' and 用户编码 ='" + HUserID + "'" + " and 累计出站数量 < 计划数量 and 下道流转工序<>'转' and 委外标记=0 order by 序号 asc", "h_v_Sc_StationBill_autoGetProcNo"); |
| | | //写入信息 |
| | | if (ds == null || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "[0000-2-022]未查询到工序信息!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | 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 = "[0000-1-038]Exception!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "[0000-2-024]手动输入模式"; |
| | | objJsonResult.data = ""; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | else |
| | | { |
| | | return 0; |
| | | } |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "系统参数异常"; |
| | | objJsonResult.Message = "[0000-2-023]系统参数异常"; |
| | | objJsonResult.data = ""; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | |
| | | } |
| | | #endregion |
| | | |
| | | #region 指引卡变更单 新增保存 |
| | | [Route("MES_Sc_ProcessExchangeBillMain_Note_PDA/ProcessExchangeBillMain_NoteAddBill")] |
| | | [HttpPost] |
| | | public object ProcessExchangeBillMain_NoteAddBill([FromBody] JObject oMain) |
| | | { |
| | | var _value = oMain["oMain"].ToString(); |
| | | string msg1 = _value.ToString(); |
| | | string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); |
| | | try |
| | | { |
| | | //反序列化 |
| | | string msg2 = "[" + sArray[0].ToString() + "]"; |
| | | string user = sArray[1].ToString();//用户名 |
| | | string OperationType = sArray[2].ToString();//类型 |
| | | |
| | | //判断是否有编辑权限 |
| | | if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Change", 1, false, user)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "无变更权限!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | List<Model.Sc_ProcessExchangeBillMain_Note> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.Sc_ProcessExchangeBillMain_Note>>(msg2); |
| | | |
| | | long HSouceID_Original = list[0].HSouceID_Original; |
| | | long HSouceID_Now = list[0].HSouceID_Now; |
| | | long HOrgID = list[0].HOrgID;//组织ID |
| | | String HICMOBillNo = list[0].HICMOBillNo;//任务单 |
| | | long HICMOInterID = list[0].HICMOInterID;//任务单ID |
| | | long HProcExchInterID = list[0].HProcExchInterID; |
| | | long HProcExchEntryID = list[0].HProcExchEntryID; |
| | | String HProcExchBillNo = list[0].HProcExchBillNo; |
| | | String HBillNo_Note = list[0].HBillNo_Note;//指引卡 |
| | | long HMaterID = list[0].HMaterID;//产品ID |
| | | long HUnitID = list[0].HUnitID;//计量单位 |
| | | long HProcID = list[0].HProcID;//工序ID |
| | | string HMaker = user;//制单人 |
| | | string HMakeDate = list[0].HMakeDate;//制单日期 |
| | | |
| | | //单据完整性判断 |
| | | if (HProcExchBillNo == "") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "流转卡没有选择!请扫描条形码或输入条形码后回车"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | oCN.BeginTran(); |
| | | if (OperationType == "1") |
| | | { |
| | | oCN.RunProc("Insert Into Sc_ProcessExchangeBillMain_Note " + |
| | | "(HBillNo_Note,HSouceID_Original,HSouceID_Now,HOrgID,HICMOInterID,HICMOBillNo,HProcExchBillNo,HProcExchInterID" + |
| | | ",HProcExchEntryID,HMaterID,HUnitID,HProcID,HMaker,HMakeDate)" + |
| | | " values('" + HBillNo_Note + "','" + HSouceID_Original + "'," + HSouceID_Now + ",'" + HOrgID + "'," + HICMOInterID + ",'"+ HICMOBillNo + "','" + HProcExchBillNo + "' ," + HProcExchInterID + |
| | | "," + HProcExchEntryID + ",'" + HMaterID + "','" + HUnitID + "'," + HProcID + ",'" + HMaker + "','" + HMakeDate + "')" ); |
| | | |
| | | oCN.RunProc("update Sc_ProcessExchangeBillSub set HSourceID=" + HSouceID_Now + " where HInterID=" + HProcExchInterID + " and HEntryID=" + HProcExchEntryID); |
| | | } |
| | | else |
| | | { |
| | | oCN.RollBack(); |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | 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 = "Exception!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | |
| | | return objJsonResult; |
| | | } |
| | | //若MAINDI重复则重新获取 |
| | | oCN.BeginTran(); |
| | | oCN.BeginTran(); |
| | | |
| | | if ("Add".Equals(eventType)) |
| | | { |
| | | if (!AllowbillNo(HBillNo)) |
| | |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | //保存前控制========================================= |
| | | string HBillNote = ""; |
| | | ds = oCN.RunProcReturn("Exec h_p_Sc_StationInBill_WW_BeforeSaveCtrl " + HInterID.ToString() + ", '" + HBillNo + "','" + HBillNote + "',1 ", "h_p_Sc_StationInBill_WW_BeforeSaveCtrl "); |
| | | if (ds == null) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "保存前判断失败!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //========================================================= |
| | | |
| | | //主表 |
| | | oCN.RunProc("Insert Into Sc_StationInBillMain " + |
| | | "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" + |
| | |
| | | "," + HSupID + "," + HTaxRate + "," + HQty + "," + HPrice + "," + HMoney + "," + HPieceQty + |
| | | ",'" + HProcNo + "','" + HOrderProcNO + "'" + ",'" + HWWWorkOrderBillNo + "'" + "," + HWWWorkOrderInterID + "" + "," + HWWWorkOrderEntryID + "," + HMainInterID + "," + HPRDOrgID + |
| | | ") "); |
| | | |
| | | //=========================保存后控制 ============================ |
| | | DataSet ds2 = oCN.RunProcReturn("Exec h_p_Sc_StationInBill_WW_AfterSaveCtrl " + HInterID.ToString() + ", '" + HBillNo + "',2 ", "h_p_Sc_StationInBill_WW_AfterSaveCtrl"); |
| | | if (ds2 == null) |
| | | { |
| | | oCN.RollBack(); |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "保存后控制判断失败!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | |
| | | } |
| | | if (DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBack"]) != "0") |
| | | { |
| | | oCN.RollBack(); |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "保存失败2!" + DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBackRemark"]); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //======================================================= |
| | | |
| | | } |
| | | else if ("Modify".Equals(eventType)) |
| | | { |
| | | |
| | | //保存前控制========================================= |
| | | string HBillNote = ""; |
| | | ds = oCN.RunProcReturn("Exec h_p_Sc_StationInBill_WW_BeforeSaveCtrl " + HInterID.ToString() + ", '" + HBillNo + "','" + HBillNote + "',2 ", "h_p_Sc_StationInBill_WW_BeforeSaveCtrl "); |
| | | if (ds == null) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "保存前判断失败!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //========================================================= |
| | | |
| | | //删除关联 |
| | | oCN.RunProc("exec h_p_Mes_ProcessExchangeRelationQty_In " + HInterID + ",-1"); |
| | |
| | | ",HProcNo=" + HProcNo + |
| | | ",HOrderProcNO='" + HOrderProcNO + "'" + |
| | | " where HInterID=" + HInterID); |
| | | |
| | | //=========================保存后控制 ============================ |
| | | DataSet ds2 = oCN.RunProcReturn("Exec h_p_Sc_StationInBill_WW_AfterSaveCtrl " + HInterID.ToString() + ", '" + HBillNo + "',2", "h_p_Sc_StationInBill_WW_AfterSaveCtrl"); |
| | | if (ds2 == null) |
| | | { |
| | | oCN.RollBack(); |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "保存后控制判断失败!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | |
| | | } |
| | | if (DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBack"]) != "0") |
| | | { |
| | | oCN.RollBack(); |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "保存失败2!" + DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBackRemark"]); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //======================================================= |
| | | |
| | | } |
| | | else |
| | | { |
| | |
| | | } |
| | | oCN.RunProc("exec h_p_Mes_ProcessExchangeRelationQty_In " + HInterID.ToString() + ",1"); |
| | | oCN.RunProc("exec h_p_WW_EntrustWorkOrderRelationQty_In " + HInterID.ToString() + ",1"); |
| | | |
| | | |
| | | |
| | | oCN.Commit(); |
| | | string sReturn = ""; |
| | | if (oSystemParameter.ShowBill(ref sReturn) == true) |
| | | { |
| | | if (oSystemParameter.omodel.MES_StationEntrustInBill_SaveAutoAddnew == "Y") //系统参数 自动审核 |
| | | if (oSystemParameter.omodel.MES_StationEntrustInBill_AutoCheck == "Y") //系统参数 自动审核 |
| | | { |
| | | objJsonResult.Verify = "Y"; |
| | | } |
| | |
| | | } |
| | | #endregion |
| | | |
| | | #region 委外工序发出单流水号回车获取工序信息(序列号) |
| | | [Route("Cj_StationEntrustInBill/txtHProcNo_KeyDown_Sec")] |
| | | [HttpGet] |
| | | public object txtHProcNo_KeyDown_Sec(string sBillNo, string sProcNo, string HSEQNumber) |
| | | { |
| | | try |
| | | { |
| | | if (sBillNo.Equals("") || sProcNo.Equals("")) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "条形码不能为空!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | //得到信息(委外标记为0时,流转标记为1时) |
| | | ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillList_Sec where 单据号= '" + sBillNo + "' and 下道流转工序<>'转' and 委外标记=1 and 流转标记=1 and 工序号='" + sProcNo + "' and 序列号='" + HSEQNumber + "'", "h_v_Sc_ProcessExchangeBillList_Sec"); |
| | | //Ds = oCn.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillList where 单据号= '" + sBillNo + "' and 工序号='" + sProcNo + "' and 委外标记=0 and 流转标记=1 ", "h_v_Sc_ProcessExchangeBillList"); |
| | | //写入信息 |
| | | if (ds == null || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "工序号错误或者当前工序号不允许进站,请重新输入!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | 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_StationEntrustInBill/set_ShowBillJudge")] |
| | | [HttpGet] |
| | |
| | | { |
| | | try |
| | | { |
| | | //ds = oCN.RunProcReturn("exec h_p_MES_StationInBill_DelCtrl '" + HBillNo + "'", "h_p_MES_StationInBill_DelCtrl"); |
| | | //if (ds == null || ds.Tables[0].Rows.Count == 0) |
| | | //{ |
| | | // objJsonResult.code = "0"; |
| | | // objJsonResult.count = 0; |
| | | // objJsonResult.Message = "判断关联失败!"; |
| | | // objJsonResult.data = null; |
| | | // return objJsonResult; |
| | | //} |
| | | //else if (ds.Tables[0].Rows.Count > 0 && Pub_Class.ClsPub.isInt(ds.Tables[0].Rows[0][0]) == 2) |
| | | //{ |
| | | // objJsonResult.code = "0"; |
| | | // objJsonResult.count = 0; |
| | | // objJsonResult.Message = Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0][1]); |
| | | // objJsonResult.data = null; |
| | | // return objJsonResult; |
| | | //} |
| | | |
| | | |
| | | //判断权限 |
| | | if (!ClsPub.Security_Log_second("MES_StationEntrustInBill_Edit", 1, false, CurUserName)) |
| | | { |
| | |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | //审核前控制================================================================================ |
| | | string sql = "exec h_p_Sc_StationInBill_WW_BeforeCheckCtrl " + HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_Sc_StationInBill_WW_BeforeCheckCtrl"); |
| | | if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "审核失败!原因:审核前判断失败,请与网络管理人员联系"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "审核失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //================================================================================ |
| | | |
| | | //审核 |
| | | if (Cj_StationEntrustInBillCheckBill(HInterID, CurUserName, ref DBUtility.ClsPub.sExeReturnInfo)) |
| | | if (Cj_StationEntrustInBillCheckBill(HInterID, oBill.omodel.HBillNo, CurUserName, ref DBUtility.ClsPub.sExeReturnInfo)) |
| | | { |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | |
| | | } |
| | | |
| | | //审核 |
| | | public bool Cj_StationEntrustInBillCheckBill(Int64 lngBillKey, string CurUserName, ref string sReturn) |
| | | public bool Cj_StationEntrustInBillCheckBill(Int64 lngBillKey, string HBillNo, string CurUserName, ref string sReturn) |
| | | { |
| | | try |
| | | { |
| | |
| | | |
| | | oCN.RunProc(" Update Sc_StationInBillMain set HChecker='" + HChecker + "',HCheckDate='" + HCheckDate + "' Where HInterID=" + lngBillKey.ToString()); |
| | | oCN.RunProc("exec h_p_Mes_ProcessExchangeRelationQty_Check_In " + lngBillKey.ToString() + ",1"); |
| | | //同步金蝶云参数 |
| | | int HProcExchInterID = int.Parse(ds.Tables[0].Rows[0]["HProcExchInterID"].ToString()); |
| | | int HProcExchEntryID = int.Parse(ds.Tables[0].Rows[0]["HProcExchEntryID"].ToString()); |
| | | int HProcNo = int.Parse(ds.Tables[0].Rows[0]["HProcNo"].ToString()); |
| | | double HQty = double.Parse(ds.Tables[0].Rows[0]["HQty"].ToString()); |
| | | //审核后控制================================================================================ |
| | | string sql = "exec h_p_Sc_StationInBill_WW_AfterCheckCtrl " + lngBillKey + ",'" + HBillNo + "','" + CurUserName + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_Sc_StationInBill_WW_AfterCheckCtrl"); |
| | | if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | sReturn = "审核过程中出错,请与网络管理人员联系"; |
| | | oCN.RollBack(); |
| | | return false; |
| | | } |
| | | if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0") |
| | | { |
| | | sReturn = ds.Tables[0].Rows[0]["HRemark"].ToString(); |
| | | oCN.RollBack(); |
| | | return false; |
| | | } |
| | | //获取系统参数 |
| | | oSystemParameter.ShowBill(ref sReturn); |
| | | //判断客户为天擎 同步金蝶工序汇报单 |
| | | if (oSystemParameter.omodel.WMS_CampanyName == "天擎") |
| | | { |
| | | |
| | | if (!set_SaveStationEntrustInBill_CLD(HBillNo, HProcExchInterID, HProcExchEntryID, HProcNo, HQty, CurUserName, ref DBUtility.ClsPub.sErrInfo)) |
| | | { |
| | | oCN.RollBack(); |
| | | |
| | | return false; |
| | | } |
| | | |
| | | } |
| | | //================================================================================ |
| | | |
| | | sReturn = sReturn + " 审核功能!"; |
| | | oCN.Commit(); |
| | | return true; |
| | |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | //反审核前控制============================================================= |
| | | string sql = "exec h_p_Sc_StationInBill_WW_BeforeUnCheckCtrl " + HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_Sc_StationInBill_WW_BeforeUnCheckCtrl"); |
| | | if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "反审核失败!原因:反审核前判断失败,请与网络管理人员联系"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | |
| | | } |
| | | if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "反审核失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //================================================================================ |
| | | |
| | | //反审核 |
| | | if (Cj_StationEntrustInBillAbandonCheckBill(HInterID, CurUserName, ref DBUtility.ClsPub.sExeReturnInfo)) |
| | | if (Cj_StationEntrustInBillAbandonCheckBill(HInterID, oBill.omodel.HBillNo, CurUserName, ref DBUtility.ClsPub.sExeReturnInfo)) |
| | | { |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | |
| | | } |
| | | |
| | | //反审核 |
| | | public bool Cj_StationEntrustInBillAbandonCheckBill(Int64 lngBillKey, string CurUserName, ref string sReturn) |
| | | public bool Cj_StationEntrustInBillAbandonCheckBill(Int64 lngBillKey,string HBillNo, string CurUserName, ref string sReturn) |
| | | { |
| | | try |
| | | { |
| | |
| | | |
| | | oCN.RunProc(" Update Sc_StationInBillMain set HChecker='',HCheckDate=null Where HInterID=" + lngBillKey.ToString()); |
| | | //oCN.RunProc("exec h_p_Mes_ProcessExchangeRelationQty_Check_In " + lngBillKey.ToString() + ",-1"); |
| | | |
| | | |
| | | //反审核后控制============================================================================= |
| | | string sql = "exec h_p_Sc_StationInBill_WW_AfterUnCheckCtrl " + lngBillKey + ",'" + HBillNo + "','" + CurUserName + "'"; |
| | | ds = oCN.RunProcReturn(sql, "h_p_Sc_StationInBill_WW_AfterUnCheckCtrl"); |
| | | if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | sReturn = "反审核过程中出错,请与网络管理人员联系"; |
| | | oCN.RollBack(); |
| | | return false; |
| | | } |
| | | if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0") |
| | | { |
| | | sReturn = ds.Tables[0].Rows[0]["HRemark"].ToString(); |
| | | oCN.RollBack(); |
| | | return false; |
| | | } |
| | | //============================================================================= |
| | | sReturn = sReturn + "反审核功能!"; |
| | | oCN.Commit(); |
| | | return true; |
| | |
| | | sReturn = e.Message; |
| | | oCN.RollBack(); |
| | | return false; ; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | |
| | | #region 工序委外发出单关闭/反关闭功能 |
| | | [Route("Cj_StationEntrustInBill/CloseCj_StationEntrustInBill")] |
| | | [HttpGet] |
| | | public object CloseCj_StationEntrustInBill(string HInterID, int Type, string user) |
| | | { |
| | | try |
| | | { |
| | | //判断是否有删除权限 |
| | | if (!DBUtility.ClsPub.Security_Log("MES_StationEntrustInBill_Close", 1, false, user)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "无权限关闭!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | if (string.IsNullOrWhiteSpace(HInterID)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "HInterID为空!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | ClsPub.CurUserName = user; |
| | | BillOld.MvarItemKey = "Sc_StationInBillMain"; |
| | | oCN.BeginTran();//开始事务 |
| | | |
| | | //Type 1 关闭 2 反关闭 |
| | | if (Type == 1) |
| | | { |
| | | //判断单据是否已经关闭 |
| | | DataSet ds; |
| | | string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID; |
| | | ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey); |
| | | if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0) |
| | | { |
| | | if (ds.Tables[0].Rows[0]["HCloseMan"] != null && ds.Tables[0].Rows[0]["HCloseMan"].ToString() != "") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据已关闭!不需要再关闭!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | var HBillNo = ds.Tables[0].Rows[0]["HBillNo"].ToString(); |
| | | //关闭前控制========================================= |
| | | string sql1 = "exec h_p_Sc_StationInBill_WW_BeforeCloseCtrl " + HInterID + ",'" + HBillNo + "','" + user + "'"; |
| | | ds = oCN.RunProcReturn(sql1, "h_p_Sc_StationInBill_WW_BeforeCloseCtrl"); |
| | | if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "关闭失败!原因:关闭前判断失败,请与网络管理人员联系"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "关闭失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //================================================================================== |
| | | |
| | | //关闭单据 |
| | | if (!BillOld.CloseBill(Int64.Parse(HInterID), HBillNo, "h_p_Sc_StationInBill_WW_AfterCloseCtrl", user, ref ClsPub.sExeReturnInfo)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "关闭失败!原因:" + ClsPub.sExeReturnInfo; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | else |
| | | { |
| | | //判断单据是否已经反关闭 |
| | | DataSet ds; |
| | | string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID; |
| | | ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey); |
| | | if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0) |
| | | { |
| | | if (ds.Tables[0].Rows[0]["HCloseMan"] == null || ds.Tables[0].Rows[0]["HCloseMan"].ToString() == "") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "单据已反关闭!不需要再反关闭!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | var HBillNo = ds.Tables[0].Rows[0]["HBillNo"].ToString(); |
| | | //反关闭前控制========================================= |
| | | string sql1 = "exec h_p_Sc_StationInBill_WW_BeforeUnCloseCtrl " + HInterID + ",'" + HBillNo + "','" + user + "'"; |
| | | ds = oCN.RunProcReturn(sql1, "h_p_Sc_StationInBill_WW_BeforeUnCloseCtrl"); |
| | | if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "反关闭失败!原因:反关闭前判断失败,请与网络管理人员联系"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "反关闭失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //================================================================================== |
| | | |
| | | |
| | | //反关闭单据 |
| | | if (!BillOld.CancelClose(Int64.Parse(HInterID), HBillNo, "h_p_Sc_StationInBill_WW_AfterUnCloseCtrl", user, ref ClsPub.sExeReturnInfo)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "反关闭失败!原因:" + ClsPub.sExeReturnInfo; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | oCN.Commit();//提交事务 |
| | | |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "执行成功!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; ; |
| | | |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "执行失败!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | |
| | | return objJsonResult; |
| | | } |
| | | |
| | | //删除前控制========================================= |
| | | string HBillNo = oBill.omodel.HBillNo; |
| | | string sql1 = "exec h_p_Sc_StationInBill_WW_BeforeDelCtrl " + HInterID + ",'" + HBillNo + "','" + HDeleteMan + "'"; |
| | | ds = oCN.RunProcReturn(sql1, "h_p_Sc_StationInBill_WW_BeforeDelCtrl"); |
| | | if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "删除失败!原因:删除前判断失败,请与网络管理人员联系"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "删除失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | //================================================================================== |
| | | |
| | | //写入删除日志 |
| | | string WorkList = "删除委外发出单:" + oBill.omodel.HBillNo; |
| | | if (!oBill.DeleteBill(oBill.omodel.HInterID, oBill.omodel.HProcExchInterID, oBill.omodel.HProcExchEntryID, ref DBUtility.ClsPub.sExeReturnInfo)) |
| | | if (!oBill.DeleteBill(oBill.omodel.HInterID, oBill.omodel.HProcExchInterID, oBill.omodel.HProcExchEntryID, HBillNo, "h_p_Sc_StationInBill_WW_AfterDelCtrl", HDeleteMan, ref DBUtility.ClsPub.sExeReturnInfo)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | |
| | | } |
| | | } |
| | | #endregion |
| | | // |
| | | // |
| | | |
| | | #region 委外工序发出单 上传生成金蝶云单据 |
| | | |
| | | /// <summary> |
| | | /// 新增上传 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [Route("Cj_StationEntrustInBillController/set_SaveStationEntrustInBill_Json")] |
| | | [HttpPost] |
| | | public object set_SaveStationEntrustInBill_Json([FromBody] JObject oMain) |
| | | { |
| | | var _value = oMain["oMain"].ToString(); |
| | | string msg1 = _value.ToString(); |
| | | try |
| | | { |
| | | msg1 = "[" + msg1.ToString() + "]"; |
| | | List<StationBill> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<StationBill>>(msg1); |
| | | ClsSc_StationInBillMain oMain2 = new ClsSc_StationInBillMain(); |
| | | |
| | | oMain2.HInterID = list[0].HInterID; |
| | | oMain2.HBillNo = list[0].HBillNo; |
| | | oMain2.HBillType = "3792"; |
| | | oMain2.HDate = DateTime.Today; |
| | | oMain2.HMaker = list[0].HMaker;//制单人 |
| | | oMain2.HRemark = list[0].HRemark;//备注 |
| | | oMain2.HInnerBillNo = list[0].HInnerBillNo;//送货单号 |
| | | oMain2.HICMOInterID = list[0].HICMOInterID;//生产订单号ID |
| | | oMain2.HICMOBillNo = list[0].HICMOBillNo;//生产订单号 |
| | | oMain2.HProcPlanInterID = 0; |
| | | oMain2.HProcPlanEntryID = 0; |
| | | oMain2.HProcPlanBillNo = ""; |
| | | oMain2.HProcExchInterID = list[0].lngBillKey; |
| | | oMain2.HProcExchEntryID = list[0].lngBillSubKey; |
| | | oMain2.HProcExchBillNo = list[0].HProcExchBillNo;//流转卡 |
| | | oMain2.HMaterID = list[0].HMaterID;//产品ID |
| | | oMain2.HProcID = list[0].HProcID;//当前工序 |
| | | oMain2.HICMOQty = list[0].HICMOQty;//任务单数量 |
| | | oMain2.HPlanQty = list[0].HPlanQty;//流转卡数量 |
| | | oMain2.HSourceID = list[0].HSourceID;//生产资源ID |
| | | oMain2.HGroupID = list[0].HGroupID;//班组ID |
| | | oMain2.HDeptID = list[0].HDeptID;//部门ID |
| | | oMain2.HEmpID = list[0].HEmpID;//操作员ID |
| | | oMain2.HBarCode = list[0].HBarCode;//条形码 |
| | | oMain2.HBarCodeMaker = ""; |
| | | oMain2.HAddr = ""; |
| | | oMain2.HSupID = list[0].HSupID;//供应商ID |
| | | oMain2.HTaxRate = list[0].HTaxRate;//税率 |
| | | oMain2.HQty = list[0].HQty;//发出数量 |
| | | oMain2.HPrice = list[0].HPrice;//单价 |
| | | oMain2.HMoney = list[0].HMoney;//金额 |
| | | oMain2.HPieceQty = list[0].HPieceQty;//发出件数 |
| | | oMain2.HProcNo = Pub_Class.ClsPub.isLong(list[0].HProcNo);//流水号 |
| | | oMain2.HOrderProcNO = list[0].HOrderProcNO;//订单跟踪号 |
| | | oMain2.HWWWorkOrderBillNo = list[0].HWWWorkOrderBillNo;//委外工单号 |
| | | oMain2.HWWWorkOrderInterID = 0;//委外工单号子内码 |
| | | oMain2.HWWWorkOrderEntryID = 0;//委外工单号主内吗 |
| | | oMain2.HMainInterID = list[0].HMainInterID; |
| | | oMain2.HPRDOrgID = list[0].HPRDOrgID;//组织ID |
| | | |
| | | //获取系统参数 |
| | | string sErrMsg = ""; |
| | | Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter(); |
| | | if (oSystemParameter.ShowBillByOrgID(oMain2.HPRDOrgID, ref sErrMsg) == true) |
| | | { |
| | | if (oSystemParameter.omodel.MES_StationEntrustInBill_SaveAutoAddnew == "Y") //系统参数 自动审核 |
| | | { |
| | | objJsonResult.Verify = "Y"; |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.Verify = "N"; |
| | | } |
| | | |
| | | if (set_SaveStationEntrustInBill(oMain2, oSystemParameter.omodel, ref DBUtility.ClsPub.sErrInfo)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = DBUtility.ClsPub.sErrInfo; //成功! |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = DBUtility.ClsPub.sErrInfo; //失败! |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "获取系统参数失败! " + sErrMsg; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "委外工序发出单上传失败!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | //生成委外工序发出单 |
| | | public bool set_SaveStationEntrustInBill(Model.ClsSc_StationInBillMain oMain, Pub_Class.ClsXt_SystemParameterMain oSystemParameterMain, ref string sErrMsg) |
| | | { |
| | | string sRemark = ""; |
| | | string HReturn; |
| | | SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); |
| | | |
| | | //上传前判断 |
| | | if (oMain.HProcExchInterID <= 0) |
| | | { |
| | | sErrMsg = "流转卡没有选择!"; |
| | | return false; |
| | | } |
| | | if (oMain.HProcExchBillNo == "") |
| | | { |
| | | sErrMsg = "流转卡号没有选择!"; |
| | | return false; |
| | | } |
| | | if (oMain.HProcNo <= 0) |
| | | { |
| | | sErrMsg = "流水号没有选择!"; |
| | | return false; |
| | | } |
| | | if (oMain.HProcID <= 0) |
| | | { |
| | | sErrMsg = "当前工序没有选择!"; |
| | | return false; |
| | | } |
| | | if (oMain.HQty <= 0) |
| | | { |
| | | sErrMsg = "发出数量不允许为0!"; |
| | | return false; |
| | | } |
| | | string HBillNote = ""; |
| | | DataSet BfDs = oCn.RunProcReturn("exec h_p_Sc_StationInBill_WW_BeforeSaveCtrl " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "','" + HBillNote + "',1 ", "h_p_Sc_StationInBill_WW_BeforeSaveCtrl"); |
| | | if (BfDs == null || BfDs.Tables[0].Rows.Count == 0) |
| | | { |
| | | sErrMsg = "上传前判断数据完整性失败!"; |
| | | return false; |
| | | } |
| | | else |
| | | { |
| | | if (DBUtility.ClsPub.isStrNull(BfDs.Tables[0].Rows[0]["HBack"]) != "0") |
| | | { |
| | | sErrMsg = "单据号:" + oMain.HBillNo + ",单据ID:" + oMain.HInterID + ";" + DBUtility.ClsPub.isStrNull(BfDs.Tables[0].Rows[0]["HBackRemark"]); |
| | | return false; |
| | | } |
| | | } |
| | | sRemark = sRemark + " ;上传前判断" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"); |
| | | |
| | | try |
| | | { |
| | | //判断会计期是否合理 |
| | | string s = ""; |
| | | int sYear = 0; |
| | | int sPeriod = 0; |
| | | if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(oMain.HDate, ref sYear, ref sPeriod, ref s) == false) |
| | | { |
| | | sErrMsg = s; |
| | | return false; |
| | | } |
| | | oMain.HYear = sYear; |
| | | oMain.HPeriod = sPeriod; |
| | | |
| | | oCn.BeginTran(); |
| | | //生成委外工序发出单 |
| | | //写入主表 |
| | | oCN.RunProc("Insert Into Sc_StationInBillMain " + |
| | | "(HBillType,HBillSubType,HInterID,HBillNo,HDate,HMaker,HMakeDate" + |
| | | ",HYear,HPeriod,HRemark,HInnerBillNo" + |
| | | ",HICMOInterID,HICMOBillNo,HProcPlanInterID,HProcPlanEntryID,HProcPlanBillNo,HProcExchInterID,HProcExchEntryID" + |
| | | ",HProcExchBillNo,HMaterID,HProcID,HICMOQty,HPlanQty,HStationInTime,HSourceID" + |
| | | ",HGroupID,HDeptID,HEmpID,HBarCode,HAddr,HBarCodeMaker,HBarCodeMakeDate" + |
| | | ",HSupID,HTaxRate,HQty,HPrice,HMoney,HPieceQty" + |
| | | ",HProcNo,HOrderProcNO,HWWWorkOrderBillNo,HWWWorkOrderInterID,HWWWorkOrderEntryID,HMainInterID,HPRDOrgID" + |
| | | ") " + |
| | | " values('" + oMain.HBillType + "','" + oMain.HBillType + "'," + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "','" + oMain.HDate.ToShortDateString() + "','" + oMain.HMaker + "',getdate()" + |
| | | ", " + oMain.HYear.ToString() + "," + oMain.HPeriod.ToString() + ",'" + oMain.HRemark + "','" + oMain.HInnerBillNo + "'" + |
| | | "," + oMain.HICMOInterID + ",'" + oMain.HICMOBillNo + "'," + oMain.HProcPlanInterID + "," + oMain.HProcPlanEntryID + ",'" + oMain.HProcPlanBillNo + "'," + oMain.HProcExchInterID + "," + oMain.HProcExchEntryID + |
| | | ",'" + oMain.HProcExchBillNo + "'," + oMain.HMaterID + "," + oMain.HProcID + "," + oMain.HICMOQty + "," + oMain.HPlanQty + ",getdate()," + oMain.HSourceID + |
| | | "," + oMain.HGroupID + "," + oMain.HDeptID + "," + oMain.HEmpID + ",'" + oMain.HBarCode + "','" + oMain.HAddr + "','" + oMain.HBarCodeMaker + "',getdate()" + |
| | | "," + oMain.HSupID + "," + oMain.HTaxRate + "," + oMain.HQty + "," + oMain.HPrice + "," + oMain.HMoney + "," + oMain.HPieceQty + |
| | | ",'" + oMain.HProcNo + "','" + oMain.HOrderProcNO + "'" + ",'" + oMain.HWWWorkOrderBillNo + "'" + "," + oMain.HWWWorkOrderInterID + "" + "," + oMain.HWWWorkOrderEntryID + "," + oMain.HMainInterID + "," + oMain.HPRDOrgID + |
| | | ") "); |
| | | |
| | | sRemark = sRemark + " ;生成委外工序发出单单据" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"); |
| | | |
| | | DataSet AfDs = oCn.RunProcReturn("exec h_p_Sc_StationInBill_WW_AfterSaveCtrl " + oMain.HInterID.ToString() + ",'" + oMain.HBillNo + "',2 ", "h_p_Sc_StationInBill_WW_AfterSaveCtrl"); |
| | | if (AfDs == null || AfDs.Tables[0].Rows.Count == 0) |
| | | { |
| | | sErrMsg = "保存后控制判断失败!"; |
| | | return false; |
| | | } |
| | | else |
| | | { |
| | | if (DBUtility.ClsPub.isStrNull(AfDs.Tables[0].Rows[0]["HBack"]) != "0") |
| | | { |
| | | sErrMsg = "单据号:" + oMain.HBillNo + ",单据ID:" + oMain.HInterID + ";" + DBUtility.ClsPub.isStrNull(BfDs.Tables[0].Rows[0]["HBackRemark"]); |
| | | return false; |
| | | } |
| | | } |
| | | |
| | | DataSet QtyDs = oCn.RunProcReturn("exec h_p_MES_StationInBill_QtyCtrl " + oMain.HInterID.ToString(), "h_p_MES_StationInBill_QtyCtrl"); |
| | | if (QtyDs == null || QtyDs.Tables[0].Rows.Count == 0) |
| | | { |
| | | sErrMsg = "判断数量失败!"; |
| | | return false; |
| | | } |
| | | else |
| | | { |
| | | if (DBUtility.ClsPub.isStrNull(QtyDs.Tables[0].Rows[0]["HBack"]) == "2") |
| | | { |
| | | sErrMsg = "单据号:" + oMain.HBillNo + ",单据ID:" + oMain.HInterID + ";" + DBUtility.ClsPub.isStrNull(BfDs.Tables[0].Rows[0]["HBackRemark"]); |
| | | return false; |
| | | } |
| | | } |
| | | |
| | | oCn.RunProc("exec h_p_Mes_ProcessExchangeRelationQty_In " + oMain.HInterID.ToString() + ",1"); |
| | | oCn.RunProc("exec h_p_WW_EntrustWorkOrderRelationQty_In " + oMain.HInterID.ToString() + ",1"); |
| | | |
| | | sRemark = sRemark + " ;保存后控制" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"); |
| | | |
| | | //返回API递入所需数据 |
| | | DataSet Ds = oCn.RunProcReturn("exec h_p_MES_StationEntrustInBill_ProdMateRequest_CLD " + oMain.HProcExchInterID.ToString() + "," + oMain.HProcExchEntryID.ToString() + "," + oMain.HProcNo.ToString() + "," + oMain.HQty.ToString(), "h_p_MES_StationEntrustInBill_ProdMateRequest_CLD"); |
| | | if (Ds == null || Ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | sErrMsg = "未获取到API所需递入数据!"; |
| | | return false; |
| | | } |
| | | sRemark = sRemark + " ;获取CLOUD单据API递入值" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"); |
| | | |
| | | //生成金蝶云对应单据 |
| | | //获取金蝶云API所需递入数据 |
| | | string sJson_MainCustom = ""; //自定义字段 |
| | | string sJson_BatchNo = ""; |
| | | string sJson_FAUXPROPID = ""; |
| | | sJson_MainCustom = Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["MainCustom"]); |
| | | |
| | | //是否启用批次管理 |
| | | if (Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HISBATCHMANAGE"]) == "1") |
| | | { |
| | | sJson_BatchNo = " \"FLOT\": {\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FLOT"]) + "\"}, \"FLOT_TEXT\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FLOT"]) + "\" , "; |
| | | } |
| | | else |
| | | { |
| | | sJson_BatchNo = ""; |
| | | } |
| | | |
| | | //辅助属性 |
| | | sJson_FAUXPROPID = " \"FProAuxPropId\":{\"FPROAUXPROPID__FF100002\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FProAuxPropId"]) + "\"}},"; |
| | | |
| | | string sJson_Main = "{\"Creator\":\"\",\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"True\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\",\"IsEntryBatchFill\":\"True\",\"Model\":{\"FBillNo\":\"" + oMain.HBillNo + "\"," + |
| | | //"FID": 0, |
| | | "\"FBillTypeID\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillTypeID"]) + "\" }," + |
| | | "\"FBillDate\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillDate"]) + "\"," + |
| | | "\"FProOrgId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FProOrgId"]) + "\" }," + |
| | | "\"FProductId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FProductId"]) + "\" }," + |
| | | //"FProductId": {"FNUMBER": ""}, |
| | | sJson_FAUXPROPID + |
| | | "\"FTransferType\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FTransferType"]) + "\"," + |
| | | "\"FBusinessType\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBusinessType"]) + "\"," + |
| | | //"FDescription": "", |
| | | "\"FProDeptId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FProDeptId"]) + "\" }," + |
| | | "\"FMOBillNo\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FMOBillNo"]) + "\"," + |
| | | "\"FMOEntrySeq\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FMOEntrySeq"]) + "\"," + |
| | | "\"FBomId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBomId"]) + "\" }," + |
| | | "\"FOperUnitId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOperUnitId"]) + "\" }," + |
| | | "\"FProUnitId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FProUnitId"]) + "\" }," + |
| | | "\"FMOQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FMOQty"]) + "\"," + |
| | | "\"FMTONo\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FMTONo"]) + "\"," + |
| | | sJson_BatchNo + |
| | | //"FCreatorId": {"FUserID": ""}, |
| | | "\"FSaleOrderNo\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSaleOrderNo"]) + "\"," + |
| | | //"FCreateDate": "1900-01-01", |
| | | "\"FSaleOrderSeq\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSaleOrderSeq"]) + "\"," + |
| | | //"FModifierId": {"FUserID": ""}, |
| | | //"FModifyDate": "1900-01-01", |
| | | //"FApproveDate": "1900-01-01", |
| | | //"FApproverId": {"FUserID": ""}, |
| | | //"FCancelDate": "1900-01-01", |
| | | //"FCancelId": {"FUserID": ""}, |
| | | "\"FSourceBillType\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSourceBillType"]) + "\"," + |
| | | "\"FSrcOptPlanId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSrcOptPlanId"]) + "\"," + |
| | | "\"FSourceBillNo\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSourceBillNo"]) + "\"," + |
| | | "\"FSrcOptPlanOptId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSrcOptPlanOptId"]) + "\"," + |
| | | "\"FSrcOptPlanSeqId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSrcOptPlanSeqId"]) + "\"," + |
| | | "\"FMOId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FMOId"]) + "\"," + |
| | | "\"FMOEntryId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FMOEntryId"]) + "\"," + |
| | | //"FSrcRptEntryId": 0, |
| | | //"FGroupById": "", |
| | | "\"FProductType\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FProductType"]) + "\"," + |
| | | "\"FProjectNo\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FProjectNo"]) + "\"," + |
| | | "\"FStockInOrgId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FStockInOrgId"]) + "\" }," + |
| | | "\"FOwnerTypeId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOwnerTypeId"]) + "\"," + |
| | | //"FInStockType": "", |
| | | "\"FOwnerId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOwnerId"]) + "\" }," + |
| | | //"FStockId": {"FNUMBER": ""}, |
| | | "\"FOutOPBillNo\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutOPBillNo"]) + "\"," + |
| | | //"FStockLocId": {"FSTOCKLOCID__FF100001": {"FNumber": ""}}, |
| | | //"FBalanceType": "", |
| | | "\"FIsEntrust\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FIsEntrust"]) + "\"," + |
| | | "\"FOutSeqNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutSeqNumber"]) + "\"," + |
| | | "\"FOutOperNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutOperNumber"]) + "\"," + |
| | | "\"FOutProOrgId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutProOrgId"]) + "\" }," + |
| | | "\"FProxyOutProOrgId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FProxyOutProOrgId"]) + "\" }," + |
| | | "\"FOutDeptId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutDeptId"]) + "\" }," + |
| | | "\"FOutWorkCenterId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutWorkCenterId"]) + "\" }," + |
| | | "\"FOutProcessId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutProcessId"]) + "\" }," + |
| | | //"FOutEmpId": {"FSTAFFNUMBER": ""}, |
| | | "\"FOutOperDescr\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutOperDescr"]) + "\"," + |
| | | //"FOutPurOrgId": {"FNumber": ""}, |
| | | "\"FInProOrgId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInProOrgId"]) + "\" }," + |
| | | "\"FInOPBillNo\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInOPBillNo"]) + "\"," + |
| | | //"FOutSupplier": {"FNUMBER": ""}, |
| | | "\"FOutOperId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutOperId"]) + "\"," + |
| | | "\"FInProcessId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInProcessId"]) + "\" }," + |
| | | "\"FInDeptId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInDeptId"]) + "\" }," + |
| | | "\"FOutIsInStorePoint\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutIsInStorePoint"]) + "\"," + |
| | | "\"FOutSeqType\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutSeqType"]) + "\"," + |
| | | "\"FInOperDescr\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInOperDescr"]) + "\"," + |
| | | "\"FOutIsOutSrc\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutIsOutSrc"]) + "\"," + |
| | | "\"FInSeqNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInSeqNumber"]) + "\"," + |
| | | "\"FInPurOrgId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInPurOrgId"]) + "\" }," + |
| | | "\"FInOperNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInOperNumber"]) + "\"," + |
| | | "\"FInWorkCenterId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInWorkCenterId"]) + "\" }," + |
| | | //"FInEmpId": {"FSTAFFNUMBER": ""}, |
| | | "\"FInSupplier\":{ \"FNAME\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInSupplier"]) + "\" }," + |
| | | "\"FOperApplyQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOperApplyQty"]) + "\"," + |
| | | "\"FTransferQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FTransferQty"]) + "\"," + |
| | | "\"FApplyQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FApplyQty"]) + "\"," + |
| | | "\"FOperTransferQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOperTransferQty"]) + "\"," + |
| | | "\"FOperQualifiedQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOperQualifiedQty"]) + "\"," + |
| | | //"FValQualifiedQty": 0, |
| | | "\"FQualifiedQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FQualifiedQty"]) + "\"," + |
| | | "\"FInOperId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInOperId"]) + "\"," + |
| | | //"FOperUnqualifiedQty": 0, |
| | | //"FUnqualifiedQty": 0, |
| | | "\"FIsFirstOperTransIn\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FIsFirstOperTransIn"]) + "\"," + |
| | | "\"FIsExistTransIn\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FIsExistTransIn"]) + "\"," + |
| | | //"FOperProFailQty": 0, |
| | | //"FValProFailQty": 0, |
| | | //"FProFailQty": 0, |
| | | //"FOperMatFailQty": 0, |
| | | //"FOperPreReworkQty": 0, |
| | | //"FPreReworkQty": 0, |
| | | //"FMatFailQty": 0, |
| | | //"FValMatFailQty": 0, |
| | | "\"FSendCurrency\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSendCurrency"]) + "\" }," + |
| | | "\"FIsInspect\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FIsInspect"]) + "\"," + |
| | | "\"FQCSchemeId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FQCSchemeId"]) + "\" }," + |
| | | "\"FSendProFailPrice\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSendProFailPrice"]) + "\"," + |
| | | //"FReceiveCurrency": {"FNUMBER": ""}, |
| | | //"FReceiveQualifiedPrice": 0, |
| | | //"FReceiveProFailPrice": 0, |
| | | //"FReceiveMatFailPrice": 0, |
| | | "\"FReceiveValuationUnitId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FReceiveValuationUnitId"]) + "\" }," + |
| | | //"FReceiveTaxRate": 0, |
| | | "\"FSendMatFailPrice\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSendMatFailPrice"]) + "\"," + |
| | | //"FOperInspectSelectQty": 0, |
| | | "\"FSendValuationUnitId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSendValuationUnitId"]) + "\" }," + |
| | | //"FInspectSelectQty": 0, |
| | | "\"FSendTaxRate\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSendTaxRate"]) + "\"," + |
| | | "\"FSendQualifiedPrice\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSendQualifiedPrice"]) + "\"," + |
| | | //"FOperQuaSettleSelQty": 0, |
| | | //"FValQuaSettleSelQty": 0, |
| | | //"FQuaSettleSelQty": 0, |
| | | //"FOperInspectQty": 0, |
| | | //"FInspectQty": 0, |
| | | //"FQuaInStockSelQty": 0, |
| | | //"FOperQuaSettleQty": 0, |
| | | //"FValQuaSettleQty": 0, |
| | | //"FQuaSettleQty": 0, |
| | | //"FValProFailSettleSelQty": 0, |
| | | //"FOperProFailSettleSelQty": 0, |
| | | //"FQuaInStockQty": 0, |
| | | //"FProFailSettleSelQty": 0, |
| | | //"FOperProFailSettleQty": 0, |
| | | //"FValProFailSettleQty": 0, |
| | | //"FProFailSettleQty": 0, |
| | | //"FOperMatFailSettleSelQty": 0, |
| | | //"FValMatFailSettleSelQty": 0, |
| | | //"FMatFailSettleSelQty": 0, |
| | | "\"FUnitTransHeadQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FUnitTransHeadQty"]) + "\"," + |
| | | "\"FUnitTransOperQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FUnitTransOperQty"]) + "\"," + |
| | | //"FOperMatFailSettleQty": 0, |
| | | //"FMatFailSettleQty": 0, |
| | | //"FValMatFailSettleQty": 0, |
| | | "\"FBaseUnitId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBaseUnitId"]) + "\" }," + |
| | | "\"FApplyBaseQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FApplyBaseQty"]) + "\"," + |
| | | "\"FTransferBaseQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FTransferBaseQty"]) + "\"," + |
| | | //"FUnQuaInStockSelQty": 0, |
| | | "\"FQualifiedBaseQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FQualifiedBaseQty"]) + "\"," + |
| | | //"FInspectSelectBaseQty": 0, |
| | | //"FUnQuaInStockQty": 0, |
| | | //"FUnqualifiedBaseQty": 0, |
| | | //"FProFailBaseQty": 0, |
| | | //"FInspectBaseQty": 0, |
| | | //"FPreReworkBaseQty": 0, |
| | | //"FMatFailBaseQty": 0, |
| | | //"FQuaSettleSelBaseQty": 0, |
| | | //"FQuaInStockSelBaseQty": 0, |
| | | //"FQuaSettleBaseQty": 0, |
| | | //"FUnQuaInStockSelBaseQty": 0, |
| | | //"FQuaInStockBaseQty": 0, |
| | | //"FUnQuaInStockBaseQty": 0, |
| | | //"FProFailSettleSelBaseQty": 0, |
| | | //"FProFailSettleBaseQty": 0, |
| | | //"FMatFailSettleSelBaseQty": 0, |
| | | //"FMatFailSettleBaseQty": 0, |
| | | "\"FDemandType\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FDemandType"]) + "\"," + |
| | | "\"FDemandBillId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FDemandBillId"]) + "\"," + |
| | | "\"FDemandBillEntryId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FDemandBillEntryId"]) + "\"," + |
| | | //"FInspectEntryId": 0, |
| | | "\"FConvertType\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FConvertType"]) + "\"," + |
| | | //"FReceiveQualifiedTaxPrice": 0, |
| | | //"FReceiveProFailTaxPrice": 0, |
| | | //"FReceiveMatFailTaxPrice": 0, |
| | | "\"FSendQualifiedTaxPrice\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSendQualifiedTaxPrice"]) + "\"," + |
| | | "\"FSendProFailTaxPrice\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSendProFailTaxPrice"]) + "\"," + |
| | | "\"FSendMatFailTaxPrice\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSendMatFailTaxPrice"]) + "\"," + |
| | | "\"FRateOperQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FRateOperQty"]) + "\"," + |
| | | "\"FRateProQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FRateProQty"]) + "\"," + |
| | | "\"FRateValQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FRateValQty"]) + "\"," + |
| | | //"FPriceList": {"FNUMBER": ""}, |
| | | //"FOperStatus": "", |
| | | //"FInstockStatus": "", |
| | | //"FSettleStatus": "", |
| | | //"FMOInStockQty": 0, |
| | | //"FDefectProcessEntryId": 0, |
| | | //"FMRBReviewEntryId": 0, |
| | | //"FTransDirection": "", |
| | | //"FBackwashSrcId": 0 |
| | | sJson_MainCustom + |
| | | " \"FBillHead_Link\": [{" + |
| | | " \"FBillHead_Link_FFlowId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillHead_Link_FFlowId"]) + "\"," + |
| | | " \"FBillHead_Link_FFlowLineId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillHead_Link_FFlowLineId"]) + "\"," + |
| | | " \"FBillHead_Link_FRuleId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillHead_Link_FRuleId"]) + "\"," + |
| | | " \"FBillHead_Link_FSTableId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillHead_Link_FSTableId"]) + "\"," + |
| | | " \"FBillHead_Link_FSTableName\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillHead_Link_FSTableName"]) + "\"," + |
| | | " \"FBillHead_Link_FSBillId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillHead_Link_FSBillId"]) + "\"," + |
| | | " \"FBillHead_Link_FSId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillHead_Link_FSId"]) + "\"," + |
| | | " \"FBillHead_Link_FTransferBaseQtyOld\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillHead_Link_FTransferBaseQtyOld"]) + "\"," + |
| | | " \"FBillHead_Link_FTransferBaseQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillHead_Link_FTransferBaseQty"]) + "\"" + |
| | | " } ]," + |
| | | " \"FBFLowId\":{\"FID\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBFLowId"]) + "\"}}}"; |
| | | |
| | | string sJson = sJson_Main; |
| | | |
| | | //CLOUD金蝶云账号密码登入 |
| | | var loginRet = InvokeHelper.LoginUser(oMain.HMaker); |
| | | var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>(); |
| | | sRemark = sRemark + " ;获取验证CLOUD账号密码" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"); |
| | | |
| | | //生成金蝶云单据 |
| | | if (isSuccess == 1) |
| | | { |
| | | string result = InvokeHelper.Save("SFC_OperationTransfer", sJson); //保存 |
| | | sRemark = sRemark + " ;生成CLOUD单据" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"); |
| | | |
| | | HReturn = result.ToString(); |
| | | |
| | | if (HReturn.Contains("\"IsSuccess\":false") == true) |
| | | { |
| | | //反序列化json数据 |
| | | var retModel = JsonConvert.DeserializeObject<KingdeeResponse>(HReturn); |
| | | //接收金蝶报错信息 |
| | | var strErrorMsg = string.Empty; |
| | | //遍历获取报错信息 |
| | | foreach (var item in retModel.Result.ResponseStatus.Errors) |
| | | { |
| | | strErrorMsg += item.Message + "\r\n"; |
| | | }; |
| | | sErrMsg = "生成委外工序发出单失败!金蝶云提示:" + strErrorMsg; |
| | | LogService.Write("生成委外工序发出单失败!" + HReturn + sJson); //写入txt文本 |
| | | oCn.RollBack(); |
| | | return false; |
| | | } |
| | | else |
| | | { |
| | | sRemark = sRemark + sJson; |
| | | oCn.Commit(); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | sErrMsg = "生成委外工序发出单失败!金蝶云登录失败!"; |
| | | oCn.RollBack(); |
| | | return false; |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | LogService.Write("生成回滚" + e.Message + sRemark); |
| | | sErrMsg = "生成委外工序发出单失败!" + e.Message; |
| | | oCn.RollBack(); |
| | | return false; |
| | | } |
| | | |
| | | if (oSystemParameter.omodel.MES_StationEntrustInBill_AutoCheck.ToUpper() == "Y") //系统参数 自动审核 |
| | | { |
| | | try |
| | | { |
| | | oCn.BeginTran(); |
| | | //审核单据 |
| | | oCn.RunProc("Update Sc_StationInBillMain Set HChecker='" + oMain.HMaker + "',HCheckDate=getdate(),HBillStatus=2 where HInterID= " + oMain.HInterID.ToString()); |
| | | |
| | | //提交、审核金蝶云单据 |
| | | HReturn = ""; |
| | | string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + oMain.HBillNo + "\"]}"; |
| | | var result2 = InvokeHelper.Submit("SFC_OperationTransfer", sJson2); //提交 |
| | | sRemark = sRemark + " ;提交CLOUD单据" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"); |
| | | |
| | | var result3 = InvokeHelper.Audit("SFC_OperationTransfer", sJson2); //审核 |
| | | sRemark = sRemark + " ;审核CLOUD单据" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"); |
| | | |
| | | HReturn = result2.ToString() + "," + result3.ToString(); |
| | | |
| | | if (HReturn.Contains("\"IsSuccess\":false") == true) |
| | | { |
| | | //反序列化json数据 |
| | | var retModel = JsonConvert.DeserializeObject<KingdeeResponse>(result3); |
| | | //接收金蝶报错信息 |
| | | var strErrorMsg = string.Empty; |
| | | //遍历获取报错信息 |
| | | foreach (var item in retModel.Result.ResponseStatus.Errors) |
| | | { |
| | | strErrorMsg += item.Message + "\r\n"; |
| | | }; |
| | | sErrMsg = "生成委外工序发出单成功,审核单据失败!金蝶云提示:" + strErrorMsg; |
| | | LogService.Write("审核单据失败" + sRemark + HReturn); |
| | | oCn.RollBack(); |
| | | return true; |
| | | } |
| | | else |
| | | { |
| | | LogService.Write("生成并审核委外工序发出单成功!" + sRemark); |
| | | sErrMsg = "生成并审核委外工序发出单成功!单据号为:" + oMain.HBillNo; |
| | | oCn.Commit(); |
| | | return true; |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | LogService.Write("审核回滚" + sRemark + HReturn); |
| | | sErrMsg = "审核委外工序发出单失败!" + e.Message; |
| | | oCn.RollBack(); |
| | | return false; |
| | | } |
| | | } |
| | | else |
| | | { |
| | | LogService.Write("生成委外工序发出单成功!" + sRemark); |
| | | sErrMsg = "生成委外工序发出单成功!单据号为:" + oMain.HBillNo; |
| | | return true; |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | #region 委外工序发出单 上传生成金蝶云单据 |
| | | |
| | | /// <summary> |
| | | /// 新增并审核金蝶云单据 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [Route("Cj_StationEntrustInBillController/set_SaveStationEntrustInBill_CLD_Json")] |
| | | [HttpGet] |
| | | public object set_SaveStationEntrustInBill_CLD_Json(string HBillNo, Int64 HProcExchInterID, Int64 HProcExchEntryID, Int64 HProcNo, Double HQty, string HMaker) |
| | | { |
| | | if (set_SaveStationEntrustInBill_CLD(HBillNo,HProcExchInterID,HProcExchEntryID,HProcNo,HQty,HMaker, ref DBUtility.ClsPub.sErrInfo)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = DBUtility.ClsPub.sErrInfo; //成功! |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = DBUtility.ClsPub.sErrInfo; //失败! |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | //生成金蝶云委外工序发出单 |
| | | public bool set_SaveStationEntrustInBill_CLD(string HBillNo, Int64 HProcExchInterID, Int64 HProcExchEntryID, Int64 HProcNo, Double HQty, string HMaker, ref string sErrMsg) |
| | | { |
| | | string sRemark = ""; |
| | | string HReturn; |
| | | SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); |
| | | try |
| | | { |
| | | //返回API递入所需数据 |
| | | DataSet Ds = oCn.RunProcReturn("exec h_p_MES_StationEntrustInBill_ProdMateRequest_CLD " + HProcExchInterID.ToString() + "," + HProcExchEntryID.ToString() + "," + HProcNo.ToString() + "," + HQty.ToString(), "h_p_MES_StationEntrustInBill_ProdMateRequest_CLD"); |
| | | if (Ds == null || Ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | sErrMsg = "未获取到API所需递入数据!"; |
| | | return false; |
| | | } |
| | | sRemark = sRemark + " ;获取CLOUD单据API递入值" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"); |
| | | |
| | | //生成金蝶云对应单据 |
| | | //获取金蝶云API所需递入数据 |
| | | string sJson_MainCustom = ""; //自定义字段 |
| | | string sJson_BatchNo = ""; |
| | | string sJson_FAUXPROPID = ""; |
| | | sJson_MainCustom = Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["MainCustom"]); |
| | | |
| | | //是否启用批次管理 |
| | | if (Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["HISBATCHMANAGE"]) == "1") |
| | | { |
| | | sJson_BatchNo = " \"FLOT\": {\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FLOT"]) + "\"}, \"FLOT_TEXT\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FLOT"]) + "\" , "; |
| | | } |
| | | else |
| | | { |
| | | sJson_BatchNo = ""; |
| | | } |
| | | |
| | | //辅助属性 |
| | | sJson_FAUXPROPID = " \"FProAuxPropId\":{\"FPROAUXPROPID__FF100002\":{\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FProAuxPropId"]) + "\"}},"; |
| | | |
| | | string sJson_Main = "{\"Creator\":\"\",\"NeedUpDateFields\":[],\"NeedReturnFields\":[],\"IsDeleteEntry\":\"True\",\"SubSystemId\":\"\",\"IsVerifyBaseDataField\":\"false\",\"IsEntryBatchFill\":\"True\",\"Model\":{\"FBillNo\":\"" + HBillNo + "\"," + |
| | | //"FID": 0, |
| | | "\"FBillTypeID\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillTypeID"]) + "\" }," + |
| | | "\"FBillDate\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillDate"]) + "\"," + |
| | | "\"FProOrgId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FProOrgId"]) + "\" }," + |
| | | "\"FProductId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FProductId"]) + "\" }," + |
| | | //"FProductId": {"FNUMBER": ""}, |
| | | sJson_FAUXPROPID + |
| | | "\"FTransferType\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FTransferType"]) + "\"," + |
| | | "\"FBusinessType\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBusinessType"]) + "\"," + |
| | | //"FDescription": "", |
| | | "\"FProDeptId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FProDeptId"]) + "\" }," + |
| | | "\"FMOBillNo\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FMOBillNo"]) + "\"," + |
| | | "\"FMOEntrySeq\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FMOEntrySeq"]) + "\"," + |
| | | "\"FBomId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBomId"]) + "\" }," + |
| | | "\"FOperUnitId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOperUnitId"]) + "\" }," + |
| | | "\"FProUnitId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FProUnitId"]) + "\" }," + |
| | | "\"FMOQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FMOQty"]) + "\"," + |
| | | "\"FMTONo\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FMTONo"]) + "\"," + |
| | | sJson_BatchNo + |
| | | //"FCreatorId": {"FUserID": ""}, |
| | | "\"FSaleOrderNo\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSaleOrderNo"]) + "\"," + |
| | | //"FCreateDate": "1900-01-01", |
| | | "\"FSaleOrderSeq\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSaleOrderSeq"]) + "\"," + |
| | | //"FModifierId": {"FUserID": ""}, |
| | | //"FModifyDate": "1900-01-01", |
| | | //"FApproveDate": "1900-01-01", |
| | | //"FApproverId": {"FUserID": ""}, |
| | | //"FCancelDate": "1900-01-01", |
| | | //"FCancelId": {"FUserID": ""}, |
| | | "\"FSourceBillType\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSourceBillType"]) + "\"," + |
| | | "\"FSrcOptPlanId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSrcOptPlanId"]) + "\"," + |
| | | "\"FSourceBillNo\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSourceBillNo"]) + "\"," + |
| | | "\"FSrcOptPlanOptId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSrcOptPlanOptId"]) + "\"," + |
| | | "\"FSrcOptPlanSeqId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSrcOptPlanSeqId"]) + "\"," + |
| | | "\"FMOId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FMOId"]) + "\"," + |
| | | "\"FMOEntryId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FMOEntryId"]) + "\"," + |
| | | //"FSrcRptEntryId": 0, |
| | | //"FGroupById": "", |
| | | "\"FProductType\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FProductType"]) + "\"," + |
| | | "\"FProjectNo\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FProjectNo"]) + "\"," + |
| | | "\"FStockInOrgId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FStockInOrgId"]) + "\" }," + |
| | | "\"FOwnerTypeId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOwnerTypeId"]) + "\"," + |
| | | //"FInStockType": "", |
| | | "\"FOwnerId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOwnerId"]) + "\" }," + |
| | | //"FStockId": {"FNUMBER": ""}, |
| | | "\"FOutOPBillNo\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutOPBillNo"]) + "\"," + |
| | | //"FStockLocId": {"FSTOCKLOCID__FF100001": {"FNumber": ""}}, |
| | | //"FBalanceType": "", |
| | | "\"FIsEntrust\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FIsEntrust"]) + "\"," + |
| | | "\"FOutSeqNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutSeqNumber"]) + "\"," + |
| | | "\"FOutOperNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutOperNumber"]) + "\"," + |
| | | "\"FOutProOrgId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutProOrgId"]) + "\" }," + |
| | | "\"FProxyOutProOrgId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FProxyOutProOrgId"]) + "\" }," + |
| | | "\"FOutDeptId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutDeptId"]) + "\" }," + |
| | | "\"FOutWorkCenterId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutWorkCenterId"]) + "\" }," + |
| | | "\"FOutProcessId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutProcessId"]) + "\" }," + |
| | | //"FOutEmpId": {"FSTAFFNUMBER": ""}, |
| | | "\"FOutOperDescr\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutOperDescr"]) + "\"," + |
| | | //"FOutPurOrgId": {"FNumber": ""}, |
| | | "\"FInProOrgId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInProOrgId"]) + "\" }," + |
| | | "\"FInOPBillNo\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInOPBillNo"]) + "\"," + |
| | | //"FOutSupplier": {"FNUMBER": ""}, |
| | | "\"FOutOperId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutOperId"]) + "\"," + |
| | | "\"FInProcessId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInProcessId"]) + "\" }," + |
| | | "\"FInDeptId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInDeptId"]) + "\" }," + |
| | | "\"FOutIsInStorePoint\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutIsInStorePoint"]) + "\"," + |
| | | "\"FOutSeqType\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutSeqType"]) + "\"," + |
| | | "\"FInOperDescr\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInOperDescr"]) + "\"," + |
| | | "\"FOutIsOutSrc\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOutIsOutSrc"]) + "\"," + |
| | | "\"FInSeqNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInSeqNumber"]) + "\"," + |
| | | "\"FInPurOrgId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInPurOrgId"]) + "\" }," + |
| | | "\"FInOperNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInOperNumber"]) + "\"," + |
| | | "\"FInWorkCenterId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInWorkCenterId"]) + "\" }," + |
| | | //"FInEmpId": {"FSTAFFNUMBER": ""}, |
| | | "\"FInSupplier\":{ \"FNAME\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInSupplier"]) + "\" }," + |
| | | "\"FOperApplyQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOperApplyQty"]) + "\"," + |
| | | "\"FTransferQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FTransferQty"]) + "\"," + |
| | | "\"FApplyQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FApplyQty"]) + "\"," + |
| | | "\"FOperTransferQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOperTransferQty"]) + "\"," + |
| | | "\"FOperQualifiedQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FOperQualifiedQty"]) + "\"," + |
| | | //"FValQualifiedQty": 0, |
| | | "\"FQualifiedQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FQualifiedQty"]) + "\"," + |
| | | "\"FInOperId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FInOperId"]) + "\"," + |
| | | //"FOperUnqualifiedQty": 0, |
| | | //"FUnqualifiedQty": 0, |
| | | "\"FIsFirstOperTransIn\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FIsFirstOperTransIn"]) + "\"," + |
| | | "\"FIsExistTransIn\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FIsExistTransIn"]) + "\"," + |
| | | //"FOperProFailQty": 0, |
| | | //"FValProFailQty": 0, |
| | | //"FProFailQty": 0, |
| | | //"FOperMatFailQty": 0, |
| | | //"FOperPreReworkQty": 0, |
| | | //"FPreReworkQty": 0, |
| | | //"FMatFailQty": 0, |
| | | //"FValMatFailQty": 0, |
| | | "\"FSendCurrency\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSendCurrency"]) + "\" }," + |
| | | "\"FIsInspect\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FIsInspect"]) + "\"," + |
| | | "\"FQCSchemeId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FQCSchemeId"]) + "\" }," + |
| | | "\"FSendProFailPrice\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSendProFailPrice"]) + "\"," + |
| | | //"FReceiveCurrency": {"FNUMBER": ""}, |
| | | //"FReceiveQualifiedPrice": 0, |
| | | //"FReceiveProFailPrice": 0, |
| | | //"FReceiveMatFailPrice": 0, |
| | | "\"FReceiveValuationUnitId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FReceiveValuationUnitId"]) + "\" }," + |
| | | //"FReceiveTaxRate": 0, |
| | | "\"FSendMatFailPrice\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSendMatFailPrice"]) + "\"," + |
| | | //"FOperInspectSelectQty": 0, |
| | | "\"FSendValuationUnitId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSendValuationUnitId"]) + "\" }," + |
| | | //"FInspectSelectQty": 0, |
| | | "\"FSendTaxRate\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSendTaxRate"]) + "\"," + |
| | | "\"FSendQualifiedPrice\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSendQualifiedPrice"]) + "\"," + |
| | | //"FOperQuaSettleSelQty": 0, |
| | | //"FValQuaSettleSelQty": 0, |
| | | //"FQuaSettleSelQty": 0, |
| | | //"FOperInspectQty": 0, |
| | | //"FInspectQty": 0, |
| | | //"FQuaInStockSelQty": 0, |
| | | //"FOperQuaSettleQty": 0, |
| | | //"FValQuaSettleQty": 0, |
| | | //"FQuaSettleQty": 0, |
| | | //"FValProFailSettleSelQty": 0, |
| | | //"FOperProFailSettleSelQty": 0, |
| | | //"FQuaInStockQty": 0, |
| | | //"FProFailSettleSelQty": 0, |
| | | //"FOperProFailSettleQty": 0, |
| | | //"FValProFailSettleQty": 0, |
| | | //"FProFailSettleQty": 0, |
| | | //"FOperMatFailSettleSelQty": 0, |
| | | //"FValMatFailSettleSelQty": 0, |
| | | //"FMatFailSettleSelQty": 0, |
| | | "\"FUnitTransHeadQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FUnitTransHeadQty"]) + "\"," + |
| | | "\"FUnitTransOperQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FUnitTransOperQty"]) + "\"," + |
| | | //"FOperMatFailSettleQty": 0, |
| | | //"FMatFailSettleQty": 0, |
| | | //"FValMatFailSettleQty": 0, |
| | | "\"FBaseUnitId\":{ \"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBaseUnitId"]) + "\" }," + |
| | | "\"FApplyBaseQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FApplyBaseQty"]) + "\"," + |
| | | "\"FTransferBaseQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FTransferBaseQty"]) + "\"," + |
| | | //"FUnQuaInStockSelQty": 0, |
| | | "\"FQualifiedBaseQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FQualifiedBaseQty"]) + "\"," + |
| | | //"FInspectSelectBaseQty": 0, |
| | | //"FUnQuaInStockQty": 0, |
| | | //"FUnqualifiedBaseQty": 0, |
| | | //"FProFailBaseQty": 0, |
| | | //"FInspectBaseQty": 0, |
| | | //"FPreReworkBaseQty": 0, |
| | | //"FMatFailBaseQty": 0, |
| | | //"FQuaSettleSelBaseQty": 0, |
| | | //"FQuaInStockSelBaseQty": 0, |
| | | //"FQuaSettleBaseQty": 0, |
| | | //"FUnQuaInStockSelBaseQty": 0, |
| | | //"FQuaInStockBaseQty": 0, |
| | | //"FUnQuaInStockBaseQty": 0, |
| | | //"FProFailSettleSelBaseQty": 0, |
| | | //"FProFailSettleBaseQty": 0, |
| | | //"FMatFailSettleSelBaseQty": 0, |
| | | //"FMatFailSettleBaseQty": 0, |
| | | "\"FDemandType\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FDemandType"]) + "\"," + |
| | | "\"FDemandBillId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FDemandBillId"]) + "\"," + |
| | | "\"FDemandBillEntryId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FDemandBillEntryId"]) + "\"," + |
| | | //"FInspectEntryId": 0, |
| | | "\"FConvertType\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FConvertType"]) + "\"," + |
| | | //"FReceiveQualifiedTaxPrice": 0, |
| | | //"FReceiveProFailTaxPrice": 0, |
| | | //"FReceiveMatFailTaxPrice": 0, |
| | | "\"FSendQualifiedTaxPrice\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSendQualifiedTaxPrice"]) + "\"," + |
| | | "\"FSendProFailTaxPrice\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSendProFailTaxPrice"]) + "\"," + |
| | | "\"FSendMatFailTaxPrice\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FSendMatFailTaxPrice"]) + "\"," + |
| | | "\"FRateOperQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FRateOperQty"]) + "\"," + |
| | | "\"FRateProQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FRateProQty"]) + "\"," + |
| | | "\"FRateValQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FRateValQty"]) + "\"," + |
| | | //"FPriceList": {"FNUMBER": ""}, |
| | | //"FOperStatus": "", |
| | | //"FInstockStatus": "", |
| | | //"FSettleStatus": "", |
| | | //"FMOInStockQty": 0, |
| | | //"FDefectProcessEntryId": 0, |
| | | //"FMRBReviewEntryId": 0, |
| | | //"FTransDirection": "", |
| | | //"FBackwashSrcId": 0 |
| | | sJson_MainCustom + |
| | | " \"FBillHead_Link\": [{" + |
| | | " \"FBillHead_Link_FFlowId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillHead_Link_FFlowId"]) + "\"," + |
| | | " \"FBillHead_Link_FFlowLineId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillHead_Link_FFlowLineId"]) + "\"," + |
| | | " \"FBillHead_Link_FRuleId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillHead_Link_FRuleId"]) + "\"," + |
| | | " \"FBillHead_Link_FSTableId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillHead_Link_FSTableId"]) + "\"," + |
| | | " \"FBillHead_Link_FSTableName\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillHead_Link_FSTableName"]) + "\"," + |
| | | " \"FBillHead_Link_FSBillId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillHead_Link_FSBillId"]) + "\"," + |
| | | " \"FBillHead_Link_FSId\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillHead_Link_FSId"]) + "\"," + |
| | | " \"FBillHead_Link_FTransferBaseQtyOld\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillHead_Link_FTransferBaseQtyOld"]) + "\"," + |
| | | " \"FBillHead_Link_FTransferBaseQty\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBillHead_Link_FTransferBaseQty"]) + "\"" + |
| | | " } ]," + |
| | | " \"FBFLowId\":{\"FID\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["FBFLowId"]) + "\"}}}"; |
| | | |
| | | string sJson = sJson_Main; |
| | | |
| | | //CLOUD金蝶云账号密码登入 |
| | | var loginRet = InvokeHelper.LoginUser(HMaker); |
| | | var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>(); |
| | | sRemark = sRemark + " ;获取验证CLOUD账号密码" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"); |
| | | |
| | | //生成金蝶云单据 |
| | | if (isSuccess == 1) |
| | | { |
| | | string result = InvokeHelper.Save("SFC_OperationTransfer", sJson); //保存 |
| | | sRemark = sRemark + " ;生成CLOUD单据" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"); |
| | | |
| | | HReturn = result.ToString(); |
| | | |
| | | if (HReturn.Contains("\"IsSuccess\":false") == true) |
| | | { |
| | | //反序列化json数据 |
| | | var retModel = JsonConvert.DeserializeObject<KingdeeResponse>(HReturn); |
| | | //接收金蝶报错信息 |
| | | var strErrorMsg = string.Empty; |
| | | //遍历获取报错信息 |
| | | foreach (var item in retModel.Result.ResponseStatus.Errors) |
| | | { |
| | | strErrorMsg += item.Message + "\r\n"; |
| | | }; |
| | | sErrMsg = "生成委外工序发出单失败!金蝶云提示:" + strErrorMsg; |
| | | LogService.Write("生成委外工序发出单失败!" + HReturn + sJson); //写入txt文本 |
| | | return false; |
| | | } |
| | | else |
| | | { |
| | | sRemark = sRemark + sJson; |
| | | |
| | | //提交、审核金蝶云单据 |
| | | HReturn = ""; |
| | | string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + HBillNo + "\"]}"; |
| | | var result2 = InvokeHelper.Submit("SFC_OperationTransfer", sJson2); //提交 |
| | | sRemark = sRemark + " ;提交CLOUD单据" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"); |
| | | |
| | | var result3 = InvokeHelper.Audit("SFC_OperationTransfer", sJson2); //审核 |
| | | sRemark = sRemark + " ;审核CLOUD单据" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"); |
| | | |
| | | HReturn = result2.ToString() + "," + result3.ToString(); |
| | | |
| | | if (HReturn.Contains("\"IsSuccess\":false") == true) |
| | | { |
| | | //反序列化json数据 |
| | | var retModel = JsonConvert.DeserializeObject<KingdeeResponse>(result3); |
| | | //接收金蝶报错信息 |
| | | var strErrorMsg = string.Empty; |
| | | //遍历获取报错信息 |
| | | foreach (var item in retModel.Result.ResponseStatus.Errors) |
| | | { |
| | | strErrorMsg += item.Message + "\r\n"; |
| | | }; |
| | | sErrMsg = "生成委外工序发出单成功,审核单据失败!金蝶云提示:" + strErrorMsg; |
| | | LogService.Write("审核单据失败" + sRemark + HReturn); |
| | | return true; |
| | | } |
| | | else |
| | | { |
| | | LogService.Write("生成并审核委外工序发出单成功!" + sRemark); |
| | | sErrMsg = "生成并审核委外工序发出单成功!单据号为:" + HBillNo; |
| | | return true; |
| | | } |
| | | } |
| | | } |
| | | else |
| | | { |
| | | sErrMsg = "生成委外工序发出单失败!金蝶云登录失败!"; |
| | | return false; |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | LogService.Write("生成回滚" + e.Message + sRemark); |
| | | sErrMsg = "生成委外工序发出单失败!" + e.Message; |
| | | return false; |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | } |
| | | } |