|  |  |  | 
|---|
|  |  |  | 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; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //判断是否有采购经理权限(安瑞) | 
|---|
|  |  |  | 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。 | 
|---|
|  |  |  | 
|---|
|  |  |  | string HInnerBillNo = mainList[0].HInnerBillNo;//内部单据号 | 
|---|
|  |  |  | long HWHID = mainList[0].HWHID;//仓库 | 
|---|
|  |  |  | long HProjectID = mainList[0].HProjectID;//仓库 | 
|---|
|  |  |  |  | 
|---|
|  |  |  | string HLinkMan = mainList[0].HLinkMan;//联系人 | 
|---|
|  |  |  | string HLinkPhone = mainList[0].HLinkPhone;//联系人电话 | 
|---|
|  |  |  | List<ClsCg_POOrderBillMain> mainList2 = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsCg_POOrderBillMain>>(msg2); | 
|---|
|  |  |  | DateTime dt = DateTime.Now; | 
|---|
|  |  |  | long HPURCHASEORGID = mainList2[0].HOrgID; | 
|---|
|  |  |  | 
|---|
|  |  |  | ,HMaker,HMakeDate | 
|---|
|  |  |  | ,HERPInterID,HERPBillType,HPURCHASEORGID | 
|---|
|  |  |  | ,HPURCHASERGROUPID,HPROVIDERID,HSETTLEID,HCHARGEID,HBUSINESSTYPE,HPROVIDERADDRESS,HCORRESPONDORGID,HPROVIDERCONTACTID | 
|---|
|  |  |  | ,HWHID,HProjectID) | 
|---|
|  |  |  | ,HWHID,HProjectID,HLinkMan,HLinkPhone) | 
|---|
|  |  |  | values(" + HInterID + "," + DateTime.Now.Year + "," + DateTime.Now.Month + ",'" + 1102 + "','" + | 
|---|
|  |  |  | 1102 + "','" + HDate + "','" + HBillNo + "','" + HBillStatus + "','" + HAddress + | 
|---|
|  |  |  | "'," + HSSID + ",'" + HSSDate + "'," + HPSStyleID + "," + HSupID + "," + HCurID + | 
|---|
|  |  |  | "," + HExRate + "," + HEmpID + "," + HManagerID + "," + HDeptID + ",'" + HExplanation + "','" + HRemark + "','" + HInnerBillNo + "','" + HMaker + "',getdate()" + "," + HERPInterID + ",'" + HERPBillType + "'," + HPURCHASEORGID + "," + HPURCHASERGROUPID + "," | 
|---|
|  |  |  | + HPROVIDERID + "," + HSETTLEID + "," + HCHARGEID + ",'" + HBUSINESSTYPE + "','" + HPROVIDERADDRESS + "'," | 
|---|
|  |  |  | + HCORRESPONDORGID + "," + HPROVIDERCONTACTID + "," | 
|---|
|  |  |  | + HWHID+","+ HProjectID + ")"); | 
|---|
|  |  |  | + HWHID+","+ HProjectID +",'"+HLinkMan+"','"+HLinkPhone+"'"+")"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | else if (OperationType == 3 || ds.Tables[0].Rows.Count != 0) | 
|---|
|  |  |  | { //修改 | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 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 + " where HInterID=" + HInterID); | 
|---|
|  |  |  | + ",HAddress='" + HAddress + "',HSSDate='" + HSSDate + "',HWHID="+ HWHID + ",HProjectID="+ HProjectID +",HLinkMan = '"+HLinkMan+"',HLinkPhone = '"+HLinkPhone+ "' where HInterID=" + HInterID); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //删除子表 | 
|---|
|  |  |  | oCN.RunProc("delete from Cg_POOrderBillSub 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"; | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 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("Cg_POOrderBill/PushList")] | 
|---|
|  |  |  | [HttpGet] | 
|---|
|  |  |  | public object PushList(string HBillNo, string user) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | try | 
|---|
|  |  |  | { | 
|---|
|  |  |  | List<object> columnNameList = new List<object>(); | 
|---|
|  |  |  | //判断是否有查询权限 | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (!DBUtility.ClsPub.Security_Log("Cg_POOrderBillQuery", 1, false, user)) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | objJsonResult.code = CodeConstant.FAIL; | 
|---|
|  |  |  | objJsonResult.count = CountConstant.FAIL; | 
|---|
|  |  |  | objJsonResult.Message = "无权限查看!"; | 
|---|
|  |  |  | objJsonResult.data = null; | 
|---|
|  |  |  | return objJsonResult; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | string sql = "select * from h_v_IF_POOrderBillList where 单据号 = '" + HBillNo + "' and 状态 = '已审核' and 未关联数量 > 0"; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | ds = oCN.RunProcReturn(sql, "h_v_IF_POOrderBillList"); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (ds.Tables[0].Rows.Count == 0) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | objJsonResult.code = CodeConstant.FAIL; | 
|---|
|  |  |  | objJsonResult.count = CountConstant.FAIL; | 
|---|
|  |  |  | objJsonResult.Message = "找不到符合条件单据!"; | 
|---|
|  |  |  | objJsonResult.data = null; | 
|---|
|  |  |  | return objJsonResult; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 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 = CodeConstant.SUCCEED; | 
|---|
|  |  |  | objJsonResult.count = CountConstant.SUCCEED; | 
|---|
|  |  |  | objJsonResult.Message = "Sucess!"; | 
|---|
|  |  |  | objJsonResult.data = ds.Tables[0]; | 
|---|
|  |  |  | objJsonResult.list = columnNameList; | 
|---|
|  |  |  | return objJsonResult; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | catch (Exception e) | 
|---|
|  |  |  | { | 
|---|
|  |  |  | objJsonResult.code = CodeConstant.FAIL; | 
|---|
|  |  |  | objJsonResult.count = CountConstant.FAIL; | 
|---|
|  |  |  | objJsonResult.Message = "Exception!" + e.ToString(); | 
|---|
|  |  |  | objJsonResult.data = null; | 
|---|
|  |  |  | return objJsonResult; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | #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 | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|