|  |  | 
 |  |  | using Newtonsoft.Json.Linq; | 
 |  |  | using Newtonsoft.Json; | 
 |  |  | using Newtonsoft.Json.Linq; | 
 |  |  | using Pub_Class; | 
 |  |  | using System; | 
 |  |  | using System.Collections.Generic; | 
 |  |  | using System.Data; | 
 |  |  | using System.IO; | 
 |  |  | using System.Web; | 
 |  |  | using System.Web.Http; | 
 |  |  | using WebAPI.Models; | 
 |  |  |  | 
 |  |  | namespace WebAPI.Controllers | 
 |  |  | { | 
 |  |  |     public class Sb_EquipDotCheckBillController : ApiController | 
 |  |  | 
 |  |  |         public DBUtility.ClsPub.Enum_BillStatus BillStatus;//单据状态(新增,修改,浏览,更新单价,变更) | 
 |  |  |         SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); | 
 |  |  |         public DAL.ClsSb_EquipDotCheckBill BillNew = new DAL.ClsSb_EquipDotCheckBill();   //对应单据类 | 
 |  |  |         public DAL.ClsSb_EquipDotCheckBill BillOld = new DAL.ClsSb_EquipDotCheckBill();   //对应单据类 | 
 |  |  |         public DAL.ClsSb_EquipDotCheckBill BillOld = new DAL.ClsSb_EquipDotCheckBill();   //对应单据类                                             | 
 |  |  |         Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();   //获取系统参数 | 
 |  |  |         string fileip = System.Configuration.ConfigurationManager.AppSettings["FileIP"]; | 
 |  |  |  | 
 |  |  |         #region 设备点检记录表 | 
 |  |  |  | 
 |  |  | 
 |  |  |         /// <returns></returns> | 
 |  |  |         [Route("Sb_EquipDotCheckBill/GetEquipDotCheckBillList")] | 
 |  |  |         [HttpGet] | 
 |  |  |         public object GetEquipDotCheckBillList(string sWhere) | 
 |  |  |         public object GetEquipDotCheckBillList(string sWhere,string user) | 
 |  |  |         { | 
 |  |  |             try | 
 |  |  |             { | 
 |  |  |                 if (sWhere == null || sWhere.Equals("")) | 
 |  |  |                 { | 
 |  |  |                     ds = oCN.RunProcReturn("select * from h_v_Sb_EquipDotCheckBillList " + sWhere + " order by hmainid desc", "h_v_Sb_EquipDotCheckBillList"); | 
 |  |  |                 } | 
 |  |  |                 else | 
 |  |  |                 { | 
 |  |  |                     string sql1 = "select * from h_v_Sb_EquipDotCheckBillList where 1 = 1"; | 
 |  |  |                     string sql = sql1 + sWhere + " order by hmainid desc"; | 
 |  |  |                     ds = oCN.RunProcReturn(sql, "h_v_Sb_EquipDotCheckBillList"); | 
 |  |  |                 } | 
 |  |  |                 if (ds == null || ds.Tables[0].Rows.Count == 0) | 
 |  |  |                 List<object> columnNameList = new List<object>(); | 
 |  |  |                 if (!DBUtility.ClsPub.Security_Log("Sb_EquipDotCheckBillList", 1, false, user)) | 
 |  |  |                 { | 
 |  |  |                     objJsonResult.code = "0"; | 
 |  |  |                     objJsonResult.count = 0; | 
 |  |  |                     objJsonResult.Message = "没有你要找的记录!"; | 
 |  |  |                     objJsonResult.Message = "无查看权限!"; | 
 |  |  |                     objJsonResult.data = null; | 
 |  |  |                     return objJsonResult; | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 string sReturn = ""; | 
 |  |  |                 string HViewName = "h_v_Sb_EquipDotCheckBillList";//视图命名 | 
 |  |  |                 if (oSystemParameter.ShowBill(ref sReturn) == true) | 
 |  |  |                 { | 
 |  |  |                     if (oSystemParameter.omodel.WMS_CampanyName == "九菱") | 
 |  |  |                     { | 
 |  |  |                         HViewName = "h_v_Sb_EquipDotCheckBillMainList"; | 
 |  |  |                     } | 
 |  |  |                 } | 
 |  |  |                 else | 
 |  |  |                 { | 
 |  |  |                     objJsonResult.code = "1"; | 
 |  |  |                     objJsonResult.count = 1; | 
 |  |  |                     objJsonResult.Message = "返回记录成功!"; | 
 |  |  |                     objJsonResult.data = ds.Tables[0]; | 
 |  |  |                     objJsonResult.code = "0"; | 
 |  |  |                     objJsonResult.count = 0; | 
 |  |  |                     objJsonResult.Message = "单据读取失败!"; | 
 |  |  |                     objJsonResult.data = null; | 
 |  |  |                     return objJsonResult; | 
 |  |  |                 } | 
 |  |  |                 //ds = Sb_EquipDotCheckBillList_s(sWhere); | 
 |  |  |                 //objJsonResult.code = "1"; | 
 |  |  |                 //objJsonResult.count = 1; | 
 |  |  |                 //objJsonResult.Message = "返回记录成功!"; | 
 |  |  |                 //objJsonResult.data = ds.Tables[0]; | 
 |  |  |  | 
 |  |  |                 if (sWhere == null || sWhere.Equals("")) | 
 |  |  |                 { | 
 |  |  |                     ds = oCN.RunProcReturn("select * from " + HViewName + " " + sWhere + " order by hmainid desc", HViewName); | 
 |  |  |                 } | 
 |  |  |                 else | 
 |  |  |                 { | 
 |  |  |                     string sql1 = "select * from " + HViewName + " " + " where 1 = 1"; | 
 |  |  |                     string sql = sql1 + sWhere + " order by hmainid desc"; | 
 |  |  |                     ds = oCN.RunProcReturn(sql, HViewName); | 
 |  |  |                 } | 
 |  |  |                 //添加列名 | 
 |  |  |                 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列对象的列名 | 
 |  |  |                 } | 
 |  |  |                 //if (ds.Tables[0].Rows.Count != 0 || ds != null) | 
 |  |  |                 //{ | 
 |  |  |                 objJsonResult.code = "1"; | 
 |  |  |                 objJsonResult.count = 1; | 
 |  |  |                 objJsonResult.Message = "Sucess!"; | 
 |  |  |                 objJsonResult.data = ds.Tables[0]; | 
 |  |  |                 objJsonResult.list = columnNameList; | 
 |  |  |                 return objJsonResult; | 
 |  |  |                 //} | 
 |  |  |                 //else | 
 |  |  |                 //{ | 
 |  |  |                 //objJsonResult.code = "0"; | 
 |  |  |                 //objJsonResult.count = 0; | 
 |  |  |                 //objJsonResult.Message = "无数据"; | 
 |  |  |                 //objJsonResult.data = null; | 
 |  |  |                 //return objJsonResult; | 
 |  |  |                 //} | 
 |  |  |             } | 
 |  |  |             catch (Exception ex) | 
 |  |  |             { | 
 |  |  | 
 |  |  |             string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); | 
 |  |  |             string msg2 = sArray[0].ToString(); | 
 |  |  |             string msg3 = sArray[1].ToString(); | 
 |  |  |             string msg4 = sArray[2].ToString(); | 
 |  |  |  | 
 |  |  |  | 
 |  |  |             string UserName = ""; | 
 |  |  |             ListModels oListModels = new ListModels(); | 
 |  |  |             try | 
 |  |  |             { | 
 |  |  |                 if (!DBUtility.ClsPub.Security_Log("Sb_EquipDotCheckBill_Edit", 1, false, msg4)) | 
 |  |  |                 { | 
 |  |  |                     objJsonResult.code = "0"; | 
 |  |  |                     objJsonResult.count = 0; | 
 |  |  |                     objJsonResult.Message = "无保存权限!"; | 
 |  |  |                     objJsonResult.data = null; | 
 |  |  |                     return objJsonResult; | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 DAL.ClsSb_EquipDotCheckBill oBill = new DAL.ClsSb_EquipDotCheckBill(); | 
 |  |  |                 List<Model.ClsSb_EquipDotCheckBillMain> lsmain = new List<Model.ClsSb_EquipDotCheckBillMain>(); | 
 |  |  |                 msg2 = msg2.Replace("\\", ""); | 
 |  |  | 
 |  |  |                     //oItem.HBillNo = ""; | 
 |  |  |                     oItem.HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd"));//  --日期 | 
 |  |  |                     oItem.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year); | 
 |  |  |                     oItem.HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month); | 
 |  |  |                     //oItem.HMakeDate = ""; | 
 |  |  |                     //oItem.HYear = ""; | 
 |  |  |                     //oItem.HPeriod = ""; | 
 |  |  | 
 |  |  |         /// <returns></returns> | 
 |  |  |         [Route("Sb_EquipDotCheckBill/DeltetEquipDotCheckBillList")] | 
 |  |  |         [HttpGet] | 
 |  |  |         public object DeltetEquipDotCheckBillList(string HInterID) | 
 |  |  |         public object DeltetEquipDotCheckBillList(string HInterID,string user) | 
 |  |  |         { | 
 |  |  |             //编辑权限 | 
 |  |  |             //if (!DBUtility.ClsPub.Security_Log("Sb_MouldRepairWorkBill_Delete", 1, true, DBUtility.ClsPub.CurUserName)) | 
 |  |  |             //{ | 
 |  |  |             //    objJsonResult.code = "0"; | 
 |  |  |             //    objJsonResult.count = 0; | 
 |  |  |             //    objJsonResult.Message = "无删除权限!"; | 
 |  |  |             //    objJsonResult.data = null; | 
 |  |  |             //    return objJsonResult; | 
 |  |  |             //} | 
 |  |  |             if (!DBUtility.ClsPub.Security_Log_second("Sb_EquipDotCheckBill_Delete", 1, false, user)) | 
 |  |  |             { | 
 |  |  |                 objJsonResult.code = "0"; | 
 |  |  |                 objJsonResult.count = 0; | 
 |  |  |                 objJsonResult.Message = "无删除权限!"; | 
 |  |  |                 objJsonResult.data = null; | 
 |  |  |                 return objJsonResult; | 
 |  |  |             } | 
 |  |  |  | 
 |  |  |  | 
 |  |  |             Int64 lngBillKey = 0; | 
 |  |  | 
 |  |  |                     return objJsonResult; | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 bool IsDete = oBill.DeleteBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo); | 
 |  |  |                 //删除前控制 | 
 |  |  |                 DataSet BeforeDs = oCN.RunProcReturn("Exec h_p_Sb_EquipDotCheckBill_BeforeDelCtrl " + HInterID.ToString() + ",'" + user + "'", "h_p_Sb_EquipDotCheckBill_BeforeDelCtrl"); | 
 |  |  |                 if (BeforeDs == null || BeforeDs.Tables[0].Rows.Count == 0) | 
 |  |  |                 { | 
 |  |  |                     objJsonResult.code = "0"; | 
 |  |  |                     objJsonResult.count = 0; | 
 |  |  |                     objJsonResult.Message = "删除前判断失败!"; | 
 |  |  |                     objJsonResult.data = null; | 
 |  |  |                     return objJsonResult; | 
 |  |  |                 } | 
 |  |  |                 else | 
 |  |  |                 { | 
 |  |  |                     if (DBUtility.ClsPub.isLong(BeforeDs.Tables[0].Rows[0]["HBack"]) == 1) | 
 |  |  |                     { | 
 |  |  |                         objJsonResult.code = "0"; | 
 |  |  |                         objJsonResult.count = 0; | 
 |  |  |                         objJsonResult.Message = "删除失败!" + DBUtility.ClsPub.isStrNull(BeforeDs.Tables[0].Rows[0]["HRemark"]); | 
 |  |  |                         objJsonResult.data = null; | 
 |  |  |                         return objJsonResult; | 
 |  |  |                     } | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 bool IsDete = oBill.DeleteBill(oBill.omodel.HInterID, oBill.omodel.HBillNo, "h_p_Sb_EquipDotCheckBill_AfterDelCtrl", user, ref DBUtility.ClsPub.sExeReturnInfo); | 
 |  |  |                 if (IsDete) | 
 |  |  |                 { | 
 |  |  |                     objJsonResult.code = "0"; | 
 |  |  | 
 |  |  |                 SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); | 
 |  |  |                 if (sqlWhere == null || sqlWhere.Equals("")) | 
 |  |  |                 { | 
 |  |  |                     ds = oCN.RunProcReturn("select 点检项目ID HDotCheckItemID,点检项目代码 as HDotCheckCode ,点检项目 HDotCheckItem,点检部位 HDotCheckPart ,具体要求 HClaim,表体备注 HRemark,负责人ID HManagerID,负责人编码 HManagerCode,负责人 HManagerName  from h_v_Sb_EquipDotCheckBillList", "h_v_Sb_EquipDotCheckBillList"); | 
 |  |  |                     ds = oCN.RunProcReturn("select * from h_v_Sb_EquipDotCheckBill_Edit", "h_v_Sb_EquipDotCheckBill_Edit"); | 
 |  |  |                     objJsonResult.code = "0"; | 
 |  |  |                     objJsonResult.count = 1; | 
 |  |  |                     objJsonResult.Message = "获取信息成功!"; | 
 |  |  | 
 |  |  |                 } | 
 |  |  |                 else | 
 |  |  |                 { | 
 |  |  |                     string sql1 = "select 点检项目ID HDotCheckItemID,点检项目代码 as HDotCheckCode ,点检项目 HDotCheckItem,点检部位 HDotCheckPart,具体要求 HClaim,表体备注 HRemark,负责人ID HManagerID,负责人编码 HManagerCode,负责人 HManagerName  from h_v_Sb_EquipDotCheckBillList where 1 = 1 "; | 
 |  |  |                     string sql1 = "select * from h_v_Sb_EquipDotCheckBill_Edit where 1 = 1 "; | 
 |  |  |                     string sql = sql1 + sqlWhere; | 
 |  |  |                     ds = oCN.RunProcReturn(sql, "h_v_Sb_EquipDotCheckBillList"); | 
 |  |  |                     ds = oCN.RunProcReturn(sql, "h_v_Sb_EquipDotCheckBill_Edit"); | 
 |  |  |                     objJsonResult.code = "0"; | 
 |  |  |                     objJsonResult.count = 1; | 
 |  |  |                     objJsonResult.Message = "获取信息成功!"; | 
 |  |  | 
 |  |  |         #endregion | 
 |  |  |  | 
 |  |  |  | 
 |  |  |  | 
 |  |  |  | 
 |  |  |  | 
 |  |  |         #endregion | 
 |  |  |  | 
 |  |  |  | 
 |  |  |         #region 设备点检记录单PDA | 
 |  |  |  | 
 |  |  |         #region 根据设备条码查找设备档案信息PDA | 
 |  |  |         [Route("Sb_PDA_EquipDotCheckBill/txtHBarCode_KeyDown")] | 
 |  |  | 
 |  |  |                     return objJsonResult; | 
 |  |  |                 } | 
 |  |  |                 //得到信息 | 
 |  |  |                 ds = oCN.RunProcReturn("select top 1 * from Gy_EquipMent  where HNumber= '" + HBarCode + "'", "Gy_EquipMent"); | 
 |  |  |                 ds = oCN.RunProcReturn("select top 1 * from Gy_EquipFileBillMain  where HEquipFileNumber= '" + HBarCode + "'", "Gy_EquipFileBillMain"); | 
 |  |  |                 //写入信息 | 
 |  |  |                 if (ds == null || ds.Tables[0].Rows.Count == 0) | 
 |  |  |                 { | 
 |  |  |                     objJsonResult.code = "0"; | 
 |  |  |                     objJsonResult.count = 0; | 
 |  |  |                     objJsonResult.Message = "未查询到设备信息!"; | 
 |  |  |                     objJsonResult.data = null; | 
 |  |  |                     return objJsonResult; | 
 |  |  |                 } | 
 |  |  |                 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 根据设备条码查找设备档案信息PDA  查询条码档案列表 | 
 |  |  |         [Route("Sb_PDA_EquipDotCheckBill/txtHBarCode_KeyDown_List")] | 
 |  |  |         [HttpGet] | 
 |  |  |         public object txtHBarCode_KeyDown_List(string HBarCode) | 
 |  |  |         { | 
 |  |  |             try | 
 |  |  |             { | 
 |  |  |                 if (HBarCode == null || HBarCode.Equals("")) | 
 |  |  |                 { | 
 |  |  |                     objJsonResult.code = "0"; | 
 |  |  |                     objJsonResult.count = 0; | 
 |  |  |                     objJsonResult.Message = "条形码不能为空!"; | 
 |  |  |                     objJsonResult.data = null; | 
 |  |  |                     return objJsonResult; | 
 |  |  |                 } | 
 |  |  |                 //得到信息 | 
 |  |  |                 ds = oCN.RunProcReturn("select top 1 * from h_v_Gy_EquipFileMainList  where 条形码= '" + HBarCode + "'", "h_v_Gy_EquipFileMainList"); | 
 |  |  |                 //写入信息 | 
 |  |  |                 if (ds == null || ds.Tables[0].Rows.Count == 0) | 
 |  |  |                 { | 
 |  |  | 
 |  |  |             string msg1 = _value.ToString(); | 
 |  |  |             string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); | 
 |  |  |             string msg2 = sArray[0].ToString(); | 
 |  |  |             string msg3 = sArray[1].ToString(); | 
 |  |  |  | 
 |  |  |             string UserName = ""; | 
 |  |  |  | 
 |  |  | 
 |  |  |                     oBill.omodel = oItem; | 
 |  |  |                 } | 
 |  |  |                 //子表体数据 | 
 |  |  |  | 
 |  |  |                 msg3 = msg3.Substring(1, msg3.Length - 2); | 
 |  |  |                 msg3 = msg3.Replace("\\", ""); | 
 |  |  |                 msg3 = msg3.Replace("\n", "");  //\n | 
 |  |  |                 List<Models.ClsSb_EquipDotCheckBillSub> ls = new List<Models.ClsSb_EquipDotCheckBillSub>(); | 
 |  |  |                 ls = oListModels.getObjectByJson_Sb_EquipDotCheckBillSubPDA(msg2); | 
 |  |  |                 ls = oListModels.getObjectByJson_Sb_EquipDotCheckBillSubPDA(msg3); | 
 |  |  |                 int i = 0; | 
 |  |  |                 foreach (Models.ClsSb_EquipDotCheckBillSub oItemSub in ls) | 
 |  |  |                 { | 
 |  |  | 
 |  |  |                     oItemSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DateTime.Now); | 
 |  |  |                     oItemSub.HCloseType = false;   //关闭类型 | 
 |  |  |                     //oItemSub.HRemark = "";         //备注 | 
 |  |  |                     oItemSub.HSourceInterID = 0;     // 源单主内码 | 
 |  |  |                     oItemSub.HSourceEntryID = 0;   //源单子内码 | 
 |  |  |                     //oItemSub.HSourceInterID = 0;     // 源单主内码 | 
 |  |  |                     //oItemSub.HSourceEntryID = 0;   //源单子内码 | 
 |  |  |                     //oItemSub.HSourceBillNo = "";  //源单单号 | 
 |  |  |                     //oItemSub.HSourceBillType = ""; //源单类型 | 
 |  |  |                     //oItemSub.HRelationQty = 0;     //关联数量 | 
 |  |  | 
 |  |  |         } | 
 |  |  |         #endregion | 
 |  |  |  | 
 |  |  |         #region 设备点检记录单审核/反审核功能 | 
 |  |  |         [Route("Sb_EquipDotCheckBill/CheckSb_EquipDotCheckBill")] | 
 |  |  |         [HttpGet] | 
 |  |  |         public object CheckSb_EquipDotCheckBill(string HInterID, int Type, string user) | 
 |  |  |         { | 
 |  |  |             try | 
 |  |  |             { | 
 |  |  |                 //判断是否有删除权限 | 
 |  |  |                 if (!DBUtility.ClsPub.Security_Log("Sb_EquipDotCheckBill_Check", 1, false, user)) | 
 |  |  |                 { | 
 |  |  |                     objJsonResult.code = "0"; | 
 |  |  |                     objJsonResult.count = 0; | 
 |  |  |                     objJsonResult.Message = "无权限审核!"; | 
 |  |  |                     objJsonResult.data = null; | 
 |  |  |                     return objJsonResult; | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 if (string.IsNullOrWhiteSpace(HInterID)) | 
 |  |  |                 { | 
 |  |  |                     objJsonResult.code = "0"; | 
 |  |  |                     objJsonResult.count = 0; | 
 |  |  |                     objJsonResult.Message = "HInterID为空!"; | 
 |  |  |                     objJsonResult.data = null; | 
 |  |  |                     return objJsonResult; | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 ClsPub.CurUserName = user; | 
 |  |  |                 oCN.BeginTran();//开始事务 | 
 |  |  |  | 
 |  |  |                 //Type 1 审核  2  反审核 | 
 |  |  |                 if (Type == 1) | 
 |  |  |                 { | 
 |  |  |                     if (!BillOld.CheckBill(int.Parse(HInterID), ref ClsPub.sExeReturnInfo)) | 
 |  |  |                     { | 
 |  |  |                         objJsonResult.code = "0"; | 
 |  |  |                         objJsonResult.count = 1; | 
 |  |  |                         objJsonResult.Message = "审核失败!原因:" + ClsPub.sExeReturnInfo; | 
 |  |  |                         objJsonResult.data = null; | 
 |  |  |                         return objJsonResult; | 
 |  |  |                     } | 
 |  |  |                 } | 
 |  |  |                 else | 
 |  |  |                 { | 
 |  |  |                     if (BillOld.AbandonCheck(int.Parse(HInterID), ref ClsPub.sExeReturnInfo)) | 
 |  |  |                     { | 
 |  |  |                         SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); | 
 |  |  |                     } | 
 |  |  |                     else | 
 |  |  |                     { | 
 |  |  |                         objJsonResult.code = "0"; | 
 |  |  |                         objJsonResult.count = 1; | 
 |  |  |                         objJsonResult.Message = "审核失败!原因:" + ClsPub.sExeReturnInfo; | 
 |  |  |                         objJsonResult.data = null; | 
 |  |  |                         return objJsonResult; | 
 |  |  |                     } | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 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("Sb_EquipDotCheckBill/CloseSb_EquipDotCheckBill")] | 
 |  |  |         [HttpGet] | 
 |  |  |         public object CloseSb_EquipDotCheckBill(string HInterID, int Type, string user) | 
 |  |  |         { | 
 |  |  |             try | 
 |  |  |             { | 
 |  |  |                 //判断是否有删除权限 | 
 |  |  |                 if (!DBUtility.ClsPub.Security_Log("Sb_EquipDotCheckBill_Close", 1, false, user)) | 
 |  |  |                 { | 
 |  |  |                     objJsonResult.code = "0"; | 
 |  |  |                     objJsonResult.count = 0; | 
 |  |  |                     objJsonResult.Message = "无权限关闭!"; | 
 |  |  |                     objJsonResult.data = null; | 
 |  |  |                     return objJsonResult; | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 if (string.IsNullOrWhiteSpace(HInterID)) | 
 |  |  |                 { | 
 |  |  |                     objJsonResult.code = "0"; | 
 |  |  |                     objJsonResult.count = 0; | 
 |  |  |                     objJsonResult.Message = "HInterID为空!"; | 
 |  |  |                     objJsonResult.data = null; | 
 |  |  |                     return objJsonResult; | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 ClsPub.CurUserName = user; | 
 |  |  |  | 
 |  |  |                 oCN.BeginTran();//开始事务 | 
 |  |  |  | 
 |  |  |                 //Type 1 关闭  2  反关闭 | 
 |  |  |                 if (Type == 1) | 
 |  |  |                 { | 
 |  |  |                     if (!BillOld.CloseBill(int.Parse(HInterID), ref ClsPub.sExeReturnInfo)) | 
 |  |  |                     { | 
 |  |  |                         objJsonResult.code = "0"; | 
 |  |  |                         objJsonResult.count = 1; | 
 |  |  |                         objJsonResult.Message = "关闭失败!原因:" + ClsPub.sExeReturnInfo; | 
 |  |  |                         objJsonResult.data = null; | 
 |  |  |                         return objJsonResult; | 
 |  |  |                     } | 
 |  |  |                 } | 
 |  |  |                 else | 
 |  |  |                 { | 
 |  |  |                     if (!BillOld.CancelClose(int.Parse(HInterID), ref ClsPub.sExeReturnInfo)) | 
 |  |  |                     { | 
 |  |  |                         objJsonResult.code = "0"; | 
 |  |  |                         objJsonResult.count = 1; | 
 |  |  |                         objJsonResult.Message = "反关闭失败!原因:" + ClsPub.sExeReturnInfo; | 
 |  |  |                         objJsonResult.data = null; | 
 |  |  |                         return objJsonResult; | 
 |  |  |                     } | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 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("Sb_EquipDotCheckWarning/Report")] | 
 |  |  |         [HttpGet] | 
 |  |  |         public object Report(string HYear,string HMonth,string HEquipTypeID, string user) | 
 |  |  |         { | 
 |  |  |             try | 
 |  |  |             { | 
 |  |  |                 List<object> columnNameList = new List<object>(); | 
 |  |  |                 //if (!DBUtility.ClsPub.Security_Log("Gy_EquipFileList", 1, false, user)) | 
 |  |  |                 //{ | 
 |  |  |                 //    objJsonResult.code = "0"; | 
 |  |  |                 //    objJsonResult.count = 0; | 
 |  |  |                 //    objJsonResult.Message = "没有查看权限"; | 
 |  |  |                 //    objJsonResult.data = null; | 
 |  |  |                 //    return objJsonResult; | 
 |  |  |                 //} | 
 |  |  |                 if (HYear == null || HYear.Equals("") || HMonth == null || HMonth.Equals("")) | 
 |  |  |                 { | 
 |  |  |                     objJsonResult.code = "0"; | 
 |  |  |                     objJsonResult.count = 0; | 
 |  |  |                     objJsonResult.Message = "请选择有效年份,月份"; | 
 |  |  |                     objJsonResult.data = ""; | 
 |  |  |                     objJsonResult.list = columnNameList; | 
 |  |  |                     return objJsonResult; | 
 |  |  |                 } | 
 |  |  |                 else | 
 |  |  |                 { | 
 |  |  |                     string sql = "exec h_p_Sb_EquipDotCheckWarningReport " + HYear + "," + HMonth + "," + HEquipTypeID; | 
 |  |  |                     ds = oCN.RunProcReturn(sql, "h_p_Sb_EquipDotCheckWarningReport"); | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 //添加列名 | 
 |  |  |                 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("Sb_EquipDotCheckBill/UploadFile")] | 
 |  |  |         [HttpPost] | 
 |  |  |         public object UploadFile() | 
 |  |  |         { | 
 |  |  |  | 
 |  |  |             string HBillNo = HttpContext.Current.Request.Params["HBillNo"];  //单据号 | 
 |  |  |             string HRemark = HttpContext.Current.Request.Params["HRemark"];  //备注 | 
 |  |  |             string HUserName = HttpContext.Current.Request.Params["HUserName"];  //创建人 | 
 |  |  |             HttpPostedFile files = HttpContext.Current.Request.Files["file"]; | 
 |  |  |             string path = HttpContext.Current.Server.MapPath("~/../Files/EquipFolder/" + HBillNo); | 
 |  |  |             //string path = @"D:\\Files\\"+ HBillNo; | 
 |  |  |             dynamic dyResult = UpLoadFile(files, path, HBillNo, HRemark, HUserName); | 
 |  |  |             if (dyResult != null && dyResult.result == 1) | 
 |  |  |             { | 
 |  |  |                 objJsonResult.code = "1"; | 
 |  |  |                 objJsonResult.count = 1; | 
 |  |  |                 objJsonResult.Message = "上传成功!"; | 
 |  |  |                 objJsonResult.data = null; | 
 |  |  |                 return objJsonResult; | 
 |  |  |             } | 
 |  |  |             else | 
 |  |  |             { | 
 |  |  |                 objJsonResult.code = "0"; | 
 |  |  |                 objJsonResult.count = 0; | 
 |  |  |                 objJsonResult.Message = dyResult.returnval; | 
 |  |  |                 objJsonResult.data = null; | 
 |  |  |                 return objJsonResult; | 
 |  |  |             } | 
 |  |  |  | 
 |  |  |         } | 
 |  |  |  | 
 |  |  |         public dynamic UpLoadFile(HttpPostedFile files, string path, string HBillNo, string HRemark, string HUserName) | 
 |  |  |         { | 
 |  |  |             dynamic Result_Ob = new { result = 1, returnval = "上传成功!" }; | 
 |  |  |             string filePath = Path.GetFullPath(files.FileName);//文件上传路径 | 
 |  |  |             string fileExtension = Path.GetExtension(files.FileName);// 文件扩展名 | 
 |  |  |             string filename = files.FileName;//文件名 | 
 |  |  |             string fileSavePath = path;// 上传保存路径 | 
 |  |  |             int filesize = files.ContentLength;//获取上传文件的大小单位为字节byte | 
 |  |  |             int Maxsize = 40000 * 1024;//定义上传文件的最大空间大小为40M | 
 |  |  |             try | 
 |  |  |             { | 
 |  |  |                 if (files == null || files.ContentLength <= 0) | 
 |  |  |                 { | 
 |  |  |                     Result_Ob = new { result = 0, returnval = "文件不能为空!" }; | 
 |  |  |                     return Result_Ob; | 
 |  |  |                 } | 
 |  |  |                 if (filesize >= Maxsize) | 
 |  |  |                 { | 
 |  |  |                     Result_Ob = new { result = 0, returnval = "上传文件超过40M,不能上传!" }; | 
 |  |  |                     return Result_Ob; | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 string fileurl = Path.Combine(fileSavePath, filename); | 
 |  |  |                 if (Directory.Exists(fileurl) == true)  //如果存在重名文件就提示   | 
 |  |  |                 { | 
 |  |  |                     Result_Ob = new { result = 0, returnval = "存在同名文件!" }; | 
 |  |  |                     return Result_Ob; | 
 |  |  |                 } | 
 |  |  |                 //删除数据表数据 | 
 |  |  |                 ds = oCN.RunProcReturn("delete from MES_AccessoriesList where HSourceBillNo ='" + HBillNo + "' and HFileName='" + filename + "'", "MES_AccessoriesList"); | 
 |  |  |                 if (Directory.Exists(path)) | 
 |  |  |                 { | 
 |  |  |                     File.Delete(fileurl);      //删除指定文件 | 
 |  |  |                     files.SaveAs(fileurl); | 
 |  |  |                     string StrPath = "/files/EquipFolder/" + HBillNo + "/" + filename; | 
 |  |  |                     if (File.Exists(fileurl)) | 
 |  |  |                     { | 
 |  |  |                         //这里可以执行一些其它的操作,比如更新数据库 | 
 |  |  |                         //写入数据表 | 
 |  |  |                         oCN.RunProc("Insert into MES_AccessoriesList (HFileName,HFilePath,HFilePath_Cus,HFileType" + | 
 |  |  |                                     ",HLoadMan,HLoadDate,HRemark,HVerNum,HFileSize" + | 
 |  |  |                                     ",HFileClsID,HSourceBillNo" + | 
 |  |  |                                    ") values('" | 
 |  |  |                                     + filename.ToString() + "','" + StrPath.ToString() + "','" + filePath.ToString() + "','" + fileExtension.ToString() + "'" + | 
 |  |  |                                     ",'" + HUserName + "',getdate(),'" + HRemark + "','V1','" + filesize + | 
 |  |  |                                     "','" + 0 + "','" + HBillNo + | 
 |  |  |                                    "') "); | 
 |  |  |                     } | 
 |  |  |                     else | 
 |  |  |                     { | 
 |  |  |                         Result_Ob = new { result = 0, returnval = "上传失败!此文件为恶意文件" }; | 
 |  |  |                     } | 
 |  |  |                 } | 
 |  |  |                 else | 
 |  |  |                 { | 
 |  |  |                     Directory.CreateDirectory(fileSavePath); //添加文件夹 | 
 |  |  |                     files.SaveAs(fileurl); | 
 |  |  |                     string StrPath = "/files/EquipFolder/" + HBillNo + "/" + filename; | 
 |  |  |                     if (File.Exists(fileurl)) | 
 |  |  |                     { | 
 |  |  |                         //这里可以执行一些其它的操作,比如更新数据库 | 
 |  |  |                         //写入数据表 | 
 |  |  |                         oCN.RunProc("Insert into MES_AccessoriesList (HFileName,HFilePath,HFilePath_Cus,HFileType" + | 
 |  |  |                                     ",HLoadMan,HLoadDate,HRemark,HVerNum,HFileSize" + | 
 |  |  |                                     ",HFileClsID,HSourceBillNo" + | 
 |  |  |                                    ") values('" | 
 |  |  |                                     + filename.ToString() + "','" + StrPath.ToString() + "','" + filePath.ToString() + "','" + fileExtension.ToString() + "'" + | 
 |  |  |                                     ",'" + HUserName + "',getdate(),'" + HRemark + "','V1','" + filesize + | 
 |  |  |                                     "','" + 0 + "','" + HBillNo + | 
 |  |  |                                    "') "); | 
 |  |  |                     } | 
 |  |  |                     else | 
 |  |  |                     { | 
 |  |  |                         Result_Ob = new { result = 0, returnval = "上传失败!此文件为恶意文件" }; | 
 |  |  |                     } | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |             } | 
 |  |  |             catch (Exception e) | 
 |  |  |             { | 
 |  |  |                 Result_Ob = new { result = 0, returnval = e.Message }; | 
 |  |  |             } | 
 |  |  |             return Result_Ob; | 
 |  |  |         } | 
 |  |  |  | 
 |  |  |         /// <summary> | 
 |  |  |         /// 根据单据号查找上传文件列表 | 
 |  |  |         /// </summary> | 
 |  |  |         /// <param name="sWhere"></param> | 
 |  |  |         /// <returns></returns> | 
 |  |  |         [Route("Sb_EquipDotCheckBill/Filelist")] | 
 |  |  |         [HttpGet] | 
 |  |  |         public object Filelist(string HBillNo) | 
 |  |  |         { | 
 |  |  |             var url = fileip + "/files/EquipFolder/" + HBillNo + "/"; | 
 |  |  |             //@"C:\\files\\" | 
 |  |  |             try | 
 |  |  |             { | 
 |  |  |                 ds = oCN.RunProcReturn("select *,'" + url + "'+CAST(HFileName as varchar(200))as url  from MES_AccessoriesList where HSourceBillNo='" + HBillNo + "'", "MES_AccessoriesList"); | 
 |  |  |                 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; | 
 |  |  |             } | 
 |  |  |         } | 
 |  |  |  | 
 |  |  |         /// <summary> | 
 |  |  |         /// 根据ID,单据号,文件名 删除文件 | 
 |  |  |         /// </summary> | 
 |  |  |         /// <param name="sWhere"></param> | 
 |  |  |         /// <returns></returns> | 
 |  |  |         [Route("Sb_EquipDotCheckBill/DeleteFilelist")] | 
 |  |  |         [HttpGet] | 
 |  |  |         public object DeleteFilelist(string HItemID, string HSourceBillNo, string HFileName) | 
 |  |  |         { | 
 |  |  |             try | 
 |  |  |             { | 
 |  |  |  | 
 |  |  |                 oCN.RunProc("delete from MES_AccessoriesList where HItemID =" + HItemID); | 
 |  |  |                 string fileurl = Path.Combine(HttpContext.Current.Server.MapPath("~/../Files/EquipFolder/" + HSourceBillNo), HFileName); | 
 |  |  |                 File.Delete(fileurl);      //删除指定文件 | 
 |  |  |                 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        | 
 |  |  |     } | 
 |  |  | } |