1.App采购入库选择有到货采购订单接口开发
2.App选择采购订单带出订单下有到货的物料信息接口
3.App采购入库扫描标签条码带出标签信息接口
已添加1个文件
已修改9个文件
453 ■■■■■ 文件已修改
.vs/VueWebApi/v16/.suo 补丁 | 查看 | 原始文档 | blame | 历史
VueWebApi/Controllers/AppPurchManagementController.cs 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VueWebApi/Controllers/BaseDateController.cs 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VueWebApi/DLL/BLL/AppPurchManagementBLL.cs 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VueWebApi/DLL/BLL/BaseDateBLL.cs 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VueWebApi/DLL/DAL/AppPurchManagementDAL.cs 139 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VueWebApi/DLL/DAL/BaseDateDAL.cs 86 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VueWebApi/Tools/LabCodeStatusMessage.cs 82 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VueWebApi/VueWebApi.csproj 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
VueWebApi/obj/Release/VueWebApi.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
.vs/VueWebApi/v16/.suo
Binary files differ
VueWebApi/Controllers/AppPurchManagementController.cs
@@ -27,7 +27,7 @@
        /// <returns></returns>
        [Route(template: "MesAppPurchOrderSearch")]
        [HttpGet]
        public HttpResponseMessage MesAppPurchOrderSearch(string purchordercode)
        public HttpResponseMessage MesAppPurchOrderSearch(string purchordercode=null)
        {
            mes = AppPurchManagementBLL.MesAppPurchOrderSearch(purchordercode);
            return TJson.toJson(mes);
@@ -83,5 +83,61 @@
            return TJson.toJson(mes);
        }
        #endregion
        #region[采购入库选择有到货采购订单]
        /// <summary>
        /// é‡‡è´­å…¥åº“选择有到货采购订单
        /// </summary>
        /// <returns></returns>
        [Route(template: "MesAppPurchInStorSelectCGOrder")]
        [HttpGet]
        public HttpResponseMessage MesAppPurchInStorSelectCGOrder()
        {
            mes = AppPurchManagementBLL.MesAppPurchInStorSelectCGOrder();
            return TJson.toJson(mes);
        }
        #endregion
        #region[选择采购订单带出订单下有到货的物料信息]
        /// <summary>
        /// é€‰æ‹©é‡‡è´­è®¢å•带出订单下有到货的物料信息
        /// </summary>
        /// <param name="ordercode">采购订单号</param>
        /// <returns></returns>
        [Route(template: "MesAppPurchInStorSelectCGOrderPart")]
        [HttpGet]
        public HttpResponseMessage MesAppPurchInStorSelectCGOrderPart(string ordercode)
        {
            mes = AppPurchManagementBLL.MesAppPurchInStorSelectCGOrderPart(ordercode);
            return TJson.toJson(mes);
        }
        #endregion
        #region[采购入库扫描标签条码带出标签信息]
        /// <summary>
        /// é‡‡è´­å…¥åº“扫描标签条码带出标签信息
        /// </summary>
        /// <param name="labcode">标签条码</param>
        /// <param name="ordercode">采购订单号</param>
        /// <returns></returns>
        [Route(template: "MesAppPurchInStorScanLabCode")]
        [HttpGet]
        public HttpResponseMessage MesAppPurchInStorScanLabCode(string labcode,string ordercode)
        {
            mes = AppPurchManagementBLL.MesAppPurchInStorScanLabCode(labcode, ordercode);
            return TJson.toJson(mes);
        }
        #endregion
        #region[采购入库提交]
        [Route(template: "MesAppPurchInStorSave")]
        [HttpGet]
        public HttpResponseMessage MesAppPurchInStorSave()
        {
            //mes = AppPurchManagementBLL.MesAppPurchInStorSave();
            return TJson.toJson(mes);
        }
        #endregion
    }
}
VueWebApi/Controllers/BaseDateController.cs
@@ -45,5 +45,48 @@
            return TJson.toJson(mes);
        }
        #endregion
        #region[仓库信息查询]
        /// <summary>
        /// ä»“库信息查询
        /// </summary>
        /// <returns>StoreHouseSearch</returns>
        [Route(template: "StoreHouseSearch")]
        [HttpGet]
        public HttpResponseMessage StoreHouseSearch()
        {
            mes = BaseDateBLL.StoreHouseSearch();
            return TJson.toJson(mes);
        }
        #endregion
        #region[库位信息查询]
        /// <summary>
        /// åº“位信息查询
        /// </summary>
        /// <returns></returns>
        [Route(template: "WarehouseLocationSearch")]
        [HttpGet]
        public HttpResponseMessage WarehouseLocationSearch()
        {
            mes = BaseDateBLL.WarehouseLocationSearch();
            return TJson.toJson(mes);
        }
        #endregion
        #region[库位查询仓库]
        /// <summary>
        /// åº“位查询仓库
        /// </summary>
        /// <param name="locationcode">库位编码</param>
        /// <returns></returns>
        [Route(template: "WarehouseLocationSearchStoreHouse")]
        [HttpGet]
        public HttpResponseMessage WarehouseLocationSearchStoreHouse(string locationcode)
        {
            mes = BaseDateBLL.WarehouseLocationSearchStoreHouse(locationcode);
            return TJson.toJson(mes);
        }
        #endregion
    }
}
VueWebApi/DLL/BLL/AppPurchManagementBLL.cs
@@ -37,5 +37,28 @@
            return AppPurchManagementDAL.MesAppPurchOrderSave(purordercode, orderstaus, username, json);
        }
        #endregion
        #region[采购入库选择有到货采购订单]
        public static ToMessage MesAppPurchInStorSelectCGOrder()
        {
            return AppPurchManagementDAL.MesAppPurchInStorSelectCGOrder();
        }
        #endregion
        #region[选择采购订单带出订单下有到货的物料信息]
        public static ToMessage MesAppPurchInStorSelectCGOrderPart(string ordercode)
        {
            return AppPurchManagementDAL.MesAppPurchInStorSelectCGOrderPart(ordercode);
        }
        #endregion
        #region[采购入库扫描标签条码带出到货单信息]
        public static ToMessage MesAppPurchInStorScanLabCode(string labcode,string ordercode)
        {
            return AppPurchManagementDAL.MesAppPurchInStorScanLabCode(labcode, ordercode);
        }
        #endregion
    }
}
VueWebApi/DLL/BLL/BaseDateBLL.cs
@@ -22,5 +22,26 @@
            return BaseDateDAL.DepartMentSelect();
        }
        #endregion
        #region[仓库信息查询]
        public static ToMessage StoreHouseSearch()
        {
            return BaseDateDAL.StoreHouseSearch();
        }
        #endregion
        #region[库位信息查询]
        public static ToMessage WarehouseLocationSearch()
        {
            return BaseDateDAL.WarehouseLocationSearch();
        }
        #endregion
        #region[库位查询仓库]
        public static ToMessage WarehouseLocationSearchStoreHouse(string locationcode)
        {
            return BaseDateDAL.WarehouseLocationSearchStoreHouse(locationcode);
        }
        #endregion
    }
}
VueWebApi/DLL/DAL/AppPurchManagementDAL.cs
@@ -170,7 +170,7 @@
                for (int i = 0; i < json.Count; i++)
                {
                    //写入采购到货单子表
                    sql = @"insert into T_PurchaseArrivalOrder_sub(hbillno,hpartcode,hplanqty,hqty,hacceptdate,hischeck,hbatchno)
                    sql = @"insert into T_PurchaseArrivalOrder_sub(hbillno,rownumber,hpartcode,hplanqty,hqty,hacceptdate,hischeck,hbatchno)
                        values(@hbillno,@hpartcode,@hplanqty,@hqty,@hacceptdate,@hischeck,@hbatchno)";
                    list.Add(new
                    {
@@ -178,6 +178,7 @@
                        parm = new
                        {
                            hbillno = djwo,
                            rownumber=json[i].rownumber,
                            hpartcode = json[i].hpartcode,
                            hplanqty = decimal.Parse(json[i].hplanqty),
                            hqty = decimal.Parse(json[i].hqty),
@@ -248,7 +249,7 @@
                    mes.code = "200";
                    mes.count = 0;
                    mes.Message = "采购到货成功!";
                    mes.data = null;
                    mes.data = djwo;
                }
                else
                {
@@ -268,5 +269,139 @@
            return mes;
        }
        #endregion
        #region[采购入库选择有到货采购订单]
        public static ToMessage MesAppPurchInStorSelectCGOrder()
        {
            string sql = "";
            var dynamicParams = new DynamicParameters();
            try
            {
                //有到货或者部分入库的采购订单
                sql = @"select distinct A.ordercode   from T_PurchaseOrder A
                        inner join T_PurchaseArrivalOrder B on A.ordercode=B.hsourcebillno
                        where B.hbillstaus in('BINARIVE','INARIVE','BINSTOG')";
                var data = DapperHelper.selecttable(sql);
                if (data.Rows.Count > 0)
                {
                    mes.code = "200";
                    mes.Message = "success!";
                    mes.data = data;
                }
                else
                {
                    mes.code = "300";
                    mes.Message = "无可执行订单!";
                    mes.data = null;
                }
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
        #region[选择采购订单带出订单下有到货的物料信息]
        public static ToMessage MesAppPurchInStorSelectCGOrderPart(string ordercode)
        {
            string sql = "";
            var dynamicParams = new DynamicParameters();
            try
            {
                //选择采购订单带出订单下有到货的物料信息
                sql = @"select A.ordercode,M.partcode,M.partname,M.partspec,avg(S.hplanqty) as hplanqty,sum(S.hqty) as hqty
                        from T_PurchaseOrder A
                        inner join T_PurchaseArrivalOrder B on A.ordercode=B.hsourcebillno
                        inner join T_PurchaseArrivalOrder_sub S on B.hbillno=S.hbillno
                        left  join TMateriel_Info M on S.hpartcode=M.partcode
                        where B.hbillstaus in('BINARIVE','INARIVE','BINSTOG') and A.ordercode=@ordercode
                        group by A.ordercode,M.partcode,M.partname,M.partspec";
                dynamicParams.Add("@ordercode", ordercode);
                var data = DapperHelper.selectdata(sql, dynamicParams);
                if (data.Rows.Count > 0)
                {
                    mes.code = "200";
                    mes.Message = "success!";
                    mes.data = data;
                }
                else
                {
                    mes.code = "300";
                    mes.Message = "当前订单无可执行物料!";
                    mes.data = null;
                }
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
        #region[采购入库扫描标签条码带出到货单信息]
        public static ToMessage MesAppPurchInStorScanLabCode(string labcode,string ordercode)
        {
            string sql = "";
            var dynamicParams = new DynamicParameters();
            try
            {
                //判断条码状态
                mes = LabCodeStatusMessage.LabCodeStatus("2060", "1103",labcode);//功能编号、单据类型编码、标签编码
                if (mes.code == "300")
                {
                    return mes;
                }
                //判断扫描标签是否为当前选择采购订单下的到货单所生成标签
                sql = @"select *   from T_BarCodeBill where hsourcebillno=@ordercode";
                dynamicParams.Add("@ordercode", ordercode);
                var data0 = DapperHelper.selectdata(sql, dynamicParams);
                if (data0.Rows.Count < 0)
                {
                    mes.code = "300";
                    mes.Message = "当前条码不是采购订单【"+ ordercode + "】生成条码!";
                    mes.data = null;
                    return mes;
                }
                //根据标签条码查询到货生成的标签信息
                sql = @"select A.hbarcode,A.hbillno,A.hqty,A.hcustomercode,C.name as hcustomername,A.hbatchno,A.qualitystatus
                        from T_BarCodeBill A
                        left join TCustomer C on A.hcustomercode=C.code
                        where A.hbarcode=@labcode";
                dynamicParams.Add("@labcode", labcode);
                var data = DapperHelper.selectdata(sql, dynamicParams);
                if (data.Rows.Count > 0)
                {
                    mes.code = "200";
                    mes.Message = "success!";
                    mes.data = data;
                }
                else
                {
                    mes.code = "300";
                    mes.Message = "标签信息不存在!";
                    mes.data = null;
                }
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
    }
}
VueWebApi/DLL/DAL/BaseDateDAL.cs
@@ -1,4 +1,5 @@
using System;
using Dapper;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
@@ -65,5 +66,88 @@
            return mes;
        }
        #endregion
        #region[仓库信息查询]
        public static ToMessage StoreHouseSearch()
        {
            string sql = "";
            try
            {
                sql = @"select code,name  from T_Sec_Stck";
                var data = DapperHelper.selecttable(sql);
                mes.code = "200";
                mes.Message = "查询成功!";
                mes.data = data;
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
        #region[库位信息查询]
        public static ToMessage WarehouseLocationSearch()
        {
            string sql = "";
            try
            {
                sql = @"select code,name  from T_Sec_Loca";
                var data = DapperHelper.selecttable(sql);
                mes.code = "200";
                mes.Message = "查询成功!";
                mes.data = data;
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
        #region[库位查找仓库]
        public static ToMessage WarehouseLocationSearchStoreHouse(string locationcode)
        {
            string sql = "";
            var dynamicParams = new DynamicParameters();
            try
            {
                sql = @"select code,name  from T_Sec_Loca";
                var data = DapperHelper.selecttable(sql);
                if (data.Rows.Count <= 0)
                {
                    mes.code = "300";
                    mes.Message = "库位信息不存在!";
                    mes.data = null;
                    return mes;
                }
                sql = @"select A.code as locationcode,A.name as locationname,B.code as warehousecode,B.name as warehousename
                        from T_Sec_Loca A
                        inner join T_Sec_Stck B on A.stock_code=B.code
                        where A.code=@locationcode";
                dynamicParams.Add("@locationcode", locationcode);
                var data1 = DapperHelper.selectdata(sql, dynamicParams);
                mes.code = "200";
                mes.Message = "查询成功!";
                mes.data = data;
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
            }
            return mes;
        }
        #endregion
    }
}
VueWebApi/Tools/LabCodeStatusMessage.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,82 @@
using Dapper;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web;
namespace VueWebApi.Tools
{
    public class LabCodeStatusMessage
    {
        public static ToMessage mes = new ToMessage(); //定义全局返回信息对象
        #region[生产开报工:自制工序任务开报工判断:工单+工序条码]
        /// <summary>
        /// æ‰«ç ä¿¡æ¯ä¸ºå·¥å•+工序条码
        /// </summary>
        /// <param name="rightcode">功能编码</param>
        /// <param name="hbilltype">单据类型</param>
        /// <param name="hbarcode">条形码</param>
        /// <returns></returns>
        public static ToMessage LabCodeStatus(string rightcode, string hbilltype,string hbarcode)
        {
            var sql = "";
            DataTable dt;
            var dynamicParams = new DynamicParameters();
            mes.code = "200";
            try
            {
                //1.判断当前功能条码是否为系统生成有效条码
                sql = @"select *   from T_BarCodeBill where hbarcode=@hbarcode";
                dynamicParams.Add("@hbarcode", hbarcode);
                dt = DapperHelper.selectdata(sql, dynamicParams);
                if (dt.Rows.Count<=0)
                {
                    mes.code = "300";
                    mes.count = 0;
                    mes.Message = "当前条码在系统中不存在!";
                    mes.data = null;
                    return mes;
                }
                //2.判断当前功能条码是否为有效条码
                sql = @"select *   from T_BarCodeBill where hbarcode=@hbarcode and hbarcodestatus='Y'";
                dynamicParams.Add("@hbarcode", hbarcode);
                dt = DapperHelper.selectdata(sql, dynamicParams);
                if (dt.Rows.Count <= 0)
                {
                    mes.code = "300";
                    mes.count = 0;
                    mes.Message = "当前条码已停用!";
                    mes.data = null;
                    return mes;
                }
                //2.判断当前功能条码质量状态是否为不合格
                sql = @"select *   from T_BarCodeBill where hbarcode=@hbarcode and hbarcodestatus='Y'and qualitystatus='NG' ";
                dynamicParams.Add("@hbarcode", hbarcode);
                dt = DapperHelper.selectdata(sql, dynamicParams);
                if (dt.Rows.Count > 0)
                {
                    mes.code = "300";
                    mes.count = 0;
                    mes.Message = "当前条码质量状态不通过!";
                    mes.data = null;
                    return mes;
                }
            }
            catch (Exception e)
            {
                mes.code = "300";
                mes.count = 0;
                mes.Message = e.Message;
                mes.data = null;
                return mes;
            }
            return mes;
        }
        #endregion
    }
}
VueWebApi/VueWebApi.csproj
@@ -440,6 +440,7 @@
    <Compile Include="Tools\ImportExcelData.cs" />
    <Compile Include="Tools\JPushManage.cs" />
    <Compile Include="Tools\JwtTools.cs" />
    <Compile Include="Tools\LabCodeStatusMessage.cs" />
    <Compile Include="Tools\LogHelper.cs" />
    <Compile Include="Tools\NPOIHelper.cs" />
    <Compile Include="Tools\PrintMessage.cs" />
VueWebApi/obj/Release/VueWebApi.csproj.AssemblyReference.cache
Binary files differ