using Newtonsoft.Json.Linq;
using Pub_Class;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Web.Http;
using WebAPI.Models;
using WebAPI.Service;
namespace WebAPI.Controllers
{
public class Gy_MaterialController : ApiController
{
public DBUtility.ClsPub.Enum_BillStatus BillStatus;
private json objJsonResult = new json();
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
DataSet ds;
///
/// 返回物料列表
///参数:string sql。
///返回值:object。
///
[Route("Gy_Material/list")]
[HttpGet]
public object list(string sWhere,string user, string Organization)
{
try
{
//编辑权限
if (!DBUtility.ClsPub.Security_Log_second("Gy_Material", 1, false, user))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "无查看权限!";
objJsonResult.data = null;
return objJsonResult;
}
string sql1 = string.Format(@"select * from h_v_Gy_MaterialList where 组织名称='" + Organization + "'");
if (sWhere == null || sWhere.Equals(""))
{
ds = oCN.RunProcReturn(sql1 + sWhere + " order by 物料代码 ", "h_v_Gy_MaterialList");
}
else
{
string sql = sql1 + sWhere + " order by 物料代码 ";
ds = oCN.RunProcReturn(sql, "h_v_Gy_MaterialList");
}
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;
}
}
///
/// 物料设置获取信息
///
///
[Route("Gy_Material/GetGy_MaterialDetail")]
[HttpGet]
public ApiResult GetGy_MaterialDetail(string HID)
{
var model = LuBaoSevice.GetGy_MaterialBillDetail(HID);
return model;
}
///
/// 保存物料
///
///
///
[Route("Gy_Material/SaveGy_MaterialList")]
[HttpPost]
public object SaveGy_MaterialList([FromBody] JObject msg)
{
DataSet ds;
var _value = msg["msg"].ToString();
string msg3 = _value.ToString();
string[] sArray = msg3.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
string msg1 = sArray[0].ToString();
string msg2 = sArray[1].ToString();
Int64 HItemID = 0;
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
//编辑权限
if (!DBUtility.ClsPub.Security_Log_second("Gy_Material_Edit", 1, false, msg2))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "无保存权限!";
objJsonResult.data = null;
return objJsonResult;
}
//获取最大ID值赋值
DataSet Maxds = oCN.RunProcReturn("select MAX(HItemID) HItemID from Gy_Material ", "Gy_Material");
if (Maxds != null || Maxds.Tables[0].Rows.Count > 0)
{
//HItemID= Maxds.Tables[0].Rows[0]["HItemID"]
var maxid = Convert.ToInt32(Maxds.Tables[0].Rows[0]["HItemID"]);
maxid += 1;
HItemID = maxid;
}
ListModels oListModels = new ListModels();
try
{
DLL.ClsGy_Material_Ctl oBill = new DLL.ClsGy_Material_Ctl();
List lsmain = new List();
msg1 = msg1.Replace("\\", "");
msg1 = msg1.Replace("\n", ""); //\n
lsmain = oListModels.getObjectByJson_Gy_Material(msg1);
foreach (ClsGy_Material_Model oItem in lsmain)
{
if (oItem.HNumber.Trim() == "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!代码不能为空!";
objJsonResult.data = 1;
return objJsonResult;
}
if (oItem.HName.Trim() == "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!名称不能为空!";
objJsonResult.data = 1;
return objJsonResult;
}
if (oItem.HMaterTypeID == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!物料属性不能为空!";
objJsonResult.data = 1;
return objJsonResult;
}
if (!DBUtility.ClsPub.AllowNumber(oItem.HNumber.Trim()))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!代码中不能出现连续‘.’并且首位末位不能为‘.’!";
objJsonResult.data = 1;
return objJsonResult;
}
//查询数据中是否存在重复代码
ds = oCN.RunProcReturn("select * from Gy_Material where HStopflag=0 and HNumber='" + oItem.HNumber.Trim() + "'", "Gy_Material");
if (oItem.HNumber.Trim() == "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!代码为空!";
objJsonResult.data = 1;
return objJsonResult;
}
//新增时判断
if (oItem.HItemID == 0)
{
if (ds == null || ds.Tables[0].Rows.Count == 0)
{
}
else
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!代码重复!";
objJsonResult.data = 1;
return objJsonResult;
}
//检查父级是否存在
string sParent;
sParent = DBUtility.ClsPub.GetParentCode(oItem.HNumber.Trim());
if (sParent.Trim() == "")
{
oBill.oModel.HParentID = 0;
}
else
{
if (oBill.HavParentCode(sParent.Trim(), HItemID))
{
oBill.oModel.HParentID = oBill.oModel.HItemID;
}
else
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!上级代码不存在或被禁用!";
objJsonResult.data = 1;
return objJsonResult;
}
}
}
else//编辑时判断
{
//检查父级是否存在
string sParent;
sParent = DBUtility.ClsPub.GetParentCode(oItem.HNumber.Trim());
if (sParent.Trim() == "")
{
oBill.oModel.HParentID = 0;
}
else
{
if (oBill.HavParentCode(sParent.Trim(), oItem.HItemID))
{
oBill.oModel.HParentID = oBill.oModel.HItemID;
}
else
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!上级代码不存在或被禁用!";
objJsonResult.data = 1;
return objJsonResult;
}
}
}
//得到短代码
string sShortNumber;
sShortNumber = DBUtility.ClsPub.GetShortNumber(oItem.HNumber.Trim());
if (sShortNumber.Trim() == "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!短代码为空!";
objJsonResult.data = 1;
return objJsonResult;
}
oItem.HShortNumber = sShortNumber;//短代码
oItem.HEndFlag = true;//末级标志
oItem.HLevel = DBUtility.ClsPub.GetLevel(oItem.HNumber.Trim()); //等级
oBill.oModel = oItem;
}
//保存
//保存完毕后处理
bool bResult;
if (oBill.oModel.HItemID == 0)
{
// bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
bResult = oBill.AddNew();
}
else
{
bResult = oBill.ModifyByID(oBill.oModel.HItemID);
}
if (bResult)
{
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "保存成功!";
//WebAPIController.Add_Log("送货单下推", UserName, "生成送货单");
objJsonResult.data = 1;
return objJsonResult;
}
else
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.sExeReturnInfo;
objJsonResult.data = 1;
return objJsonResult;
}
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!" + e.ToString();
objJsonResult.data = 1;
return objJsonResult;
}
}
///
/// 物料设置删除功能
///
///
[Route("Gy_Material/Delete")]
[HttpGet]
public object DeltetGy_Material(string HItemID,string user)
{
DataSet ds;
try
{
//删除权限
if (!DBUtility.ClsPub.Security_Log("Gy_Material_Delete", 1, false, user))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "无删除权限";
objJsonResult.data = null;
return objJsonResult;
}
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
if (string.IsNullOrWhiteSpace(HItemID))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "HItemID为空!";
objJsonResult.data = null;
return objJsonResult;
}
oCN.BeginTran();//开始事务
ds = oCN.RunProcReturn("select * from Gy_Material where HItemID=" + HItemID, "Gy_Material");
if (ds == null || ds.Tables[0].Rows.Count == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "没有数据,无法删除!";
objJsonResult.data = null;
return objJsonResult; ;
}
var HStopflag = Convert.ToBoolean(ds.Tables[0].Rows[0]["HStopflag"]);
if (HStopflag)
{
oCN.RollBack();//回滚事务
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "数据已删除无法再次删除!";
objJsonResult.data = null;
return objJsonResult;
}
oCN.RunProc("update Gy_Material set HStopflag=1 where HItemID=" + HItemID);
oCN.Commit();//提交事务
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "* 数据删除成功!";
objJsonResult.data = null;
return objJsonResult; ;
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "删除失败!" + e.ToString();
objJsonResult.data = null;
return objJsonResult;
}
}
///
/// 返回模具列表
///参数:string sql。
///返回值:object。
///
[Route("Gy_Mould/list1")]
[HttpGet]
public object list1(string sWhere, string ModRightNameSelect, string user)
{
try
{
if (!DBUtility.ClsPub.Security_Log(ModRightNameSelect, 1, false, 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_MouldFileList " + sWhere + "order by hmainid desc", "h_v_Gy_MouldFileList");
}
else
{
string sql1 = "select * from h_v_Gy_MouldFileList where 1 = 1 ";
string sql = sql1 + sWhere + "order by hmainid desc";
ds = oCN.RunProcReturn(sql, "h_v_Gy_MouldFileList");
}
//if (ds.Tables[0].Rows.Count != 0 || ds != null)
//{
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "Sucess!";
objJsonResult.data = ds.Tables[0];
return objJsonResult;
//}
//else
//{
//objJsonResult.code = "0";
//objJsonResult.count = 0;
//objJsonResult.Message = "无数据";
//objJsonResult.data = null;
//return objJsonResult;
//}
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "Exception!" + e.ToString();
objJsonResult.data = null;
return objJsonResult;
}
}
///
/// 返回检具档案列表
///参数:string sql。
///返回值:object。
///
[Route("Gy_CheckToolsFileMainList/list2")]
[HttpGet]
public object list2(string sWhere)
{
try
{
if (sWhere == null || sWhere.Equals(""))
{
ds = oCN.RunProcReturn("select * from h_v_Gy_CheckToolsFileMainList " + sWhere + "order by 日期 desc", "h_v_Gy_CheckToolsFileMainList");
}
else
{
string sql1 = "select * from h_v_Gy_CheckToolsFileMainList where 1 = 1 ";
string sql = sql1 + sWhere + "order by 日期 desc";
ds = oCN.RunProcReturn(sql, "h_v_Gy_CheckToolsFileMainList");
}
if (ds == null || ds.Tables[0].Rows.Count == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "false!";
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;
}
}
///
/// 返回条码档案列表
///参数:string sql。
///返回值:object。
///
[Route("Gy_BarCodeBillList/GetBarCodeBillList")]
[HttpGet]
public object GetBarCodeBillList(string sWhere,string user)
{
try
{
//判断是否有查询权限
if (!DBUtility.ClsPub.Security_Log("Gy_BarCodeBill_Query", 1, false, 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_IF_BarCodeBillList order by hmainid desc", "h_v_IF_BarCodeBillList");
}
else
{
string sql1 = "select * from h_v_IF_BarCodeBillList where 1 = 1 ";
string sql = sql1 + sWhere + "order by hmainid desc";
ds = oCN.RunProcReturn(sql, "h_v_IF_BarCodeBillList");
}
//if (ds.Tables[0].Rows.Count != 0 || ds != null)
//{
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "Sucess!";
objJsonResult.data = ds.Tables[0];
return objJsonResult;
//}
//else
//{
//objJsonResult.code = "0";
//objJsonResult.count = 0;
//objJsonResult.Message = "无数据";
//objJsonResult.data = null;
//return objJsonResult;
//}
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "Exception!" + e.ToString();
objJsonResult.data = null;
return objJsonResult;
}
}
#region [返回条码档案删除功能]
///
/// 返回条码档案删除功能
///
///
[Route("Gy_MaterialController/DeltetBarCodeBill")]
[HttpGet]
public object DeltetBarCodeBill(string HInterID, string user)
{
//编辑权限
if (!DBUtility.ClsPub.Security_Log("Gy_BarCodeBillList_Edit", 1, false, user))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "无删除权限!";
objJsonResult.data = null;
return objJsonResult;
}
try
{
Int64 lngBillKey = 0;
lngBillKey = DBUtility.ClsPub.isLong(HInterID);
if (lngBillKey == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据ID为空!";
objJsonResult.data = null;
return objJsonResult;
}
DataSet Ds, Ds2;
Ds = oCN.RunProcReturn("Select * from h_v_IF_BarCodeBillList Where HItemID=" + lngBillKey.ToString(), "h_v_IF_BarCodeBillList");
if (Ds.Tables[0].Rows.Count != 0)
{
oCN.BeginTran();
Ds2 = oCN.RunProcReturn("Delete from Gy_BarCodeBill Where HItemID=" + lngBillKey.ToString(), "Gy_BarCodeBill");
if (Ds2.Tables[0].Rows.Count != 0)
{
oCN.Commit();
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "删除成功";
objJsonResult.data = null;
return objJsonResult;
}
oCN.RollBack();
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "删除失败";
objJsonResult.data = null;
return objJsonResult;
}
else
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据未找到";
objJsonResult.data = null;
return objJsonResult;
}
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = e.Message;
objJsonResult.data = null;
return objJsonResult;
}
}
#endregion
///
/// 新增模具档案-保存按钮
///参数:string sql。
///返回值:object。
///
[Route("Gy_Mould_Edit/AddBill")]
[HttpPost]
public object AddBill([FromBody] JObject oMain)
{
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();//当前人
oCN.BeginTran();
if (!DBUtility.ClsPub.Security_Log(msg3, 1, false, msg4))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "没有查看权限";
objJsonResult.data = null;
return objJsonResult;
}
//保存主表
objJsonResult = AddBillMain(msg2);
if (objJsonResult.code == "0")
{
oCN.RollBack();
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = objJsonResult.Message;
objJsonResult.data = null;
return objJsonResult;
}
oCN.Commit();
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "新增单据成功!";
return objJsonResult;
}
public json AddBillMain(string msg2)
{
try
{
msg2 = "[" + msg2.ToString() + "]";
List mainList = Newtonsoft.Json.JsonConvert.DeserializeObject>(msg2);
string BillType = "3899";
//得到mainid
long HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
string HBillNo = mainList[0].HBillNo;//递入type得到的单据号
DateTime HDate = mainList[0].HDate;//日期
int HYear = DBUtility.ClsPub.isInt(DateTime.Now.Year);
double HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
string HMouldNo = mainList[0].HMouldNo;
string HBarCode = mainList[0].HBarCode;
string HName = mainList[0].HName;
string HModel = mainList[0].HModel;
string HModel2 = mainList[0].HModel2;
string HDiameter = mainList[0].HDiameter;
string HSubjoin = mainList[0].HSubjoin;
string HSubjoin2 = mainList[0].HSubjoin2;
string HPICNo = mainList[0].HPICNo;
string HWorkMaterModel = mainList[0].HWorkMaterModel;
long HMaterID = mainList[0].HMaterID;
long HMouleTypeID = mainList[0].HMouleTypeID;
long HUnitID = mainList[0].HUnitID;
DateTime HOutComDate = mainList[0].HOutComDate;
string HOutComNo = mainList[0].HOutComNo;
long HDeptID = mainList[0].HDeptID;
long HSupID = mainList[0].HSupID;
string HMouldStatus = mainList[0].HMouldStatus;
long HWHID = mainList[0].HWHID;
long HRoutingID = mainList[0].HRoutingID;
long HBOMID = mainList[0].HBOMID;
string HVersion = mainList[0].HVersion;
long HSPGroupID = mainList[0].HSPGroupID;
long HSPID = mainList[0].HSPID;
Double HDesignLife = mainList[0].HDesignLife;
Double HUseLife = mainList[0].HUseLife;
Double HLeaveLife = mainList[0].HLeaveLife;
Double HProdQty = mainList[0].HProdQty;
Double HProdWeight = mainList[0].HProdWeight;
string HRemark = mainList[0].HRemark;
string HMaker = mainList[0].HMaker;
string HMaterNumber = mainList[0].HMaterNumber;
string HSupNumber = mainList[0].HSupNumber;
long HPrintQty = mainList[0].HPrintQty;
string HMouldOWNER = mainList[0].HMouldOWNER;
string HSaveLife = mainList[0].HSaveLife;
int HCaveQty = mainList[0].HCaveQty;
int HMouldDotCheckRuleInterID= mainList[0].HMouldDotCheckRuleInterID;
int HMouldMaintainRuleInterID= mainList[0].HMouldMaintainRuleInterID;
int HNowSupID = mainList[0].HNowSupID;
int HNowSupTypeID = mainList[0].HNowSupTypeID;
//主表
oCN.RunProc("Insert Into Gy_MouldFileMain " +
"(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
",HMouldNo,HName,HModel,HModel2,HDiameter" +
",HSubjoin,HSubjoin2,HPICNo,HWorkMaterModel" +
",HMaterID,HMaterNumber,HMouldType,HUnitID" +
",HOutComDate,HOutComNo,HDeptID,HSupID,HSupNumber" +
",HPrintQty,HMouldStatus,HWhID,HRoutingID,HCaveQty" +
",HBomID,HVersion,HSPGroupID,HSPID,HDesignLife,HNowSupID,HNowSupTypeID" +
",HUseLife,HLeaveLife,HProdQty,HProdWeight,HMouldOWNER,HSaveLife,HMouldDotCheckRuleInterID,HMouldMaintainRuleInterID,HBarCode" +
") " +
" values('" + BillType + "','" + BillType + "'," + HInterID + ",'" + HBillNo + "','" + HDate + "'" +
"," + HYear + "," + HPeriod + ",'" + HRemark + "','" + HMaker + "',getdate()" +
",'" + HMouldNo + "','" + HName + "','" + HModel + "','" + HModel2 + "','" + HDiameter + "'" +
",'" + HSubjoin + "','" + HSubjoin2 + "','" + HPICNo + "','" + HWorkMaterModel + "'" +
"," + HMaterID + ",'" + HMaterNumber + "'," + HMouleTypeID + "," + HUnitID +
",'" + HOutComDate + "','" + HOutComNo + "'," + HDeptID + "," + HSupID + ",'" + HSupNumber + "'" +
"," + HPrintQty + ",'" + HMouldStatus + "'," + HWHID + "," + HRoutingID +","+ HCaveQty+
"," + HBOMID + ",'" + HVersion + "'," + HSPGroupID + "," + HSPID + ",'" + HDesignLife + "','" + HNowSupID+"','"+ HNowSupTypeID+"'"+
",'" + HUseLife + "','" + HLeaveLife + "','" + HProdQty + "','" + HProdWeight + "','" + HMouldOWNER + "','" + HSaveLife + "','" + HMouldDotCheckRuleInterID+"','"+ HMouldMaintainRuleInterID+"','"+ HBarCode+"'"+
") ");
//子表
oCN.RunProc("Insert into Gy_MouldFileSub " +
" (HInterID,HEntryID,HRemark" +
",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
") " +
" values('" + HInterID + "',0,''" +
",0,0,'','',0,0 " +
") ");
if (objJsonResult.code == "0")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = objJsonResult.Message;
objJsonResult.data = null;
return objJsonResult;
}
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = null;
objJsonResult.data = null;
return objJsonResult;
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "Exception!" + e.ToString();
objJsonResult.data = null;
return objJsonResult;
}
}
///
/// 修改单据-保存按钮
///参数:string sql。
///返回值:object。
///
[Route("Gy_Mould_Edit/AddBill1")]
[HttpPost]
public object AddBill1([FromBody] JObject oMain)
{
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();//当前人
try
{
if (!DBUtility.ClsPub.Security_Log(msg3, 1, false, msg4))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "没有查看权限";
objJsonResult.data = null;
return objJsonResult;
}
DAL.ClsGy_MouldFile oMould = new DAL.ClsGy_MouldFile();
DAL.ClsGy_MouldFileMain_View oDeptHlp = new DAL.ClsGy_MouldFileMain_View();
//反序列化
msg2 = "[" + msg2.ToString() + "]";
List mainList = Newtonsoft.Json.JsonConvert.DeserializeObject>(msg2);
long HInterID = mainList[0].HInterID;//递入type得到的单据ID
string HBillNo = mainList[0].HBillNo;//递入type得到的单据号
DateTime HDate = mainList[0].HDate;//日期
int HYear = DBUtility.ClsPub.isInt(DateTime.Now.Year);
double HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
string HMouldNo = mainList[0].HMouldNo;
string HName = mainList[0].HName;
string HModel = mainList[0].HModel;
string HModel2 = mainList[0].HModel2;
string HDiameter = mainList[0].HDiameter;
string HSubjoin = mainList[0].HSubjoin;
string HSubjoin2 = mainList[0].HSubjoin2;
string HPICNo = mainList[0].HPICNo;
string HWorkMaterModel = mainList[0].HWorkMaterModel;
long HMaterID = mainList[0].HMaterID;
long HMouleTypeID = mainList[0].HMouleTypeID;
long HUnitID = mainList[0].HUnitID;
DateTime HOutComDate = mainList[0].HOutComDate;
string HOutComNo = mainList[0].HOutComNo;
long HDeptID = mainList[0].HDeptID;
long HSupID = mainList[0].HSupID;
string HMouldStatus = mainList[0].HMouldStatus;
long HWHID = mainList[0].HWHID;
long HRoutingID = mainList[0].HRoutingID;
long HBOMID = mainList[0].HBOMID;
string HVersion = mainList[0].HVersion;
long HSPGroupID = mainList[0].HSPGroupID;
long HSPID = mainList[0].HSPID;
Double HDesignLife = mainList[0].HDesignLife;
Double HUseLife = mainList[0].HUseLife;
Double HLeaveLife = mainList[0].HLeaveLife;
Double HProdQty = mainList[0].HProdQty;
Double HProdWeight = mainList[0].HProdWeight;
string HRemark = mainList[0].HRemark;
string HMaker = mainList[0].HMaker;
string HMaterNumber = mainList[0].HMaterNumber;
string HSupNumber = mainList[0].HSupNumber;
long HPrintQty = mainList[0].HPrintQty;
string HMouldOWNER = mainList[0].HMouldOWNER;
string HSaveLife = mainList[0].HSaveLife;
int HCaveQty = mainList[0].HCaveQty;
int HMouldDotCheckRuleInterID = mainList[0].HMouldDotCheckRuleInterID;
int HMouldMaintainRuleInterID = mainList[0].HMouldMaintainRuleInterID;
int HNowSupID = mainList[0].HNowSupID;
int HNowSupTypeID = mainList[0].HNowSupTypeID;
//若MAINDI重复则重新获取
oCN.BeginTran();
//主表
oCN.RunProc("UpDate Gy_MouldFileMain set " +
" HBillNo='" + HBillNo + "'" + //固定赋值===============
",HDate='" + HDate + "'" +
",HYear='" + HYear.ToString() + "'" +
",HPeriod='" + HPeriod.ToString() + "'" +
",HRemark='" + HRemark + "'" +
",HUpDater='" + HMaker + "'" +
",HUpDateDate=getdate()" +
//========================================
",HMouldNo='" + HMouldNo + "'" +
",HName='" + HName + "'" +
",HModel='" + HModel + "'" +
",HModel2='" + HModel2 + "'" +
",HDiameter='" + HDiameter + "'" +
",HSubjoin='" + HSubjoin + "'" +
",HSubjoin2='" + HSubjoin2 + "'" +
",HPICNo='" + HPICNo + "'" +
",HWorkMaterModel='" + HWorkMaterModel + "'" +
",HMaterID=" + HMaterID.ToString() +
",HMaterNumber='" + HMaterNumber + "'" +
",HMouldType=" + HMouleTypeID.ToString() +
",HUnitID=" + HUnitID.ToString() +
",HOutComDate='" + HOutComDate + "'" +
",HOutComNo='" + HOutComNo + "'" +
",HDeptID=" + HDeptID.ToString() +
",HSupID=" + HSupID.ToString() +
",HSupNumber='" + HSupNumber + "'" +
",HPrintQty=" + HPrintQty.ToString() +
",HMouldStatus='" + HMouldStatus + "'" +
",HSaveLife='" + HSaveLife + "'" +
",HWhID=" + HWHID.ToString() +
",HRoutingID=" + HRoutingID.ToString() +
",HBomID=" + HBOMID.ToString() +
",HVersion='" + HVersion + "'" +
",HSPGroupID=" + HSPGroupID.ToString() +
",HSPID=" + HSPID.ToString() +
",HDesignLife=" + HDesignLife.ToString() +
",HCaveQty="+ HCaveQty.ToString()+
",HUseLife=" + HUseLife.ToString() +
",HLeaveLife=" + HLeaveLife.ToString() +
",HProdQty=" + HProdQty.ToString() +
",HMouldDotCheckRuleInterID="+ HMouldDotCheckRuleInterID.ToString()+
",HMouldMaintainRuleInterID=" + HMouldMaintainRuleInterID.ToString() +
",HMouldOWNER='" + HMouldOWNER + "'" +
",HNowSupID="+HNowSupID.ToString()+
",HNowSupTypeID="+HNowSupTypeID.ToString()+
",HProdWeight=" + HProdWeight.ToString() +
" where HInterID=" + HInterID.ToString());
//修改子项目代码
//oCN.RunProc("exec h_p_Gy_UpdateNumber Gy_Department,'" + HNumber + ".','" + this.HOldNumber + ".'", ref DBUtility.ClsPub.sExeReturnInfo);
//将上级 为非末级
// oCN.RunProc("Update Gy_Department set HEndflag=0 where HItemID=" + HInterID, 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;
}
}
///
/// 磨具档案修改按钮方法
///参数:string sql。
///返回值:object。
///
[Route("Gy_Mould_Edit/xg")]
[HttpGet]
public object xg(long HInterID)
{
try
{
ds = oCN.RunProcReturn("select * from h_v_Gy_MouldFileList where hmainid=" + HInterID, "h_v_Gy_MouldFileList");
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;
}
}
///
/// 模具档案删除按钮
///参数:string sql。
///返回值:object。
///
[Route("Gy_Mould_Edit/Delete_Json")]
[HttpGet]
public object Delete_Json(long hmainid, string ModRightNameDelete, string user)
{
DAL.ClsGy_MouldFile oBill = new DAL.ClsGy_MouldFile();
try
{
if (!DBUtility.ClsPub.Security_Log(ModRightNameDelete, 1, false, user))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "没有删除权限";
objJsonResult.data = null;
return objJsonResult;
}
if (oBill.DeleteBill(hmainid, ref DBUtility.ClsPub.sExeReturnInfo))
{
//写入日志
ClsPub.Add_Log("", "删除项目,代码:" + oBill.omodel.HMouldNo + ",名称:" + oBill.omodel.HName, ClsPub.CurUserName);
//更新上级为 末级
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "删除成功";
objJsonResult.data = null;
return objJsonResult;
}
else
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "删除失败";
objJsonResult.data = null;
return objJsonResult;
}
//ds = oCN.RunProcReturn("delete from Gy_Department where HItemID = " + HItemID, "Gy_Department");
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "Exception!" + e.ToString();
objJsonResult.data = null;
}
return objJsonResult;
}
///
/// 模具档案初始化按钮
///
///
///
///
[Route("Gy_Material/InitializeProdInBill")]
[HttpGet]
public object InitializeProdInBill(long hmainid, string user,string userID)
{
DAL.ClsGy_MouldFile oBill = new DAL.ClsGy_MouldFile();
try
{
string HBillNo = "";
Int64 HInterID = 0;//显示的字段
ds = oCN.RunProcReturn("select * from Gy_MouldFileMain where HInterID='" + hmainid + "'", "Gy_MouldFileMain");
DataRow dr = ds.Tables[0].Rows[0];
HInterID = DBUtility.ClsPub.CreateBillID("3801", ref DBUtility.ClsPub.sExeReturnInfo);
HBillNo = DBUtility.ClsPub.CreateBillCode("3801", ref DBUtility.ClsPub.sExeReturnInfo, true);
string sql = "Insert Into Sc_MouldStockBillMain " +
"(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
",HMaker,HMakeDate" + /*"HYear, HPeriod,"*/
",HSupID,HSupTypeID,HWHID,HSCWHID,HEmpID,HManagerID,HSecManagerID" +
",HKeeperID,HDeptID,HInnerBillNo,HRedBlueFlag" +
") " +
" values('3801','3801'," + HInterID + ",'" + HBillNo + "',getdate()" +
", '" + user + "',getdate()" +
", " + dr["HSupID"].ToString() + ", 1," + dr["HWhID"].ToString() + ",0,0,0,0" +
", 0," + dr["HDeptID"].ToString() + ",' ',0" +
") ";
string sql1 = string.Format(@"Insert Into Sc_MouldStockBillSub (HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark,HSourceInterID,
HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney,HMaterID,HPropertyID,HSecUnitRate,HSecUnitID,HUnitID,
HBatchNo,HQtyMust,HQty,HPrice,HMoney,HDesignLife,HLeaveLife,HUseLife,HWHID,HSCWHID,HSPID,HSCSPID,HSPGroupID,HCorrespondentTypeID,HCorrespondentID,
HStockOrgID,HOWNERID,HOtherOrgID,HOWNERTYPEID) values(" + HInterID+ ",1,'',getdate(),0,'',0,0,'','',"+
"0,0,"+dr["HInterID"].ToString()+",0,0,0,"+ dr["HUnitID"].ToString()+",0,"+ dr["HProdQty"].ToString() +","+ dr["HProdQty"].ToString()+",0,"+
"0,"+ dr["HDesignLife"].ToString()+","+ dr["HLeaveLife"].ToString() + ","+dr["HUseLife"].ToString() + "," + dr["HWHID"].ToString() + ",0," + dr["HSPID"].ToString()+",0,0"
+ ",0,0,"+ userID + ",0,0,'')");
//主表
oCN.RunProc(sql);
oCN.RunProc(sql1);
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "初始化成功,单据号为"+ HBillNo;
//WebAPIController.Add_Log("送货单下推", UserName, "生成送货单");
objJsonResult.data = 1;
return objJsonResult;
}
catch (Exception)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "初始化失败!";
objJsonResult.data = null;
}
return objJsonResult;
}
#region [模具档案审核、反审核]
///
///
///
/// 单据ID
/// 审核(0),反审核(1)
/// 审核人
///
[Route("Gy_Mould/AuditProcessReportList")]
[HttpGet]
public object AuditProcessReportList(int HInterID, int IsAudit, string CurUserName)
{
string ModRightNameCheck = "Gy_MouldFile_Check";
DBUtility.ClsPub.CurUserName = CurUserName;
try
{
//审核权限
if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, false, CurUserName))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "审核失败!无权限!";
objJsonResult.data = null;
return objJsonResult;
}
if (HInterID <= 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "HInterID小于0!";
objJsonResult.data = null;
return objJsonResult;
}
Int64 lngBillKey = 0;
lngBillKey = DBUtility.ClsPub.isLong(HInterID);
DAL.ClsGy_MouldFile oBill = new DAL.ClsGy_MouldFile();
//查看是否已审核,关闭,作废
if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))
{
if (oBill.omodel.HCloseMan.Trim() != "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据已关闭!不能再次审核!";
objJsonResult.data = null;
return objJsonResult;
}
if (oBill.omodel.HDeleteMan.Trim() != "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据已作废!不能再次审核!";
objJsonResult.data = null;
return objJsonResult;
}
if (IsAudit == 0) //审核判断
{
if (oBill.omodel.HChecker.Trim() != "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据已审核!不能再次审核!";
objJsonResult.data = null;
return objJsonResult;
}
}
if (IsAudit == 1) //反审核判断
{
if (oBill.omodel.HChecker.Trim() == "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据未审核!不需要反审核!";
objJsonResult.data = null;
return objJsonResult;
}
}
}
else
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据不存在!原因:" + DBUtility.ClsPub.sExeReturnInfo;
objJsonResult.data = null;
return objJsonResult;
}
if (IsAudit == 0) //审核提交
{
//审核提交
if (oBill.CheckBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
{
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "审核成功";
objJsonResult.data = null;
return objJsonResult;
}
else
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "审核失败!原因:" + DBUtility.ClsPub.sExeReturnInfo;
objJsonResult.data = null;
return objJsonResult;
}
}
if (IsAudit == 1) //反审核提交
{
//反审核提交AbandonCheck
if (oBill.AbandonCheck(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
{
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "反审核成功";
objJsonResult.data = null;
return objJsonResult;
}
else
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "反审核失败!原因:" + DBUtility.ClsPub.sExeReturnInfo;
objJsonResult.data = null;
return objJsonResult;
}
}
return objJsonResult;
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "审核失败或者反审核失败!" + e.ToString();
objJsonResult.data = null;
return objJsonResult;
}
}
#endregion
#region [模具档案批量生成]
[Route("Gy_Mould/SaveBatchGen_MouldFile")]
[HttpGet]
public object SaveBatchGen_MouldFile(long HInterID, string StarNum, string EndNum)
{
int StarNum1 = int.Parse(StarNum);
int EndNum1 = int.Parse(EndNum);
string j;
List