using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using WebAPI.Models;
namespace WebAPI.Controllers
{
public class ReportPlatFormController : ApiController
{
private json objJsonResult = new json();
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
DataSet ds;
Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
#region 报工平台根据责任人筛选加载资源列表
[Route("ReportPlatForm/SearchGetLineBindBillList")]
[HttpGet]
public object SearchGetLineBindBillList(string HUserName)
{
try
{
//根据选择资源ID获取当前生产工单、责任人
ds = oCN.RunProcReturn("exec h_p_JIT_GetSourceInfoByUser " + HUserName + "", "h_p_JIT_GetSourceInfoByUser");
if (ds.Tables[0].Rows.Count > 0)
{
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "获取资源绑定数据成功!";
objJsonResult.data = ds;
return objJsonResult;
}
else
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "暂无资源绑定!";
objJsonResult.data = ds;
return objJsonResult;
}
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = e.Message.ToString();
objJsonResult.data = null;
}
return objJsonResult;
}
#endregion
#region 报工平台资源保存
///
/// 报工平台资源保存
///
///
///
[Route("ReportPlatForm/SaveGetLineBindBillList")]
[HttpGet]
public object SaveGetLineBindBillList(string HUserName, string HSourceID, string HSourceName, string HManagerID, string HManagerName, string HGroupID, string HGroupName, string HCreateDate, string HRemark)
{
try
{
ds = oCN.RunProcReturn("select * from Gy_SourceRelationSet where HSourceID='" + HSourceID + "' and HUserName='" + HUserName + "'", "Gy_SourceRelationSet");
if (ds.Tables[0].Rows.Count > 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "当前人员创建此生产资源,不允许重复创建!";
objJsonResult.data = null;
}
else
{
oCN.BeginTran();
//写入产线绑定
string sql = string.Format(@"insert into Gy_SourceRelationSet (HSourceID,HUserName,HGroupID,HManagerID,HRemark,HCreateDate,HCreator,HNowFlag,HCheckManID)
values('" + HSourceID + "','" + HUserName + "','" + HGroupID + "','" + HManagerID + "','" + HRemark + "','" + DateTime.Parse(HCreateDate).ToShortDateString() + "','" + HUserName + "','0','')");
oCN.RunProc(sql);
oCN.Commit();
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "保存成功!";
objJsonResult.data = null;
}
}
catch (Exception e)
{
oCN.RollBack();
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!" + e.ToString();
objJsonResult.data = null;
}
return objJsonResult;
}
#endregion
#region 报工平台根据选中的资源ID带出工单列表信息,当前状态信息
[Route("ReportPlatForm/SearchGetWorkBillList")]
[HttpGet]
public object SearchGetWorkBillList(string HSourceID)
{
try
{
oCN.BeginTran();
//更新切换状态值
string sql = string.Format(@"update Gy_SourceRelationSet set HNowFlag='1' where HSourceID='" + HSourceID + "'");
string sql1 = string.Format(@"update Gy_SourceRelationSet set HNowFlag='0' where HSourceID<>'" + HSourceID + "'");
oCN.RunProc(sql);
oCN.RunProc(sql1);
oCN.Commit();
//根据选择资源ID获取当前生产工单、责任人
ds = oCN.RunProcReturn("exec h_p_JIT_GetWorkBillListInfoBySource " + HSourceID + "", "h_p_JIT_GetWorkBillListInfoBySource");
if (ds.Tables.Count > 0)
{
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "获取信息成功!";
objJsonResult.data = ds;
return objJsonResult;
}
else
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "此资源暂无工单列表数据!";
objJsonResult.data = ds;
return objJsonResult;
}
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = e.Message.ToString();
objJsonResult.data = null;
}
return objJsonResult;
}
#endregion
#region 报工平台删除资源列表
[Route("ReportPlatForm/DeleteGetLineBindBillList")]
[HttpGet]
public object DeleteGetLineBindBillList(string HSourceID,string user)
{
try
{
oCN.BeginTran();
//更新切换状态值
string sql = string.Format(@"delete Gy_SourceRelationSet where HSourceID='" + HSourceID + "' and HUserName = '" + user + "'");
oCN.RunProc(sql);
oCN.Commit();
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "删除资源成功!";
objJsonResult.data = ds;
return objJsonResult;
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = e.Message.ToString();
objJsonResult.data = null;
}
return objJsonResult;
}
#endregion
#region 通过系统参数控制,判断生产订单是否做了首件检验单和工序检验单
[Route("ReportPlatForm/IsCheck")]
[HttpGet]
public object IsCheck(Int64 HICMOInterID,Int64 HICMOEntryID,string HICMOBillNo)
{
try
{
//获取系统参数
string sErrMsg = "";
string HBackRemark = "";
if (oSystemParameter.ShowBill(ref sErrMsg) == true)
{
if (oSystemParameter.omodel.Sc_ICMOReportBill_FirstCheckOut == "Y") //系统参数 是否做了首件检验单 空白为通用
{
ds = oCN.RunProcReturn("exec h_p_JIT_IsFirstCheckOut " + HICMOInterID + "," + HICMOEntryID + ",'" + HICMOBillNo + "'", "h_p_Sc_IsFirstCheckOut");
if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
{
HBackRemark += ds.Tables[0].Rows[0]["HBackRemark"] + " ";
}
}
if(oSystemParameter.omodel.Sc_ICMOReportBill_ProcessCheckOut == "Y") //系统参数 是否做了过程检验单 空白为通用
{
ds = oCN.RunProcReturn("exec h_p_JIT_IsProcessCheckOut " + HICMOInterID + "," + HICMOEntryID + ",'" + HICMOBillNo + "'", "h_p_Sc_IsProcessCheckOut");
if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
{
HBackRemark += ds.Tables[0].Rows[0]["HBackRemark"];
}
}
}
else
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "获取系统参数失败! " + sErrMsg;
objJsonResult.data = null;
return objJsonResult;
}
if (HBackRemark == "")
{
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "当前生产订单已维护首件检验单和过程检验单";
objJsonResult.data = null;
return objJsonResult;
}
else
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = HBackRemark;
objJsonResult.data = null;
return objJsonResult;
}
}
catch (Exception ex)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = ex.Message;
objJsonResult.data = null;
}
return objJsonResult;
}
#endregion
}
}