using Newtonsoft.Json;
|
using Newtonsoft.Json.Linq;
|
using Pub_Class;
|
using System;
|
using System.Collections;
|
using System.Collections.Generic;
|
using System.Data;
|
using System.Data.SqlClient;
|
using System.Web.Http;
|
using WebAPI.Models;
|
|
namespace WebAPI.Controllers
|
{
|
//质量汇报单Controller
|
//数据库主表Sc_QualityReportBillMain
|
//数据库子表Sc_QualityReportBillSub
|
public class Sc_QualityReportBillController : ApiController
|
{
|
public DBUtility.ClsPub.Enum_BillStatus BillStatus;
|
public DAL.ClsSc_QualityReportBill BillOld = new DAL.ClsSc_QualityReportBill();
|
public DAL.ClsSc_QualityReportBill BillNew0 = new DAL.ClsSc_QualityReportBill();
|
private json objJsonResult = new json();
|
private json objJsonResultReturn = new json();
|
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
|
Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
|
DataSet ds;
|
|
#region 返回生产质量汇报单列表
|
[Route("Sc_QualityReportBill/list")]
|
[HttpGet]
|
public object list(string sWhere)
|
{
|
try
|
{
|
if (sWhere == null || sWhere.Equals(""))
|
{
|
ds = oCN.RunProcReturn("select * from h_v_Sc_QualityReportBillListDetail " + sWhere, "h_v_Sc_QualityReportBillListDetail");
|
}
|
else
|
{
|
string sql1 = "select * from h_v_Sc_QualityReportBillListDetail where 1 = 1 ";
|
string sql = sql1 + sWhere;
|
ds = oCN.RunProcReturn(sql, "h_v_Sc_QualityReportBillListDetail");
|
}
|
if (ds == null || ds.Tables[0].Rows.Count == 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "false!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "Sucess!";
|
objJsonResult.data = ds.Tables[0];
|
return objJsonResult;
|
}
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 质量汇报单根据源单类型获取信息-源单为生产状态临时表(3722)
|
[Route("Sc_QualityReportBill/get_ICMOBillStatus_Tmp")]
|
[HttpGet]
|
public object get_ICMOBillStatus_Tmp(int HInterID, int HEntryID, string HBillType)
|
{
|
try
|
{
|
if (HInterID == 0 || HBillType.Equals(""))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "参数不全,获取源单信息失败!HInterID:" + HInterID + ";HEntryID:" + HEntryID + ";HBillType:" + HBillType + ";";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
if (HBillType == "3772")
|
{
|
ds = oCN.RunProcReturn
|
("select a.HInterID,a.HBillType,a.HICMOBillNo,a.HICMOInterID,a.HMaterID" +
|
",m.HNumber HMaterNumber,m.HName HMaterName,m.HModel HMaterModel,a.HICMOEntryID" +
|
",a.HSourceBillNo,a.HSourceInterID,a.HSourceEntryID,a.HDatePlanQty " +
|
" from Sc_ICMOBillStatus_Tmp a " +
|
" left join Gy_Material m on a.HMaterID=m.HItemID " +
|
" Where a.HInterID=" + HInterID + " and a.HBillType=" + HBillType, "Sc_ICMOBillStatus_Tmp");
|
}
|
else {
|
ds = oCN.RunProcReturn
|
("select a.HInterID,a.HBillType,a.HICMOBillNo,a.HICMOInterID,a.HMaterID" +
|
",m.HNumber HMaterNumber,m.HName HMaterName,m.HModel HMaterModel,a.HICMOEntryID " +
|
" from Sc_ICMOBillStatus_Tmp a " +
|
" left join Gy_Material m on a.HMaterID=m.HItemID " +
|
" Where a.HInterID=" + HInterID + " and a.HBillType=" + HBillType, "Sc_ICMOBillStatus_Tmp");
|
}
|
|
}
|
if (ds == null || ds.Tables[0].Rows.Count == 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "查询数据异常,请与管理员联系!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "返回记录成功!";
|
objJsonResult.data = ds.Tables[0];
|
return objJsonResult;
|
}
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "查询数据异常,请与管理员联系!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 质量汇报单扫不良条码保存信息
|
[Route("Sc_QualityReportBill/set_SaveBarCode")]
|
[HttpPost]
|
public object set_SaveBarCode([FromBody] JObject oMain)
|
{
|
var msg1 = oMain["oMain"].ToString();
|
//保存单据
|
return objJsonResult = AddBillTmp(msg1);
|
}
|
|
public json AddBillTmp(string msg1)
|
{
|
string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
|
string msg = sArray[0].ToString();
|
string OperationType = sArray[1].ToString().Trim();
|
bool bResult = false;
|
try
|
{
|
msg = "[" + msg.ToString() + "]";
|
List<Sc_ICMOBillQualityStatus_Tmp> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Sc_ICMOBillQualityStatus_Tmp>>(msg);
|
//判断会计期是否合理
|
string s = "";
|
int sYear = 0;
|
int sPeriod = 0;
|
DateTime HDate = mainList[0].HMakeDate;
|
if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(HDate, ref sYear, ref sPeriod, ref s) == false)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = s;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
//保存完毕后处理
|
if (OperationType.Equals("1") || OperationType.Equals("2"))
|
{
|
//是否保存
|
bResult = AddBillTmpSQL(mainList, ref ClsPub.sExeReturnInfo);
|
}
|
else if (OperationType.Equals("3"))
|
{
|
//bResult = BillNew.ModifyBill(BillNew.omodel.HInterID, ref ClsPub.sExeReturnInfo);
|
}
|
else
|
{
|
ClsPub.sExeReturnInfo = "无效的操作类型!";
|
bResult = false;
|
}
|
//是否保存
|
if (bResult == true)
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "扫码保存成功!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "保存失败!原因:" + ClsPub.sExeReturnInfo;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
//新增单据
|
public bool AddBillTmpSQL(List<Sc_ICMOBillQualityStatus_Tmp> mainList, ref string sReturn)
|
{
|
try
|
{
|
Sc_ICMOBillQualityStatus_Tmp BillNew = new Sc_ICMOBillQualityStatus_Tmp();
|
//固定赋值=================================
|
BillNew.HInterID = mainList[0].HInterID;//递入type得到的单据ID
|
BillNew.HBillNo = mainList[0].HBillNo;
|
BillNew.HBillType = mainList[0].HBillType;
|
BillNew.HDate = mainList[0].HDate;
|
BillNew.HICMOBillNo = mainList[0].HICMOBillNo;
|
BillNew.HICMOInterID = mainList[0].HICMOInterID;
|
BillNew.HICMOEntryID = mainList[0].HICMOEntryID;
|
BillNew.HProcExchBillNo = mainList[0].HProcExchBillNo;
|
BillNew.HProcExchInterID = mainList[0].HProcExchInterID;
|
BillNew.HProcExchEntryID = mainList[0].HProcExchEntryID;
|
BillNew.HProcID = mainList[0].HProcID;
|
BillNew.HMaterID = mainList[0].HMaterID;
|
BillNew.HSourceID = mainList[0].HSourceID;
|
BillNew.HGroupID = mainList[0].HGroupID;
|
BillNew.HCheckManID = mainList[0].HCheckManID;
|
BillNew.HBadReasonID = mainList[0].HBadReasonID;
|
BillNew.HBarCode = mainList[0].HBarCode;
|
BillNew.HMaker = mainList[0].HMaker;
|
BillNew.HMakeDate = mainList[0].HMakeDate;
|
BillNew.HReportType = mainList[0].HReportType;
|
BillNew.HSourceBillNo = mainList[0].HICMOBillNo;
|
BillNew.HSourceInterID = mainList[0].HICMOInterID;
|
BillNew.HSourceBillType = mainList[0].HSourceBillType;
|
BillNew.HBadReasonHQty = mainList[0].HBadReasonHQty;
|
oCN.BeginTran();
|
//临时表
|
oCN.RunProc("Insert Into Sc_ICMOBillQualityStatus_Tmp " +
|
" (HInterID,HBillNo,HDate,HICMOBillNo,HICMOInterID" +
|
",HProcExchBillNo,HProcExchInterID,HProcExchEntryID,HProcID,HMaterID" +
|
",HSourceID,HGroupID,HCheckManID,HBadReasonID,HBarCode" +
|
",HMaker,HMakeDate,HBillType,HReportType,HSourceBillNo" +
|
",HSourceInterID,HSourceBillType,HICMOEntryID,HSourceEntryID,HBadReasonHQty" +
|
") " +
|
" values(" + BillNew.HInterID + ",'" + BillNew.HBillNo + "','" + BillNew.HDate + "','" + BillNew.HICMOBillNo + "'," + BillNew.HICMOInterID +
|
",'" + BillNew.HProcExchBillNo + "'," + BillNew.HProcExchInterID + "," + BillNew.HProcExchEntryID + "," + BillNew.HProcID + "," + BillNew.HMaterID +
|
"," + BillNew.HSourceID + "," + BillNew.HGroupID + "," + BillNew.HCheckManID + "," + BillNew.HBadReasonID + ",'" + BillNew.HBarCode + "'" +
|
",'" + BillNew.HMaker + "','" + BillNew.HMakeDate + "','" + BillNew.HBillType + "','" + +BillNew.HReportType + "','" +BillNew.HSourceBillNo + "'" +
|
"," + BillNew.HSourceInterID + ",'" + BillNew.HSourceBillType + "'," + BillNew.HICMOEntryID + "," + BillNew.HICMOEntryID + "," + BillNew.HBadReasonHQty +
|
") ");
|
sReturn = "扫码成功!";
|
oCN.Commit();
|
return true;
|
}
|
catch (Exception e)
|
{
|
sReturn = e.Message;
|
oCN.RollBack();
|
throw (e);
|
}
|
}
|
#endregion
|
|
#region 质量汇报单列表删除按钮
|
[Route("DeltetSc_QualityReportBill")]
|
[HttpGet]
|
public object DeltetSc_QualityReportBill(long HItemID)
|
{
|
DataSet ds;
|
DataSet ds1;
|
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 (HItemID == 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "HItemID为空!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
oCN.BeginTran();//开始事务
|
ds = oCN.RunProcReturn("select * from Sc_QualityReportBillMain where hmainid=" + HItemID, "Sc_QualityReportBillMain");
|
ds1 = oCN.RunProcReturn("select * from Sc_QualityReportBillSub where hmainid=" + HItemID, "Sc_QualityReportBillSub");
|
if (ds == null || ds.Tables[0].Rows.Count == 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "没有数据,无法删除!";
|
objJsonResult.data = null;
|
return objJsonResult; ;
|
}
|
//var HStopflag = Convert.ToBoolean(ds.Tables[0].Rows[0]["HStopflag"]);
|
//if (HStopflag)
|
//{
|
// oCN.RollBack();//回滚事务
|
// objJsonResult.code = "0";
|
// objJsonResult.count = 0;
|
// objJsonResult.Message = "数据已删除无法再次删除!";
|
// objJsonResult.data = null;
|
// return objJsonResult;
|
//}
|
//ds1 = oCN.RunProcReturn("Select HItemID from Sc_QualityReportBill Where HParentID='" + HItemID + "'", "Sc_QualityReportBill");
|
//if (ds1.Tables[0].Rows.Count != 0)
|
//{
|
// objJsonResult.code = "0";
|
// objJsonResult.count = 0;
|
// objJsonResult.Message = "此项目存在子项目,不能删除!";
|
// objJsonResult.data = null;
|
// return objJsonResult;
|
//}
|
string HUseFlag = Convert.ToString(ds.Tables[0].Rows[0]["HUseFlag"]);
|
if (HUseFlag == "已使用")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "此项目已使用,不能删除!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
oCN.RunProc("delete from Sc_QualityReportBillMain where hmainid=" + HItemID);
|
oCN.RunProc("delete from Sc_QualityReportBillSub where hmainid=" + HItemID);
|
oCN.Commit();//提交事务
|
objJsonResult.code = "0";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "* 数据删除成功!";
|
objJsonResult.data = null;
|
return objJsonResult; ;
|
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "删除失败!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 质量汇报单扫不良条码获取不良原因id
|
[Route("Sc_QualityReportBill/get_HBadReasonID")]
|
[HttpGet]
|
public object get_HBadReasonID(string HBadReasonNumber)
|
{
|
try
|
{
|
ds = oCN.RunProcReturn("Select HItemID,HNumber from Gy_BadReason where HStopflag=0 and HNumber='" + HBadReasonNumber + "'", "Gy_BadReason");
|
if (ds == null || ds.Tables[0].Rows.Count == 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "不良条码不存在或已被禁用!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "Sucess!";
|
objJsonResult.data = ds.Tables[0];
|
return objJsonResult;
|
}
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 审核
|
public object set_CheckBill(long HInterID,string HChecker, ref string sReturn)
|
{
|
SQLHelper.ClsCN oCN1 = new SQLHelper.ClsCN();
|
try
|
{
|
oCN1.BeginTran();
|
//审核权限
|
if (!DBUtility.ClsPub.Security_Log("Sc_QualityReportBill_Check", 1, false, HChecker))
|
{
|
oCN1.RollBack();
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "您没有权限,请与管理员联系!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
//
|
if (HInterID == 0)
|
{
|
oCN1.RollBack();
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据ID为0!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
DAL.ClsSc_QualityReportBill oBill = new DAL.ClsSc_QualityReportBill();
|
//查看是否已审核,关闭,作废
|
if (oBill.ShowBill(HInterID, ref DBUtility.ClsPub.sExeReturnInfo))
|
{
|
if (oBill.omodel.HChecker.Trim() != "")
|
{
|
oCN1.RollBack();
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据已审核!不能再次审核!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
if (oBill.omodel.HCloseMan.Trim() != "")
|
{
|
oCN1.RollBack();
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据已关闭!不能再次审核!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
if (oBill.omodel.HDeleteMan.Trim() != "")
|
{
|
oCN1.RollBack();
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据已作废!不能再次审核!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
else
|
{
|
oCN1.RollBack();
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据不存在!原因:" + DBUtility.ClsPub.sExeReturnInfo;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
//审核
|
if (CheckBill(HInterID, HChecker, ref DBUtility.ClsPub.sExeReturnInfo) == true)
|
{
|
oCN1.Commit();
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "审核成功!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
oCN1.RollBack();
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "审核失败!原因:" + DBUtility.ClsPub.sExeReturnInfo;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
catch (Exception e)
|
{
|
oCN1.RollBack();
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "审核失败!原因:" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
|
//审核SQL
|
public bool CheckBill(Int64 HInterID,string HChecker, ref string sReturn)
|
{
|
|
try
|
{
|
oCN.RunProc(" Update Sc_QualityReportBillMain set HChecker='" + HChecker + "',HCheckDate=GETDATE() Where HInterID=" + HInterID.ToString());
|
sReturn = "";
|
return true;
|
}
|
catch (Exception e)
|
{
|
sReturn = e.Message;
|
throw (e);
|
}
|
}
|
#endregion
|
|
#region 获取扫码扫描记录
|
[Route("Sc_QualityReportBill/get_BarCodeDetail")]
|
[HttpGet]
|
public object get_BarCodeDetail(long HInterID)
|
{
|
try
|
{
|
ds = oCN.RunProcReturn(
|
"Select a.HItemID,a.HInterID,b.HNumber HBadReasonNumber,b.HName HBadReasonHName" +
|
",c.HName HCheckMan,d.HName HGroupName,e.HName HSourceName " +
|
" from Sc_ICMOBillQualityStatus_Tmp a " +
|
" left join Gy_BadReason b on a.HBadReasonID = b.HItemID " +
|
" left join Gy_Employee c on a.HCheckManID = c.HItemID " +
|
" left join Gy_Group d on a.HGroupID = d.HItemID " +
|
" left join Gy_Source e on a.HSourceID = e.HItemID " +
|
" where HInterID=" + HInterID, "Sc_ICMOBillQualityStatus_Tmp"
|
);
|
if (ds == null || ds.Tables[0].Rows.Count == 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "false!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "Sucess!";
|
objJsonResult.data = ds.Tables[0];
|
return objJsonResult;
|
}
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 获取扫码汇总记录
|
[Route("Sc_QualityReportBill/get_BarCodeDetailSum")]
|
[HttpGet]
|
public object get_BarCodeDetailSum(long HInterID)
|
{
|
try
|
{
|
ds = oCN.RunProcReturn(
|
"Select count(*) HQty,a.HInterID,b.HNumber HBadReasonNumber,b.HName HBadReasonHName,c.HName HCheckMan" +
|
",d.HName HGroupName,e.HName HSourceName " +
|
" from Sc_ICMOBillQualityStatus_Tmp a " +
|
" left join Gy_BadReason b on a.HBadReasonID = b.HItemID " +
|
" left join Gy_Employee c on a.HCheckManID = c.HItemID " +
|
" left join Gy_Group d on a.HGroupID = d.HItemID " +
|
" left join Gy_Source e on a.HSourceID = e.HItemID " +
|
" where a.HInterID=" + HInterID +
|
" group by a.HInterID,a.HBadReasonID,a.HCheckManID,a.HGroupID,a.HSourceID" +
|
" ,b.HNumber,b.HName,c.HName,d.HName,e.HName", "Sc_ICMOBillQualityStatus_Tmp"
|
);
|
if (ds == null || ds.Tables[0].Rows.Count == 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "false!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "Sucess!";
|
objJsonResult.data = ds.Tables[0];
|
return objJsonResult;
|
}
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 删除扫描记录行
|
[Route("Sc_QualityReportBill/del_BarCodeDetail")]
|
[HttpGet]
|
public object del_BarCodeDetail(long HItemID)
|
{
|
try
|
{
|
oCN.RunProc("delete from Sc_ICMOBillQualityStatus_Tmp where HItemID=" + HItemID, ref DBUtility.ClsPub.sExeReturnInfo);
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "删除成功!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 提交保存,存主子表及明细表
|
[Route("Sc_QualityReportBill/set_SaveBill")]
|
[HttpGet]
|
public object set_SaveBill(long HInterID,string HBillNo, string HChecker)
|
{
|
try
|
{
|
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
|
bool bResult2 = false;
|
oCN.BeginTran();
|
//保存前控制=========================================
|
ds = oCN.RunProcReturn("exec h_p_Sc_QualityReportBill_BeforeSaveCtrl " + HInterID+",'"+ HBillNo + "','',1", "h_p_Sc_QualityReportBill_BeforeSaveCtrl");
|
|
if (ds == null || ds.Tables[0].Rows.Count == 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "保存前判断失败!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
//=========================================================
|
//保存 批量保存先看子表是否有数据,有数据就进 存入主表 明细表 没有就存储主子明细表
|
string sql = "select * from Sc_QualityReportBillSub where HInterID = '" + HInterID + "'";
|
ds = oCN.RunProcReturn(sql, "Sc_QualityReportBillSub");
|
if (ds.Tables[0].Rows.Count>0)
|
{
|
oCN.RunProc("exec h_p_save_Sc_QualityReportBillSum " + HInterID + "");
|
}
|
else
|
{
|
oCN.RunProc("exec h_p_save_Sc_QualityReportBill " + HInterID + "");
|
}
|
|
//判断是否允许保存,不允许则回滚
|
ds = oCN.RunProcReturn("exec h_p_JIT_ICMOBillQualityStatus_SaveCtrl", "h_p_JIT_ICMOBillQualityStatus_SaveCtrl");
|
if (ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "2")
|
{
|
oCN.RollBack();
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
//保存后控制=========================================
|
ds = oCN.RunProcReturn("exec h_p_Sc_QualityReportBill_AfterSaveCtrl " + HInterID + ",'" + HBillNo + "',1", "h_p_Sc_QualityReportBill_AfterSaveCtrl");
|
|
if (ds == null || ds.Tables[0].Rows.Count == 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "保存后判断失败!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
//=========================================================
|
oCN.Commit();
|
//获取自动审核参数
|
string sReturn = "";
|
if (oSystemParameter.ShowBill(ref sReturn) == true)
|
{
|
if (oSystemParameter.omodel.Sc_ICMOBillQualityStatus_AutoCheck == "Y") //系统参数 自动审核
|
{
|
//审核
|
objJsonResultReturn = (json)set_CheckBill(HInterID, HChecker, ref ClsPub.sExeReturnInfo);
|
if (objJsonResultReturn.code == "1")
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "单据存盘完毕!审核成功!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "单据存盘完毕!自动审核失败,原因:" + objJsonResultReturn.Message;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
else
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "单据存盘完毕!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "单据存盘完毕!获取自动审核参数失败!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
oCN.RollBack();
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 不良采集批量汇报 新增
|
[Route("Sc_QualityReportBill/SaveSc_QualityReportBillSub")]
|
[HttpPost]
|
public object SaveSc_QualityReportBillSub([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(); //子表1数据
|
string refSav = sArray[2].ToString(); //操作方式
|
string msg4 = sArray[3].ToString(); //用户
|
|
DBUtility.ClsPub.CurUserName = msg4;
|
ListModels oListModels = new ListModels();
|
try
|
{
|
DAL.ClsSc_QualityReportBill oBill = new DAL.ClsSc_QualityReportBill();
|
//表体数据
|
//按 },{来拆分数组 //去掉【和】
|
msg3 = msg3.Substring(1, msg3.Length - 2);
|
msg3 = msg3.Replace("\\", "");
|
msg3 = msg3.Replace("\n", ""); //\n
|
|
List<Model.ClsSc_QualityReportBillSub> ls = new List<Model.ClsSc_QualityReportBillSub>();
|
ls = oListModels.getObjectByJson_Sc_QualityReportBillSub(msg3);
|
int i = 0;
|
foreach (Model.ClsSc_QualityReportBillSub oSub in ls)
|
{
|
|
i++;
|
oSub.HMakeDate = DateTime.Now;
|
oSub.HEntryID = i;
|
string subSql = "Insert into Sc_QualityReportBillSub " +
|
" (HInterID,HEntryID,HBillNo_bak,HRemark" +
|
",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
|
",HMaterID,HUnitID,HQty,HResult,HEmpID,HSourceID,HBadReasonID,HBadReasonNumber,HGroupID" +
|
",HICMOInterID,HICMOEntryID,HICMOBillNo,HProcExchInterID,HProcExchEntryID,HProcExchBillNo" +
|
",HBarCode,HReportType" +
|
",HAddr,HMaker,HMakeDate" +
|
") values(" +
|
"" + oSub.HInterID.ToString() + "" +
|
"," + oSub.HEntryID.ToString() + "" +
|
",'" + oSub.HBillNo_bak + "'" +
|
",'" + oSub.HRemark + "'" +
|
"," + oSub.HSourceInterID.ToString() + "" +
|
"," + oSub.HSourceEntryID.ToString() + "" +
|
",'" + oSub.HSourceBillNo + "'" +
|
",'" + oSub.HSourceBillType + "'" +
|
"," + oSub.HRelationQty.ToString() + "" +
|
"," + oSub.HRelationMoney.ToString() +
|
|
"," + oSub.HMaterID.ToString() + "" +
|
"," + oSub.HUnitID.ToString() + "" +
|
",'" + oSub.HQty.ToString() +
|
"','" + oSub.HResult + "'" +
|
"," + oSub.HEmpID.ToString() + "" +
|
"," + oSub.HSourceID.ToString() + "" +
|
"," + oSub.HBadReasonID.ToString() + "" +
|
",'" + oSub.HBadReasonNumber.ToString() + "'" +
|
",'" + oSub.HGroupID.ToString() + "'" +
|
|
"," + oSub.HICMOInterID.ToString() + "" +
|
"," + oSub.HICMOEntryID.ToString() + "" +
|
",'" + oSub.HICMOBillNo + "'" +
|
"," + oSub.HProcExchInterID + "" +
|
"," + oSub.HProcExchEntryID + "" +
|
",'" + oSub.HProcExchBillNo + "'" +
|
",'" + oSub.HBadReasonNumber.ToString() + "'" +
|
|
",'" + 1 +
|
"','" + oSub.HAddr + "'" +
|
",'" + msg4 + "'" +
|
",'" + oSub.HMakeDate.ToShortDateString() + "'" +
|
") ";
|
oCN.RunProc(subSql);
|
|
}
|
objJsonResult.code = "0";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "保存成功!";
|
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 生产质量汇报单列表 查询
|
/// <summary>
|
/// 返回生产质量汇报单列表
|
///参数:string sql。
|
///返回值:object。
|
/// </summary>
|
[Route("Sc_QualityReportBill/getSc_QualityReportBill")]
|
[HttpGet]
|
public object getSc_QualityReportBill(string sWhere, string user)
|
{
|
try
|
{
|
List<object> columnNameList = new List<object>();
|
//查看权限
|
if (!DBUtility.ClsPub.Security_Log("Sc_QualityReportBill_Query", 1, false, user))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "无查看权限!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
if (sWhere == null || sWhere.Equals(""))
|
{
|
ds = oCN.RunProcReturn("select * from h_v_Sc_QualityReportBillList_Query order by 单据号 desc", "h_v_Sc_QualityReportBillList_Query");
|
}
|
else
|
{
|
string sql1 = "select * from h_v_Sc_QualityReportBillList_Query where 1 = 1 ";
|
string sql = sql1 + sWhere + " order by 单据号 desc";
|
ds = oCN.RunProcReturn(sql, "h_v_Sc_QualityReportBillList_Query");
|
}
|
|
//添加列名
|
foreach (DataColumn col in ds.Tables[0].Columns)
|
{
|
Type dataType = col.DataType;
|
string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
|
columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
|
}
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "Sucess!";
|
objJsonResult.data = ds.Tables[0];
|
objJsonResult.list = columnNameList;
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 生产质量汇报单保存 新增/编辑
|
[Route("Sc_QualityReportBill/SaveSc_QualityReportBill")]
|
[HttpPost]
|
public object SaveSc_QualityReportBill([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(); //子表1数据
|
string refSav = sArray[2].ToString(); //操作方式
|
string msg4 = sArray[3].ToString(); //用户
|
|
DBUtility.ClsPub.CurUserName = msg4;
|
|
string UserName = "";
|
string s = "";
|
ListModels oListModels = new ListModels();
|
try
|
{
|
//编辑权限
|
if (!DBUtility.ClsPub.Security_Log_second("Sc_QualityReportBill_Edit", 1, false, msg4))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "无保存权限!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
DAL.ClsSc_QualityReportBill oBill = new DAL.ClsSc_QualityReportBill();
|
List<Model.ClsSc_QualityReportBillMain> lsmain = new List<Model.ClsSc_QualityReportBillMain>();
|
msg2 = msg2.Replace("\\", "");
|
msg2 = msg2.Replace("\n", ""); //\n
|
lsmain = oListModels.getObjectByJson_Sc_QualityReportBillMain(msg2);
|
foreach (Model.ClsSc_QualityReportBillMain oItem in lsmain)
|
{
|
if (refSav == "Add")
|
{
|
//单据号是否重复
|
if (BillNew0.IsExistBillNo(ref ClsPub.sExeReturnInfo, oItem.HBillNo, BillStatus, BillOld.omodel.HInterID))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据号重复!不允许保存!";
|
objJsonResult.data = 1;
|
return objJsonResult;
|
}
|
}
|
if (refSav == "Update")
|
{
|
if (BillOld.ShowBill(oItem.HInterID, ref s) == false)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "此单据有误!";
|
objJsonResult.data = 1;
|
return objJsonResult;
|
}
|
//判断是否可编辑
|
if (BillOld.omodel.HChecker != "" && BillOld.omodel.HChecker != null)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "此单据已经被审核,不允许修改!";
|
objJsonResult.data = 1;
|
return objJsonResult;
|
}
|
if (BillOld.omodel.HBillStatus > 1)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "此单据处于不可编辑状态,不允许修改!";
|
objJsonResult.data = 1;
|
return objJsonResult;
|
}
|
if (!DBUtility.Xt_BaseBillFun.Fun_AllowEditBill(BillOld, ref s))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = s + ",不允许修改";
|
objJsonResult.data = 1;
|
return objJsonResult;
|
}
|
}
|
UserName = oItem.HMaker; //制单人
|
//oItem.HBillType = "2003";
|
//oItem.HBillSubType = "2003";
|
|
//oItem.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
|
//oItem.HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
|
//oItem.HMakeDate = DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd"));
|
|
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<Model.ClsSc_QualityReportBillSub> ls = new List<Model.ClsSc_QualityReportBillSub>();
|
ls = oListModels.getObjectByJson_Sc_QualityReportBillSub(msg3);
|
int i = 0;
|
foreach (Model.ClsSc_QualityReportBillSub oItemSub in ls)
|
{
|
i++;
|
oItemSub.HEntryID = i;
|
|
//oItemSub.HCloseMan = ""; //行关闭
|
oItemSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DateTime.Now);
|
oItemSub.HCloseType = false; //关闭类型
|
//oItemSub.HRemark = ""; //备注
|
|
//oItemSub.HSourceInterID = 0; // 源单主内码
|
//oItemSub.HSourceEntryID = 0; //源单子内码
|
//oItemSub.HSourceBillNo = ""; //源单单号
|
//oItemSub.HSourceBillType = ""; //源单类型
|
//oItemSub.HRelationQty = 0; //关联数量
|
//oItemSub.HRelationMoney = 0; //关联金额
|
oBill.DetailColl.Add(oItemSub);
|
|
}
|
|
|
|
//保存
|
//保存完毕后处理
|
bool bResult;
|
if (refSav == "Add")
|
{
|
// bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
|
bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
|
}
|
else if (refSav == "Update")
|
{
|
bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
|
}
|
else
|
{
|
bResult = false;
|
}
|
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("Sc_QualityReportBill/cx")]
|
[HttpGet]
|
public object cx(long HInterID)
|
{
|
try
|
{
|
ds = oCN.RunProcReturn("select * from h_v_Sc_QualityReportBillList_Edit where hmainid=" + HInterID, "h_v_Sc_QualityReportBillList_Edit");
|
if (ds == null || ds.Tables[0].Rows.Count == 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "false!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "Sucess!";
|
objJsonResult.data = ds.Tables[0];
|
return objJsonResult;
|
}
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 生产质量汇报单 删除
|
[Route("Sc_QualityReportBill/DropSc_QualityReportBill")]
|
[HttpGet]
|
public object dropSc_QualityReportBill(string HInterID, string user)
|
{
|
try
|
{
|
string s = "";
|
|
//查看权限
|
if (!DBUtility.ClsPub.Security_Log("Sc_QualityReportBill_Drop", 1, false, user))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "无删除权限!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
if (HInterID == null || HInterID.Equals(""))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "HInterID不能为空!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
if (BillOld.ShowBill(long.Parse(HInterID), ref s) == false)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "此单据有误!";
|
objJsonResult.data = 1;
|
return objJsonResult;
|
}
|
//判断是否可编辑
|
if (BillOld.omodel.HChecker != "" && BillOld.omodel.HChecker != null)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "此单据已经被审核,不允许删除!";
|
objJsonResult.data = 1;
|
return objJsonResult;
|
}
|
|
//删除前控制=========================================
|
string sql1 = "exec h_p_Sc_QualityReportBill_BeforeDelCtrl " + BillOld.omodel.HInterID + ",'" + BillOld.omodel.HBillNo + "','" + user + "'";
|
ds = oCN.RunProcReturn(sql1, "h_p_Sc_QualityReportBill_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;
|
}
|
//==================================================================================
|
|
oCN.BeginTran();
|
|
oCN.RunProc("delete from Sc_QualityReportBillMain where HInterID = " + HInterID);
|
oCN.RunProc("delete from Sc_QualityReportBillSub where HInterID='" + HInterID + "'");
|
|
//删除后控制==================================================================================
|
string sql2 = "exec h_p_Sc_QualityReportBill_AfterDelCtrl " + BillOld.omodel.HInterID + ",'" + BillOld.omodel.HBillNo + "','" + user + "'";
|
ds = oCN.RunProcReturn(sql2, "h_p_Sc_QualityReportBill_AfterDelCtrl");
|
if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
|
{
|
s = "删除后判断失败,请与网络管理人员联系";
|
objJsonResult.code = "0";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "删除失败!原因:" + s;
|
objJsonResult.data = null;
|
oCN.RollBack();
|
return objJsonResult;
|
}
|
if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
|
{
|
s = ds.Tables[0].Rows[0]["HRemark"].ToString();
|
objJsonResult.code = "0";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "删除失败!原因:" + s;
|
objJsonResult.data = null;
|
oCN.RollBack();
|
return objJsonResult;
|
}
|
//==============================================================================================
|
|
|
oCN.Commit();
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "您已删除单据号为" + BillOld.omodel.HBillNo + "的生产质量汇报单!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
oCN.RollBack();
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 生产质量汇报单 审核/反审核
|
/// <summary>
|
/// </summary>
|
/// <param name="HInterID">单据ID</param>
|
/// <param name="IsAudit">审核(0),反审核(1)</param>
|
/// <param name="CurUserName">审核人</param>
|
/// <returns></returns>
|
[Route("Sc_QualityReportBill/AuditSc_QualityReportBill")]
|
[HttpGet]
|
public object AuditSc_QualityReportBill(int HInterID, int IsAudit, string CurUserName)
|
{
|
string ModRightNameCheck = "Sc_QualityReportBill_Check";
|
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.ClsSc_QualityReportBill oBill = new DAL.ClsSc_QualityReportBill(); //实例化单据操作类,用于进行相关操作
|
|
//针对需要进行的操作,检验当前单据的状态是否支持需要进行的操作
|
if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) //根据HInterID获取该单据的数据
|
{
|
if (oBill.omodel.HCloseMan.Trim() != "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据已关闭!不能再次审核!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
if (oBill.omodel.HDeleteMan.Trim() != "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据已作废!不能再次审核!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
if (IsAudit == 0) //审核判断
|
{
|
if (oBill.omodel.HChecker.Trim() != "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据已审核!不能再次审核!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
if (IsAudit == 1) //反审核判断
|
{
|
if (oBill.omodel.HChecker.Trim() == "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据未审核!不需要反审核!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据不存在!原因:" + DBUtility.ClsPub.sExeReturnInfo;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
|
//进行需要进行的审核/反审核操作
|
if (IsAudit == 0) //审核提交
|
{
|
//审核前控制=========================================
|
string sql1 = "exec h_p_Sc_QualityReportBill_BeforeCheckCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'";
|
ds = oCN.RunProcReturn(sql1, "h_p_Sc_QualityReportBill_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;
|
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.CheckBill(oBill.omodel.HInterID, oBill.omodel.HBillNo, "h_p_Sc_QualityReportBill_AfterCheckCtrl", 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_Sc_QualityReportBill_BeforeUnCheckCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'";
|
ds = oCN.RunProcReturn(sql1, "h_p_Sc_QualityReportBill_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_Sc_QualityReportBill_AfterUnCheckCtrl", 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 生产质量汇报单 关闭/反关闭
|
/// <summary>
|
/// </summary>
|
/// <param name="HInterID">单据ID</param>
|
/// <param name="IsAudit">关闭(0),反关闭(1)</param>
|
/// <param name="CurUserName">关闭人</param>
|
/// <returns></returns>
|
[Route("Sc_QualityReportBill/CloseSc_QualityReportBill")]
|
[HttpGet]
|
public object CloseSc_QualityReportBill(int HInterID, int IsAudit, string CurUserName)
|
{
|
string ModRightNameCheck = "Sc_QualityReportBill_Close";
|
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.ClsSc_QualityReportBill oBill = new DAL.ClsSc_QualityReportBill(); //实例化单据操作类,用于进行相关操作
|
|
//针对需要进行的操作,检验当前单据的状态是否支持需要进行的操作
|
if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) //根据HInterID获取该单据的数据
|
{
|
if (oBill.omodel.HDeleteMan.Trim() != "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据已作废!不能进行关闭!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
if (oBill.omodel.HChecker.Trim() == "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据未审核!不能进行关闭!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
if (IsAudit == 0) //关闭判断
|
{
|
if (oBill.omodel.HCloseMan.Trim() != "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据已关闭!不能再次关闭!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
if (IsAudit == 1) //反关闭判断
|
{
|
if (oBill.omodel.HCloseMan.Trim() == "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据未关闭!不需要反关闭!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据不存在!原因:" + DBUtility.ClsPub.sExeReturnInfo;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
|
//进行需要进行的关闭/反关闭操作
|
if (IsAudit == 0) //关闭提交
|
{
|
//关闭提交
|
if (oBill.CloseBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "关闭成功";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "关闭失败!原因:" + DBUtility.ClsPub.sExeReturnInfo;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
if (IsAudit == 1) //反关闭提交
|
{
|
//反关闭提交
|
if (oBill.CancelClose(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "反关闭成功";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "反关闭失败!原因:" + DBUtility.ClsPub.sExeReturnInfo;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "关闭失败或者反关闭失败!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 生产质量汇报单 作废/反作废
|
/// <summary>
|
/// </summary>
|
/// <param name="HInterID">单据ID</param>
|
/// <param name="IsAudit">作废(0),反作废(1)</param>
|
/// <param name="CurUserName">作废人</param>
|
/// <returns></returns>
|
[Route("Sc_QualityReportBill/DeleteSc_QualityReportBill")]
|
[HttpGet]
|
public object DeleteSc_QualityReportBill(int HInterID, int IsAudit, string CurUserName)
|
{
|
string ModRightNameCheck = "Sc_QualityReportBill_Delete";
|
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.ClsSc_QualityReportBill oBill = new DAL.ClsSc_QualityReportBill(); //实例化单据操作类,用于进行相关操作
|
|
//针对需要进行的操作,检验当前单据的状态是否支持需要进行的操作
|
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) //作废提交
|
{
|
//作废提交
|
if (oBill.Cancelltion(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "作废成功";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "作废失败!原因:" + DBUtility.ClsPub.sExeReturnInfo;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
if (IsAudit == 1) //反关闭提交
|
{
|
//反关闭提交
|
if (oBill.AbandonCancelltion(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "反作废成功";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "反作废失败!原因:" + DBUtility.ClsPub.sExeReturnInfo;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "作废失败或者反作废失败!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 生产质量日汇报单列表 查询
|
public class ReportWorkDemandPlanBill
|
{
|
public string HNumber;
|
public string HName;
|
public DateTime HBeginDate;
|
public DateTime HEndDate;
|
}
|
[Route("Sc_QualityReportBill/getSc_QualityReportBillDay")]
|
[HttpGet]
|
public object getSc_QualityReportBillDay(string sWhere, string user)
|
{
|
try
|
{
|
List<object> columnNameList = new List<object>();
|
//查看权限
|
if (!DBUtility.ClsPub.Security_Log("Sc_QualityReportBill_Query", 1, false, user))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "无查看权限!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
ReportWorkDemandPlanBill Report = JsonConvert.DeserializeObject<ReportWorkDemandPlanBill>(sWhere);
|
ds = oCN.RunProcReturn($"exec h_p_Sc_StationOutBillMain '{Report.HBeginDate}','{Report.HEndDate}','{Report.HNumber}','{Report.HName}'", "h_p_Sc_StationOutBillMain");
|
|
//添加列名
|
foreach (DataColumn col in ds.Tables[0].Columns)
|
{
|
Type dataType = col.DataType;
|
string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
|
columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
|
}
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "Sucess!";
|
objJsonResult.data = ds.Tables[0];
|
objJsonResult.list = columnNameList;
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 生产质量月汇报单列表 查询
|
public class ReportWorkDemandPlanBill1
|
{
|
public string HYear;
|
public string HWorkCenter;
|
public string HName;
|
|
}
|
[Route("Sc_QualityReportBill/getSc_QualityReportBillMonth")]
|
[HttpGet]
|
public object getSc_QualityReportBillMonth(string sWhere, string user)
|
{
|
try
|
{
|
List<object> columnNameList = new List<object>();
|
//查看权限
|
if (!DBUtility.ClsPub.Security_Log("Sc_QualityReportBill_Query", 1, false, user))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "无查看权限!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
ReportWorkDemandPlanBill1 Report = JsonConvert.DeserializeObject<ReportWorkDemandPlanBill1>(sWhere);
|
ds = oCN.RunProcReturn($"exec h_p_Sc_StationOutBillMonth '{Report.HYear}','{Report.HWorkCenter}','{Report.HName}'", "h_p_Sc_StationOutBillMonth");
|
|
//添加列名
|
foreach (DataColumn col in ds.Tables[0].Columns)
|
{
|
Type dataType = col.DataType;
|
string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
|
columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
|
}
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "Sucess!";
|
objJsonResult.data = ds.Tables[0];
|
objJsonResult.list = columnNameList;
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
|
}
|
}
|