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;
namespace WebAPI.Controllers
{
public class QC_ManagementController : ApiController
{
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
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
{
//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 = "没有返回任何记录!" + 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")]
[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 hmainid desc ", "h_v_Gy_QCCheckProjectList");
}
else
{
string sql1 = "select * from h_v_Gy_QCCheckProjectList where 1=1";
string sql = sql1 + sWhere+ " order by hmainid 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 hmainid 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);
}
///
/// 检验方案获取信息
///
///
[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_NEW where hmainid= " + HID + " ", "h_v_Gy_QCCheckProjectList_NEW");
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_CheckProjectListProjectDetai")]
[HttpGet]
public object MES_QC_CheckProjectListProjectDetai(string HInterID)
{
DataSet ds;
try
{
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
ds = oCN.RunProcReturn(string.Format(@"select 次序号 HPrjNo,检验项目ID HQCCheckItemID,检验项目代码 HQCCheckItemNumber,检验项目 HQCCheckItemName,
检验标准 HQCStd,最大检验标准 HQCStdMax,检验单位 HQCUnit,表体备注 HRemark from h_v_Gy_QCCheckProjectList_NEW
where hinterid='"+HInterID+"'"), "h_v_Gy_QCCheckProjectList_NEW");
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.HStandard = false;
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 = "";
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)
{
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;
}
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;
}
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 Gy_QCCheckProjectMain where HInterID=" + HInterID, "Gy_QCCheckProjectMain");
DataSet ds2 = oCN.RunProcReturn("select * from Gy_QCCheckProjectSub where HInterID=" + HInterID, "Gy_QCCheckProjectSub");
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; ;
}
int HBillStatus = Convert.ToInt32(ds.Tables[0].Rows[0]["HBillStatus"]);
int HPrjNo= Convert.ToInt32(ds2.Tables[0].Rows[0]["HPrjNo"]);
if (HBillStatus < 0 || HPrjNo<0)
{
oCN.RollBack();//回滚事务
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "单据已删除无法再次删除!";
objJsonResult.data = null;
return objJsonResult;
}
oCN.RunProc("update Gy_QCCheckProjectMain set HBillStatus=-1 where HInterID="+HInterID);
oCN.RunProc("update Gy_QCCheckProjectSub set HPrjNo=-1 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_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 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 = "";
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);
}
//保存
//保存完毕后处理
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;
}
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);
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
}
}