| 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 Sc_PPBomBillController : ApiController | 
|     { | 
|         public DBUtility.ClsPub.Enum_BillStatus BillStatus; | 
|   | 
|         private json objJsonResult = new json(); | 
|         SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); | 
|         DataSet ds; | 
|   | 
|   | 
|         /// <summary> | 
|         /// 返回生产用料清单列表 | 
|         ///参数:string sql。 | 
|         ///返回值:object。 | 
|         /// </summary> | 
|         [Route("Sc_PPBomBill/list")] | 
|         [HttpGet] | 
|         public object list(string sWhere,string user) | 
|         { | 
|             try | 
|             { | 
|                 //判断是否有查询权限 | 
|                 if (!DBUtility.ClsPub.Security_Log("Sc_PPBomBillList_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_IF_PPBomBillList order by hmainid desc ", "h_v_IF_PPBomBillList"); | 
|                 } | 
|                 else | 
|                 { | 
|                     string sql1 = "select * from h_v_IF_PPBomBillList where 1 = 1 "; | 
|                     string sql = sql1 + sWhere+ " order by hmainid desc "; | 
|                     ds = oCN.RunProcReturn(sql, "h_v_IF_PPBomBillList"); | 
|                 } | 
|   | 
|                 //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; | 
|             } | 
|         } | 
|   | 
|   | 
|   | 
|         #region 生产用料清单 审核/反审核 | 
|         [Route("Sc_PPBomBill/DeOrAuditBill")] | 
|         [HttpGet] | 
|         public object DeOrAuditBill(int HInterID, int IsAudit, string CurUserName) | 
|         { | 
|             string ModRightNameCheck = "Sc_PPBomBillList_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; | 
|                 } | 
|   | 
|                 //判断id是否小于0 | 
|                 if (HInterID <= 0) | 
|                 { | 
|                     objJsonResult.code = "0"; | 
|                     objJsonResult.count = 0; | 
|                     objJsonResult.Message = "ID小于0"; | 
|                     objJsonResult.data = null; | 
|                     return objJsonResult; | 
|                 } | 
|   | 
|                 Int64 lngBillKey = 0; | 
|                 lngBillKey = DBUtility.ClsPub.isLong(HInterID); | 
|   | 
|                 //查询审核的这条数据 | 
|                 ds = oCN.RunProcReturn("select *  from  Sc_PPBomBillMain where HInterID=" + lngBillKey, "Sc_PPBomBillMain"); | 
|                 if (ds.Tables[0].Rows.Count != 0) | 
|                 { | 
|                     var HChecker = ds.Tables[0].Rows[0]["HChecker"].ToString().Trim(); | 
|                     //审核 | 
|                     if (IsAudit == 0) | 
|                     { | 
|                         if (HChecker != "") | 
|                         { | 
|                             objJsonResult.code = "0"; | 
|                             objJsonResult.count = 0; | 
|                             objJsonResult.Message = "单据已审核,不能再次审核!"; | 
|                             objJsonResult.data = null; | 
|                             return objJsonResult; | 
|                         } | 
|                     } | 
|   | 
|                     if (IsAudit == 1) | 
|                     { | 
|                         if (HChecker == "") | 
|                         { | 
|                             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 (CheckBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) | 
|                     { | 
|                         objJsonResult.code = "1"; | 
|                         objJsonResult.count = 1; | 
|                         objJsonResult.Message = "审核成功"; | 
|                         objJsonResult.data = null; | 
|                         return objJsonResult; | 
|                     } | 
|                     else | 
|                     { | 
|                         objJsonResult.code = "0"; | 
|                         objJsonResult.count = 0; | 
|                         objJsonResult.Message = "审核失败"; | 
|                         objJsonResult.data = null; | 
|                         return objJsonResult; | 
|                     } | 
|                 } | 
|                 //反审核 | 
|                 if (IsAudit == 1) | 
|                 { | 
|                     if (AbandonCheck(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) | 
|                     { | 
|                         objJsonResult.code = "1"; | 
|                         objJsonResult.count = 1; | 
|                         objJsonResult.Message = "反审核成功"; | 
|                         objJsonResult.data = null; | 
|                         return objJsonResult; | 
|                     } | 
|                     else | 
|                     { | 
|                         objJsonResult.code = "0"; | 
|                         objJsonResult.count = 0; | 
|                         objJsonResult.Message = "反审核失败"; | 
|                         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; | 
|             } | 
|         } | 
|         //审核 | 
|         public bool CheckBill(Int64 lngBillKey, ref string sReturn) | 
|         { | 
|             try | 
|             { | 
|                 string HChecker = DBUtility.ClsPub.CurUserName;//用户名 | 
|                 oCN.BeginTran();//打开事务 | 
|                 oCN.RunProc("update Sc_PPBomBillMain set HBillStatus=2,hchecker='" + HChecker + "',hcheckdate='" + DateTime.Now + "' where  HInterID=" + lngBillKey); | 
|                 oCN.Commit();//关闭事务 | 
|                 sReturn = "审核成功"; | 
|                 return true; | 
|             } | 
|             catch (Exception e) | 
|             { | 
|                 sReturn = e.Message; | 
|                 throw(e); | 
|             } | 
|         } | 
|         //反审核 | 
|         public bool AbandonCheck(Int64 lngBillKey, ref string sReturn) | 
|         { | 
|             try | 
|             { | 
|                 string HChecker = DBUtility.ClsPub.CurUserName;//用户名 | 
|                 oCN.BeginTran();//打开事务 | 
|                 oCN.RunProc("update Sc_PPBomBillMain set HBillStatus=1,hchecker='',hcheckdate=null where  HInterID=" + lngBillKey); | 
|                 oCN.Commit();//关闭事务 | 
|                 sReturn = "反审核成功"; | 
|                 return true; | 
|             } | 
|             catch (Exception e) | 
|             { | 
|                 sReturn = e.Message; | 
|                 throw (e); | 
|             } | 
|         } | 
|         #endregion | 
|     } | 
| } |