using HH.WMS.Entitys.Entitys; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Data; namespace HH.WMS.DAL.SysMgr { public class TN_WM_B_TRAY_CAPACITYDAL : DapperBaseDAL { #region 返回托盘物料容量关联实体 /// /// 根据条件获取容量实体 /// /// /// /// [HANHE(XDL)] CREATED BY 2018-11-16 public TN_WM_B_TRAY_CAPACITYEntity GetEntityByItemCode(string itemCode) { TN_WM_B_TRAY_CAPACITYEntity areaQtyEntity = new TN_WM_B_TRAY_CAPACITYEntity(); StringBuilder sbStr = new StringBuilder(); sbStr.Append("SELECT (CN_S_STORE_UNIT*CN_F_QUANTITY) CN_F_QUANTITY FROM TN_WM_B_TRAY_CAPACITY WHERE CN_S_ITEM_CODE='" + itemCode + "' "); return ExecuteSingleEntity(sbStr.ToString()); } #endregion #region 根据物料编码集合获得对应的存储序列 /// /// 根据物料编码集合获得对应的存储序列 /// /// /// public List GetListByItemCode(string itemCode) { string strSql = "SELECT * FROM TN_WM_B_TRAY_CAPACITY WHERE CN_S_ITEM_CODE IN('" + itemCode + "')"; List list = ExecuteQuery(strSql.ToString()); return list; } #endregion /// /// PDA接口-根据托盘码获取存放容量 /// /// 托盘码 /// public DataTable GetCapacityinfoByTrayCode(string trayCode) { string sql = @"SELECT distinct A.CN_S_TRAY_CODE,A.CN_F_WEIGHT,A.CN_S_TRAY_TYPE,CN_S_STATE,A.CN_S_SPEC,CN_N_LATTICE_NUM,CN_S_USE_STATE, CN_N_ROW_NUM,CN_N_COLUMN_NUM,CASE WHEN B.CN_S_TRAY_GRID IS NULL THEN '0' else B.CN_S_TRAY_GRID end AS CN_S_TRAY_GRID_ITEM, B.CN_S_LOT_NO, B.CN_S_ITEM_CODE,B.CN_S_ITEM_NAME,ISNULL(CAST(B.CN_F_PACKING_QTY AS int), 0) AS CN_F_PACKING_QTY, C.CN_S_SPEC AS CN_S_SPEC_ITEM,C.CN_S_STORE_UNIT,CAST(C.CN_N_QUANTITY AS int) AS CN_N_QUANTITY, ISNULL(A.CN_F_LOADBEARING, 0) CN_F_LOADBEARING,B.CN_S_OWNER,B.CN_S_ITEM_STATE,B.CN_T_AUDIT_TIME,B.CN_S_PACKING_CODE FROM TN_WM_TRAY_INFO AS A LEFT JOIN (SELECT CN_S_OWNER, CN_S_ITEM_STATE, CN_S_TRAY_CODE, CN_S_TRAY_GRID, CN_S_LOT_NO, CN_S_ITEM_CODE, CN_S_ITEM_NAME, CN_F_PACKING_QTY AS CN_F_PACKING_QTY, x.CN_S_PACKING_CODE, y.CN_T_AUDIT_TIME FROM TN_WM_B_TRAY_ITEM_REL x left join TN_WM_INCREASE_INVENTORY_MST y on x.CN_S_FROM_NO = y.CN_S_OP_NO ) AS B ON A.CN_S_TRAY_CODE = B.CN_S_TRAY_CODE LEFT JOIN DBO.TN_WM_B_TRAY_CAPACITY AS C ON B.CN_S_ITEM_CODE = C.CN_S_ITEM_CODE AND C.CN_S_SPEC = A.CN_S_SPEC where A.CN_S_TRAY_CODE ={0}"; sql = string.Format(sql, trayCode); return ExecuteDataTable(sql); } } }