using HH.MData;
|
using HH.WMS.Entitys.Basic;
|
using HH.WMS.Entitys.Common;
|
using MongoDB.Bson;
|
using MongoDB.Driver.Builders;
|
/********************************************************************************
|
|
** auth: DBS
|
|
** date: 2018/11/14 20:37:11
|
|
** desc: 尚未编写描述
|
|
** Ver.: V1.0.0
|
|
*********************************************************************************/
|
using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
using System.Data;
|
using MongoDB.Driver;
|
|
namespace HH.WMS.DAL.Basic
|
{
|
public class MONGO_PRINT_BARCODEDAL:BaseDAL
|
{
|
public List<MONGO_PRINT_BARCODE> GetPageList(int pageIndex, int pageSize, out int total)
|
{
|
List<MONGO_PRINT_BARCODE> entity = new List<MONGO_PRINT_BARCODE>();
|
SortByDocument sortBy = new SortByDocument();
|
//sortBy.Add("CN_S_ITEM_CODE", -1);
|
|
List<IMongoQuery> queryList = new List<IMongoQuery>();
|
//if (!string.IsNullOrEmpty(itemCode))
|
//{
|
// queryList.Add(Query.Matches("CN_S_ITEM_CODE", itemCode));
|
//}
|
//if (!string.IsNullOrEmpty(itemName))
|
//{
|
// queryList.Add(Query.Matches("CN_S_ITEM_NAME", itemName));
|
//}
|
//if (!string.IsNullOrEmpty(model))
|
//{
|
// queryList.Add(Query.Matches("CN_S_MODEL", model));
|
//}
|
|
IMongoQuery query = null;
|
if (queryList.Any())
|
query = Query.And(queryList);
|
|
total = Convert.ToInt32(MongoDBSingleton.Instance.FindCount<AutoBomItemEntity>(query, "MONGO_PRINT_BARCODE"));
|
entity = MongoDBSingleton.Instance.Find<MONGO_PRINT_BARCODE>(query, pageIndex, pageSize, sortBy, "MONGO_PRINT_BARCODE");
|
return entity;
|
}
|
|
public MONGO_PRINT_BARCODE GetValue(string barCode)
|
{
|
MONGO_PRINT_BARCODE entity = new MONGO_PRINT_BARCODE();
|
var query = Query.EQ("CN_S_UNIQUE_CODE", barCode);
|
entity = MongoDBSingleton.Instance.FindOne<MONGO_PRINT_BARCODE>(query, "MONGO_PRINT_BARCODE");
|
return entity;
|
}
|
public MONGO_PRINT_BARCODE GetValueYS(string barCode,string isUse)
|
{
|
MONGO_PRINT_BARCODE entity = new MONGO_PRINT_BARCODE();
|
var query = Query.EQ("CN_S_UNIQUE_CODE", barCode);
|
query = Query.And(query, Query.EQ("CN_S_IS_USE", isUse));
|
entity = MongoDBSingleton.Instance.FindOne<MONGO_PRINT_BARCODE>(query, "MONGO_PRINT_BARCODE");
|
return entity;
|
}
|
public List<MONGO_PRINT_BARCODE> GetValueBackYS(string barCode, string isUse)
|
{
|
List<MONGO_PRINT_BARCODE> entity = new List<MONGO_PRINT_BARCODE>();
|
var query = Query.EQ("CN_S_UNIQUE_CODE", barCode);
|
query = Query.And(query, Query.EQ("CN_S_IS_USE", isUse));
|
//定义排序 按优先级正序排列
|
//SortByDocument sort = new SortByDocument { { "CN_T_CREATE", 1 } };
|
entity = MongoDBSingleton.Instance.Find<MONGO_PRINT_BARCODE>(query,1 ,"CN_T_CREATE", "MONGO_PRINT_BARCODE");
|
return entity;
|
}
|
public MONGO_PRINT_BARCODE GetFieldValue(string fieldStr, string scanCode)
|
{
|
MONGO_PRINT_BARCODE entity = new MONGO_PRINT_BARCODE();
|
var query = Query.EQ(fieldStr, scanCode);
|
entity = MongoDBSingleton.Instance.FindOne<MONGO_PRINT_BARCODE>(query, "MONGO_PRINT_BARCODE");
|
return entity;
|
}
|
|
/// <summary>
|
/// 新增MONGO_PRINT_BARCODE表
|
/// </summary>
|
/// <param name="lists"></param>
|
/// <returns></returns>
|
public bool AddPintBarcode(List<MONGO_PRINT_BARCODE> list)
|
{
|
return MongoDBSingleton.Instance.Insert<MONGO_PRINT_BARCODE>(list, "MONGO_PRINT_BARCODE");
|
}
|
|
/// <summary>
|
/// 新增MONGO_KEYTYPE_MAP表
|
/// </summary>
|
/// <param name="lists"></param>
|
/// <returns></returns>
|
public bool AddKeyType(List<MONGO_KEYTYPE_MAP> list)
|
{
|
return MongoDBSingleton.Instance.Insert<MONGO_KEYTYPE_MAP>(list, "MONGO_KEYTYPE_MAP");
|
}
|
|
|
#region 根据唯一码获取打码标签
|
/// <summary>
|
/// 获取打码标签
|
/// </summary>
|
/// <param name="barCode"></param>
|
/// <returns></returns>
|
/// <history>[HANHE(lt)] CREATED BY 2018-12-15</history>
|
public List<MONGO_PRINT_BARCODE> GetBarCodeList(List<string> barCodes)
|
{
|
List<MONGO_PRINT_BARCODE> entity = new List<MONGO_PRINT_BARCODE>();
|
var barCode = barCodes.ConvertAll<BsonValue>(x => x);
|
var query = Query.In("CN_S_UNIQUE_CODE", barCode);
|
entity = MongoDBSingleton.Instance.Find<MONGO_PRINT_BARCODE>(query, "MONGO_PRINT_BARCODE");
|
return entity;
|
}
|
|
/// <summary>
|
/// 模糊查询
|
/// </summary>
|
/// <param name="scanCode"></param>
|
/// <returns></returns>
|
public MONGO_PRINT_BARCODE GetLikeValue(string scanCode)
|
{
|
var query = Query.Or(
|
Query.EQ("CN_S_ITEM_CODE", scanCode),
|
Query.EQ("CN_S_UNIQUE_CODE", scanCode),
|
Query.EQ("CN_S_SERIAL_NO", scanCode)
|
);
|
MONGO_PRINT_BARCODE entity = MongoDBSingleton.Instance.FindOne<MONGO_PRINT_BARCODE>(query, "MONGO_PRINT_BARCODE");
|
return entity;
|
}
|
|
#endregion
|
|
#region 更新重量
|
|
public bool UpdateWeight(string uniqueCode, string weight, string lotNo, string figureNo, AutoBomItemEntity autoBomItem, string zweight, string zzweight)
|
{
|
IMongoQuery query = Query.EQ("CN_S_UNIQUE_CODE", uniqueCode);
|
List<UpdateBuilder> updateList = new List<UpdateBuilder>();
|
updateList.Add(Update.Set("CN_S_SERIAL_NO", weight));
|
updateList.Add(Update.Set("CN_S_ITEM_CODE", autoBomItem.CN_S_ITEM_CODE));
|
updateList.Add(Update.Set("CN_S_ITEM_NAME", autoBomItem.CN_S_ITEM_NAME));
|
updateList.Add(Update.Set("CN_S_FIGURE_NO", figureNo));
|
updateList.Add(Update.Set("CN_S_LOT_NO", lotNo));
|
updateList.Add(Update.Set("CN_T_CREATE", DateTime.Now.AddHours(8)));
|
updateList.Add(Update.Set("CN_S_IS_USE", "Y"));
|
updateList.Add(Update.Set("CN_S_PACKING_UNIT", zweight));
|
updateList.Add(Update.Set("CN_F_PACKING_QTY", zzweight));
|
IMongoUpdate update = Update.Combine(updateList.ToArray());
|
return MongoDBSingleton.Instance.Update<MONGO_PRINT_BARCODE>(query, update, "MONGO_PRINT_BARCODE", UpdateFlags.Multi);
|
}
|
|
#endregion
|
|
#region 根据唯一码删除记录
|
|
public bool DeleteByUniqueCode(string uniqueCode)
|
{
|
IMongoQuery query = Query.EQ("CN_S_UNIQUE_CODE", uniqueCode);
|
return MongoDBSingleton.Instance.Remove<MONGO_PRINT_BARCODE>(query, "MONGO_PRINT_BARCODE", RemoveFlags.Single);
|
}
|
|
#endregion
|
|
#region 更新使用状态
|
|
public bool UpdateUpMetarialState(string uniqueCode, string isUse)
|
{
|
IMongoQuery query = Query.EQ("CN_S_UNIQUE_CODE", uniqueCode);
|
List<UpdateBuilder> updateList = new List<UpdateBuilder>();
|
updateList.Add(Update.Set("CN_S_IS_USE", isUse));
|
IMongoUpdate update = Update.Combine(updateList.ToArray());
|
return MongoDBSingleton.Instance.Update<MONGO_PRINT_BARCODE>(query, update, "MONGO_PRINT_BARCODE", UpdateFlags.Multi);
|
}
|
|
#endregion
|
|
#region 更新重量
|
|
public bool UpdateZX(string uniqueCode, string weight, string qty,string lotNo, string figureNo, AutoBomItemEntity autoBomItem)
|
{
|
IMongoQuery query = Query.EQ("CN_S_UNIQUE_CODE", uniqueCode);
|
List<UpdateBuilder> updateList = new List<UpdateBuilder>();
|
updateList.Add(Update.Set("CN_S_SERIAL_NO", weight));
|
updateList.Add(Update.Set("CN_F_PACKING_QTY", qty));
|
updateList.Add(Update.Set("CN_S_ITEM_CODE", autoBomItem.CN_S_ITEM_CODE));
|
updateList.Add(Update.Set("CN_S_ITEM_NAME", autoBomItem.CN_S_ITEM_NAME));
|
updateList.Add(Update.Set("CN_S_MODEL", autoBomItem.CN_S_MODEL));
|
updateList.Add(Update.Set("CN_S_FIGURE_NO", figureNo));
|
updateList.Add(Update.Set("CN_S_LOT_NO", lotNo));
|
IMongoUpdate update = Update.Combine(updateList.ToArray());
|
return MongoDBSingleton.Instance.Update<MONGO_PRINT_BARCODE>(query, update, "MONGO_PRINT_BARCODE", UpdateFlags.Multi);
|
}
|
|
#endregion
|
}
|
}
|