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
|
{
|
public class MES_ProcessCheckBill_PDAController : ApiController
|
{
|
public DBUtility.ClsPub.Enum_BillStatus BillStatus;
|
Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
|
private json objJsonResult = new json();
|
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
|
DataSet ds;
|
|
#region 工序检验PDA新增保存
|
[Route("MES_ProcessCheckBill_PDA/ProcessCheckAddBill")]
|
[HttpPost]
|
public object ProcessCheckAddBill([FromBody] JObject oMain)
|
{
|
var _value = oMain["oMain"].ToString();
|
string msg1 = _value.ToString();
|
string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
|
try
|
{
|
//反序列化
|
string msg2 = "[" + sArray[0].ToString() + "]";
|
string user = sArray[1].ToString();//用户名
|
string OperationType = sArray[2].ToString();//类型
|
|
//判断是否有编辑权限
|
if (!DBUtility.ClsPub.Security_Log("QC_ProcessCheckBill_Edit", 1, false, user))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "无编辑权限!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
List<Model.ClsQC_ProcessCheckBillMain> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_ProcessCheckBillMain>>(msg2);
|
string BillType = "7507";
|
string HBillSubType = "7507";
|
long HInterID = list[0].HInterID;//递入type得到的单据ID
|
string HBillNo = list[0].HBillNo;//递入type得到的单据号
|
int HBillStatus = 1;
|
string HMaker = user;//制单人
|
int HYear = DateTime.Now.Year;
|
double HPeriod = DateTime.Now.Month;
|
long HSourceID = list[0].HSourceID;//生产资源
|
long HICMOInterID = list[0].HICMOInterID;//任务单ID
|
string HICMOBillNo = list[0].HICMOBillNo;//任务单
|
string HProcExchBillNo = list[0].HProcExchBillNo;//指引卡
|
long HMaterID = list[0].HMaterID;//产品ID
|
//long HUnitID = list[0].HUnitID;//计量单位
|
long HProcID = list[0].HProcID;//工序ID
|
long HPRDORGID = list[0].HPRDORGID;//组织ID
|
bool HLastResult = list[0].HLastResult;//试样结论
|
|
//单据完整性判断
|
if (HProcExchBillNo == "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "流转卡没有选择!请扫描条形码或输入条形码后回车";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
var num = 0;
|
|
oCN.BeginTran();
|
if (OperationType == "1")
|
{
|
num = 1;
|
|
ds = oCN.RunProcReturn("select * from QC_ProcessCheckBillMain where HBillNo='" + HBillNo + "'", "QC_ProcessCheckBillMain");
|
if (ds.Tables[0].Rows.Count == 1)
|
{
|
oCN.RollBack();
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据号重复!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
oCN.RunProc("Insert Into QC_ProcessCheckBillMain " +
|
"(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" +
|
",HYear,HPeriod,HMaterID,HSourceID,HICMOInterID,HICMOBillNo,HProcExchBillNo" +
|
",HPRDORGID,HLastResult)" +
|
" values('" + BillType + "','" + HBillSubType + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate()" +
|
"," + HYear + "," + HPeriod + ",'" + HMaterID + "','" + HSourceID + "'," + HICMOInterID + ",'" + HICMOBillNo + "','" + HProcExchBillNo + "'" +
|
"," + HPRDORGID + ",'" + HLastResult + "') ");
|
}
|
else
|
{
|
oCN.RollBack();
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "操作类型无效!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
oCN.Commit();
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "新增单据成功!";
|
objJsonResult.data = ds.Tables[0];
|
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 工序检验_PDA 查询列表
|
[Route("ProcessCheck/ProcessCheckList")]
|
[HttpGet]
|
public object ProcessCheckList(string sWhere, string user)
|
{
|
try
|
{
|
|
//判断是否有编辑权限
|
if (!DBUtility.ClsPub.Security_Log("QC_ProcessCheckBill_Query", 1, false, user))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "无查询权限!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
string sql = "select * from h_v_QC_ProcessCheckBillMainList where 1=1 " + sWhere + " order by 日期 ";
|
|
ds = oCN.RunProcReturn(sql, "h_v_QC_ProcessCheckBillMainList");
|
|
DataTable dt = ds.Tables[0];
|
|
//获取列名
|
List<object> columnNameList = new List<object>();
|
//添加列名
|
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.list = columnNameList;
|
objJsonResult.data = dt;
|
return objJsonResult;
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "Exception!" + e.ToString();
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 工序检验_PDA 删除功能
|
[Route("ProcessCheck/DelProcessCheckBill")]
|
[HttpGet]
|
public object DelProcessCheckBill(Int64 lngBillKey, string user)
|
{
|
DataSet ds;
|
string ModRightNameCheck = "QC_ProcessCheckBill_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 (lngBillKey == 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据id为空!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
|
oCN.BeginTran();//开始事务
|
ds = oCN.RunProcReturn("select * from QC_ProcessCheckBillMain where HInterID=" + lngBillKey, "QC_ProcessCheckBillMain");
|
if (ds == null || ds.Tables[0].Rows.Count == 0)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "没有数据,无法删除!";
|
objJsonResult.data = null;
|
return objJsonResult; ;
|
}
|
string HChecker = Convert.ToString(ds.Tables[0].Rows[0]["HChecker"]);
|
if (HChecker != "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据已经审核,不能删除!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
oCN.RunProc("delete from QC_ProcessCheckBillMain where HInterID=" + lngBillKey);
|
|
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
|
|
}
|
}
|