New file |
| | |
| | | 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 |
| | | { |
| | | public class Sc_ProcessMangementController : ApiController |
| | | { |
| | | public DBUtility.ClsPub.Enum_BillStatus BillStatus; |
| | | |
| | | private json objJsonResult = new json(); |
| | | |
| | | ///<summary> |
| | | ///封装状态码及返回信息的公用方法。 |
| | | ///参数:DataSet。 |
| | | ///返回值:json。 |
| | | ///</summary> |
| | | public object GetObjectJson(DataSet ds) |
| | | { |
| | | try |
| | | { |
| | | if (ds == null || ds.Tables[0].Rows.Count <= 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "没有返回任何记录!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "获取信息成功!"; |
| | | objJsonResult.data = ds.Tables[0]; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "没有返回任何记录!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | ///<summary> |
| | | ///统一正确信息方法。 |
| | | ///参数:string。 |
| | | ///返回值:object。 |
| | | ///</summary> |
| | | public object CustomCorrect(DataSet ds) |
| | | { |
| | | if (ds == null || ds.Tables[0].Rows.Count <= 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "没有返回任何记录!"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "获取信息成功!"; |
| | | objJsonResult.data = ds.Tables[0]; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | ///<summary> |
| | | ///自定义错误信息方法。 |
| | | ///参数:string。 |
| | | ///返回值:object。 |
| | | ///</summary> |
| | | public object CustomError(string msg) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = msg; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 返回生产汇报单列表 |
| | | ///参数:string sql。 |
| | | ///返回值:object。 |
| | | /// </summary> |
| | | [Route("Sc_ProcessMangement/MES_Sc_ProcessReportList_Json")] |
| | | [HttpGet] |
| | | public object MES_Sc_ProcessReportList_Json(string sWhere) |
| | | { |
| | | DataSet ds; |
| | | try |
| | | { |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | if (sWhere == null || sWhere.Equals("")) |
| | | { |
| | | ds = oCN.RunProcReturn("select top 500 * from h_v_Sc_ProcessReportList ", "h_v_Sc_ProcessReportList"); |
| | | } |
| | | else |
| | | { |
| | | string sql1 = "select * from h_v_Sc_ProcessReportList where 1 = 1 "; |
| | | string sql = sql1 + sWhere; |
| | | ds = oCN.RunProcReturn(sql, "h_v_Sc_ProcessReportList"); |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "没有返回任何记录!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | return GetObjectJson(ds); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 返回生产工序计划单列表 |
| | | ///参数:string sql。 |
| | | ///返回值:object。 |
| | | /// </summary> |
| | | [Route("Sc_ProcessMangement/MES_Sc_ProcessPlanMain_Json")] |
| | | [HttpGet] |
| | | public object MES_Sc_ProcessPlanMain_Json(string sWhere) |
| | | { |
| | | DataSet ds; |
| | | try |
| | | { |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | if (sWhere == null || sWhere.Equals("")) |
| | | { |
| | | ds = oCN.RunProcReturn("select top 500 * from h_v_Sc_ProcessPlanList ", "h_v_Sc_ProcessPlanList"); |
| | | } |
| | | else |
| | | { |
| | | string sql1 = "select * from h_v_Sc_ProcessPlanList where 1 = 1 "; |
| | | string sql = sql1 + sWhere; |
| | | ds = oCN.RunProcReturn(sql, "h_v_Sc_ProcessPlanList"); |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "没有返回任何记录!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | return GetObjectJson(ds); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 返回生产工序派工单列表 |
| | | /// </summary> |
| | | /// <param name="sWhere"></param> |
| | | /// <returns></returns> |
| | | [Route("Sc_ProcessMangement/MES_Sc_ProcessSendWorkMain_Json")] |
| | | [HttpGet] |
| | | public object MES_Sc_ProcessSendWorkMain_Json(string sWhere) |
| | | { |
| | | DataSet ds; |
| | | try |
| | | { |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | if (sWhere == null || sWhere.Equals("")) |
| | | { |
| | | ds = oCN.RunProcReturn("select top 500 * from h_v_Sc_ProcessSendWorkList ", "h_v_Sc_ProcessSendWorkList"); |
| | | } |
| | | else |
| | | { |
| | | string sql1 = "select * from h_v_Sc_ProcessSendWorkList where 1 = 1 "; |
| | | string sql = sql1 + sWhere; |
| | | ds = oCN.RunProcReturn(sql, "h_v_Sc_ProcessSendWorkList"); |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "没有返回任何记录!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | return GetObjectJson(ds); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 保存派工单信息 |
| | | /// </summary> |
| | | /// <param name="msg"></param> |
| | | /// <returns></returns> |
| | | [Route("SaveProcessSendWork")] |
| | | [HttpPost] |
| | | public object SaveProcessSendWork([FromBody]JObject msg) |
| | | { |
| | | var _value = msg["msg"].ToString(); |
| | | string msg1 = _value.ToString(); |
| | | string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); |
| | | string msg2 = sArray[0].ToString(); |
| | | string msg3 = sArray[1].ToString(); |
| | | |
| | | string UserName = ""; |
| | | ListModels oListModels = new ListModels(); |
| | | |
| | | try |
| | | { |
| | | DAL.ClsSc_ProcessSendWork Sendwork = new DAL.ClsSc_ProcessSendWork(); |
| | | List<Model.ClsSc_ProcessSendWorkMain> lsmain = new List<Model.ClsSc_ProcessSendWorkMain>(); |
| | | msg2 = msg2.Replace("\\", ""); |
| | | msg2 = msg2.Replace("\n", ""); |
| | | lsmain = oListModels.getObjectByJson_SendWorkMain(msg2); |
| | | foreach ( Model.ClsSc_ProcessSendWorkMain oItem in lsmain) |
| | | { |
| | | UserName = oItem.HMaker; |
| | | oItem.HMakeDate = DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd")); |
| | | oItem.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year); |
| | | oItem.HDate = DateTime.Now; |
| | | oItem.HMainSourceInterID = oItem.HInterID; |
| | | oItem.HInterID = 0; |
| | | |
| | | if (DBUtility.ClsPub.isStrNull(oItem.HPlanBeginDate) == "") |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "保存失败!没有填写计划开工日期,无法保存!"; |
| | | objJsonResult.data = 1; |
| | | return objJsonResult; |
| | | } |
| | | |
| | | Sendwork.omodel = oItem; |
| | | |
| | | |
| | | } |
| | | |
| | | //表体数据 |
| | | //按 },{来拆分数组 //去掉【和】 |
| | | msg3 = msg3.Substring(1, msg3.Length - 2); |
| | | msg3 = msg3.Replace("\\", ""); |
| | | msg3 = msg3.Replace("\n", ""); //\n |
| | | List<WebAPI.Models.Sc_ProcessPlanViewModel> ls = new List<WebAPI.Models.Sc_ProcessPlanViewModel>(); |
| | | ls = oListModels.getObjectByJson_SendWorkSub(msg3); |
| | | int i = 0; |
| | | List<Model.ClsSc_ProcessSendWorkSub> lss = new List<Model.ClsSc_ProcessSendWorkSub>(); |
| | | foreach (WebAPI.Models.Sc_ProcessPlanViewModel oItemSub in ls) |
| | | { |
| | | |
| | | i++; |
| | | Model.ClsSc_ProcessSendWorkSub sendworksub = new Model.ClsSc_ProcessSendWorkSub(); |
| | | sendworksub.HProcID = oItemSub.hprocid.Value;//--工序ID |
| | | sendworksub.HProcPlanBillNo = oItemSub.工序计划单号; //--工序计划单号 |
| | | sendworksub.HProcPlanEntryID = oItemSub.hsubid.Value; //--工序计划单子ID |
| | | sendworksub.HProcPlanInterID = oItemSub.hmainid.Value; //--工序计划单ID |
| | | sendworksub.HICMOInterID = oItemSub.hicmointerid.Value; //--任务单ID |
| | | sendworksub.HICMOBillNo = oItemSub.任务单号; //--任务单号 |
| | | sendworksub.HSeOrderBillNo = oItemSub.销售订单号; //--销售订单号 |
| | | sendworksub.HSeOrderEntryID = oItemSub.销售订单子ID.Value; //--销售子ID |
| | | sendworksub.HSeOrderInterID = oItemSub.销售订单主ID.Value; //--销售订单主ID |
| | | sendworksub.HPlanTimes = (float)oItemSub.计划加工时间; //--计划工时 |
| | | sendworksub.HPlanEndDate = oItemSub.计划完工日期.Value; //--计划完工日期 |
| | | sendworksub.HPlanBeginDate = oItemSub.计划开工日期.Value; //--计划开工日期 |
| | | sendworksub.HQty = (double)oItemSub.计划数量; //--派工数量 |
| | | sendworksub.HWorkerNumber = oItemSub.操作员代码; //--操作工代码 |
| | | sendworksub.HWorkerID = oItemSub.HWorkerID.Value; //--操作工ID |
| | | sendworksub.HGroupNumber = oItemSub.班组代码; //班组代码 |
| | | sendworksub.HGroupID = oItemSub.HGroupID.Value; //--班组ID |
| | | sendworksub.HSourceNumber = oItemSub.生产资源; //--生产资源代码 |
| | | //--生产资源ID |
| | | sendworksub.HProcNumber = oItemSub.工序代码; //--工序代码 |
| | | sendworksub.HRemark = oItemSub.表体备注; //--备注 |
| | | |
| | | if (oItemSub.计划数量 <= 0) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "保存失败!第" + i.ToString() + "行数量不大于0无法保存!"; |
| | | objJsonResult.data = 1; |
| | | return objJsonResult; |
| | | } |
| | | if (Convert.ToInt32( sendworksub.HQty) > Convert.ToInt32( oItemSub.计划数量)) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "保存失败!第" + i.ToString() + "行派工数量不能大于计划单数量!"; |
| | | objJsonResult.data = 1; |
| | | return objJsonResult; |
| | | } |
| | | //if (DBUtility.ClsPub.isStrNull(oItemSub.HBatChNo) == "") |
| | | //{ |
| | | // objJsonResult.code = "0"; |
| | | // objJsonResult.count = 0; |
| | | // objJsonResult.Message = "保存失败!第" + i.ToString() + "行未填写批号!"; |
| | | // objJsonResult.data = 1; |
| | | // return objJsonResult; |
| | | //} |
| | | |
| | | sendworksub.HEntryID = i; |
| | | sendworksub.HEntryCloseDate = DBUtility.ClsPub.isDate(DateTime.Now); |
| | | sendworksub.HRemark = ""; |
| | | sendworksub.HCloseMan = ""; |
| | | sendworksub.HCloseType = false; |
| | | sendworksub.HSourceBillType = oItemSub.HBillType; |
| | | lss.Add(sendworksub);//先把数据存放到派工单子表集合里 |
| | | |
| | | |
| | | } |
| | | if (lss.Count > 0) |
| | | { |
| | | //然后再循环保存到派工单子表的集合里 |
| | | foreach (Model.ClsSc_ProcessSendWorkSub Itemsendwork in lss) |
| | | { |
| | | Sendwork.DetailColl.Add(Itemsendwork); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "保存失败!lss集合小于0"; |
| | | objJsonResult.data = 1; |
| | | return objJsonResult; |
| | | } |
| | | //保存 |
| | | //保存完毕后处理 |
| | | bool bResult; |
| | | if (Sendwork.omodel.HInterID == 0) |
| | | { |
| | | // bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo); |
| | | bResult = Sendwork.AddBill(ref DBUtility.ClsPub.sExeReturnInfo); |
| | | } |
| | | else |
| | | { |
| | | bResult = Sendwork.ModifyBill(Sendwork.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo); |
| | | } |
| | | if (bResult) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "保存成功!"; |
| | | //WebAPIController.Add_Log("送货单下推", UserName, "生成送货单"); |
| | | objJsonResult.data = 1; |
| | | return objJsonResult; |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.sExeReturnInfo; |
| | | objJsonResult.data = 1; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "保存失败!" + e.ToString(); |
| | | objJsonResult.data = 1; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 返回委外工单列表 |
| | | /// </summary> |
| | | /// <param name="sWhere"></param> |
| | | /// <returns></returns> |
| | | [Route("Sc_ProcessMangement/MES_WW_EntrustWorkOrderBillMain_Json")] |
| | | [HttpGet] |
| | | public object MES_WW_EntrustWorkOrderBillMain_Json(string sWhere) |
| | | { |
| | | DataSet ds; |
| | | try |
| | | { |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | if (sWhere == null || sWhere.Equals("")) |
| | | { |
| | | ds = oCN.RunProcReturn("select top 500 * from WW_EntrustWorkOrderBillMain ", "WW_EntrustWorkOrderBillMain"); |
| | | } |
| | | else |
| | | { |
| | | string sql1 = "select * from WW_EntrustWorkOrderBillMain where 1 = 1 "; |
| | | string sql = sql1 + sWhere; |
| | | ds = oCN.RunProcReturn(sql, "WW_EntrustWorkOrderBillMain"); |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "没有返回任何记录!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | return GetObjectJson(ds); |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 返回委外工序汇报单列表 |
| | | /// </summary> |
| | | /// <param name="sWhere"></param> |
| | | /// <returns></returns> |
| | | [Route("Sc_ProcessMangement/MES_Sc_StationOutBillMain_Json")] |
| | | [HttpGet] |
| | | public object MES_Sc_StationOutBillMain_Json(string sWhere) |
| | | { |
| | | DataSet ds; |
| | | try |
| | | { |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | if (sWhere == null || sWhere.Equals("")) |
| | | { |
| | | ds = oCN.RunProcReturn("select top 500 * from Sc_StationOutBillMain ", "Sc_StationOutBillMain"); |
| | | } |
| | | else |
| | | { |
| | | string sql1 = "select * from Sc_StationOutBillMain where 1 = 1 "; |
| | | string sql = sql1 + sWhere; |
| | | ds = oCN.RunProcReturn(sql, "Sc_StationOutBillMain"); |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "没有返回任何记录!" + e.ToString(); |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | return GetObjectJson(ds); |
| | | } |
| | | |
| | | |
| | | // |
| | | } |
| | | } |