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; /// /// 返回生产用料清单列表 ///参数:string sql。 ///返回值:object。 /// [Route("Sc_PPBomBill/list")] [HttpGet] public object list(string sWhere) { try { if (sWhere == null || sWhere.Equals("")) { ds = oCN.RunProcReturn("select * from h_v_IF_PPBomBillList " + sWhere, "h_v_IF_PPBomBillList"); } else { string sql1 = "select * from h_v_IF_PPBomBillList where 1 = 1 "; string sql = sql1 + sWhere; ds = oCN.RunProcReturn(sql, "h_v_IF_PPBomBillList"); } 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; } } #region 生产用料清单 审核/反审核 [Route("Sc_PPBomBill/DeOrAuditBill")] [HttpGet] public object DeOrAuditBill(int HInterID, int IsAudit, string CurUserName) { // string ModRightNameCheck = ""; 该模块的审核功能 DBUtility.ClsPub.CurUserName = CurUserName;//存储用户名 try { //判断是否有审核权限 //if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, true, 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 } }