jt
2021-06-10 5d0d028456874576560552f5a5c4e8b801786f11
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
using HH.MData;
using HH.WMS.Common;
using HH.WMS.Entitys.Basic;
using MongoDB.Bson;
using MongoDB.Driver.Builders;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace HH.WMS.DAL.Pda
{
    public class NtApiDAL : DapperBaseDAL
    {
        #region 根据卸货区获取车牌号磅单号
        public DataTable GetPoundInfoByArea(string areaCode)
        {
            string sql = @" select CN_S_POUND_NO,CN_S_CAR_NO,CN_S_ITEM_TYPE from TN_ER_CAR_POUND 
                            where CN_S_UNLOCAD_AREA_CODE = @CN_S_UNLOCAD_AREA_CODE and CN_S_STATE = '执行中' ";
 
            return ExecuteDataTable(sql, new { CN_S_UNLOCAD_AREA_CODE = areaCode });
        }
        #endregion
 
        #region 根据卸货区获取码盘笼箱信息
        public List<TrayEncodeInfo> GetEncodeTrayByArea(string areaCode)
        {
            StringBuilder sbStr = new StringBuilder();
            sbStr.Append(" select a.CN_S_TRAY_CODE,a.CN_S_LOCATION_CODE,b.CN_S_ITEM_CODE,b.CN_S_ITEM_NAME,b.CN_F_QUANTITY,b.CN_S_MEASURE_UNIT ,b.CN_S_IN_AREA_CODE from tn_wm_b_tray_location  ");
            sbStr.Append(" a inner join TN_WM_B_TRAY_ITEM_MST b on a.CN_S_TRAY_CODE = b.CN_S_TRAY_CODE inner join TN_WM_B_LOCATION_EXT c on a.CN_S_LOCATION_CODE = c.CN_S_LOCATION_CODE where a.CN_S_STOCK_AREA='" + areaCode + "' ");
            sbStr.Append(" and c.CN_S_LOCATION_STATE = '" + Constants.Location_State_Normal +"'");
            return ExecuteQuery<TrayEncodeInfo>(sbStr.ToString());
        }
        #endregion
        #region 根据卸货区获取码盘笼箱信息
        public List<TrayEncodeInfo> GetGoodByTrayCode(string trayCode)
        {
            StringBuilder sbStr = new StringBuilder();
            sbStr.Append(" select a.CN_S_TRAY_CODE,a.CN_S_ITEM_CODE,a.CN_S_ITEM_NAME,a.CN_F_QUANTITY,a.CN_S_MEASURE_UNIT,a.CN_S_IN_AREA_CODE,b.CN_S_USE_STATE from TN_WM_B_TRAY_ITEM_MST  ");
            sbStr.Append(" a inner join TN_WM_TRAY_INFO b  on a.CN_S_TRAY_CODE = b.CN_S_TRAY_CODE where a.CN_S_TRAY_CODE='" + trayCode + "' ");
            return ExecuteQuery<TrayEncodeInfo>(sbStr.ToString());
        }
        #endregion
 
        #region 根据大类获取该类型下的所有物料
        public List<AutoBomItemEntity> GetItemByItemClass(List<string> itemClass)
        {
            List<AutoBomItemEntity> lstItem = new List<AutoBomItemEntity>();
            //作为查询条件
            var listClass = itemClass.ConvertAll<BsonValue>(x => x);
            var query = Query.In("CN_S_MAJOR_TYPE", listClass);
            lstItem = MongoDBSingleton.Instance.Find<AutoBomItemEntity>(query, "TN_AB_ITEM");
            return lstItem;
        }
        #endregion
        #region 获取托盘中物料的信息,按批次汇总
        /// <summary>
        /// 获取托盘中物料的信息,按批次汇总
        /// </summary>
        /// <param name="trayCode">托盘号</param>
        /// <returns></returns>
        /// <History>[Hanhe(DBS)] CREATED BY 2018/12/8</History>
        public List<TrayEncodeInfo> GetTrayDetail(string trayCode)
        {
            StringBuilder sbStr = new StringBuilder();
            sbStr.Append(" select a.CN_S_ITEM_CODE,a.CN_S_ITEM_NAME,a.CN_S_MODEL,a.CN_S_MEASURE_UNIT, a.CN_F_QUANTITY  ");
            sbStr.Append(" from TN_WM_B_TRAY_ITEM_MST a inner join  TN_WM_B_TRAY_ITEM_DTL b on a.CN_GUID=b.CN_PARENT_GUID ");
            sbStr.Append("   where a.CN_S_TRAY_CODE= '" + trayCode + "' ");
            return ExecuteQuery<TrayEncodeInfo>(sbStr.ToString());
        }
        #endregion
 
 
    }
}