New file |
| | |
| | | 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 |
| | | public class QC_LastPieceCheckBillController : ApiController |
| | | { |
| | | public DBUtility.ClsPub.Enum_BillStatus BillStatus; |
| | | |
| | | private json objJsonResult = new json(); |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | DataSet ds; |
| | | SQLHelper.ClsCN oCN1 = new SQLHelper.ClsCN(); |
| | | DataSet ds1; |
| | | |
| | | |
| | | #region[编辑时获取表头数据] |
| | | [Route("QC_LastPieceCheckBill/QC_LastPieceCheckBillListCheckDetail")] |
| | | [HttpGet] |
| | | public ApiResult<DataSet> QC_LastPieceCheckBillListCheckDetail(string HID) |
| | | { |
| | | if (string.IsNullOrEmpty(HID)) |
| | | return new ApiResult<DataSet> { code = -1, msg = "ID不能为空" }; |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | |
| | | var dataSet = oCN.RunProcReturn("select top 1 * from h_v_QC_LastPieceCheckBillListDetail where hmainid= " + HID + " ", "h_v_QC_LastPieceCheckBillListDetail"); |
| | | if (dataSet == null || dataSet.Tables[0].Rows.Count == 0) |
| | | return new ApiResult<DataSet> { code = -1, msg = "不存在结算单号" }; |
| | | |
| | | return new ApiResult<DataSet> { code = 1, msg = "查询成功", data = dataSet }; |
| | | } |
| | | #endregion |
| | | |
| | | #region[编辑时获取表体数据] |
| | | [Route("QC_LastPieceCheckBill/QC_LastPieceCheckBillListProjectDetai")] |
| | | [HttpGet] |
| | | public object QC_LastPieceCheckBillListProjectDetai(string sqlWhere) |
| | | { |
| | | DataSet ds; |
| | | try |
| | | { |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | string sql1 = "SELECT 日期,单据号,备注,产品内码, 产品名称" + |
| | | ", 产品型号, 检验员代码, 检验员名称, 制单人, 制单日期" + |
| | | ", 审核人, 审核日期, 修改人, 修改日期, 关闭人, 关闭日期 FROM h_v_QC_LastPieceCheckBillListDetail where 1 = 1 "; |
| | | string sql = sql1 + sqlWhere; |
| | | ds = oCN.RunProcReturn(sql, "h_v_QC_LastPieceCheckBillListDetail"); |
| | | 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 |
| | | |
| | | /// <summary> |
| | | /// 新增单据-保存按钮 |
| | | /// 产品入库检验单列表 |
| | | ///参数:string sql。 |
| | | ///返回值:object。 |
| | | /// </summary> |
| | | [Route("QC_LastPieceCheckBill/AddBill")] |
| | | [HttpPost] |
| | | public object AddBill([FromBody] JObject sMainSub) |
| | | { |
| | | var _value = sMainSub["sMainSub"].ToString(); |
| | | string msg1 = _value.ToString(); |
| | | oCN.BeginTran(); |
| | | //保存主表 |
| | | objJsonResult = AddBillMain(msg1); |
| | | if (objJsonResult.code == "0") |
| | | { |
| | | oCN.RollBack(); |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = objJsonResult.Message; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | oCN.Commit(); |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "新增单据成功!"; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | public json AddBillMain(string msg1) |
| | | { |
| | | string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); |
| | | string msg2 = sArray[0].ToString(); |
| | | string msg3 = sArray[1].ToString(); |
| | | string user = sArray[2].ToString(); |
| | | try |
| | | { |
| | | //判断权限 |
| | | if (!DBUtility.ClsPub.Security_Log("QC_POStockInCheckBill_Edit", 1, false, user)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "无保存权限"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | msg2 = "[" + msg2.ToString() + "]"; |
| | | List<QC_LastPieceCheckBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<QC_LastPieceCheckBillMain>>(msg2); |
| | | string BillType = "7507"; |
| | | long HInterID = mainList[0].HInterID;//递入type得到的单据ID |
| | | string HBillNo = mainList[0].HBillNo;//递入type得到的单据号 |
| | | DateTime HDate = mainList[0].HDate;//日期 |
| | | int HYear = 2021; |
| | | double HPeriod = 1; |
| | | long HBillStatus = mainList[0].HBillStatus; |
| | | long HCheckItemNowID = mainList[0].HCheckItemNowID; |
| | | long HCkeckItemNextID = mainList[0].HCheckItemNextID; |
| | | long HCheckFlowID = mainList[0].HCheckFlowID; |
| | | string HRemark = mainList[0].HRemark;//备注 |
| | | string HBacker = mainList[0].HBacker; |
| | | DateTime HBackDate = mainList[0].HBackDate; |
| | | string HBackRemark = mainList[0].HBackRemark; |
| | | string HChecker = mainList[0].HChecker; |
| | | DateTime HCheckDate = mainList[0].HCheckDate; |
| | | string HMaker = mainList[0].HMaker; |
| | | DateTime HMakeDate = mainList[0].HMakeDate; |
| | | string HUpDater = mainList[0].HUpDater; |
| | | DateTime HUpDateDate = mainList[0].HUpDateDate; |
| | | string HCloseMan = mainList[0].HCloseMan; |
| | | DateTime HCloseDate = mainList[0].HCloseDate; |
| | | string HCloseType = mainList[0].HCloseType; |
| | | string HDeleteMan = mainList[0].HDeleteMan; |
| | | DateTime HDeleteDate = mainList[0].HDeleteDate; |
| | | string HMainSourceBillType = mainList[0].HMainSourceBillType; |
| | | long HMainSourceInterID = mainList[0].HMainSourceInterID; |
| | | long HMainSourceEntryID = mainList[0].HMainSourceEntryID; |
| | | string HMainSourceBillNo = mainList[0].HMainSourceBillNo; |
| | | double HPrintQty = mainList[0].HPrintQty; |
| | | long HICMOInterID = mainList[0].HICMOInterID; |
| | | string HICMOBillNo = mainList[0].HICMOBillNo; |
| | | Double HInStockQty = mainList[0].HInStockQty; |
| | | Double HCheckQty = mainList[0].HCheckQty; |
| | | Double HRightQty = mainList[0].HRightQTy; |
| | | Double HBadQty = mainList[0].HBadQty; |
| | | long HMaterID = mainList[0].HMaterID; |
| | | long HFirstCheckEmp = mainList[0].HFirstCheckEmp; |
| | | string HCheckerResult = mainList[0].HCheckerResult; |
| | | long HCheckDept = mainList[0].HCheckDept; |
| | | long HCheckDept2 = mainList[0].HCheckDept2; |
| | | string HCheckDeptResult = mainList[0].HCheckDeptResult; |
| | | string HCheckDeptResult2 = mainList[0].HCheckDeptResult2; |
| | | string HBarCode = mainList[0].HBarCode; |
| | | string HStoveBatchNo = mainList[0].HStoveBatchNo; |
| | | long HCusID = mainList[0].HCusID; |
| | | string HSortBillNo = mainList[0].HSortBillNo; |
| | | string HContrctBatchNo = mainList[0].HContrctBatchNo; |
| | | long HProdAreaID = mainList[0].HProdAreaID; |
| | | long HProdTypeID = mainList[0].HProdTypeID; |
| | | long HRoutingInterID = mainList[0].HRoutingInterID; |
| | | long HDrawingDireID = mainList[0].HDrawingDireID; |
| | | long HPackTypeID = mainList[0].HPackTypeID; |
| | | |
| | | //主表 |
| | | oCN.RunProc("Insert Into QC_LastPieceCheckBillMain " + |
| | | "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" + |
| | | ",HYear,HPeriod,HRemark" + |
| | | ",HICMOInterID,HICMOBillNo,HInStockQTy,HCheckQty,HRightQty" + |
| | | ",HBadQty,HMaterID,HFirstCheckEmp,HCheckerResult,HCheckDept" + |
| | | ",HCheckDeptResult,HCheckDept2,HCheckDeptResult2,HBarCode,HStoveBatchNo" + |
| | | ",HCusID,HSortBillNo,HContrctBatchNo,HProdAreaID,HProdTypeID" + |
| | | ",HRoutingInterID,HDrawingDireID,HPackTypeID" + |
| | | ") " + |
| | | " values('" + BillType + "','" + BillType + "'," + HInterID + ",'" + HBillNo + "','" + HBillStatus + "','" + HDate + "','" + HMaker + "','" + HDate + "'" + |
| | | "," + HYear + "," + HPeriod + ",'" + HRemark + "'" + |
| | | "," + 0 + ",'" + HICMOBillNo + "'," + HInStockQty + "," + HCheckQty + "," + HRightQty + |
| | | "," + HBadQty + "," + HMaterID + "," + HFirstCheckEmp + ",'" + HCheckerResult + "'," + HCheckDept + |
| | | ",'" + HCheckDeptResult + "'," + HCheckDept2 + ",'" + HCheckDeptResult2 + "','" + HBarCode + "','" + HStoveBatchNo + "'" + |
| | | "," + HCusID + ",'" + HSortBillNo + "','" + HContrctBatchNo + "'," + HProdAreaID + "," + HProdTypeID + |
| | | "," + HRoutingInterID + "," + HDrawingDireID + "," + HPackTypeID + |
| | | ") "); |
| | | |
| | | |
| | | //保存子表 |
| | | objJsonResult = AddBillSub(msg3, HInterID); |
| | | if (objJsonResult.code == "0") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = objJsonResult.Message; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = null; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "Exception!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | public json AddBillSub(string msg3, long HInterID) |
| | | { |
| | | List<QC_LastPieceCheckBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<QC_LastPieceCheckBillSub>>(msg3); |
| | | for (int i = 0; i < subList.ToArray().Length; i++) |
| | | { |
| | | long HSourceInterID = 0;//源单主内码 |
| | | long HSourceEntryID = 0;//源单子内码 |
| | | string HSourceBillNo = "";//源单单号 |
| | | string HSourceBillType = "";//源单类型 |
| | | double HRelationQty = 0;//关联数量 |
| | | double HRelationMoney = 0;//关联金额 |
| | | |
| | | |
| | | oCN.RunProc("Insert into QC_LastPieceCheckBillSub " + |
| | | "(HInterID,HEntryID,HCloseMan,HRemark,HSourceInterID,HSourceEntryID" + |
| | | ",HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" + |
| | | ",HQCCheckClassID,HQCCheckItemID,HQCStd,HResult,HQCRelValue" + |
| | | ",HProcCheckEmp" + |
| | | ") values(" |
| | | + HInterID + "," + i + ",'" + subList[i].HCloseMan + "','" + subList[i].HRemark + "'," + HSourceInterID + "," + HSourceEntryID + "" + |
| | | ",'" + HSourceBillNo + "','" + HSourceBillType + "'," + HRelationQty + "," + HRelationMoney + |
| | | "," + subList[i].HQCCheckClassID + "," + subList[i].HQCCheckItemID + ",'" + subList[i].HQCStd + "','" + subList[i].HResult + "','" + subList[i].HQCRelvalue + "'" + |
| | | "," + subList[i].HProCheckEmp + "" + |
| | | ") "); |
| | | } |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = null; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | /// <summary> |
| | | ///删除功能 |
| | | ///产品入库检验单 |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [Route("QC_LastPieceCheckBill/DeltetLastPieceCheckBill")] |
| | | [HttpGet] |
| | | public object DeltetLastPieceCheckBill(string HInterID,string user) |
| | | { |
| | | try |
| | | { |
| | | //查看权限 |
| | | if (!DBUtility.ClsPub.Security_Log("QC_POStockInCheckBill_Drop", 1, false, user)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "无删除权限!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | oCN.BeginTran(); |
| | | oCN.RunProc("Delete From QC_LastPieceCheckBillMain where HInterID = " + HInterID); |
| | | oCN.RunProc("Delete From QC_LastPieceCheckBillSub where HInterID = " + HInterID); |
| | | oCN.Commit(); |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "删除成功!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | oCN.RollBack(); |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "Exception!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | /// <summary> |
| | | /// 返回产品入库检验单列表 |
| | | ///参数:string sql。 |
| | | ///返回值:object。 |
| | | /// </summary> |
| | | [Route("QC_LastPieceCheckBill/GetLastPieceCheckBillList")] |
| | | [HttpGet] |
| | | public object GetLastPieceCheckBillList(string sWhere,string user) |
| | | { |
| | | try |
| | | { |
| | | //查看权限 |
| | | if (!DBUtility.ClsPub.Security_Log("QC_POStockInCheckBill_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_QC_LastPieceCheckBillListDetail order by hmainid desc ", "h_v_QC_LastPieceCheckBillListDetail"); |
| | | } |
| | | else |
| | | { |
| | | string sql1 = "select * from h_v_QC_LastPieceCheckBillListDetail where 1 = 1 "; |
| | | string sql = sql1 + sWhere+ " order by hmainid desc "; |
| | | ds = oCN.RunProcReturn(sql, "h_v_QC_LastPieceCheckBillListDetail"); |
| | | } |
| | | |
| | | //if (ds.Tables[0].Rows.Count != 0 || ds != null) |
| | | //{ |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "Sucess!"; |
| | | objJsonResult.data = ds.Tables[0]; |
| | | return objJsonResult; |
| | | //} |
| | | //else |
| | | //{ |
| | | //objJsonResult.code = "0"; |
| | | //objJsonResult.count = 0; |
| | | //objJsonResult.Message = "无数据"; |
| | | //objJsonResult.data = null; |
| | | //return objJsonResult; |
| | | //} |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "Exception!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | // |
| | | } |
| | | } |