|  |  | 
 |  |  |         SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); | 
 |  |  |         DataSet ds; | 
 |  |  |  | 
 |  |  |     /// <summary> | 
 |  |  |         #region 采购订单分页列表 | 
 |  |  |         [Route("Cg_POOrderBill/page")] | 
 |  |  |         [HttpGet] | 
 |  |  |         public object Cg_POOrderBillPage(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("Cg_POOrderBillList", 3, false, user)) | 
 |  |  |                 { | 
 |  |  |                     objJsonResult.code = CodeConstant.FAIL; | 
 |  |  |                     objJsonResult.count = CountConstant.FAIL; | 
 |  |  |                     objJsonResult.Message = "您没有该模块权限,请与管理员联系!"; | 
 |  |  |                     objJsonResult.data = null; | 
 |  |  |                     return objJsonResult; | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 string sErr = ""; | 
 |  |  |                 if (oSystemParameter.ShowBill(ref sErr)) | 
 |  |  |                 { | 
 |  |  |                     if (oSystemParameter.omodel.WMS_CampanyName == "乔一") | 
 |  |  |                     { | 
 |  |  |  | 
 |  |  |                     } | 
 |  |  |                     else | 
 |  |  |                     { | 
 |  |  |                         //判断是否有采购经理权限(安瑞) | 
 |  |  |                         bool isCgjl = Security_Log("Cg_POOrderBill_PurchasManager", 1, true, user); | 
 |  |  |                         if (!isCgjl) | 
 |  |  |                         { | 
 |  |  |                             sWhere += $" and HEmpID in (select HEmpID from Gy_Czygl where Czymc='{user}' and HEmpID >0  )"; | 
 |  |  |                         } | 
 |  |  |                     } | 
 |  |  |                 } | 
 |  |  |                  | 
 |  |  |  | 
 |  |  |  | 
 |  |  |                 sWhere = sWhere.Replace("'", "''"); | 
 |  |  |                 if (sWhere == null || sWhere.Equals("")) | 
 |  |  |                 { | 
 |  |  |                     ds = oCN.RunProcReturn("exec h_p_IF_POOrderBillList " + page + "," + size + ",''", "h_p_IF_POOrderBillList"); | 
 |  |  |                 } | 
 |  |  |                 else | 
 |  |  |                 { | 
 |  |  |                     ds = oCN.RunProcReturn("exec h_p_IF_POOrderBillList " + page + "," + size + ",'" + sWhere + "'", "h_p_IF_POOrderBillList"); | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 //添加列名 | 
 |  |  |                 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 | 
 |  |  |  | 
 |  |  |         /// <summary> | 
 |  |  |         /// 返回采购订单列表 | 
 |  |  |         ///参数:string sql。 | 
 |  |  |         ///返回值:object。 | 
 |  |  | 
 |  |  |                 { //修改 | 
 |  |  |  | 
 |  |  |                     DataSet dss; | 
 |  |  |                     dss = oCN.RunProcReturn("select * from h_v_IF_POOrderBillList where hmainid=" + HInterID + " and 单据号='" + HBillNo + "'", "h_v_IF_POOrderBillList"); | 
 |  |  |                     dss = oCN.RunProcReturn("select * from h_v_IF_POOrderBillList where hmainid=" + HInterID, "h_v_IF_POOrderBillList"); | 
 |  |  |                     //判断是否可编辑 | 
 |  |  |                     if (dss.Tables[0].Rows[0]["审核人"].ToString() != "" && dss.Tables[0].Rows[0]["审核人"] != null) | 
 |  |  |                     { | 
 |  |  | 
 |  |  |                         return objJsonResult; | 
 |  |  |                     } | 
 |  |  |                     oCN.RunProc("update Cg_POOrderBillMain  set " + | 
 |  |  |                                 "HRemark='" + HRemark + "', HUpDater='" + HMaker + "', HUpDateDate=getdate()" + | 
 |  |  |                                 "HRemark='" + HRemark + "', HUpDater='" + HMaker + "', HUpDateDate=getdate()" + ",HBillNo='" +HBillNo +"'"+  | 
 |  |  |                                  ",HSSID=" + HSSID + ",HPSStyleID=" + HPSStyleID + ",HSupID=" + HSupID + ",HCurID=" + HCurID | 
 |  |  |                                  + ",HExRate=" + HExRate + ",HEmpID=" + HEmpID + ",HManagerID=" + HManagerID + ",HDeptID=" + HDeptID | 
 |  |  |                                  + ",HAddress='" + HAddress + "',HSSDate='" + HSSDate + "',HWHID="+ HWHID + ",HProjectID="+ HProjectID +",HLinkMan = '"+HLinkMan+"',HLinkPhone = '"+HLinkPhone+ "' where HInterID=" + HInterID); | 
 |  |  | 
 |  |  |                 long HBUYERWITHHOLDING = DetailColl2[i].HBUYERWITHHOLDING;//买方代扣代缴 | 
 |  |  |                 string HMATERIALDESC = DetailColl2[i].HMATERIALDESC == null ? "''" : DetailColl2[i].HMATERIALDESC; //物料说明 | 
 |  |  |                 i++; | 
 |  |  |                 if (oSub.HQty <= 0 || oSub.HQty == 0) | 
 |  |  |                 { | 
 |  |  |                     objJsonResult.code = "0"; | 
 |  |  |                     objJsonResult.count = 0; | 
 |  |  |                     objJsonResult.Message = "第" + i + "行,数量不能为0或者小于0"; | 
 |  |  |                     objJsonResult.data = null; | 
 |  |  |                     return objJsonResult; | 
 |  |  |                 } | 
 |  |  |                 //if (oSub.HQty <= 0 || oSub.HQty == 0) | 
 |  |  |                 //{ | 
 |  |  |                 //    objJsonResult.code = "0"; | 
 |  |  |                 //    objJsonResult.count = 0; | 
 |  |  |                 //    objJsonResult.Message = "第" + i + "行,数量不能为0或者小于0"; | 
 |  |  |                 //    objJsonResult.data = null; | 
 |  |  |                 //    return objJsonResult; | 
 |  |  |                 //} | 
 |  |  |  | 
 |  |  |                 if (oSub.HMaterID == 0) | 
 |  |  |                 { | 
 |  |  | 
 |  |  |             try | 
 |  |  |             { | 
 |  |  |                  | 
 |  |  |                 ds = oCN.RunProcReturn("select * from h_v_IF_POOrderBillList where hmainid =" + HInterID, "h_v_IF_POOrderBillList"); | 
 |  |  |                 ds = oCN.RunProcReturn("select * from h_v_IF_POOrderBillEdit where hmainid =" + HInterID, "h_v_IF_POOrderBillList"); | 
 |  |  |                 if (ds == null || ds.Tables[0].Rows.Count == 0) | 
 |  |  |                 { | 
 |  |  |                     objJsonResult.code = "0"; | 
 |  |  | 
 |  |  |         { | 
 |  |  |             SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); | 
 |  |  |  | 
 |  |  |             string sql = "select a.HItemID HMaterID,a.HNumber HMaterNumber,a.HName HMaterName,a.HMaterRuleType,a.HModel HMaterModel,a.HUnitID, b.HNumber HUnitNumber, b.HName HUnitName" + | 
 |  |  |             string sql = "select a.HItemID HMaterID,a.HNumber HMaterNumber,a.HName HMaterName,a.HMaterRuleType,a.HModel HMaterModel,a.HUnitID, b.HNumber HUnitNumber, b.HName HUnitName,a.HWHID,w.HName 默认仓库,a.HPOUnitID,u.HName HPOUnitName " + | 
 |  |  |                 " from Gy_Material AS a " + | 
 |  |  |                 " LEFT OUTER JOIN Gy_Unit AS b on a.HUnitID = b.HItemID " + | 
 |  |  |                 " left outer join Gy_Warehouse as w on a.HWHID = w.HItemID " + | 
 |  |  |                 " left outer join Gy_Unit As u on a.HPOUnitID = u.HItemID" + | 
 |  |  |                 " where a.HItemID =" + HMaterID; | 
 |  |  |  | 
 |  |  |             var dataSet = oCN.RunProcReturn(sql, "Gy_Material"); | 
 |  |  | 
 |  |  |                 } | 
 |  |  |                 string sql = "select * from h_v_Cg_POOrderBillQuerySub where hmainid =  "+ hmainid; | 
 |  |  |  | 
 |  |  |                 ds = oCN.RunProcReturn(sql + " order by hsubid desc", "h_v_Cg_POOrderBillQuerySub"); | 
 |  |  |                 ds = oCN.RunProcReturn(sql + " order by hsubid ASC", "h_v_Cg_POOrderBillQuerySub"); | 
 |  |  |                  | 
 |  |  |  | 
 |  |  |                 foreach (DataColumn col in ds.Tables[0].Columns) | 
 |  |  | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |         #endregion | 
 |  |  |  | 
 |  |  |         #region 出库汇总 查询 | 
 |  |  |         [Route("Xs_SeOrderOutStockSumReport/Xs_SeOrderOutStockSumReportList")] | 
 |  |  |         [HttpGet] | 
 |  |  |         public object Xs_SeOrderOutStockSumReportList(string sWhere) | 
 |  |  |         { | 
 |  |  |             try | 
 |  |  |             { | 
 |  |  |                 //反序列化传递的值 | 
 |  |  |  | 
 |  |  |                 ds = oCN.RunProcReturn($"exec h_p_Xs_SeOrderOutStockSumReport " + sWhere + "", "h_p_Xs_SeOrderOutStockSumReport"); | 
 |  |  |  | 
 |  |  |                 List<object> listCol = new List<object>(); | 
 |  |  |                 foreach (DataColumn col in ds.Tables[0].Columns) | 
 |  |  |                 { | 
 |  |  |                     Type dataType = col.DataType; | 
 |  |  |                     string str = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; | 
 |  |  |                     listCol.Add(JsonConvert.DeserializeObject(str)); | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 objJsonResult.code = "1"; | 
 |  |  |                 objJsonResult.count = 1; | 
 |  |  |                 objJsonResult.Message = "Sucess!"; | 
 |  |  |                 objJsonResult.data = ds.Tables[0]; | 
 |  |  |                 objJsonResult.list = listCol; | 
 |  |  |                 return objJsonResult; | 
 |  |  |             } | 
 |  |  |             catch (Exception e) | 
 |  |  |             { | 
 |  |  |                 objJsonResult.code = "0"; | 
 |  |  |                 objJsonResult.count = 0; | 
 |  |  |                 objJsonResult.Message = "Exception!" + e.ToString(); | 
 |  |  |                 objJsonResult.data = null; | 
 |  |  |                 return objJsonResult; | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |         #endregion | 
 |  |  |  | 
 |  |  |         #region 入库汇总 查询 | 
 |  |  |         [Route("Cg_PoOrderInStockSumReport/Cg_PoOrderInStockSumReportList")] | 
 |  |  |         [HttpGet] | 
 |  |  |         public object Cg_PoOrderInStockSumReportList(string sWhere) | 
 |  |  |         { | 
 |  |  |             try | 
 |  |  |             { | 
 |  |  |                 //反序列化传递的值 | 
 |  |  |  | 
 |  |  |                 ds = oCN.RunProcReturn($"exec h_p_Cg_PoOrderInStockSumReport " + sWhere + "", "h_p_Cg_PoOrderInStockSumReport"); | 
 |  |  |  | 
 |  |  |                 List<object> listCol = new List<object>(); | 
 |  |  |                 foreach (DataColumn col in ds.Tables[0].Columns) | 
 |  |  |                 { | 
 |  |  |                     Type dataType = col.DataType; | 
 |  |  |                     string str = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; | 
 |  |  |                     listCol.Add(JsonConvert.DeserializeObject(str)); | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 objJsonResult.code = "1"; | 
 |  |  |                 objJsonResult.count = 1; | 
 |  |  |                 objJsonResult.Message = "Sucess!"; | 
 |  |  |                 objJsonResult.data = ds.Tables[0]; | 
 |  |  |                 objJsonResult.list = listCol; | 
 |  |  |                 return objJsonResult; | 
 |  |  |             } | 
 |  |  |             catch (Exception e) | 
 |  |  |             { | 
 |  |  |                 objJsonResult.code = "0"; | 
 |  |  |                 objJsonResult.count = 0; | 
 |  |  |                 objJsonResult.Message = "Exception!" + e.ToString(); | 
 |  |  |                 objJsonResult.data = null; | 
 |  |  |                 return objJsonResult; | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |         #endregion | 
 |  |  |  | 
 |  |  |  | 
 |  |  |         #region 采购订单 根据用户获取用户关联供应商过滤条件 | 
 |  |  |         [Route("Cg_POOrderBill/getSupIDListByUser")] | 
 |  |  |         [HttpGet] | 
 |  |  |         public object getSupIDListByUser(string CurUserID, string CurUserName) | 
 |  |  |         { | 
 |  |  |             string sWhere = ""; | 
 |  |  |             string ModRightNameCheck = "Gy_UserLookAllSup"; | 
 |  |  |             DBUtility.ClsPub.CurUserName = CurUserName; | 
 |  |  |             try | 
 |  |  |             { | 
 |  |  |                 //权限判断:是否可以查看所有供应商 | 
 |  |  |                 if (DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, false, CurUserName)) | 
 |  |  |                 { | 
 |  |  |                     sWhere = ""; | 
 |  |  |                 } | 
 |  |  |                 else | 
 |  |  |                 { | 
 |  |  |                     sWhere = " and HSupID in (select HSupID from Gy_UserSupplierRelation Where HUserID = '" + CurUserID + "')"; | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 objJsonResult.code = "1"; | 
 |  |  |                 objJsonResult.count = 1; | 
 |  |  |                 objJsonResult.Message = "Sucess!"; | 
 |  |  |                 objJsonResult.data = sWhere; | 
 |  |  |                 return objJsonResult; | 
 |  |  |             } | 
 |  |  |             catch (Exception e) | 
 |  |  |             { | 
 |  |  |                 sWhere = " and 1=0 "; | 
 |  |  |  | 
 |  |  |                 objJsonResult.code = "0"; | 
 |  |  |                 objJsonResult.count = 0; | 
 |  |  |                 objJsonResult.Message = "Exception!" + e.ToString(); | 
 |  |  |                 objJsonResult.data = sWhere; | 
 |  |  |                 return objJsonResult; | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |         #endregion | 
 |  |  |  | 
 |  |  |     } | 
 |  |  |  | 
 |  |  | } |