杨乐
2022-03-15 45ff656a53848046d6a2a457a00c22ab1e357513
生产叫料平台
2个文件已修改
3个文件已添加
851 ■■■■■ 已修改文件
WebAPI/Controllers/CJGL/Cj_CallGoodsBillMainController.cs 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/SCGL/Sc_CallGoodsBackRequestBillController.cs 115 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs 610 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/SCGL/Sc_ComplementGoodsController.cs 84 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/WebAPI.csproj 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/CJGL/Cj_CallGoodsBillMainController.cs
@@ -50,5 +50,41 @@
        }
        #endregion
        #region 叫料表列表 删除
        [Route("Cj_CallGoodsBillMain/DelCallGoodsBill")]
        [HttpGet]
        public object DelCallGoodsBill(string HInterID,string HEntryID, string user)
        {
            try
            {
                //判断是否有查询权限
                if (!DBUtility.ClsPub.Security_Log("Cj_CallGoodsBill_Drop", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无查询权限";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                ds = oCN.RunProcReturn($"exec h_p_JIT_CallGoodsBillList_Delete {HInterID},{HEntryID}", "h_p_JIT_CallGoodsBillList_Delete");
                objJsonResult.code = ds.Tables[0].Rows[0][0].ToString();
                objJsonResult.count =int.Parse(ds.Tables[0].Rows[0][0].ToString());
                objJsonResult.Message = ds.Tables[0].Rows[0][1].ToString();
                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;
            }
        }
        #endregion
    }
}
WebAPI/Controllers/SCGL/Sc_CallGoodsBackRequestBillController.cs
New file
@@ -0,0 +1,115 @@
using System.Data;
using System.Data.SqlClient;
using System.Web.Http;
using WebAPI.Models;
using Newtonsoft.Json;
using DBUtility;
using System;
namespace WebAPI.Controllers.SCGL
{
    public class Sc_CallGoodsBackRequestBillController : ApiController
    {
        private json objJsonResult = new json();
        public DataSet ds = new DataSet();
        public WebServer webserver = new WebServer();
        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
        #region 退料申请单 列表
        public class CallGoodsBackRequest
        {
            public string HBillNo { get; set; }//报废单号
            public string HOrgID { get; set; }//组织
            public string MaterialNumber { get; set; }//物料代码
            public string MaterialName { get; set; }//物料名称
            public string MaterialModel { get; set; }//规格型号
            public string HDeptName { get; set; }//生产车间
            public DateTime HBeginDate { get; set; }//开始时间
            public DateTime HEndDate { get; set; }//结束时间
            public string ProcMul { get; set; }//工段
            public string Hmaker { get; set; }//当前登录人
        }
        [Route("Sc_CallGoodsBackRequestBill/JIT_CallGoodsBackRequestBillList")]
        [HttpGet]
        public object JIT_CallGoodsBackRequestBillList(string sWhere, string user)
        {
            try
            {
                //查看权限
                if (!DBUtility.ClsPub.Security_Log("JIT_ComplementGoods", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无查看权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (sWhere == null || sWhere.Equals(""))
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "Sucess!";
                    objJsonResult.data = new DataTable();
                    return objJsonResult;
                }
                //反序列化传递的值
                CallGoodsBackRequest com = JsonConvert.DeserializeObject<CallGoodsBackRequest>(sWhere.ToString());
                ds = oCN.RunProcReturn($"exec h_p_JIT_BackGoodsRequestBillList_Query '{com.HBeginDate}','{com.HEndDate}','{com.HBillNo}','{com.MaterialNumber}'," +
                    $"'{com.MaterialName}','{com.MaterialModel}','{com.HDeptName}','{com.ProcMul}','{com.Hmaker}','{com.HOrgID}'", "h_p_JIT_BackGoodsRequestBillList_Query");
                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 退料申请单 删除
        [Route("Sc_CallGoodsBackRequestBill/DelCallGoodsBackRequestBill")]
        [HttpGet]
        public object DelCallGoodsBackRequestBill(string HInterID, string HEntryID, string user)
        {
            try
            {
                //判断是否有查询权限
                if (!DBUtility.ClsPub.Security_Log("JIT_ComplementGoods_Drop", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无查询权限";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                ds = oCN.RunProcReturn($"exec h_p_JIT_BackGoodsRequestBillList_Delete {HInterID},{HEntryID}", "h_p_JIT_BackGoodsRequestBillList_Delete");
                objJsonResult.code = ds.Tables[0].Rows[0][0].ToString();
                objJsonResult.count = int.Parse(ds.Tables[0].Rows[0][0].ToString());
                objJsonResult.Message = ds.Tables[0].Rows[0][1].ToString();
                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;
            }
        }
        #endregion
    }
}
WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs
New file
@@ -0,0 +1,610 @@
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;
using Newtonsoft.Json;
using DBUtility;
namespace WebAPI.Controllers.SCGL
{
    public class Sc_ComplementGoodBillController : ApiController
    {
        private json objJsonResult = new json();
        public DataSet ds = new DataSet();
        public WebServer webserver = new WebServer();
        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
        public ClsXt_BaseBillMain omodel = new ClsXt_BaseBillMain();
        public JIT_CallGoodsBillSub oSub = new JIT_CallGoodsBillSub();
        #region 生产叫料平台列表
        //创建临时类 查询条件子段
        public class ComplementGoodBill
        {
            public string HSeOrderBillNo { get; set; }//销售订单
            public string DepartmentName { get; set; }//生产车间
            public string Organization { get; set; }//组织
            public string MaterialNumber { get; set; }//物料代码
            public string MaterialName { get; set; }//物料名称
            public string MaterialModel { get; set; }//规格型号
            public string CPNumber { get; set; }//产品代码
            public string CPName { get; set; }//产品名称
            public string CPModel { get; set; }//规格型号
            public string HICMOBillNo { get; set; }//生产订单号
            public DateTime HBeginDate { get; set; }//开始时间
            public DateTime HEndDate { get; set; }//结束时间
            public int ps { get; set; }//仅显示未完全配送
            public string user { get; set; }//当前登录人
        }
        [Route("Sc_ComplementGoodBill/ComplementGoodBillList")]
        [HttpGet]
        public object ComplementGoodBillList(string sWhere, string user)
        {
            try
            {
                //查看权限
                if (!DBUtility.ClsPub.Security_Log("JIT_ComplementGoodBillMain_Query", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无查看权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (sWhere == null || sWhere.Equals(""))
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "Sucess!";
                    objJsonResult.data = new DataTable();
                    return objJsonResult;
                }
                //反序列化传递的值
                ComplementGoodBill com = JsonConvert.DeserializeObject<ComplementGoodBill>(sWhere.ToString());
                ds = oCN.RunProcReturn($"exec h_p_JIT_CallGoodsPlatForm_Query '{com.HSeOrderBillNo}','{com.DepartmentName}','{com.MaterialNumber}','{com.MaterialName}'," +
                    $"'{com.MaterialModel}','{com.HICMOBillNo}','{com.CPNumber}','{com.CPName}','{com.CPModel}','{com.HBeginDate}','{com.HEndDate}'," +
                    $"{com.ps},{com.Organization},'{com.user}' ", "h_p_JIT_CallGoodsPlatForm_Query");
                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 生产叫料平台  叫料新增
        //临时表  叫料单据字段
        public class CallGoodsBill
        {
            public static readonly string ModName = "4601";
            public long HSouceInterID = 0;//HSourceInterIDCol
            public long HSourceEntryID = 0;//HSourceEntryIDCol
            public int? 叫料数量 = 0;//HBHGQtyCol
            public double? 退料数量 = 0;//退料数量
            public long HSTOCKID = 0;//HSTOCKID
            public string 退料原因 { get; set; }//退料原因
            public int HMaterialID = 0; //HMaterialIDCol
            public string HSourceBillNo { get; set; }//HSourceBillNoCol
            public int 调出仓库可用库存数量 = 0;//HKFQtyKYCol
            public int 调出仓库库存数量 = 0;//HKFQtySCol
            public double 计划发料数量 = 0;//HPlanQtyCol
            public int HWHID = 0;//HWHIDCol
            public string HMaterialNumberCol { get; set; }
            public string HMaterialModelCol { get; set; }
            public string HProcIDCol { get; set; }//HProcID
            public string HProcNameCol { get; set; }//工段
            public int HOutOrgIDCol = 0;//HOutOrgID
            public string  HICMOBillNoCol { get; set; }//HICMOBillNo
            public long HICMOInterIDCol = 0;//HICMOInterID
            public long HICMOEntryIDCol = 0;//HICMOEntryID
            public long HDeptIDCol = 0;//HDeptID
            public double HBHGQtyCol = 0;
            public string 销售订单号 { get; set; }//HSeOrderNOCol
            public DateTime? 计划开工日期 = null;//HBPlanDateCol
        }
        //临时表  叫料子表
        public class JIT_CallGoodsBillSub: ClsXt_BaseBillSub
        {
            public double HQty;
            public long HMaterID;
            public string HMaterNumber;
            public string HProcName;
            public string HModel;
            public string HProcID;
            public string HICMOBillNo;
            public string HSeOrderNOCol;
            public string HSeOrderNo;
            public string HSeOrderBillNo;
            public int HWHID = 0;
            public long HOutOrgID = 0;
            public long HICMOInterID = 0;
            public long HICMOEntryID = 0;
            public long HSeOrderInterID = 0;
            public long HSeOrderEntryID = 0;
            public long HDeptID = 0;
            public double HPlanQty = 0;
            public int HSPID = 0;
            public DateTime? HBPlanDate = null;
        }
        [Route("Sc_ComplementGoodBill/InsertCallGoodsBill")]
        [HttpPost]
        public object InsertCallGoodsBill([FromBody] JObject msg)
        {
            var _value = msg["msg"].ToString();
            string[] sArray = _value.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
            string msg2 = sArray[0].ToString();
            string user = sArray[1].ToString();
            try
            {
                if (!DBUtility.ClsPub.Security_Log("Cj_CallGoodsBill_Edit", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无保存权限";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                msg2 = msg2.Replace("\\", "");
                msg2 = msg2.Replace("\n", "");
                List<CallGoodsBill> listCa = new List<CallGoodsBill>();
                //获取表格数据集合
                listCa = JsonConvert.DeserializeObject<List<CallGoodsBill>>(msg2.ToString());
                int j = 0;
                var flag = false;
                var txt = "";
                for (int i = 0; i < listCa.Count; i++)
                {
                    if (listCa[i].HMaterialID != 0 && listCa[i].叫料数量 > 0)
                    {
                        j = 1;
                        var txtHBillNo = DBUtility.ClsPub.CreateBillCode_Prod(CallGoodsBill.ModName, ref DBUtility.ClsPub.sExeReturnInfo, true);//获得一个新的单据号
                        omodel.HInterID = DBUtility.ClsPub.CreateBillID_Prod(CallGoodsBill.ModName, ref DBUtility.ClsPub.sExeReturnInfo);
                        omodel.HYear = DateTime.Now.Year;
                        omodel.HPeriod = DateTime.Now.Month;
                        //固定赋值=================================
                        omodel.HBillNo = txtHBillNo.Trim();  //在赋值类前就处理好字符串和数字
                        omodel.HDate = DateTime.Now;
                        omodel.HMaker = user;
                        omodel.HMakeDate = DateTime.Today.ToString();
                        omodel.HUpDater = "";
                        omodel.HUpDateDate = "";
                        omodel.HCloseType = false;
                        //明细类赋值
                        //固定赋值========================================
                        oSub.HEntryID = i + 1;
                        oSub.HSourceInterID =listCa[i].HSouceInterID;
                        oSub.HSourceEntryID = listCa[i].HSourceEntryID;
                        oSub.HSourceBillType = "88";
                        oSub.HSourceBillNo = listCa[i].HSourceBillNo;
                        oSub.HQty =double.Parse(listCa[i].叫料数量.ToString());
                        //if (oSub.HQty <= 0)
                        //{
                        //    objJsonResult.code = "0";
                        //    objJsonResult.count = 0;
                        //    objJsonResult.Message = $"第{i+1}行,叫料数量不能为0或者小于0";
                        //    objJsonResult.data = null;
                        //    return objJsonResult;
                        //}
                        //if (oSub.HQty > listCa[i].调出仓库可用库存数量)
                        //{
                        //    objJsonResult.code = "0";
                        //    objJsonResult.count = 0;
                        //    objJsonResult.Message = $"第{i+1}行,叫料数量大于该物料调出仓库可用库存数量";
                        //    objJsonResult.data = null;
                        //    return objJsonResult;
                        //}
                        oSub.HMaterID = listCa[i].HMaterialID;
                        oSub.HMaterNumber = listCa[i].HMaterialNumberCol;
                        oSub.HModel = listCa[i].HMaterialModelCol;
                        oSub.HWHID = listCa[i].HWHID;
                        oSub.HProcName = listCa[i].HProcNameCol;
                        oSub.HProcID = listCa[i].HProcIDCol;
                        oSub.HOutOrgID = listCa[i].HOutOrgIDCol;
                        oSub.HICMOBillNo = listCa[i].HICMOBillNoCol;
                        oSub.HICMOInterID = listCa[i].HICMOInterIDCol;
                        oSub.HICMOEntryID = listCa[i].HICMOEntryIDCol;
                        oSub.HDeptID = listCa[i].HDeptIDCol;
                        oSub.HPlanQty = listCa[i].计划发料数量;
                        oSub.HSeOrderNo = listCa[i].销售订单号;
                        oSub.HBPlanDate = listCa[i].计划开工日期;
                        flag = AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
                        if (flag == false)
                        {
                            txt = txt + DBUtility.ClsPub.isStrNull(i + 1) + "、";
                        }
                    }
                }
                if (txt != "")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = $"第{txt}行叫料失败,重新叫料,其他行数叫料成功";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    if (flag == true)
                    {
                        objJsonResult.code = "1";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "叫料成功!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                if (j == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    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 bool AddBill(ref string sReturn)
        {
            try
            {
                //插入子表
                oCN.RunProc("Insert into JIT_CallGoodsBillSub " +
                      " (HInterID,HEntryID,HRemark" +
                      ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
                      ",HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo,HICMOInterID,HICMOEntryID,HICMOBillNo" +
                      ",HDeptID,HMaterID,HQty,HProcID,HWHID,HSPID,HBillNo_bak" +
                      ") values("
                      + omodel.HInterID.ToString() + "," + oSub.HEntryID.ToString() + ",'" + oSub.HRemark + "'" +
                      "," + oSub.HSourceInterID.ToString() + "," + oSub.HSourceEntryID.ToString() + ",'" + oSub.HSourceBillNo + "','" + oSub.HSourceBillType + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() +
                      "," + oSub.HSeOrderInterID.ToString() + "," + oSub.HSeOrderEntryID.ToString() + ",'" + oSub.HSeOrderBillNo + "'," + oSub.HICMOInterID.ToString() + "," + oSub.HICMOEntryID.ToString() + ",'" + oSub.HICMOBillNo + "'" +
                      "," + oSub.HDeptID.ToString() + "," + oSub.HMaterID.ToString() + "," + oSub.HQty.ToString() + ",'" + oSub.HProcID + "'," + oSub.HWHID.ToString() + ", " + oSub.HSPID.ToString() +",'') ", ref DBUtility.ClsPub.sExeReturnInfo);
                //主表
                oCN.RunProc("Insert Into JIT_CallGoodsBillMain   " +
                "(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
                ",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
                ",HBillStatus,HCheckItemNowID,HCheckItemNextID,HCheckFlowID" +
                ",HMainSourceBillType,HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo" +
                ",HBacker,HBackDate,HBackRemark,HChecker,HCheckDate,HUpDater,HUpDateDate " +
                ",HCloseMan,HCloseDate,HCloseType,HDeleteMan,HDeleteDate " +
                ",HPrintQty,HCallManID,HSendManID,HCallType,HWareManID) " +
                " values('" + CallGoodsBill.ModName + "','" + CallGoodsBill.ModName + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','" + omodel.HDate + "'" +
                ", " + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + omodel.HMaker + "',getdate()" +
                ",'" + omodel.HBillStatus + "'," + omodel.HCheckItemNowID.ToString() + "," + omodel.HCheckItemNextID.ToString() + ", " + omodel.HCheckFlowID.ToString() +
                ",'" + omodel.HMainSourceBillType + "'," + omodel.HMainSourceInterID.ToString() + "," + omodel.HMainSourceEntryID.ToString() + ", '" + omodel.HMainSourceBillNo + "'" +
                ",'" + omodel.HBacker + "','" + omodel.HBackDate + "','" + omodel.HBackRemark + "', '" + omodel.HChecker + "','" + omodel.HCheckDate + "', '" + omodel.HUpDater + "',''" +
                ",'" + omodel.HCloseMan + "','" + omodel.HCloseDate + "','" + omodel.HCloseType + "', '" + omodel.HDeleteMan + "','" + omodel.HDeleteDate + "'" +
                ",0,0,0,'普通',0) ", ref DBUtility.ClsPub.sExeReturnInfo);
                sReturn = "新增单据成功!";
                //oCn.Commit();
                return true;
            }
            catch (Exception e)
            {
                sReturn = e.Message;
                throw (e);
            }
        }
        #endregion
        #region 生产叫料平台  不良品退料申请单新增
        [Route("Sc_ComplementGoodBill/Insert_BLP_ICStockTuiBill")]
        [HttpPost]
        public object Insert_BLP_ICStockTuiBill([FromBody] JObject msg)
        {
            var _value = msg["msg"].ToString();
            string[] sArray = _value.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
            string msg2 = sArray[0].ToString();
            string user = sArray[1].ToString();
            string HOrgID = sArray[2].ToString();
            try
            {
                if (!DBUtility.ClsPub.Security_Log("JIT_BLP_ComplementGoods_Edit", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无保存权限";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                msg2 = msg2.Replace("\\", "");
                msg2 = msg2.Replace("\n", "");
                List<CallGoodsBill> listCa = new List<CallGoodsBill>();
                //获取表格数据集合
                listCa = JsonConvert.DeserializeObject<List<CallGoodsBill>>(msg2.ToString());
                if (listCa[0].退料数量 > 0)
                {
                    Int64 lngBillKey = listCa[0].HSouceInterID == 0 ? 0 : listCa[0].HSouceInterID;
                    Int64 lngBillKeyEntry = listCa[0].HSourceEntryID == 0 ? 0 : listCa[0].HSourceEntryID;
                    double HQty = (double)(listCa[0].退料数量 == 0 ? 0 : listCa[0].退料数量);
                    long HDeptWHID = listCa[0].HSTOCKID == 0 ? 0 : listCa[0].HSTOCKID;
                    string HTuiResult = listCa[0].退料原因 == "" ? "" : listCa[0].退料原因;
                    var HBillNo = DBUtility.ClsPub.CreateBillCode_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo, true);//获得一个新的单据号
                    var HBillInterID = DBUtility.ClsPub.CreateBillID_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo);
                    ds = oCN.RunProcReturn("exec h_p_JIT_BadGoodsRequest_Insert  " + lngBillKey.ToString() + " , " + lngBillKeyEntry.ToString() + " ,  '" + user + "'  ," + HQty.ToString() + " ," + HOrgID.ToString() + " , '" + HBillNo + "' ," + HBillInterID.ToString() + "," + HDeptWHID.ToString() + ",'" + HTuiResult + "'", "h_p_JIT_GoodsRequestBad_Insert");
                    if (int.Parse(ds.Tables[0].Rows[0][0].ToString()) == 1)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "无任何退料数量,无法退料!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    else
                    {
                        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;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region 生产叫料平台  余量退料申请单新增
        [Route("Sc_ComplementGoodBill/Insert_YL_ICStockTuiBill")]
        [HttpPost]
        public object Insert_YL_ICStockTuiBill([FromBody] JObject msg)
        {
            var _value = msg["msg"].ToString();
            string[] sArray = _value.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
            string msg2 = sArray[0].ToString();
            string user = sArray[1].ToString();
            string HOrgID = sArray[2].ToString();
            try
            {
                if (!DBUtility.ClsPub.Security_Log("JIT_YL_ComplementGoods_Edit", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无保存权限";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                msg2 = msg2.Replace("\\", "");
                msg2 = msg2.Replace("\n", "");
                List<CallGoodsBill> listCa = new List<CallGoodsBill>();
                //获取表格数据集合
                listCa = JsonConvert.DeserializeObject<List<CallGoodsBill>>(msg2.ToString());
                if (listCa[0].退料数量 > 0)
                {
                    Int64 lngBillKey = listCa[0].HSouceInterID == 0 ? 0 : listCa[0].HSouceInterID;
                    Int64 lngBillKeyEntry = listCa[0].HSourceEntryID == 0 ? 0 : listCa[0].HSourceEntryID;
                    double HQty = (double)(listCa[0].退料数量 == 0 ? 0 : listCa[0].退料数量);
                    long HDeptWHID = listCa[0].HSTOCKID == 0 ? 0 : listCa[0].HSTOCKID;
                    string HTuiResult = listCa[0].退料原因 == "" ? "" : listCa[0].退料原因;
                    var HBillNo = DBUtility.ClsPub.CreateBillCode_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo, true);//获得一个新的单据号
                    var HBillInterID = DBUtility.ClsPub.CreateBillID_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo);
                    ds = oCN.RunProcReturn("exec h_p_JIT_MarginGoodsRequest_Insert  " + lngBillKey.ToString() + " , " + lngBillKeyEntry.ToString() + " ,  '" + user + "'  ," + HQty.ToString() + " ," + HOrgID.ToString() + " , '" + HBillNo + "' ," + HBillInterID.ToString() + "," + HDeptWHID.ToString() + ",'" + HTuiResult + "'", "h_p_JIT_GoodsRequestMargin_Insert");
                    if (int.Parse(ds.Tables[0].Rows[0][0].ToString()) == 1)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "无任何退料数量,无法退料!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    else
                    {
                        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;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region 生产叫料平台  报废退料申请单新增
        [Route("Sc_ComplementGoodBill/Insert_BF_ICStockTuiBill")]
        [HttpPost]
        public object Insert_BF_ICStockTuiBill([FromBody] JObject msg)
        {
            var _value = msg["msg"].ToString();
            string[] sArray = _value.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
            string msg2 = sArray[0].ToString();
            string user = sArray[1].ToString();
            string HOrgID = sArray[2].ToString();
            try
            {
                if (!DBUtility.ClsPub.Security_Log("JIT_YL_ComplementGoods_Edit", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无保存权限";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                msg2 = msg2.Replace("\\", "");
                msg2 = msg2.Replace("\n", "");
                List<CallGoodsBill> listCa = new List<CallGoodsBill>();
                //获取表格数据集合
                listCa = JsonConvert.DeserializeObject<List<CallGoodsBill>>(msg2.ToString());
                if (listCa[0].退料数量 > 0)
                {
                    Int64 lngBillKey = listCa[0].HSouceInterID == 0 ? 0 : listCa[0].HSouceInterID;
                    Int64 lngBillKeyEntry = listCa[0].HSourceEntryID == 0 ? 0 : listCa[0].HSourceEntryID;
                    double HQty = (double)(listCa[0].退料数量 == 0 ? 0 : listCa[0].退料数量);
                    long HDeptWHID = listCa[0].HSTOCKID == 0 ? 0 : listCa[0].HSTOCKID;
                    string HTuiResult = listCa[0].退料原因 == "" ? "" : listCa[0].退料原因;
                    var HBillNo = DBUtility.ClsPub.CreateBillCode_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo, true);//获得一个新的单据号
                    var HBillInterID = DBUtility.ClsPub.CreateBillID_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo);
                    ds = oCN.RunProcReturn("exec h_p_JIT_ScrapGoodsRequest_Insert  " + lngBillKey.ToString() + " , " + lngBillKeyEntry.ToString() + " ,  '" + user + "'  ," + HQty.ToString() + " ," + HOrgID.ToString() + " , '" + HBillNo + "' ," + HBillInterID.ToString() + "," + HDeptWHID.ToString() + ",'" + HTuiResult + "'", "h_p_JIT_GoodsRequestMargin_Insert");
                    if (int.Parse(ds.Tables[0].Rows[0][0].ToString()) == 1)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "无任何退料数量,无法退料!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    else
                    {
                        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;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region 生产叫料平台  叫料拣料信息查询
        //查询条件
        public class HlpBill
        {
            public int HSouceInterID = 0;
            public int HSourceEntryID = 0;
            public string user { get; set; }
        }
        [Route("Sc_ComplementGoodBill/HlpBillList")]
        [HttpGet]
        public object HlpBillList(string sWhere)
        {
            try
            {
                //反序列化传递的值
                HlpBill com = JsonConvert.DeserializeObject<HlpBill>(sWhere.ToString());
                ds = oCN.RunProcReturn($"exec h_p_JIT_CallGoodsPlatForm_DownQuery 0,0,'',0,0,'{com.HSouceInterID}','{com.HSourceEntryID}'"+
                    $"'{com.user}'", "h_p_JIT_CallGoodsPlatForm_DownQuery");
                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
    }
}
WebAPI/Controllers/SCGL/Sc_ComplementGoodsController.cs
New file
@@ -0,0 +1,84 @@
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;
using Newtonsoft.Json;
using DBUtility;
namespace WebAPI.Controllers.SCGL
{
    public class Sc_ComplementGoodsController : ApiController
    {
        private json objJsonResult = new json();
        public DataSet ds = new DataSet();
        public WebServer webserver = new WebServer();
        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
        #region 拣料配送单列表
        public class ComplementGoods
        {
            public string MaterialNumber { get; set; }//物料代码
            public string MaterialName { get; set; }//物料名称
            public string MaterialModel { get; set; }//规格型号
            public string HGD { get; set; }//工段
            public string HWHName { get; set; }//仓库
            public string Organization { get; set; }//组织
            public DateTime HBeginDate { get; set; }//开始时间
            public DateTime HEndDate { get; set; }//结束时间
            public string HDeptName { get; set; }//部门
            public string HJLStatus { get; set; }//拣料状态
            public string user { get; set; }//制单人
        }
        [Route("Sc_ComplementGoods/ComplementGoodsList")]
        [HttpGet]
        public object ComplementGoodBillList(string sWhere, string user)
        {
            try
            {
                //查看权限
                if (!DBUtility.ClsPub.Security_Log("Cj_ComplementGoodsBill_Query", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无查看权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (sWhere == null || sWhere.Equals(""))
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "Sucess!";
                    objJsonResult.data = new DataTable();
                    return objJsonResult;
                }
                //反序列化传递的值
                ComplementGoods com = JsonConvert.DeserializeObject<ComplementGoods>(sWhere.ToString());
                ds = oCN.RunProcReturn($"exec h_p_JIT_ComplementGoodsBillList_Query '{com.MaterialNumber}','{com.MaterialName}','{com.MaterialModel}','{com.HGD}'," +
                    $"'{com.HWHName}','{com.HDeptName}','{com.Organization}','{com.user}','{com.HJLStatus}','{com.HBeginDate}','{com.HEndDate}'" ,"h_p_JIT_ComplementGoodsBillList_Query");
                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
    }
}
WebAPI/WebAPI.csproj
@@ -358,6 +358,9 @@
    <Compile Include="Controllers\CJGL\Cj_StationInBillController.cs" />
    <Compile Include="Controllers\CJGL\Cj_StationEntrustOutBillController.cs" />
    <Compile Include="Controllers\CJGL\Sc_WorkBillAutoSortBillMainController.cs" />
    <Compile Include="Controllers\SCGL\Sc_CallGoodsBackRequestBillController.cs" />
    <Compile Include="Controllers\SCGL\Sc_ComplementGoodBillController.cs" />
    <Compile Include="Controllers\SCGL\Sc_ComplementGoodsController.cs" />
    <Compile Include="Controllers\SCGL\Sc_ICBomBillController.cs" />
    <Compile Include="Controllers\Sc_PckSplitBillController.cs" />
    <Compile Include="Controllers\GZGL\Gy_DuSubsidyItemBillController.cs" />
@@ -794,6 +797,9 @@
    <Folder Include="Views\ProductionReturnBill\" />
    <Folder Include="Views\QC_Management\" />
    <Folder Include="Views\Sb_EquipRepairSendWorkBill\" />
    <Folder Include="Views\Sc_CallGoodsBackRequestBill\" />
    <Folder Include="Views\Sc_ComplementGoodBill\" />
    <Folder Include="Views\Sc_ComplementGoods\" />
    <Folder Include="Views\Sc_MouldRepairOutBill\" />
    <Folder Include="Views\Sc_MouldRepairSendWorkBill\" />
    <Folder Include="Views\Sc_WorkBillAutoSortBillMain\" />