using DBUtility; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using SQLHelper; using System; using System.Collections.Generic; using System.Data; using System.IO; using System.Linq; using System.Net; using System.Net.Http; using System.Web; using System.Web.Http; using WebAPI.Code; using WebAPI.Models; namespace WebAPI.Controllers { public class EntrustOrderController : ApiController { private JsonResult objJsonResult = new JsonResult(); private json objjson = new json(); SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM(); /// /// 采购单列表 /// /// /// /// /// [Route("GetEntrustOrderBill")] [HttpPost] public object GetEntrustOrderBill([FromBody] JObject msg) { string HSupNo = msg["HSupNo"].ToString(); string sqlWhere = msg["sqlWhere"].ToString(); try { string VsWhere = ""; string PcWhere = ""; SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM(); DataSet ds; string sql = " Where hsupid in (select HSupID from h_v_Gy_UserSupplierList where 用户=^^" + HSupNo.Trim() + "^^) " + sqlWhere; if (Common.SQLtoChange(sql, ref VsWhere, ref PcWhere) == false) { objjson.code = "0"; objjson.count = 0; objjson.Message = "转换特殊字符失败"; objjson.data = null; return objjson; } //获取总行数 Int64 RowTotal = Common.GetRowTotal("H_v_SRM_EntrustOrderBillList", VsWhere, ref DBUtility.ClsPub.sExeReturnInfo); //获取返回数据 ds = oCn.RunProcReturn("exec H_p_SRM_EntrustOrderBillList '" + PcWhere + "'", "H_p_SRM_EntrustOrderBillList"); //添加列名 List columnNameList = new List(); 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列对象的列名 } objjson.code = "0"; objjson.count = 10000; objjson.Message = "获取成功"; objjson.data = ds.Tables[0]; objjson.list = columnNameList; return objjson; } catch (Exception e) { objjson.code = "0"; objjson.count = 0; objjson.Message = "获取失败" + e.ToString(); objjson.data = null; return objjson; } } /// /// 委外订单表头信息 /// /// /// [Route("GetEntrustOrderShowBillMain")] [HttpGet] public object GetEntrustOrderShowBillMain(string sMsg) { try { DataSet ds; string ShowItem = " * ";//显示的字段 if (DBUtility.ClsPub.isLong(sMsg) == 0) { objjson.code = "0"; objjson.count = 0; objjson.Message = "获取失败"; objjson.data = null; return objjson; } DAL.ClsWW_EntrustOrderBill oClsWW_EntrustOrderBill = new DAL.ClsWW_EntrustOrderBill(); ds = oClsWW_EntrustOrderBill.ShowBillMainTo(DBUtility.ClsPub.isLong(sMsg), ShowItem, ref DBUtility.ClsPub.sExeReturnInfo); if (ds == null || ds.Tables[0].Rows.Count == 0) { objjson.code = "0"; objjson.count = 0; objjson.Message = "获取失败"; objjson.data = null; return objjson; } else { objjson.code = "0"; objjson.count = 10000; objjson.Message = "获取成功"; objjson.data = ds.Tables[0]; return objjson; } } catch (Exception e) { objjson.code = "0"; objjson.count = 0; objjson.Message = "获取失败" + e.ToString(); objjson.data = null; return objjson; } } /// /// 委外订单明细表体信息 /// /// /// /// [Route("GetEntrustOrderShowBillSub")] [HttpGet] public object GetEntrustOrderShowBillSub(string sMsg) { try { DataSet ds = null; string ShowItem = " * ";//显示的字段 if (DBUtility.ClsPub.isLong(sMsg) == 0) { objjson.code = "0"; objjson.count = 0; objjson.Message = "获取失败"; objjson.data = null; return objjson; } DAL.ClsWW_EntrustOrderBill oClsWW_EntrustOrderBill = new DAL.ClsWW_EntrustOrderBill(); ds = oClsWW_EntrustOrderBill.ShowBillSubTo(DBUtility.ClsPub.isLong(sMsg), ShowItem, ref DBUtility.ClsPub.sExeReturnInfo); if (ds == null || ds.Tables[0].Rows.Count == 0) { //return DBUtility.ClsPub.sExeReturnInfo; objjson.code = "0"; objjson.count = 0; objjson.Message = "获取失败"; objjson.data = null; return objjson; } else { objjson.code = "0"; objjson.count = 10000; objjson.Message = "获取成功"; objjson.data = ds.Tables[0]; return objjson; } //return s; } catch (Exception e) { objjson.code = "0"; objjson.count = 0; objjson.Message = "获取失败" + e.ToString(); objjson.data = null; return objjson; } } [Route("EntrustOrderAccept")] [HttpGet] /// /// 订单接受 /// /// /// public object EntrustOrderAccept(string HInterID, string HBillNo, string HUser) { try { if (DBUtility.ClsPub.isLong(HInterID) == 0) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "接受失败!"; objJsonResult.data = null; return objJsonResult; } DAL.ClsWW_EntrustOrderBill oBill = new DAL.ClsWW_EntrustOrderBill(); oBill.WebAccept(DBUtility.ClsPub.isLong(HInterID), DBUtility.ClsPub.isStrNull(HBillNo), DBUtility.ClsPub.isStrNull(HUser), ref DBUtility.ClsPub.sExeReturnInfo); objJsonResult.code = "0"; objJsonResult.count = 1; objJsonResult.Message = "接受成功!"; objJsonResult.data = 1; return objJsonResult; } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "接受失败!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } [Route("EntrustOrderRefuse")] [HttpGet] /// /// 订单拒绝 /// /// /// public object EntrustOrderRefuse(string HInterID, string HBillNo, string HUser, string HBackRemark) { try { if (DBUtility.ClsPub.isLong(HInterID) == 0) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "失败!"; objJsonResult.data = null; return objJsonResult; } DAL.ClsWW_EntrustOrderBill oBill = new DAL.ClsWW_EntrustOrderBill(); oBill.WebRefuse(DBUtility.ClsPub.isLong(HInterID), DBUtility.ClsPub.isStrNull(HBillNo), DBUtility.ClsPub.isStrNull(HUser), DBUtility.ClsPub.isStrNull(HBackRemark), ref DBUtility.ClsPub.sExeReturnInfo); objJsonResult.code = "0"; objJsonResult.count = 1; objJsonResult.Message = "拒绝成功!"; objJsonResult.data = 1; return objJsonResult; } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "失败!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } [Route("EntrustOrderBack")] [HttpGet] /// /// 订单反馈状态 /// /// /// public object EntrustOrderBack(string HmainidList, string OrderBackId) { try { string sql = ""; for (int i = 0; i < HmainidList.Split(',').Length; i++) { var Hmainid = HmainidList.Split(',')[i]; sql = string.Format(@" update WW_EntrustOrderBillSub set HFeedback ='{0}' where HInterID = '{1}' and HEntryID = '{2}' ", OrderBackId, Hmainid.Split('-')[0], Hmainid.Split('-')[1]); oCn.RunProc(sql); } objJsonResult.code = "0"; objJsonResult.count = 1; objJsonResult.Message = "操作成功!"; //objJsonResult.Message = string.Join(",", HmainidList.ToArray()); objJsonResult.data = 1; return objJsonResult; } catch (Exception e) { objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "失败!" + e.ToString(); objJsonResult.data = null; return objJsonResult; } } } }