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 POOrderController : ApiController
{
private JsonResult objJsonResult = new JsonResult();
private json objjson = new json();
SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM();
///
/// 采购单列表
///
///
///
///
///
[Route("GetPOOrderBill")]
[HttpGet]
//采购订单列表
public object GetPOOrderBill(string HSupNo, string sqlWhere)
{
string msg = "";
try
{
string VsWhere = "";
string PcWhere = "";
SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM();
DataSet ds;
//其他过滤
if (msg.Trim() == "")
{
msg = " Where hsupid in (select HItemID from h_v_IF_Supplier where hnumber=^^" + HSupNo.Trim() + "^^) " + sqlWhere;
// msg = " Where hsupid in (select hsupid from Gy_UserSupplierRelation where HUserID=^^" + System.Web.HttpContext.Current.Session["HUserName"].ToString() + "^^)";
}
else
{
msg = msg + " and hsupid in (select HItemID from h_v_IF_Supplier where hnumber=^^" + HSupNo.Trim() + "^^) " + sqlWhere;
// msg = msg + " Where hsupid in (select hsupid from Gy_UserSupplierRelation where HUserID=^^" + System.Web.HttpContext.Current.Session["HUserName"].ToString() + "^^)";
}
//转换特殊字符
if (Common.SQLtoChange(msg, 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_POOrderBillList", VsWhere, ref DBUtility.ClsPub.sExeReturnInfo);
//获取返回数据
ds = oCn.RunProcReturn("exec H_p_SRM_POOrderBillList '" + PcWhere + "'", "H_p_SRM_POOrderBillList");
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("GetPOOrderShowBillMain")]
[HttpGet]
public object GetPOOrderShowBillMain(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.ClsCg_POOrderBill oClsCg_POOrderBill = new DAL.ClsCg_POOrderBill();
ds = oClsCg_POOrderBill.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("GetPOOrderShowBillSub")]
[HttpGet]
public object GetPOOrderShowBillSub(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.ClsCg_POOrderBill oClsCg_POOrderBill = new DAL.ClsCg_POOrderBill();
ds = oClsCg_POOrderBill.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("POOrderAccept")]
[HttpGet]
///
/// 订单接受
///
///
///
public object POOrderAccept(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.ClsCg_POOrderBill oBill = new DAL.ClsCg_POOrderBill();
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("POOrderRefuse")]
[HttpGet]
///
/// 订单拒绝
///
///
///
public object POOrderRefuse(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.ClsCg_POOrderBill oBill = new DAL.ClsCg_POOrderBill();
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("POOrderBack")]
[HttpGet]
///
/// 订单反馈状态
///
///
///
public object POOrderBack(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 Cg_POOrderBillSub 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;
}
}
}
}