using DBUtility;
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");
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("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;
}
}
}
}