New file |
| | |
| | | using DBUtility; |
| | | using Model; |
| | | using Newtonsoft.Json; |
| | | using Newtonsoft.Json.Converters; |
| | | using Newtonsoft.Json.Linq; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Data; |
| | | using System.Linq; |
| | | using System.Net; |
| | | using System.Net.Http; |
| | | using System.Web.Http; |
| | | using WebAPI.Models; |
| | | |
| | | |
| | | namespace WebAPI.Controllers.SBGL.SBTC |
| | | { |
| | | public class Sb_EquipStockInCheckBillController : ApiController |
| | | { |
| | | private json objJsonResult = new json(); |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | DataSet ds; |
| | | |
| | | #region [设备入库检验验收单列表] |
| | | [Route("Sb_EquipStockInCheckBill/list")] |
| | | [HttpGet] |
| | | public object list(string sWhere, string user) |
| | | { |
| | | try |
| | | { |
| | | if (sWhere == null || sWhere.Equals("")) |
| | | { |
| | | ds = oCN.RunProcReturn("select * from h_v_Sb_EquipStockInCheckBillList order by hmainid asc", "h_v_Sb_EquipStockInCheckBillList"); |
| | | } |
| | | else |
| | | { |
| | | string sql1 = "select * from h_v_Sb_EquipStockInCheckBillList where 1 = 1 "; |
| | | string sql = sql1 + sWhere + " order by hmainid asc"; |
| | | ds = oCN.RunProcReturn(sql, "h_v_Sb_EquipStockInCheckBillList"); |
| | | } |
| | | |
| | | 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 [根据ID查找记录] |
| | | [Route("Sb_EquipStockInCheckBill/cx")] |
| | | [HttpGet] |
| | | public object cx(long HInterID) |
| | | { |
| | | try |
| | | { |
| | | |
| | | ds = oCN.RunProcReturn("select * from h_v_Sb_EquipStockInCheckBillList where hmainid =" + HInterID, "h_v_Sb_EquipStockInCheckBillList"); |
| | | 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("Sb_EquipStockInCheckBill/EquipStockInCheckBillEdit")] |
| | | [HttpPost] |
| | | public object EquipStockInCheckBillEdit([FromBody] JObject sMainSub) |
| | | { |
| | | try |
| | | { |
| | | 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 = "单据保存成功!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | oCN.RollBack(); |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "保存失败!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | 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(); //子表数据 |
| | | int OperationType = int.Parse(sArray[2].ToString()); // 数据类型 1添加 3修改 |
| | | string user = sArray[3].ToString(); |
| | | |
| | | try |
| | | { |
| | | msg2 = "[" + msg2.ToString() + "]"; |
| | | List<ClsSb_EquipStockInCheckBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsSb_EquipStockInCheckBillMain>>(msg2); |
| | | |
| | | long HInterID = mainList[0].HInterID;//递入type得到的单据ID |
| | | string HBillNo = mainList[0].HBillNo;//递入type得到的单据号 |
| | | long HBillStatus = 1;//单据状态 |
| | | DateTime HDate = mainList[0].HDate;//日期 |
| | | string HRemark = mainList[0].HRemark;//备注 |
| | | long HSupID = mainList[0].HSupID;//检测商 |
| | | long HEquipID = mainList[0].HEquipID;//设备 |
| | | long HFirstCheckEmp = mainList[0].HFirstCheckEmp;//检验员 |
| | | string HCheckerResult = mainList[0].HCheckerResult;//摘要 |
| | | string HMaker = user;//制单人 |
| | | |
| | | DateTime dt = DateTime.Now; |
| | | |
| | | |
| | | |
| | | //ds = oCN.RunProcReturn("select * from h_v_IF_POOrderBillList where hmainid=" + HInterID + " and 单据号='" + HBillNo + "'", "h_v_IF_POOrderBillList"); |
| | | |
| | | if ((OperationType == 1 || OperationType == 2))//新增 && ds.Tables[0].Rows.Count == 0 |
| | | { |
| | | //DataSet Ds; |
| | | //Int64 NewHInterID = 1; |
| | | //Ds = oCN.RunProcReturn("select MAX(HInterID)HInterID from Cg_POOrderBillMain", "Cg_POOrderBillMain"); |
| | | //if (Ds.Tables[0].Rows.Count != 0 && ClsPub.isLong(Ds.Tables[0].Rows[0]["HInterID"].ToString()) != 0) |
| | | //{ |
| | | // NewHInterID = ClsPub.isLong(Ds.Tables[0].Rows[0]["HInterID"].ToString()); |
| | | // NewHInterID += 1; |
| | | //} |
| | | //主表 |
| | | oCN.RunProc(@"Insert Into Sb_EquipStockInCheckBillMain |
| | | (HInterID,HYear,HPeriod,HBillType,HBillSubType,HDate,HBillNo,HBillStatus |
| | | ,HRemark,HBackRemark,HMaker,HMakeDate,HMainSourceBillType,HMainSourceInterID |
| | | ,HMainSourceEntryID,HMainSourceBillNo,HPrintQty,HSupID,HEquipID,HFirstCheckEmp,HCheckerResult) |
| | | values(" + HInterID + "," + DateTime.Now.Year + "," + DateTime.Now.Month + ",'" + 3914 + "','" + |
| | | mainList[0].HBillSubType + "','" + HDate + "','" + HBillNo + "','" + HBillStatus + "','" + mainList[0].HRemark + |
| | | "','" + mainList[0].HBackRemark + "','" + mainList[0].HMaker + "','" + dt + "','" + mainList[0].HMainSourceBillType + "'," + mainList[0].HMainSourceInterID + |
| | | "," + mainList[0].HMainSourceEntryID + ",'" + mainList[0].HMainSourceBillNo + "'," + mainList[0].HPrintQty + "," + mainList[0].HSupID + ",'" + HEquipID + "'," + HFirstCheckEmp + ",'" + mainList[0].HCheckerResult + "'" + ")"); |
| | | } |
| | | else if (OperationType == 3)//|| ds.Tables[0].Rows.Count != 0 |
| | | { //修改 |
| | | oCN.RunProc("update Sb_EquipStockInCheckBillMain set " + |
| | | "HRemark='" + HRemark + "', HChecker='" + HMaker + "', HCheckDate=getdate()" + ",HCheckerResult='" + HCheckerResult + |
| | | "',HSupID=" + HSupID + ",HEquipID=" + HEquipID + ",HFirstCheckEmp=" + HFirstCheckEmp + " where HInterID=" + HInterID); |
| | | |
| | | //删除子表 |
| | | oCN.RunProc("delete from Sb_EquipStockInCheckBillSub where HInterID='" + HInterID + "'"); |
| | | } |
| | | //保存子表 |
| | | objJsonResult = AddBillSub(msg3, HInterID, OperationType, HBillNo); |
| | | |
| | | 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, int OperationType, string HBillNo) |
| | | { |
| | | List<ClsSb_EquipStockInCheckBillSub> DetailColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsSb_EquipStockInCheckBillSub>>(msg3); |
| | | |
| | | |
| | | |
| | | int i = 0; |
| | | foreach (ClsSb_EquipStockInCheckBillSub oSub in DetailColl) |
| | | { |
| | | i++; |
| | | |
| | | DataSet Cs; |
| | | Int64 NewHEntryID = 1; |
| | | Cs = oCN.RunProcReturn("select MAX(HEntryID)HEntryID from Sb_EquipStockInCheckBillSub", "Sb_EquipStockInCheckBillSub"); |
| | | if (Cs.Tables[0].Rows.Count != 0 && ClsPub.isLong(Cs.Tables[0].Rows[0]["HEntryID"].ToString()) != 0) |
| | | { |
| | | NewHEntryID = ClsPub.isLong(Cs.Tables[0].Rows[0]["HEntryID"].ToString()); |
| | | NewHEntryID += 1; |
| | | } |
| | | |
| | | oCN.RunProc($@"Insert into Sb_EquipStockInCheckBillSub |
| | | (HInterID,HEntryID,HBillNo_bak,HRemark,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty |
| | | ,HRelationMoney,HQCCheckClassID,HQCCheckItemID,HQCStd,HQCRelValue,HResult,HProcCheckEmp,HProcCheckTime) |
| | | values({HInterID},{NewHEntryID},'{ HBillNo }','{oSub.HRemark}',{oSub.HSourceInterID} |
| | | ,{oSub.HSourceEntryID},'{oSub.HSourceBillNo}','{oSub.HSourceBillType}',{oSub.HRelationQty},{oSub.HRelationMoney},{oSub.HQCCheckClassID},{oSub.HQCCheckItemID},'{oSub.HQCStd}','{oSub.HQCRelValue}','{oSub.HResult}',{oSub.HProcCheckEmp},'{oSub.HProcCheckTime}')"); |
| | | } |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = null; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | #endregion |
| | | |
| | | #region [删除] |
| | | [Route("Sb_EquipStockInCheckBill/Delete")] |
| | | [HttpGet] |
| | | public object Delete(string HInterID, string user) |
| | | { |
| | | try |
| | | { |
| | | oCN.BeginTran(); |
| | | oCN.RunProc("Delete From Sb_EquipStockInCheckBillMain where HInterID = " + HInterID); |
| | | oCN.RunProc("Delete From Sb_EquipStockInCheckBillSub 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; |
| | | } |
| | | } |
| | | #endregion |
| | | } |
| | | } |