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.SBGL
{
public class Gy_EquipFileMainController : ApiController
{
public DBUtility.ClsPub.Enum_BillStatus BillStatus;//单据状态(新增,修改,浏览,更新单价,变更)
private json objJsonResult = new json();
public DataSet ds = new DataSet();
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
public DLL.ClsGy_EquipFileMain BillNew0 = new DLL.ClsGy_EquipFileMain();
public DLL.ClsGy_EquipFileMain BillOld0 = new DLL.ClsGy_EquipFileMain();
#region 设备档案列表
[Route("Gy_EquipFileMain/GetList")]
[HttpGet]
public object GetList(string sWhere)
{
try
{
//if (!DBUtility.ClsPub.Security_Log(ModRightNameSelect, 1, true, user))
//{
// objJsonResult.code = "0";
// objJsonResult.count = 0;
// objJsonResult.Message = "没有查看权限";
// objJsonResult.data = null;
// return objJsonResult;
//}
if (sWhere == null || sWhere.Equals(""))
{
ds = oCN.RunProcReturn("select *from h_v_Gy_EquipFileMainList " + sWhere + "order by 日期 desc", "h_v_Gy_EquipFileMainList");
}
else
{
string sql1 = "select * from h_v_Gy_EquipFileMainList where 1 = 1 ";
string sql = sql1 + sWhere + "order by 日期 desc";
ds = oCN.RunProcReturn(sql, "h_v_Gy_EquipFileMainList");
}
if (ds == null || ds.Tables[0].Rows.Count == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "暂无数据!";
objJsonResult.data = null;
return objJsonResult;
}
else
{
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "Sucess!";
objJsonResult.data = ds.Tables[0];
return objJsonResult;
}
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "Exception!" + e.ToString();
objJsonResult.data = null;
return objJsonResult;
}
}
#endregion
#region [设备档案删除功能]
[Route("Gy_EquipFileMain/Delete_EquipFile")]
[HttpGet]
public object Delete_EquipFile(string HItemID)
{
string s = "";
Int64 lngBillKey = 0;
lngBillKey = DBUtility.ClsPub.isLong(HItemID);
if (lngBillKey == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据ID为空!";
objJsonResult.data = null;
return objJsonResult;
}
DLL.ClsGy_EquipFileMain oBill = new DLL.ClsGy_EquipFileMain();
if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))
{
bool IsDete = oBill.DeleteBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo);
if (IsDete)
{
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = DBUtility.ClsPub.sExeReturnInfo;
objJsonResult.data = null;
return objJsonResult;
}
else
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = DBUtility.ClsPub.sExeReturnInfo;
objJsonResult.data = null;
return objJsonResult;
}
}
else
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据未找到";
objJsonResult.data = null;
return objJsonResult;
}
}
#endregion
#region[设备档案编辑时获取表头数据]
[Route("Gy_EquipFileMain/Gy_EquipFileCheckDetai")]
[HttpGet]
public object Gy_EquipFileCheckDetai(long HInterID)
{
try
{
ds = oCN.RunProcReturn("select * from h_v_Gy_EquipFileMainList where hmainid=" + HInterID, "h_v_Gy_EquipFileMainList");
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "";
objJsonResult.data = ds.Tables[0];
return objJsonResult;
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "Exception!" + e.ToString();
objJsonResult.data = null;
return objJsonResult;
}
}
#endregion
#region 设备档案新增保存
///
/// 模治具分类-保存按钮
///参数:string sql。
///返回值:object。
///
[Route("Gy_EquipFileMain/AddBill")]
[HttpPost]
public object AddBill([FromBody] JObject oMain)
{
try
{
var _value = oMain["oMain"].ToString();
string msg1 = _value.ToString();
string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
string msg2 = sArray[0].ToString();
string msg3 = sArray[1].ToString();
string msg4 = sArray[2].ToString();
//反序列化
msg2 = "[" + msg2.ToString() + "]";
List list = Newtonsoft.Json.JsonConvert.DeserializeObject>(msg2);
string hbillno= list[0].HBillNo;
string HYear = DateTime.Now.Year.ToString();
DateTime HDate = list[0].HDate;
long HInterID = list[0].HInterID;
string HEquipFileNumber = list[0].HEquipFileNumber;
string HEquipFileNo = list[0].HEquipFileNo; // varchar(50) //设备编码(唯一)
string HName = list[0].HName; // √ varchar(100) //设备名称
string HModel = list[0].HModel; // √ varchar(100) //设备规格
string HModel2 = list[0].HModel2; // √ varchar(100) //设备型号
int HMaterID = list[0].HMaterID; // √ int //对应物料
int HUnitID = list[0].HUnitID; // √ int //单位
DateTime HOutComDate = list[0].HOutComDate; // √ datetime //设备出厂日期
string HOutComNo = list[0].HOutComNo; // √ varchar(100) //设备出厂编号
int HDeptID = list[0].HDeptID; // √ int //使用部门(gy_Department)
int HUseEmpID = list[0].HUseEmpID; //√ int //使用负责人(gy_Employee)
int HRepairEmpID = list[0].HRepairEmpID; //√ int //维护负责人(gy_Employee)
string HAddress = list[0].HAddress; // √ varchar(500) //安装地点
DateTime HSetupDate = list[0].HSetupDate; //√ datetime //安装日期
DateTime HStartupDate = list[0].HStartupDate; //√ datetime //运行开始日期
string HStatus = list[0].HStatus; // √ varchar(20) //当前状态(空闲、占用、加工、关机、异常停机)
int HEquipFileTypeID = list[0].HEquipFileTypeID; //√ int //设备类别(Gy_EquipFileType)
string HProNum = list[0].HProNum; // √ varchar(100) //工程编码
string HBarCode = list[0].HBarCode; //√ varchar(100) //条形码(暂时保存此字段)
string HWorkArea = list[0].HWorkArea; //√ varchar(50) //产地
string HLogo = list[0].HLogo; //√ varchar(50) //品牌
int HSellSupID = list[0].HSellSupID; // √ int //供应商(Gy_Supplier)
int HMakeSupID = list[0].HMakeSupID; // int //制造商 (Gy_Supplier)
string HMaker = msg4;
string HMakeDate = DateTime.Now.Date.ToString();
if (!DBUtility.ClsPub.AllowNumber(HEquipFileNumber))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "代码中不能出现连续‘.’并且首位末位不能为‘.’!";
objJsonResult.data = null;
return objJsonResult;
}
//若MAINDI重复则重新获取
oCN.BeginTran();
//主表
oCN.RunProc("Insert into Gy_EquipFileBillMain " +
" (hbillno,HEquipFileNumber,HEquipFileNo,HName,HModel,HModel2,HMaterID,HUnitID,HOutComDate" +
",HOutComNo,HDeptID,HUseEmpID,HRepairEmpID,HAddress,HSetupDate,HStartupDate,HStatus," +
"HEquipFileTypeID,HProNum,HBarCode,HWorkArea,HLogo,HSellSupID,HMakeSupID,hbilltype,HDate,HYear) " +
" Values('" + hbillno + "','" + HEquipFileNumber + "','" + HEquipFileNo + "','" + HName + "','" + HModel + "','" + HModel2 + "'," + HMaterID + "," + HUnitID +
",'" + HOutComDate + "','" + HOutComNo + "'," + HDeptID + "," + HUseEmpID + "," + HRepairEmpID + ",'" + HAddress +
"','" + HSetupDate + "','" + HStartupDate + "','" + HStatus + "'," + HEquipFileTypeID + ",'" + HProNum +
"','" + HBarCode + "','" + HWorkArea + "','" + HLogo + "'," + HSellSupID + "," + HMakeSupID +",'3308','" + HDate +"','"+ HYear+
"')", ref DBUtility.ClsPub.sExeReturnInfo);
//修改上级为非末级代码
oCN.Commit();
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "新增成功!";
//objJsonResult.data = null;
return objJsonResult;
}
catch (Exception e)
{
oCN.RollBack();
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "Exception!" + e.Message;
objJsonResult.data = null;
return objJsonResult;
}
}
#endregion
#region 设备档案修改保存
[Route("Gy_EquipFileMain/EditBill")]
[HttpPost]
public object EditBill([FromBody] JObject oMain)
{
try
{
var _value = oMain["oMain"].ToString();
string msg1 = _value.ToString();
string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
string msg2 = sArray[0].ToString();
string msg3 = sArray[1].ToString();
string msg4 = sArray[2].ToString();
//反序列化
msg2 = "[" + msg2.ToString() + "]";
List list = Newtonsoft.Json.JsonConvert.DeserializeObject>(msg2);
long HInterID = list[0].HInterID;
string HEquipFileNumber = list[0].HEquipFileNumber;
string HEquipFileNo = list[0].HEquipFileNo; // varchar(50) //设备编码(唯一)
string HName = list[0].HName; // √ varchar(100) //设备名称
string HModel = list[0].HModel; // √ varchar(100) //设备规格
string HModel2 = list[0].HModel2; // √ varchar(100) //设备型号
int HMaterID = list[0].HMaterID; // √ int //对应物料
int HUnitID = list[0].HUnitID; // √ int //单位
DateTime HOutComDate = list[0].HOutComDate; // √ datetime //设备出厂日期
string HOutComNo = list[0].HOutComNo; // √ varchar(100) //设备出厂编号
int HDeptID = list[0].HDeptID; // √ int //使用部门(gy_Department)
int HUseEmpID = list[0].HUseEmpID; //√ int //使用负责人(gy_Employee)
int HRepairEmpID = list[0].HRepairEmpID; //√ int //维护负责人(gy_Employee)
string HAddress = list[0].HAddress; // √ varchar(500) //安装地点
DateTime HSetupDate = list[0].HSetupDate; //√ datetime //安装日期
DateTime HStartupDate = list[0].HStartupDate; //√ datetime //运行开始日期
string HStatus = list[0].HStatus; // √ varchar(20) //当前状态(空闲、占用、加工、关机、异常停机)
int HEquipFileTypeID = list[0].HEquipFileTypeID; //√ int //设备类别(Gy_EquipFileType)
string HProNum = list[0].HProNum; // √ varchar(100) //工程编码
string HBarCode = list[0].HBarCode; //√ varchar(100) //条形码(暂时保存此字段)
string HWorkArea = list[0].HWorkArea; //√ varchar(50) //产地
string HLogo = list[0].HLogo; //√ varchar(50) //品牌
int HSellSupID = list[0].HSellSupID; // √ int //供应商(Gy_Supplier)
int HMakeSupID = list[0].HMakeSupID; // int //制造商 (Gy_Supplier)
string HUpDater = msg4;
string HUpDateDate = DateTime.Now.Date.ToString();
if (!DBUtility.ClsPub.AllowNumber(HEquipFileNumber))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "代码中不能出现连续‘.’并且首位末位不能为‘.’!";
objJsonResult.data = null;
return objJsonResult;
}
DataSet DS = oCN.RunProcReturn("Select * from Gy_EquipFileBillMain Where HEquipFileNumber='" + HEquipFileNumber + "' and HInterID<>" + HInterID, "Gy_EquipFileBillMain", ref Pub_Class.ClsPub.sExeReturnInfo);
if (DS.Tables[0].Rows.Count != 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "代码重复!";
objJsonResult.data = null;
return objJsonResult;
}
//若MAINDI重复则重新获取
oCN.BeginTran();
//主表
oCN.RunProc("Update Gy_EquipFileBillMain set " +
" HEquipFileNumber='" + HEquipFileNumber + "'" +
" HEquipFileNo='" + HEquipFileNo + "'" +
" HName='" + HName + "'" +
" HModel='" + HModel + "'" +
" HModel2='" + HModel2 + "'" +
" HMaterID=" + HMaterID +
" HUnitID=" + HUnitID +
" HOutComDate='" + HOutComDate + "'" +
" HOutComNo='" + HOutComNo + "'" +
" HDeptID=" + HDeptID +
" HUseEmpID=" + HUseEmpID +
" HRepairEmpID=" + HRepairEmpID +
" HAddress='" + HAddress + "'" +
" HSetupDate='" + HSetupDate + "'" +
" HStartupDate='" + HStartupDate + "'" +
" HStatus='" + HStatus + "'" +
" HEquipFileTypeID=" + HEquipFileTypeID +
",HProNum='" + HProNum + "'" +
",HBarCode='" + HBarCode + "'" +
",HWorkArea='" + HWorkArea + "'" +
",HLogo=" + HLogo +
",HSellSupID=" + HSellSupID +
",HMakeSupID= " + HMakeSupID +
",HUpDater= " + HUpDater +
",HUpDateDate= " + HUpDateDate +
" Where HInterID=" + HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
//修改子项目代码
//oCN.RunProc("exec h_p_Gy_UpdateNumber Gy_RepairCheck,'" + HNumber + ".','" + this.HOldNumber + ".'", ref DBUtility.ClsPub.sExeReturnInfo);
//
oCN.Commit();
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "修改成功!";
//objJsonResult.data = null;
return objJsonResult;
}
catch (Exception e)
{
oCN.RollBack();
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "Exception!" + e.Message;
objJsonResult.data = null;
return objJsonResult;
}
}
#endregion
}
}