using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Http;
using WebAPI.Models;
using WebAPI.Service;
using System.Collections.Generic;
using System.Data;
using Newtonsoft.Json.Linq;
using Pub_Class;
using Newtonsoft.Json;
namespace WebAPI.Controllers
{
public class QC_ManagementController : ApiController
{
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
public DAL.ClsQC_PatrolProcCheckBill BillOld = new DAL.ClsQC_PatrolProcCheckBill();
DataSet ds;
#region 错误返回方法
// GET: QC_Management
public DBUtility.ClsPub.Enum_BillStatus BillStatus;
private json objJsonResult = new json();
///
///封装状态码及返回信息的公用方法。
///参数:DataSet。
///返回值:json。
///
public object GetObjectJson(DataSet ds)
{
try
{
List a = new List();
//添加列名
foreach (DataColumn col in ds.Tables[0].Columns)
{
Type dataType = col.DataType;
string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
a.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
}
//if (ds.Tables[0].Rows.Count != 0 || ds != null)
//{
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "Sucess!";
objJsonResult.data = ds.Tables[0];
objJsonResult.list = a;
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.ToString();
objJsonResult.data = null;
return objJsonResult;
}
}
///
///统一正确信息方法。
///参数:string。
///返回值:object。
///
public object CustomCorrect(DataSet ds)
{
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 = "0";
objJsonResult.count = 1;
objJsonResult.Message = "获取信息成功!";
objJsonResult.data = ds.Tables[0];
return objJsonResult;
}
}
///
///自定义错误信息方法。
///参数:string。
///返回值:object。
///
public object CustomError(string msg)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = msg;
objJsonResult.data = null;
return objJsonResult;
}
#endregion
#region 查询列表方法
///
/// 返回检验方案单列表 仅包含主表
///
///
///
[Route("QC_Management/MES_QC_CheckProjectList_Json_Main")]
[HttpGet]
public object MES_QC_CheckProjectList_Json_Main(string sWhere, string user)
{
DataSet ds;
try
{
//判断权限
if (!DBUtility.ClsPub.Security_Log("Gy_QCCheckProject_Query", 1, false, user))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "无查询权限";
objJsonResult.data = null;
return objJsonResult;
}
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
if (sWhere == null || sWhere.Equals(""))
{
ds = oCN.RunProcReturn("select * from h_v_Gy_QCCheckProjectList_Main order by 日期 desc ", "h_v_Gy_QCCheckProjectList_Main");
}
else
{
string sql1 = "select * from h_v_Gy_QCCheckProjectList_Main where 1=1";
string sql = sql1 + sWhere + " order by 日期 desc ";
ds = oCN.RunProcReturn(sql, "h_v_Gy_QCCheckProjectList_Main");
}
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "没有返回任何记录!" + e.ToString();
objJsonResult.data = null;
return objJsonResult;
}
return GetObjectJson(ds);
}
///
/// 返回检验方案单列表
///
///
///
[Route("QC_Management/MES_QC_CheckProjectList_Json")]
[HttpGet]
public object MES_QC_CheckProjectList_Json(string sWhere,string user)
{
DataSet ds;
try
{
//判断权限
if (!DBUtility.ClsPub.Security_Log("Gy_QCCheckProject_Query", 1, false, user))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "无查询权限";
objJsonResult.data = null;
return objJsonResult;
}
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
if (sWhere == null || sWhere.Equals(""))
{
ds = oCN.RunProcReturn("select * from h_v_Gy_QCCheckProjectList order by 日期 desc ", "h_v_Gy_QCCheckProjectList");
}
else
{
string sql1 = "select * from h_v_Gy_QCCheckProjectList where 1=1";
string sql = sql1 + sWhere+ " order by 日期 desc ";
ds = oCN.RunProcReturn(sql, "h_v_Gy_QCCheckProjectList");
}
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "没有返回任何记录!" + e.ToString();
objJsonResult.data = null;
return objJsonResult;
}
return GetObjectJson(ds);
}
///
/// 返回来料检验单列表
///
///
///
[Route("QC_Management/MES_QC_POStockInCheckBillList_Json")]
[HttpGet]
public object MES_QC_POStockInCheckBillList_Json(string sqlWhere)
{
DataSet ds;
try
{
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
if (sqlWhere == null || sqlWhere.Equals(""))
{
ds = oCN.RunProcReturn("select top 500 * from h_v_QC_POStockInCheckBillList where 关闭人='' ", "h_v_QC_POStockInCheckBillList");
}
else
{
string sql1 = "select * from h_v_QC_POStockInCheckBillList where 关闭人='' ";
string sql = sql1 + sqlWhere;
ds = oCN.RunProcReturn(sql, "h_v_QC_POStockInCheckBillList");
}
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "没有返回任何记录!" + e.ToString();
objJsonResult.data = null;
return objJsonResult;
}
return GetObjectJson(ds);
}
///
///返回首件检验单列表
///
///
///
[Route("QC_Management/MES_QC_FirstPieceCheckBillList_Json")]
[HttpGet]
public object MES_QC_FirstPieceCheckBillList_Json(string sqlWhere,string user)
{
DataSet ds;
try
{
//查看权限
if (!DBUtility.ClsPub.Security_Log("QC_FirstPieceCheckBill_Query", 1, false, user))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "无查看权限!";
objJsonResult.data = null;
return objJsonResult;
}
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
if (sqlWhere == null || sqlWhere.Equals(""))
{
ds = oCN.RunProcReturn("select top 500 * from h_v_QC_FirstPieceCheckBillList where 关闭人='' order by hmainid desc ", "h_v_QC_FirstPieceCheckBillList");
}
else
{
string sql1 = "select * from h_v_QC_FirstPieceCheckBillList where 关闭人='' ";
string sql = sql1 + sqlWhere+ " order by hmainid desc ";
ds = oCN.RunProcReturn(sql, "h_v_QC_FirstPieceCheckBillList");
}
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "没有返回任何记录!" + e.ToString();
objJsonResult.data = null;
return objJsonResult;
}
return GetObjectJson(ds);
}
///
/// 返回巡检记录单列表
///
///
///
[Route("QC_Management/MES_QC_PatrolProcCheckBillList_Json")]
[HttpGet]
public object MES_QC_PatrolProcCheckBillList_Json(string sqlWhere,string user)
{
DataSet ds;
try
{
//查看权限
if (!DBUtility.ClsPub.Security_Log("QC_PatrolProcCheckBill_Query", 1, false, user))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "无查看权限!";
objJsonResult.data = null;
return objJsonResult;
}
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
if (sqlWhere == null || sqlWhere.Equals(""))
{
ds = oCN.RunProcReturn("select top 500 * from h_v_QC_PatrolProcCheckBillList where 关闭人='' order by hmainid desc ", "h_v_QC_PatrolProcCheckBillList");
}
else
{
string sql1 = "select * from h_v_QC_PatrolProcCheckBillList where 关闭人='' ";
string sql = sql1 + sqlWhere+ " order by 制单日期 desc ";
ds = oCN.RunProcReturn(sql, "h_v_QC_PatrolProcCheckBillList");
}
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "没有返回任何记录!" + e.ToString();
objJsonResult.data = null;
return objJsonResult;
}
return GetObjectJson(ds);
}
#region 巡检记录单 审核 反审核 关闭 反关闭 作废 反作废
///
/// 巡检记录单 审核、反审核
///
/// 单据ID
/// 审核(0),反审核(1)
/// 审核人
///
[Route("QC_Management/QC_PatrolProcCheckBillMainValue")]
[HttpGet]
public object QC_PatrolProcCheckBillMainValue(int HInterID, int IsAudit, string CurUserName)
{
try
{
//审核权限
if (!DBUtility.ClsPub.Security_Log_second("QC_PatrolProcCheckBill_Check", 1, false, CurUserName))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "审核失败!无权限!";
objJsonResult.data = null;
return objJsonResult;
}
var ds = oCN.RunProcReturn("select * from QC_PatrolProcCheckBillMain where HInterID=" + HInterID, "QC_PatrolProcCheckBillMain");
if (ds.Tables[0].Rows.Count > 0)
{
if (IsAudit == 0) //审核判断
{
if (ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据已审核!不能再次审核!";
objJsonResult.data = null;
return objJsonResult;
}
}
if (IsAudit == 1) //反审核判断
{
if (ds.Tables[0].Rows[0]["HChecker"].ToString() == "")
{
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;
}
oCN.BeginTran();
if (IsAudit == 0) //审核判断
{
//审核前控制
DataSet BeforeDs = oCN.RunProcReturn("Exec h_p_QC_PatrolProcCheckBill_BeforeCheckCtrl " + HInterID.ToString() + ",'" + CurUserName + "'", "h_p_QC_PatrolProcCheckBill_BeforeCheckCtrl ");
if (BeforeDs == null || BeforeDs.Tables[0].Rows.Count == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "审核前判断失败!";
objJsonResult.data = null;
return objJsonResult;
}
else
{
if (DBUtility.ClsPub.isLong(BeforeDs.Tables[0].Rows[0]["HBack"]) == 1)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "审核失败!" + DBUtility.ClsPub.isStrNull(BeforeDs.Tables[0].Rows[0]["HRemark"]);
objJsonResult.data = null;
return objJsonResult;
}
}
oCN.RunProc("update QC_PatrolProcCheckBillMain set HChecker='" + CurUserName + "',HCheckDate=getdate() where HInterID=" + HInterID);
//审核后控制
DataSet EndDs = oCN.RunProcReturn("Exec h_p_QC_PatrolProcCheckBill_AfterCheckCtrl " + HInterID.ToString() + ",'" + ds.Tables[0].Rows[0]["HBillNo"].ToString() + "','" + CurUserName + "'", "h_p_QC_PatrolProcCheckBill_AfterCheckCtrl");
if (EndDs == null || EndDs.Tables.Count == 0 || EndDs.Tables[0].Rows.Count == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "审核后判断失败!";
objJsonResult.data = null;
oCN.RollBack();
return objJsonResult;
}
else
{
if (DBUtility.ClsPub.isLong(EndDs.Tables[0].Rows[0]["HBack"]) == 1)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "审核失败!" + DBUtility.ClsPub.isStrNull(EndDs.Tables[0].Rows[0]["HRemark"]);
objJsonResult.data = null;
return objJsonResult;
}
}
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "审核成功";
objJsonResult.data = null;
}
if (IsAudit == 1) //反审核判断
{
//反审核前控制
DataSet BeforeDs = oCN.RunProcReturn("Exec h_p_QC_PatrolProcCheckBill_BeforeUnCheckCtrl " + HInterID.ToString() + ",'" + CurUserName + "'", "h_p_QC_PatrolProcCheckBill_BeforeUnCheckCtrl");
if (BeforeDs == null || BeforeDs.Tables[0].Rows.Count == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "反审核前判断失败!";
objJsonResult.data = null;
return objJsonResult;
}
else
{
if (DBUtility.ClsPub.isLong(BeforeDs.Tables[0].Rows[0]["HBack"]) == 1)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "反审核失败!" + DBUtility.ClsPub.isStrNull(BeforeDs.Tables[0].Rows[0]["HRemark"]);
objJsonResult.data = null;
return objJsonResult;
}
}
oCN.RunProc("update QC_PatrolProcCheckBillMain set HChecker='',HCheckDate=null where HInterID=" + HInterID);
//反审核后控制
DataSet EndDs = oCN.RunProcReturn("Exec h_p_QC_PatrolProcCheckBill_AfterUnCheckCtrl " + HInterID.ToString() + ",'" + ds.Tables[0].Rows[0]["HBillNo"].ToString() + "','" + CurUserName + "'", " h_p_QC_PatrolProcCheckBill_AfterUnCheckCtrl");
if (EndDs == null || EndDs.Tables.Count == 0 || EndDs.Tables[0].Rows.Count == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "反审核后判断失败!";
objJsonResult.data = null;
oCN.RollBack();
return objJsonResult;
}
else
{
if (DBUtility.ClsPub.isLong(EndDs.Tables[0].Rows[0]["HBack"]) == 1)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "反审核失败!" + DBUtility.ClsPub.isStrNull(EndDs.Tables[0].Rows[0]["HRemark"]);
objJsonResult.data = null;
return objJsonResult;
}
}
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "反审核成功";
objJsonResult.data = null;
}
oCN.Commit();
return objJsonResult;
}
catch (Exception e)
{
oCN.RollBack();
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "审核失败或者反审核失败!" + e.ToString();
objJsonResult.data = null;
return objJsonResult;
}
}
///
/// 巡检记录单 关闭 反关闭
///
///
///
///
///
[Route("QC_Management/CloseQC_PatrolProcCheckBillMain")]
[HttpGet]
public object CloseQC_PatrolProcCheckBillMain(string HInterID, int Type, string user)
{
try
{
//判断是否有删除权限
if (!DBUtility.ClsPub.Security_Log("QC_PatrolProcCheckBill_Close", 1, false, user))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "无权限关闭!";
objJsonResult.data = null;
return objJsonResult;
}
if (string.IsNullOrWhiteSpace(HInterID))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "HInterID为空!";
objJsonResult.data = null;
return objJsonResult;
}
ClsPub.CurUserName = user;
BillOld.MvarItemKey = "QC_PatrolProcCheckBillMain";
oCN.BeginTran();//开始事务
//Type 1 关闭 2 反关闭
if (Type == 1)
{
//判断单据是否已经关闭
DataSet ds;
string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
if (ds == null || ds.Tables[0].Rows.Count == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据不存在!";
objJsonResult.data = null;
return objJsonResult;
}
if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
{
if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据已作废!不能进行关闭!";
objJsonResult.data = null;
return objJsonResult;
}
if (ds.Tables[0].Rows[0]["HCloseMan"] != null && ds.Tables[0].Rows[0]["HCloseMan"].ToString() != "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据已关闭!不能再次关闭!";
objJsonResult.data = null;
return objJsonResult;
}
//关闭单据
if (!BillOld.CloseBill(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
{
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "关闭失败!原因:" + ClsPub.sExeReturnInfo;
objJsonResult.data = null;
return objJsonResult;
}
}
}
else
{
//判断单据是否已经反关闭
DataSet ds;
string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
{
if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据已作废!不能进行关闭!";
objJsonResult.data = null;
return objJsonResult;
}
if (ds.Tables[0].Rows[0]["HCloseMan"] == null || ds.Tables[0].Rows[0]["HCloseMan"].ToString() == "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据未关闭!不需要再反关闭!";
objJsonResult.data = null;
return objJsonResult;
}
//反关闭单据
if (!BillOld.CancelClose(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
{
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "反关闭失败!原因:" + ClsPub.sExeReturnInfo;
objJsonResult.data = null;
return objJsonResult;
}
}
}
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;
}
}
///
/// 巡检记录单 作废 反作废
///
///
///
///
///
[Route("QC_Management/DropQC_PatrolProcCheckBillMain")]
[HttpGet]
public object DropQC_PatrolProcCheckBillMain(string HInterID, int Type, string user)
{
try
{
//判断是否有作废权限
if (!DBUtility.ClsPub.Security_Log("QC_PatrolProcCheckBill_Drop", 1, false, user))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "无权限作废!";
objJsonResult.data = null;
return objJsonResult;
}
if (string.IsNullOrWhiteSpace(HInterID))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "HInterID为空!";
objJsonResult.data = null;
return objJsonResult;
}
ClsPub.CurUserName = user;
BillOld.MvarItemKey = "QC_PatrolProcCheckBillMain";
oCN.BeginTran();//开始事务
//Type 1 作废 2 反作废
if (Type == 1)
{
//判断单据是否已经作废
DataSet ds;
string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
if (ds == null || ds.Tables[0].Rows.Count == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据不存在!";
objJsonResult.data = null;
return objJsonResult;
}
if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
{
if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据已审核!不能进行作废!";
objJsonResult.data = null;
return objJsonResult;
}
if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据已作废!不需要再作废!";
objJsonResult.data = null;
return objJsonResult;
}
//作废单据
if (!BillOld.Cancelltion(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
{
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "作废失败!原因:" + ClsPub.sExeReturnInfo;
objJsonResult.data = null;
return objJsonResult;
}
}
}
else
{
//判断单据是否已经反作废
DataSet ds;
string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
{
if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据已审核!不能进行作废!";
objJsonResult.data = null;
return objJsonResult;
}
if (ds.Tables[0].Rows[0]["HDeleteMan"] == null || ds.Tables[0].Rows[0]["HDeleteMan"].ToString() == "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据未作废!不需要再反作废!";
objJsonResult.data = null;
return objJsonResult;
}
//反作废单据
if (!BillOld.AbandonCancelltion(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
{
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "反作废失败!原因:" + ClsPub.sExeReturnInfo;
objJsonResult.data = null;
return objJsonResult;
}
}
}
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;
}
}
#endregion
///
/// 检验方案获取信息
///
///
[Route("GetQCCheckProjectDetail")]
[HttpGet]
public ApiResult GetQCCheckProjectDetail(string HID)
{
var model = LuBaoSevice.GetCheckProjectDetail(HID);
return model;
}
///
/// 来料检验单获取信息
///
///
[Route("GetPOStockInCheckDetail")]
[HttpGet]
public ApiResult GetPOStockInCheckDetail(string HID)
{
var model = LuBaoSevice.GetPOStockInCheckBillDetail(HID);
return model;
}
///
/// 首件检验单获取信息
///
///
[Route("GetQC_FirstPieceCheckDetail")]
[HttpGet]
public ApiResult GetQC_FirstPieceCheckDetail(string HID)
{
var model = LuBaoSevice.GetQC_FirstPieceCheckBillDetail(HID);
return model;
}
///
/// 巡检单获取信息
///
///
[Route("GetQC_PatrolProcCheckDetail")]
[HttpGet]
public ApiResult GetQC_PatrolProcCheckDetail(string HID)
{
var model = LuBaoSevice.GetQC_PatrolProcCheckBillDetail(HID);
return model;
}
///
/// 返回检验方案单子表详情
///
///
///
[Route("MES_QC_CheckProjectDetail_Json")]
[HttpGet]
public object MES_QC_CheckProjectDetail_Json(string sqlWhere)
{
DataSet ds;
try
{
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
if (sqlWhere == null || sqlWhere.Equals(""))
{
ds = oCN.RunProcReturn("select HPrjNo,HQCCheckItemID,HQCStd,HQCStdMax,HQCUnit,HRemark from Gy_QCCheckProjectSub", "Gy_QCCheckProjectSub");
}
else
{
string sql1 = "select HPrjNo,HQCCheckItemID,HQCStd,HQCStdMax,HQCUnit,HRemark from Gy_QCCheckProjectSub where 1 = 1 ";
string sql = sql1 + sqlWhere;
ds = oCN.RunProcReturn(sql, "Gy_QCCheckProjectSub");
}
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "没有返回任何记录!" + e.ToString();
objJsonResult.data = null;
return objJsonResult;
}
return GetObjectJson(ds);
}
///
/// 返回来料检验单子表详情
///
///
///
[Route("MES_QC_POStockInCheckDetail_Json")]
[HttpGet]
public object MES_QC_POStockInCheckDetail_Json(string sqlWhere)
{
DataSet ds;
try
{
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
if (sqlWhere == null || sqlWhere.Equals(""))
{
ds = oCN.RunProcReturn("select * from h_v_QC_Edit_POStockInCheckBillList", "h_v_QC_Edit_POStockInCheckBillList");
}
else
{
string sql1 = "select * from h_v_QC_Edit_POStockInCheckBillList where 1 = 1 ";
string sql = sql1 + sqlWhere;
ds = oCN.RunProcReturn(sql, "h_v_QC_Edit_POStockInCheckBillList");
}
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "没有返回任何记录!" + e.ToString();
objJsonResult.data = null;
return objJsonResult;
}
return GetObjectJson(ds);
}
///
/// 返回首件检验单子表详情
///
///
///
[Route("MES_QC_FirstPieceCheckDetail_Json")]
[HttpGet]
public object MES_QC_FirstPieceCheckDetail_Json(string sqlWhere)
{
DataSet ds;
try
{
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
if (sqlWhere == null || sqlWhere.Equals(""))
{
ds = oCN.RunProcReturn("select * from h_v_QC_Edit_FirstPieceCheckBillList", "h_v_QC_Edit_FirstPieceCheckBillList");
}
else
{
string sql1 = "select * from h_v_QC_Edit_FirstPieceCheckBillList where 1 = 1 ";
string sql = sql1 + sqlWhere;
ds = oCN.RunProcReturn(sql, "h_v_QC_Edit_FirstPieceCheckBillList");
}
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "没有返回任何记录!" + e.ToString();
objJsonResult.data = null;
return objJsonResult;
}
return GetObjectJson(ds);
}
///
/// 返回巡检单子表详情
///
///
///
[Route("MES_QC_PatrolProcCheckDetail_Json")]
[HttpGet]
public object MES_QC_PatrolProcCheckDetail_Json(string sqlWhere)
{
DataSet ds;
try
{
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
if (sqlWhere == null || sqlWhere.Equals(""))
{
ds = oCN.RunProcReturn("select * from h_v_QC_Edit_PatrolProcCheckBillList", "h_v_QC_Edit_PatrolProcCheckBillList");
}
else
{
string sql1 = "select * from h_v_QC_Edit_PatrolProcCheckBillList where 1 = 1 ";
string sql = sql1 + sqlWhere;
ds = oCN.RunProcReturn(sql, "h_v_QC_Edit_PatrolProcCheckBillList");
}
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "没有返回任何记录!" + e.ToString();
objJsonResult.data = null;
return objJsonResult;
}
return GetObjectJson(ds);
}
#endregion
#region 保存/编辑/删除方法
#region 检验方案编辑时获取表头数据
[Route("QC_Management/MES_QC_CheckProjectListCheckDetai")]
[HttpGet]
public ApiResult MES_QC_CheckProjectListCheckDetai(string HID)
{
if (string.IsNullOrEmpty(HID))
return new ApiResult { code = -1, msg = "ID不能为空" };
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
var dataSet = oCN.RunProcReturn("select top 1 * from h_v_Gy_QCCheckProjectList_Edit where hmainid= " + HID + " ", "h_v_Gy_QCCheckProjectList_Edit");
if (dataSet == null || dataSet.Tables[0].Rows.Count == 0)
return new ApiResult { code = -1, msg = "不存在检验方案" };
return new ApiResult { code = 1, msg = "查询成功", data = dataSet };
}
#endregion
#region 检验方案查询
[Route("QC_Management/MES_QC_CheckProjectListProjectDetaiList")]
[HttpGet]
public object MES_QC_CheckProjectListProjectDetaiList(string sWhere,string user)
{
DataSet ds;
try
{
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
ds = oCN.RunProcReturn(string.Format(@"select * from h_v_Gy_QCCheckProjectList_Edit where 1=1 " + sWhere), "h_v_Gy_QCCheckProjectList_Edit");
objJsonResult.code = "1";
objJsonResult.count = 1;
objJsonResult.Message = "获取信息成功!";
objJsonResult.data = ds.Tables[0];
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "没有返回任何记录!" + e.ToString();
objJsonResult.data = null;
}
return objJsonResult;
}
#endregion
#region 检验方案编辑时获取表体数据
[Route("QC_Management/MES_QC_CheckProjectListProjectDetai")]
[HttpGet]
public object MES_QC_CheckProjectListProjectDetai(string HInterID)
{
DataSet ds;
try
{
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
ds = oCN.RunProcReturn(string.Format(@"select * from h_v_Gy_QCCheckProjectList_Edit where hinterid='" + HInterID+"'"), "h_v_Gy_QCCheckProjectList_Edit");
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "获取信息成功!";
objJsonResult.data = ds.Tables[0];
}
catch (Exception e)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "没有返回任何记录!" + e.ToString();
objJsonResult.data = null;
}
return objJsonResult;
}
#endregion
#region 检验方案保存
///
/// 保存检验方案
///
///
///
[Route("QC_Management/SaveQCCheckProjectList")]
[HttpPost]
public object SaveQCCheckProjectList([FromBody] JObject msg)
{
var _value = msg["msg"].ToString();
string msg1 = _value.ToString();
string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
string msg2 = sArray[0].ToString();
string msg3 = sArray[1].ToString();
string user = sArray[2].ToString();//用户名
//判断权限
if (!DBUtility.ClsPub.Security_Log("Gy_QCCheckProject_Edit", 1, false, user))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "无编辑权限";
objJsonResult.data = null;
return objJsonResult;
}
string UserName = "";
ListModels oListModels = new ListModels();
try
{
DAL.ClsGy_QCCheckProjectMain oBill = new DAL.ClsGy_QCCheckProjectMain();
List lsmain = new List();
msg2 = msg2.Replace("\\", "");
msg2 = msg2.Replace("\n", ""); //\n
lsmain = oListModels.getObjectByJson_Gy_QCCheckProjectMain(msg2);
foreach (Model.ClsGy_QCCheckProjectMain oItem in lsmain)
{
//oItem.HMaker = "";
UserName = oItem.HMaker;
DBUtility.ClsPub.CurUserName = UserName;
oItem.HMakeDate = DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd"));
oItem.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
oItem.HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd"));
oItem.HBillType = "3320";
oItem.HBillSubType = "3320";
oItem.HBillStatus = 0;
oItem.HPeriod = 0;
oItem.HMaker = "";
oItem.HMainSourceInterID = oItem.HInterID;
//oItem.HInterID = DBUtility.ClsPub.CreateBillID_SRMProd("1103", ref DBUtility.ClsPub.sExeReturnInfo);
if (DBUtility.ClsPub.isStrNull(oItem.HDate) == "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!没有单据日期,无法保存!";
objJsonResult.data = 1;
return objJsonResult;
}
oBill.omodel = oItem;
}
//表体数据
//按 },{来拆分数组 //去掉【和】
msg3 = msg3.Substring(1, msg3.Length - 2);
msg3 = msg3.Replace("\\", "");
msg3 = msg3.Replace("\n", ""); //\n
//msg2 = msg2.Replace("'", "’");
List ls = new List();
ls = oListModels.getObjectByJson_ClsGy_QCCheckProjectSub(msg3);
int i = 0;
foreach (Model.ClsGy_QCCheckProjectSub oItemSub in ls)
{
oItemSub.HBillNo_bak = oBill.omodel.HBillNo;//单据号(备份,以免内码丢失,找不到对应主表)
i++;
if (string.IsNullOrWhiteSpace(oItemSub.HBillNo_bak))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!没备份单据号,无法保存!";
objJsonResult.data = 1;
return objJsonResult;
}
oItemSub.HSourceEntryID =0;
oItemSub.HSourceInterID =0;
oItemSub.HEntryID = i;
oItemSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DateTime.Now);
oItemSub.HCloseType = false;
oItemSub.HSourceBillNo = "";
oItemSub.HSourceBillType = "";
oItemSub.HRelationQty = 0;
oItemSub.HRelationMoney = 0;
oItemSub.HCloseMan = "";
oItemSub.HDestructInspect = Convert.ToInt32(oItemSub.HDestructInspect);
oItemSub.HKeyInspect = Convert.ToInt32(oItemSub.HKeyInspect);
oBill.DetailColl.Add(oItemSub);
}
//保存
//保存完毕后处理
bool bResult;
if (oBill.omodel.HInterID == 0)
{
bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
}
else
{
bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
}
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;
}
}
#endregion
#region 检验方案逻辑删除功能
///
/// 检验方案逻辑删除功能
///
///
[Route("DeltetQCCheckProject")]
[HttpGet]
public object DeltetQCCheckProject(string HInterID,string UserName)
{
DataSet ds;
DBUtility.ClsPub.CurUserName = UserName;
//编辑权限
if (!DBUtility.ClsPub.Security_Log("Gy_QCCheckProject_Delete", 1, false, DBUtility.ClsPub.CurUserName))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "无删除权限!";
objJsonResult.data = null;
return objJsonResult;
}
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;
}
DAL.ClsGy_QCCheckProjectMain oBill = new DAL.ClsGy_QCCheckProjectMain();
if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))
{
if (oBill.omodel.HBillStatus > 1)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据当前处于不能删除状态,不能删除!";
objJsonResult.data = null;
return objJsonResult;
}
if (oBill.omodel.HChecker != "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据已经审核,不能删除!";
objJsonResult.data = null;
return objJsonResult;
}
//删除前控制=========================================
string sql1 = "exec h_p_Gy_QCCheckProject_BeforeDelCtrl " + BillOld.omodel.HInterID + ",'" + BillOld.omodel.HBillNo + "','" + UserName + "'";
ds = oCN.RunProcReturn(sql1, "h_p_Gy_QCCheckProject_BeforeDelCtrl");
if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "删除失败!原因:删除前判断失败,请与网络管理人员联系";
objJsonResult.data = null;
return objJsonResult;
}
if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
{
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "删除失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
objJsonResult.data = null;
return objJsonResult;
}
//==================================================================================
//删除单据(包含删除后控制、写入日志)
if (!oBill.DeleteBill(BillOld.omodel.HInterID, BillOld.omodel.HBillNo, "h_p_Gy_QCCheckProject_AfterDelCtrl", UserName, ref ClsPub.sExeReturnInfo))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "删除失败!原因:" + ClsPub.sExeReturnInfo;
objJsonResult.data = null;
return objJsonResult;
}
else
{
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "删除成功!";
objJsonResult.data = null;
return objJsonResult;
}
//bool IsDete = oBill.DeleteBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
//if (IsDete)
//{
// objJsonResult.code = "0";
// 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_QCCheckProject/AuditGy_QCCheckProject")]
[HttpGet]
public object AuditGy_QCCheckProject(string HInterID, int Type, string user)
{
try
{
//判断是否有审核权限
if (!DBUtility.ClsPub.Security_Log("Gy_QCCheckProject_Check", 1, false, user))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "无权限审核!";
objJsonResult.data = null;
return objJsonResult;
}
if (string.IsNullOrWhiteSpace(HInterID))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "HInterID为空!";
objJsonResult.data = null;
return objJsonResult;
}
DAL.ClsGy_QCCheckProjectMain oBill = new DAL.ClsGy_QCCheckProjectMain();
ClsPub.CurUserName = user;
oCN.BeginTran();//开始事务
//Type 1 审核 2 反审核
if (Type == 1)
{
//判断单据是否已经审核
DataSet ds;
string sql = "select * from Gy_QCCheckProjectMain where HInterID = " + HInterID;
ds = oCN.RunProcReturn(sql, oBill.MvarItemKey);
if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据已审核!不能再次审核!";
objJsonResult.data = null;
return objJsonResult;
}
//审核前控制=========================================
string sql1 = "exec h_p_Gy_QCCheckProject_BeforeCheckCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + user + "'";
ds = oCN.RunProcReturn(sql1, "h_p_Gy_QCCheckProject_BeforeCheckCtrl");
if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "审核失败!原因:审核前判断失败,请与网络管理人员联系";
objJsonResult.data = null;
oCN.RollBack();
return objJsonResult;
}
if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
{
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "审核失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
objJsonResult.data = null;
oCN.RollBack();
return objJsonResult;
}
//==================================================================================
//审核提交
if (!oBill.CheckBill(oBill.omodel.HInterID, oBill.omodel.HBillNo, "h_p_Gy_QCCheckProject_AfterCheckCtrl", user, ref DBUtility.ClsPub.sExeReturnInfo) == true)
{
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "审核失败!原因:" + ClsPub.sExeReturnInfo;
objJsonResult.data = null;
return objJsonResult;
}
else
{
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = " 审核成功!";
objJsonResult.data = null;
return objJsonResult; ;
}
}
else
{
//判断单据是否已经反审核
DataSet ds;
string sql = "select * from Gy_QCCheckProjectMain where HInterID = " + HInterID;
ds = oCN.RunProcReturn(sql, oBill.MvarItemKey);
if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
{
if (ds.Tables[0].Rows[0]["HChecker"] == null || ds.Tables[0].Rows[0]["HChecker"].ToString() == "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据未审核!不需要反审核!";
objJsonResult.data = null;
return objJsonResult;
}
//反审核前控制=========================================
string sql1 = "exec h_p_Gy_QCCheckProject_BeforeUnCheckCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + user + "'";
ds = oCN.RunProcReturn(sql1, "h_p_Gy_QCCheckProject_BeforeUnCheckCtrl");
if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "反审核失败!原因:反审核前判断失败,请与网络管理人员联系";
objJsonResult.data = null;
return objJsonResult;
}
if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
{
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "反审核失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
objJsonResult.data = null;
return objJsonResult;
}
//===========================================================
//反审核提交AbandonCheck
if (!oBill.AbandonCheck(oBill.omodel.HInterID, oBill.omodel.HBillNo, "h_p_Gy_QCCheckProject_AfterUnCheckCtrl", user, ref DBUtility.ClsPub.sExeReturnInfo) == true)
{
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "反审核失败!原因:" + ClsPub.sExeReturnInfo;
objJsonResult.data = null;
return objJsonResult;
}
else
{
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = " 反审核成功!";
objJsonResult.data = null;
return objJsonResult; ;
}
}
}
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;
}
}
#endregion
#region 检验方案 作废/反作废
///
///
/// 单据ID
/// 作废(0),反作废(1)
/// 作废人
///
[Route("Sc_MESTransFerWorkBill/DeleteGy_QCCheckProject")]
[HttpGet]
public object DeleteGy_QCCheckProject(int HInterID, int IsAudit, string CurUserName)
{
string ModRightNameCheck = "Gy_QCCheckProject_Drop";
DBUtility.ClsPub.CurUserName = CurUserName;
try
{
//检查权限
if (!DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, false, CurUserName))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "作废失败!无权限!";
objJsonResult.data = null;
return objJsonResult;
}
//HInterID数据判断
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); //对HInterID进行类型的转换
DAL.ClsGy_QCCheckProjectMain oBill = new DAL.ClsGy_QCCheckProjectMain(); //实例化单据操作类,用于进行相关操作
//针对需要进行的操作,检验当前单据的状态是否支持需要进行的操作
if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) //根据HInterID获取该单据的数据
{
if (oBill.omodel.HChecker.Trim() != "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据已审核!不能进行作废!";
objJsonResult.data = null;
return objJsonResult;
}
if (IsAudit == 0) //作废判断
{
if (oBill.omodel.HDeleteMan.Trim() != "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据已作废!不能再作废!";
objJsonResult.data = null;
return objJsonResult;
}
}
if (IsAudit == 1) //反作废判断
{
if (oBill.omodel.HDeleteMan.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) //作废提交
{
//审核前控制=========================================
string sql1 = "exec h_p_Gy_QCCheckProject_BeforeDropCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'";
ds = oCN.RunProcReturn(sql1, "h_p_Gy_QCCheckProject_BeforeDropCtrl");
if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "审核失败!原因:审核前判断失败,请与网络管理人员联系";
objJsonResult.data = null;
oCN.RollBack();
return objJsonResult;
}
if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
{
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "审核失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
objJsonResult.data = null;
oCN.RollBack();
return objJsonResult;
}
//==================================================================================
//审核提交
if (oBill.Cancelltion(oBill.omodel.HInterID, oBill.omodel.HBillNo, "h_p_Gy_QCCheckProject_AfterDropCtrl", CurUserName, 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) //反作废提交
{
//反审核前控制=========================================
string sql1 = "exec h_p_Gy_QCCheckProject_BeforeUnDropCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'";
ds = oCN.RunProcReturn(sql1, "h_p_Gy_QCCheckProject_BeforeUnDropCtrl");
if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "反审核失败!原因:反审核前判断失败,请与网络管理人员联系";
objJsonResult.data = null;
return objJsonResult;
}
if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
{
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "反审核失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
objJsonResult.data = null;
return objJsonResult;
}
//===========================================================
//反作废提交
if (oBill.AbandonCancelltion(lngBillKey, oBill.omodel.HBillNo, "h_p_Gy_QCCheckProject_AfterUnDropCtrl", CurUserName, 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("SaveQC_POStockInCheckList")]
[HttpPost]
public object SaveQC_POStockInCheckList([FromBody] JObject msg)
{
var _value = msg["msg"].ToString();
string msg1 = _value.ToString();
string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
string msg2 = sArray[0].ToString();
string msg3 = sArray[1].ToString();
string UserName = "";
ListModels oListModels = new ListModels();
try
{
DAL.ClsQC_POStockInCheckBill oBill = new DAL.ClsQC_POStockInCheckBill();
List lsmain = new List();
msg2 = msg2.Replace("\\", "");
msg2 = msg2.Replace("\n", ""); //\n
lsmain = oListModels.getObjectByJson_QC_POStockInCheckBillMain(msg2);
foreach (Model.ClsQC_POStockInCheckBillMain oItem in lsmain)
{
//oItem.HMaker = "";
UserName = oItem.HMaker;
oItem.HMakeDate = DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd"));
oItem.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
oItem.HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd"));
oItem.HBillType = "7503";
oItem.HBillSubType = "7503";
oItem.HBillStatus = 0;
oItem.HPeriod = 0;
oItem.HMaker = "";
oItem.HMainSourceInterID = oItem.HInterID;
//oItem.HInterID = DBUtility.ClsPub.CreateBillID_SRMProd("1103", ref DBUtility.ClsPub.sExeReturnInfo);
if (DBUtility.ClsPub.isStrNull(oItem.HDate) == "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!没有单据日期,无法保存!";
objJsonResult.data = 1;
return objJsonResult;
}
oBill.omodel = oItem;
}
//表体数据
//按 },{来拆分数组 //去掉【和】
msg3 = msg3.Substring(1, msg3.Length - 2);
msg3 = msg3.Replace("\\", "");
msg3 = msg3.Replace("\n", ""); //\n
//msg2 = msg2.Replace("'", "’");
List ls = new List();
ls = oListModels.getObjectByJson_QC_POStockInCheckBillSub(msg3);
int i = 0;
foreach (Model.ClsQC_POStockInCheckBillSub oItemSub in ls)
{
oItemSub.HBillNo_bak = oBill.omodel.HBillNo;//单据号(备份,以免内码丢失,找不到对应主表)
i++;
if (string.IsNullOrWhiteSpace(oItemSub.HBillNo_bak))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!没备份单据号,无法保存!";
objJsonResult.data = 1;
return objJsonResult;
}
oItemSub.HSourceEntryID = 0;
oItemSub.HSourceInterID = 0;
oItemSub.HEntryID = i;
// DBUtility.ClsPub.isDate(DateTime.Now);
oItemSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DateTime.Now);
oItemSub.HCloseType = false;
oItemSub.HSourceBillNo = "";
oItemSub.HSourceBillType = "";
oItemSub.HRelationQty = 0;
oItemSub.HRelationMoney = 0;
oItemSub.HCloseMan = "";
oItemSub.HRemark = "";
oItemSub.HProcCheckEmp = oBill.omodel.HFirstCheckEmp;//检测员
oBill.DetailColl.Add(oItemSub);
}
//保存
//保存完毕后处理
bool bResult;
if (oBill.omodel.HInterID == 0)
{
// bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
}
else
{
bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
}
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("DeltetQC_POStockInCheck")]
[HttpGet]
public object DeltetQC_POStockInCheck(string HInterID)
{
DataSet ds;
//string ModRightNameCheck = "Sc_ProcessReport_check";
try
{
//删除权限
//if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, false, CurUserName))
//{
// objJsonResult.code = "0";
// objJsonResult.count = 0;
// objJsonResult.Message = "审核失败!无权限!";
// objJsonResult.data = null;
// return objJsonResult;
//}
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
if (string.IsNullOrWhiteSpace(HInterID))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "HInterID为空!";
objJsonResult.data = null;
return objJsonResult;
}
oCN.BeginTran();//开始事务
ds = oCN.RunProcReturn("select * from QC_POStockInCheckBillMain where HInterID=" + HInterID, "QC_POStockInCheckBillMain");
DataSet ds2 = oCN.RunProcReturn("select * from QC_POStockInCheckBillSub where HInterID=" + HInterID, "QC_POStockInCheckBillSub");
if (ds == null || ds.Tables[0].Rows.Count == 0 || ds2 == null || ds2.Tables[0].Rows.Count == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "没有这个单据,无法删除!";
objJsonResult.data = null;
return objJsonResult; ;
}
var HCloseMan = Convert.ToString(ds.Tables[0].Rows[0]["HCloseMan"]);
var HCloseMan2 = Convert.ToString(ds2.Tables[0].Rows[0]["HCloseMan"]);
if (!string.IsNullOrWhiteSpace(HCloseMan) || !string.IsNullOrWhiteSpace(HCloseMan2) )
{
oCN.RollBack();//回滚事务
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据已删除无法再次删除!";
objJsonResult.data = null;
return objJsonResult;
}
oCN.RunProc("update QC_POStockInCheckBillMain set HCloseMan='-1',HCloseDate=GETDATE() where HInterID=" + HInterID);
oCN.RunProc("update QC_POStockInCheckBillSub set HCloseMan='-1',HEntryCloseDate=GETDATE() where HInterID=" + HInterID);
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;
}
}
#endregion
#region 首件检验
///
/// 保存首件检验单
///
///
///
[Route("SaveQC_FirstPieceCheckList")]
[HttpPost]
public object SaveQC_FirstPieceCheckList([FromBody] JObject msg)
{
var _value = msg["msg"].ToString();
string msg1 = _value.ToString();
string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
string msg2 = sArray[0].ToString();
string msg3 = sArray[1].ToString();
string UserName = "";
ListModels oListModels = new ListModels();
try
{
DAL.ClsQC_FirstPieceCheckBill oBill = new DAL.ClsQC_FirstPieceCheckBill();
List lsmain = new List();
msg2 = msg2.Replace("\\", "");
msg2 = msg2.Replace("\n", ""); //\n
lsmain = oListModels.getObjectByJson_QC_FirstPieceCheckBillMain(msg2);
foreach (Model.ClsQC_FirstPieceCheckBillMain oItem in lsmain)
{
//oItem.HMaker = "";
UserName = oItem.HMaker;
oItem.HMakeDate = DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd"));
oItem.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
oItem.HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd"));
oItem.HBillType = "7505";
oItem.HBillSubType = "7505";
oItem.HBillStatus = 0;
oItem.HPeriod = 0;
oItem.HMaker = "";
oItem.HMainSourceInterID = oItem.HInterID;
//oItem.HInterID = DBUtility.ClsPub.CreateBillID_SRMProd("1103", ref DBUtility.ClsPub.sExeReturnInfo);
if (DBUtility.ClsPub.isStrNull(oItem.HDate) == "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!没有单据日期,无法保存!";
objJsonResult.data = 1;
return objJsonResult;
}
oBill.omodel = oItem;
}
//表体数据
//按 },{来拆分数组 //去掉【和】
msg3 = msg3.Substring(1, msg3.Length - 2);
msg3 = msg3.Replace("\\", "");
msg3 = msg3.Replace("\n", ""); //\n
//msg2 = msg2.Replace("'", "’");
List ls = new List();
ls = oListModels.getObjectByJson_QC_FirstPieceCheckBillSub(msg3);
int i = 0;
foreach (Model.ClsQC_FirstPieceCheckBillSub oItemSub in ls)
{
oItemSub.HBillNo_bak = oBill.omodel.HBillNo;//单据号(备份,以免内码丢失,找不到对应主表)
i++;
if (string.IsNullOrWhiteSpace(oItemSub.HBillNo_bak))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!没备份单据号,无法保存!";
objJsonResult.data = 1;
return objJsonResult;
}
oItemSub.HSourceEntryID = 0;
oItemSub.HSourceInterID = 0;
oItemSub.HEntryID = i;
// DBUtility.ClsPub.isDate(DateTime.Now);
oItemSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DateTime.Now);
oItemSub.HCloseType = false;
oItemSub.HSourceBillNo = "";
oItemSub.HSourceBillType = "";
oItemSub.HRelationQty = 0;
oItemSub.HRelationMoney = 0;
oItemSub.HCloseMan = "";
oItemSub.HRemark = "";
oBill.DetailColl.Add(oItemSub);
}
//保存
//保存完毕后处理
bool bResult;
if (oBill.omodel.HInterID == 0)
{
// bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
}
else
{
bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
}
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;
}
}
#region [伪删除模式]
/////
///// 首件检验逻辑删除功能
/////
/////
//[Route("DeltetQC_FirstPieceCheck")]
//[HttpGet]
//public object DeltetQC_FirstPieceCheck(string HInterID,string user)
//{
// DataSet ds;
// string ModRightNameCheck = "QC_FirstPieceCheckBill_Delete";
// try
// {
// //删除权限
// if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 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(HInterID))
// {
// objJsonResult.code = "0";
// objJsonResult.count = 0;
// objJsonResult.Message = "HInterID为空!";
// objJsonResult.data = null;
// return objJsonResult;
// }
// oCN.BeginTran();//开始事务
// ds = oCN.RunProcReturn("select * from QC_FirstPieceCheckBillMain where HInterID=" + HInterID, "QC_FirstPieceCheckBillMain");
// DataSet ds2 = oCN.RunProcReturn("select * from QC_FirstPieceCheckBillSub where HInterID=" + HInterID, "QC_FirstPieceCheckBillSub");
// if (ds == null || ds.Tables[0].Rows.Count == 0 || ds2 == null || ds2.Tables[0].Rows.Count == 0)
// {
// objJsonResult.code = "0";
// objJsonResult.count = 0;
// objJsonResult.Message = "没有这个单据,无法删除!";
// objJsonResult.data = null;
// return objJsonResult; ;
// }
// var HCloseMan = Convert.ToString(ds.Tables[0].Rows[0]["HCloseMan"]);
// var HCloseMan2 = Convert.ToString(ds2.Tables[0].Rows[0]["HCloseMan"]);
// if (!string.IsNullOrWhiteSpace(HCloseMan) || !string.IsNullOrWhiteSpace(HCloseMan2))
// {
// oCN.RollBack();//回滚事务
// objJsonResult.code = "0";
// objJsonResult.count = 0;
// objJsonResult.Message = "单据已删除无法再次删除!";
// objJsonResult.data = null;
// return objJsonResult;
// }
// oCN.RunProc("update QC_FirstPieceCheckBillMain set HCloseMan='-1',HCloseDate=GETDATE() where HInterID=" + HInterID);
// oCN.RunProc("update QC_FirstPieceCheckBillSub set HCloseMan='-1',HEntryCloseDate=GETDATE() where HInterID=" + HInterID);
// 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;
// }
//}
#endregion
#endregion
#region 巡检
///
/// 保存巡检单
///
///
///
[Route("SaveQC_PatrolProcCheckList")]
[HttpPost]
public object SaveQC_PatrolProcCheckList([FromBody] JObject msg)
{
var _value = msg["msg"].ToString();
string msg1 = _value.ToString();
string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
string msg2 = sArray[0].ToString();
string msg3 = sArray[1].ToString();
string user = sArray[2].ToString();
string badmsg = sArray[3].ToString();
string UserName = "";
ListModels oListModels = new ListModels();
try
{
//判断权限
if (!DBUtility.ClsPub.Security_Log("QC_PatrolProcCheckBill_Edit", 1, false, user))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "无保存权限";
objJsonResult.data = null;
return objJsonResult;
}
WebAPI.DLL.ClsQC_PatrolProcCheckBill oBill = new WebAPI.DLL.ClsQC_PatrolProcCheckBill();
List lsmain = new List();
msg2 = msg2.Replace("\\", "");
msg2 = msg2.Replace("\n", ""); //\n
lsmain = oListModels.getObjectByJson_QC_PatrolProcCheckBillMain(msg2);
foreach (Model.ClsQC_PatrolProcCheckBillMain oItem in lsmain)
{
//oItem.HMaker = "";
UserName = oItem.HMaker;
oItem.HMakeDate = DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd"));
oItem.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
oItem.HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd"));
oItem.HBillType = "7506";
oItem.HBillSubType = "7506";
oItem.HBillStatus = 0;
oItem.HPeriod = 0;
oItem.HMaker = user;
oItem.HMainSourceInterID = oItem.HInterID;
//oItem.HInterID = DBUtility.ClsPub.CreateBillID_SRMProd("1103", ref DBUtility.ClsPub.sExeReturnInfo);
if (DBUtility.ClsPub.isStrNull(oItem.HDate) == "")
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!没有单据日期,无法保存!";
objJsonResult.data = 1;
return objJsonResult;
}
oBill.omodel = oItem;
}
//表体数据
//按 },{来拆分数组 //去掉【和】
msg3 = msg3.Substring(1, msg3.Length - 2);
msg3 = msg3.Replace("\\", "");
msg3 = msg3.Replace("\n", ""); //\n
//msg2 = msg2.Replace("'", "’");
List ls = new List();
ls = oListModels.getObjectByJson_QC_PatrolProcCheckBillSub(msg3);
int i = 0;
foreach (Model.ClsQC_PatrolProcCheckBillSub oItemSub in ls)
{
oItemSub.HBillNo_bak = oBill.omodel.HBillNo;//单据号(备份,以免内码丢失,找不到对应主表)
i++;
if (string.IsNullOrWhiteSpace(oItemSub.HBillNo_bak))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!没备份单据号,无法保存!";
objJsonResult.data = 1;
return objJsonResult;
}
oItemSub.HSourceEntryID = 0;
oItemSub.HSourceInterID = 0;
oItemSub.HEntryID = i;
// DBUtility.ClsPub.isDate(DateTime.Now);
oItemSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DateTime.Now);
oItemSub.HCloseType = false;
oItemSub.HSourceBillNo = "";
oItemSub.HSourceBillType = "";
oItemSub.HRelationQty = 0;
oItemSub.HRelationMoney = 0;
oItemSub.HCloseMan = "";
//oItemSub.HRemark = "";
oBill.DetailColl.Add(oItemSub);
}
badmsg = badmsg.Substring(1, badmsg.Length - 2);
badmsg = badmsg.Replace("\\", "");
badmsg = badmsg.Replace("\n", ""); //\n
List bs = new List();
bs = oListModels.getObjectByJson_ClsQC_PatrolProcCheckBillSub_BadReason(badmsg);
int j = 0;
foreach (Model.ClsQC_PatrolProcCheckBillSub_BadReason badSub in bs)
{
badSub.HBillNo_bak = oBill.omodel.HBillNo;//单据号(备份,以免内码丢失,找不到对应主表)
j++;
if (string.IsNullOrWhiteSpace(badSub.HBillNo_bak))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "保存失败!没备份单据号,无法保存!";
objJsonResult.data = 1;
return objJsonResult;
}
badSub.HInterID = oBill.omodel.HInterID;
badSub.HEntryID = j;
badSub.HSEQ = j;
oBill.DetailColl_Bad.Add(badSub);
}
//保存
//保存完毕后处理
bool bResult;
if (oBill.omodel.HInterID == 0)
{
// bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
}
else
{
bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
}
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("DeltetQC_PatrolProcCheck")]
[HttpGet]
public object DeltetQC_PatrolProcCheck(string HInterID,string user)
{
DataSet ds;
string ModRightNameCheck = "QC_PatrolProcCheckBill_Delete";
try
{
//删除权限
if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 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(HInterID))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "HInterID为空!";
objJsonResult.data = null;
return objJsonResult;
}
oCN.BeginTran();//开始事务
ds = oCN.RunProcReturn("select * from QC_PatrolProcCheckBillMain where HInterID=" + HInterID, "QC_PatrolProcCheckBillMain");
DataSet ds2 = oCN.RunProcReturn("select * from QC_PatrolProcCheckBillSub where HInterID=" + HInterID, "QC_PatrolProcCheckBillSub");
if (ds == null || ds.Tables[0].Rows.Count == 0 || ds2 == null || ds2.Tables[0].Rows.Count == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "没有这个单据,无法删除!";
objJsonResult.data = null;
return objJsonResult; ;
}
var HCloseMan = Convert.ToString(ds.Tables[0].Rows[0]["HCloseMan"]);
var HCloseMan2 = Convert.ToString(ds2.Tables[0].Rows[0]["HCloseMan"]);
if (!string.IsNullOrWhiteSpace(HCloseMan) || !string.IsNullOrWhiteSpace(HCloseMan2))
{
oCN.RollBack();//回滚事务
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据已删除无法再次删除!";
objJsonResult.data = null;
return objJsonResult;
}
//删除前控制
DataSet BeforeDs = oCN.RunProcReturn("Exec h_p_QC_PatrolProcCheckBill_BeforeDelCtrl " + HInterID.ToString() + ",'" + user + "'", "h_p_QC_PatrolProcCheckBill_BeforeDelCtrl");
if (BeforeDs == null || BeforeDs.Tables[0].Rows.Count == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "删除前判断失败!";
objJsonResult.data = null;
return objJsonResult;
}
else
{
if (DBUtility.ClsPub.isLong(BeforeDs.Tables[0].Rows[0]["HBack"]) == 1)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "删除失败!" + DBUtility.ClsPub.isStrNull(BeforeDs.Tables[0].Rows[0]["HRemark"]);
objJsonResult.data = null;
return objJsonResult;
}
}
oCN.RunProc("update QC_PatrolProcCheckBillMain set HCloseMan='-1',HCloseDate=GETDATE() where HInterID=" + HInterID);
oCN.RunProc("update QC_PatrolProcCheckBillSub set HCloseMan='-1',HEntryCloseDate=GETDATE() where HInterID=" + HInterID);
//删除后控制
DataSet EndDs = oCN.RunProcReturn("Exec h_p_QC_PatrolProcCheckBill_AfterDelCtrl " + HInterID.ToString() + ",'" + ds.Tables[0].Rows[0]["HBillNo"].ToString() + "','" + user + "'", "h_p_QC_PatrolProcCheckBill_AfterDelCtrl");
if (EndDs == null || EndDs.Tables.Count == 0 || EndDs.Tables[0].Rows.Count == 0)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "删除后判断失败!";
objJsonResult.data = null;
oCN.RollBack();
return objJsonResult;
}
else
{
if (DBUtility.ClsPub.isLong(EndDs.Tables[0].Rows[0]["HBack"]) == 1)
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "删除失败!" + DBUtility.ClsPub.isStrNull(EndDs.Tables[0].Rows[0]["HRemark"]);
objJsonResult.data = null;
return objJsonResult;
}
}
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;
}
}
#endregion
#endregion
}
}