using Newtonsoft.Json.Linq;
|
using System;
|
using System.Collections.Generic;
|
using System.Data;
|
using System.Linq;
|
using System.Web;
|
using System.Web.Http;
|
using WebAPI.Models;
|
using WebAPI.DLL;
|
using DBUtility;
|
|
namespace WebAPI.Controllers
|
{
|
public class Sc_MouldRepairSendWorkBillController : ApiController
|
{
|
public DBUtility.ClsPub.Enum_BillStatus BillStatus;
|
|
ClsSb_MouldRepairWorkBillMain omodel = new ClsSb_MouldRepairWorkBillMain();
|
List<ClsSb_MouldRepairWorkBillSub> DetailColl = new List<ClsSb_MouldRepairWorkBillSub>();
|
private json objJsonResult = new json();
|
SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
|
DataSet ds;
|
DLL.ClsSb_MouldRepairWorkBill oBill = new DLL.ClsSb_MouldRepairWorkBill();
|
|
#region 器具维修派工单查询
|
[Route("Sc_MouldRepairSendWorkBill/GetMouldRepairSendWorkBillList")]
|
[HttpGet]
|
public object GetMouldRepairSendWorkBillList(string sWhere,string user)
|
{
|
try
|
{
|
if (!DBUtility.ClsPub.Security_Log("Sc_MouldRepairSendWorkBillList", 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_Sc_MouldRepairSendWorkBill order by hmainid desc ", "h_v_Sc_MouldRepairSendWorkBill");
|
}
|
else
|
{
|
string sql1 = "select * from h_v_Sc_MouldRepairSendWorkBill where 1 = 1 ";
|
string sql = sql1 + sWhere+ " order by hmainid desc ";
|
ds = oCN.RunProcReturn(sql, "h_v_Sc_MouldRepairSendWorkBill");
|
}
|
|
//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;
|
}
|
}
|
#endregion
|
|
#region 器具维修派工单 添加/修改
|
[Route("Sc_MouldRepairSendWorkBill/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 = "新增单据成功!";
|
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 hentryid = int.Parse(sArray[2].ToString());//子表的顺序id
|
int OperationType = int.Parse(sArray[3].ToString());//数据类型 1添加 3修改
|
string msg4 = sArray[4].ToString();
|
try
|
{
|
if (!DBUtility.ClsPub.Security_Log("Sc_MouldRepairSendWorkBill_Edit", 1, false, msg4))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "无保存权限!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
omodel = Newtonsoft.Json.JsonConvert.DeserializeObject<ClsSb_MouldRepairWorkBillMain>(msg2);
|
string BillType = "3843";
|
|
|
if (OperationType == 1)//新增
|
{
|
//主表
|
oCN.RunProc("Insert Into Sc_MouldRepairSendWorkBill " +
|
"(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
|
",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
|
",HEquipID,HRepairID,HRepairBeginDate,HRepairEndDate,HRepairContent" +
|
",HCycleUnit,HPlanTimes,HTimes,HEmpID,HManagerID" +
|
",HDeptID,HExplanation,HInnerBillNo,HMouldID" +
|
",HSupID,HRepairType,HNewModel,HNewDesignLife,HMainSourceBillType,HMainSourceInterID,HMainSourceEntryID,HBillStatus" +
|
") " +
|
" values('" + BillType + "','" + BillType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','" + omodel.HDate + "'" +
|
"," + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + omodel.HMaker + "',getdate()" +
|
"," + omodel.HEquipID.ToString() + "," + omodel.HRepairID.ToString() + ",'" + omodel.HRepairBeginDate + "','" + omodel.HRepairEndDate + "','" + omodel.HRepairContent + "'" +
|
",'" + omodel.HCycleUnit + "'," + omodel.HPlanTimes.ToString() + "," + omodel.HTimes.ToString() + "," + omodel.HEmpID.ToString() + "," + omodel.HManagerID.ToString() +
|
"," + omodel.HDeptID.ToString() + ",'" + omodel.HExplanation + "','" + omodel.HInnerBillNo + "'," + omodel.HMouldID.ToString() +
|
", " + omodel.HSupID.ToString() + ",'" + omodel.HRepairType + "','" + omodel.HNewModel + "'," + omodel.HNewDesignLife.ToString() + ",'" + omodel.HMainSourceBillType + "'," + omodel.HMainSourceInterID.ToString() + "," + omodel.HMainSourceEntryID.ToString() +
|
|
",1) ");
|
}
|
else if (OperationType == 3)
|
{
|
//修改
|
oCN.RunProc("UpDate Sc_MouldRepairSendWorkBill set " +
|
" HBillNo='" + omodel.HBillNo + "'" + //固定赋值===============
|
",HDate='" + omodel.HDate + "'" +
|
",HYear='" + omodel.HYear.ToString() + "'" +
|
",HPeriod='" + omodel.HPeriod.ToString() + "'" +
|
",HRemark='" + omodel.HRemark + "'" +
|
",HUpDater='" + omodel.HUpDater + "'" +
|
",HUpDateDate=getdate()" +
|
//========================================
|
",HMouldID=" + omodel.HMouldID.ToString() +
|
",HEquipID=" + omodel.HEquipID.ToString() +
|
",HRepairID=" + omodel.HRepairID.ToString() +
|
",HEmpID=" + omodel.HEmpID.ToString() +
|
",HPlanTimes=" + omodel.HPlanTimes.ToString() +
|
",HTimes=" + omodel.HTimes.ToString() +
|
",HManagerID=" + omodel.HManagerID.ToString() +
|
",HDeptID=" + omodel.HDeptID.ToString() +
|
",HRepairBeginDate='" + omodel.HRepairBeginDate + "'" +
|
",HRepairEndDate='" + omodel.HRepairEndDate + "'" +
|
",HRepairContent='" + omodel.HRepairContent + "'" +
|
",HCycleUnit='" + omodel.HCycleUnit + "'" +
|
",HExplanation='" + omodel.HExplanation + "'" +
|
",HInnerBillNo='" + omodel.HInnerBillNo + "'" +
|
",HSupID=" + omodel.HSupID.ToString() +
|
",HRepairType='" + omodel.HRepairType + "'" +
|
",HNewModel='" + omodel.HNewModel + "'" +
|
",HMainSourceBillType='" + omodel.HMainSourceBillType + "'" +
|
",HMainSourceInterID=" + omodel.HMainSourceInterID.ToString() +
|
",HMainSourceEntryID=" + omodel.HMainSourceEntryID.ToString() +
|
",HNewDesignLife=" + omodel.HNewDesignLife.ToString() +
|
" where HInterID=" + omodel.HInterID.ToString());
|
|
//删除子表
|
oCN.RunProc("delete from Sc_MouldRepairSendWorkBillSub where HInterID='" + omodel.HInterID.ToString() + "' and HEntryID='" + hentryid + "'");
|
}
|
//保存子表
|
objJsonResult = AddBillSub(msg3, hentryid);
|
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, int hentryid)
|
{
|
DetailColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsSb_MouldRepairWorkBillSub>>(msg3);
|
int i = 1;
|
//插入子表
|
foreach (Models.ClsSb_MouldRepairWorkBillSub oSub in DetailColl)
|
{
|
oCN.RunProc("Insert into Sc_MouldRepairSendWorkBillSub " +
|
" (HInterID,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark" +
|
",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
|
",HRepairID,HRepairExplanation,HManagerID,HMoney" +
|
") values("
|
+ omodel.HInterID.ToString() + "," + (hentryid == -1 ? i : hentryid) + ",'" + oSub.HCloseMan + "','" + DateTime.Now + "'," + Convert.ToString(oSub.HCloseType ? 1 : 0) + ",'" + oSub.HRemark + "'" +
|
"," + oSub.HSourceInterID.ToString() + "," + oSub.HSourceEntryID.ToString() + ",'" + oSub.HSourceBillNo + "','" + oSub.HSourceBillType + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() +
|
"," + oSub.HRepairID.ToString() + ",'" + oSub.HRepairExplanation + "'," + oSub.HManagerID.ToString() + "," + oSub.HMoney.ToString() +
|
") ");
|
i++;
|
}
|
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = null;
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
#endregion
|
|
#region 器具维修派工单 删除
|
[Route("Sc_MouldRepairSendWorkBill/MouldDeleteBill")]
|
[HttpGet]
|
public object MouldDeleteBill(long HInterID, string user)
|
{
|
try
|
{
|
//判断权限
|
if (!DBUtility.ClsPub.Security_Log("Sc_MouldRepairSendWorkBill_Delete", 1, false, user))
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "没有删除权限";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
oBill.ShowBill(HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
|
|
if (oBill.omodel.HChecker != "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "单据已经审核,不能删除!";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
|
if (oBill.DeleteBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo))
|
{
|
objJsonResult.code = "1";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "删除成功";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
else
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 1;
|
objJsonResult.Message = "删除失败";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
catch (Exception e)
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "无权限删除";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
#endregion
|
|
#region 器具维修派工单 审核/反审核
|
[Route("Sc_MouldRepairSendWorkBill/CheckDeOAuditBill")]
|
[HttpGet]
|
public object CheckDeOAuditBill(int HInterID, int IsAudit, string CurUserName)
|
{
|
|
DBUtility.ClsPub.CurUserName = CurUserName; //存储用户名
|
try
|
{
|
//判断是否有审核权限
|
if (!DBUtility.ClsPub.Security_Log("Sc_MouldRepairSendWorkBill_Check", 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;
|
}
|
|
|
//转换id
|
Int64 lngBillKey = 0;
|
lngBillKey = DBUtility.ClsPub.isLong(HInterID);
|
|
//查询审核的这条数据
|
ds = oCN.RunProcReturn("select * from Sc_MouldRepairSendWorkBill where HInterID='" + lngBillKey.ToString() + "'", "Sc_MouldRepairSendWorkBill");
|
|
if (ds.Tables[0].Rows.Count != 0)
|
{
|
string HCloseMan = ds.Tables[0].Rows[0]["HCloseMan"].ToString().Trim();//关闭人
|
string HDeleteMan = ds.Tables[0].Rows[0]["HDeleteMan"].ToString().Trim();//做废人
|
string HChecker = ds.Tables[0].Rows[0]["HChecker"].ToString().Trim();//审核人
|
|
if (HCloseMan != "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据已关闭,不能审核";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
if (HDeleteMan != "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据已作废,不能审核";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
//IsAudit 0 审核
|
if (IsAudit == 0)
|
{
|
if (HChecker != "")
|
{
|
objJsonResult.code = "0";
|
objJsonResult.count = 0;
|
objJsonResult.Message = "单据已审核!不能再次审核";
|
objJsonResult.data = null;
|
return objJsonResult;
|
}
|
}
|
//IsAudit 1 反审核
|
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 = "审核失败,原因:" + DBUtility.ClsPub.sExeReturnInfo;
|
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 = "反审核失败,原因:" + DBUtility.ClsPub.sExeReturnInfo;
|
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_MouldRepairSendWorkBill set HChecker='" + HChecker + "',HCheckDate='" + DateTime.Now + "',HBillStatus=2 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_MouldRepairSendWorkBill set HChecker='',HCheckDate=null,HBillStatus=1 where HInterID='" + lngBillKey + "'");
|
oCN.Commit();//关闭事务
|
sReturn = "反审核单据成功!";
|
return true;
|
}
|
catch (Exception e)
|
{
|
sReturn = e.Message;
|
throw (e);
|
}
|
}
|
#endregion
|
}
|
}
|