Commit e172e9ce authored by 吴春's avatar 吴春

提交代码

parent 520bce8c
......@@ -3079,6 +3079,55 @@ namespace Property.Module.FixedAssets
}
return list;
}
/// <summary>
/// 获取库存分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="demodel"></param>
/// <param name="count"></param>
/// <returns></returns>
public List<RB_Supplies_Inventory_Extend> GetSuppliesInventoryEXCELList(RB_Supplies_Inventory_Extend demodel)
{
var list = supplies_InventoryRepository.GetSuppliesInventoryEXCELList(demodel);
if (list.Any())
{
string wstr = string.Join(",", list.Select(x => x.WarehouseId ?? 0).Distinct());
string sstr = string.Join(",", list.Select(x => x.SuppliesId ?? 0).Distinct());
//查询仓库
var wlist = supplies_WareHouseRepository.GetList(new RB_Supplies_WareHouse_Extend() { RB_Group_Id = demodel.RB_Group_Id, WareHouseIdStr = wstr });
//查询耗材
var mlist = supplies_MaterialRepository.GetList(new RB_Supplies_Material_Extend() { RB_Group_Id = demodel.RB_Group_Id, SuppliesIdStr = sstr }, true);
foreach (var item in list)
{
item.WModel = wlist.Where(x => x.Id == item.WarehouseId).FirstOrDefault();
item.SModel = mlist.Where(x => x.Id == item.SuppliesId).FirstOrDefault();
if (item.WModel == null)
{
item.WModel = new RB_Supplies_WareHouse_Extend();
}
if (item.SModel == null)
{
item.SModel = new RB_Supplies_Material_Extend();
}
item.SModel.GoodsSpecificationList = new List<string>();
item.SModel.GoodsCategoryList = new List<string>();
if (!string.IsNullOrEmpty(item.SModel.SpecificationName))
{
item.SModel.GoodsSpecificationList = JsonConvert.DeserializeObject<List<string>>(item.SModel.SpecificationName);
}
if (!string.IsNullOrEmpty(item.SModel.GoodsCategoryName))
{
item.SModel.GoodsCategoryList = JsonConvert.DeserializeObject<List<string>>(item.SModel.GoodsCategoryName);
}
}
}
return list;
}
#endregion
}
}
......@@ -57,7 +57,7 @@ namespace Property.Repository.Mall
}
if (!string.IsNullOrWhiteSpace(query.GoodsName))
{
goodsWhere += $" AND {nameof(RB_WarehouseOut_Goods.GoodsName)} like '%{query.GoodsName}%'";
goodsWhere += $" AND ({nameof(RB_WarehouseOut_Goods.GoodsName)} like '%{query.GoodsName}%' or {nameof(RB_WarehouseOut_Goods.NewGoodsName)} like '%{query.GoodsName}%')";
}
if (!string.IsNullOrWhiteSpace(query.OrderNo))
{
......
......@@ -151,5 +151,41 @@ left join rb_supplies_inventorydetail sid on si.Id=sid.InventoryId
return GetPage<RB_Supplies_Inventory_Extend>(pageIndex, pageSize, out count, sql).ToList();
}
/// <summary>
/// 获取耗材仓库库存分页数据
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="dmodel"></param>
/// <param name="count"></param>
/// <returns></returns>
public List<RB_Supplies_Inventory_Extend> GetSuppliesInventoryEXCELList( RB_Supplies_Inventory_Extend dmodel)
{
string where = " where 1=1 ";
where += string.Format(" AND a.{0}={1}", nameof(RB_Supplies_Inventory_Extend.Status), 0);
where += $@" and b.RB_Group_Id={dmodel.RB_Group_Id}";
if (dmodel.WarehouseId > 0)
{
where += " and b." + nameof(RB_Supplies_Inventory_Extend.WarehouseId) + $" ={dmodel.WarehouseId}";
}
if (dmodel.SuppliesId > 0)
{
where += " and b." + nameof(RB_Supplies_Inventory_Extend.SuppliesId) + $" ={dmodel.SuppliesId}";
}
if (!string.IsNullOrEmpty(dmodel.StartTime))
{
where += " and a." + nameof(RB_Supplies_InventoryDetail_Extend.CreateDate) + " >='" + dmodel.StartTime + "'";
}
if (!string.IsNullOrEmpty(dmodel.EndTime))
{
where += " and a." + nameof(RB_Supplies_InventoryDetail_Extend.CreateDate) + " <='" + dmodel.EndTime + "'";
}
string sql = $@" select b.*,a.Number as DetailNum,a.Type,a.CreateBy as DetailBy,a.CreateDate as DetailDate from rb_supplies_inventorydetail as a LEFT JOIN RB_Supplies_Inventory as b on a.InventoryId=b.Id {where} order by a.Id desc";
return Get<RB_Supplies_Inventory_Extend>(sql).ToList();
}
}
}
......@@ -62,7 +62,8 @@ namespace Property.WebApi.Controllers.Mall
x.Number,
x.NewGoodsName,
x.NewSpecification,
x.NewNumber
x.NewNumber,
x.OrderNo
})
});
return ApiResult.Success("", pagelist);
......
......@@ -2423,12 +2423,91 @@ namespace Property.WebApi.Controllers.User
TypeName = x.Type == 1 ? "增加" : "减少",
x.DetailNum,
UpdateBy = CacheManager.User.UserReidsCache.GetEmployee(x.DetailBy)?.EmName ?? "",
UpdateDate = x.DetailDate.ToString("yyyy-MM-dd")
UpdateDate = x.DetailDate.ToString("yyyy-MM-dd HH:mm:ss")
});
return ApiResult.Success("", pagelist);
}
/// <summary>
/// 库存操作记录导出 excel
/// </summary>
[HttpPost]
public FileContentResult GetSuppliesInventoryToExcel()
{
var requestParm = GetRequestParm();
UserInfo userInfo = CacheManager.User.UserReidsCache.GetUserLoginInfo(requestParm.uid);
RB_Supplies_Inventory_Extend demodel = JsonConvert.DeserializeObject<RB_Supplies_Inventory_Extend>(requestParm.msg.ToString());
List<ExcelDataSource> slist = new List<ExcelDataSource>();
ExcelDataSource header = new ExcelDataSource()
{
ExcelRows = new List<ExcelColumn>(30) {
new ExcelColumn(value:"耗材编码"){CellWidth=15,HAlignmentEnum= HAlignmentEnum.CENTER,VAlignmentEnum= VAlignmentEnum.CENTER },
new ExcelColumn(value:"耗材名称"){CellWidth=15,HAlignmentEnum= HAlignmentEnum.CENTER,VAlignmentEnum= VAlignmentEnum.CENTER },
new ExcelColumn(value:"规格"){CellWidth=15,HAlignmentEnum= HAlignmentEnum.CENTER,VAlignmentEnum= VAlignmentEnum.CENTER },
new ExcelColumn(value:"分类名称"){CellWidth=25,HAlignmentEnum= HAlignmentEnum.CENTER,VAlignmentEnum= VAlignmentEnum.CENTER },
new ExcelColumn(value:"仓库名称"){CellWidth=25,HAlignmentEnum= HAlignmentEnum.CENTER,VAlignmentEnum= VAlignmentEnum.CENTER },
new ExcelColumn(value:"品牌"){CellWidth=25,HAlignmentEnum= HAlignmentEnum.CENTER,VAlignmentEnum= VAlignmentEnum.CENTER },
new ExcelColumn(value:"变更说明"){CellWidth=15,HAlignmentEnum= HAlignmentEnum.CENTER,VAlignmentEnum= VAlignmentEnum.CENTER },
new ExcelColumn(value:"变更时间"){CellWidth=20,HAlignmentEnum= HAlignmentEnum.CENTER,VAlignmentEnum= VAlignmentEnum.CENTER },
new ExcelColumn(value:"操作人"){CellWidth=15,HAlignmentEnum= HAlignmentEnum.CENTER,VAlignmentEnum= VAlignmentEnum.CENTER },
},
};
slist.Add(header);
try
{
demodel.RB_Group_Id = userInfo.RB_Group_id;
var list = suppliesModule.GetSuppliesInventoryEXCELList(demodel);
#region 组装数据
int TotalNum = 0;
foreach (var item in list)
{
TotalNum += (item.Number ?? 0);
ExcelDataSource datarow = new ExcelDataSource()
{
ExcelRows = new List<ExcelColumn>(30) {
new ExcelColumn(value:item.SModel.SuppliesNum){ },
new ExcelColumn(value:item.SModel.Name){ },
new ExcelColumn(value:string.Join(",",item.SModel.GoodsSpecificationList.Select(x=>x))){ },
new ExcelColumn(value:item.SModel.CategoryName){ },
new ExcelColumn(value:item.WModel.Name){ },
new ExcelColumn(value:item.SModel.BrandName){ },
new ExcelColumn(value:((item.Type == 1 ? "增加" : "减少")+item.DetailNum+item.SModel.Units)){ },
new ExcelColumn(value:( CacheManager.User.UserReidsCache.GetEmployee(item.DetailBy)?.EmName ?? "")){ },
new ExcelColumn(value:item.DetailDate.ToString("yyyy-MM-dd HH:mm:ss")){ },
}
};
slist.Add(datarow);
}
#endregion
ExcelDataSource Total = new ExcelDataSource()
{
ExcelRows = new List<ExcelColumn>(30) {
new ExcelColumn(value:"合计(共"+list.Count()+"条)"){ Colspan=10},
new ExcelColumn(value:TotalNum.ToString("#0")){},
},
};
slist.Add(Total);
var byteData = ExcelTempLateHelper.ToExcelExtend(slist);
return File(byteData, "application/octet-stream", "物料库存变更统计.xls");
}
catch (Exception ex)
{
LogHelper.Write(ex, string.Format("GetFileFromWebApi_requestData: {0}", JsonHelper.Serialize(requestParm)));
var byteData1 = ExcelTempLateHelper.ToExcelExtend(slist);
return File(byteData1, "application/octet-stream", "物料库存变更统计.xls");
}
}
#endregion
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment