129 lines
4.6 KiB
C#
129 lines
4.6 KiB
C#
|
|
using System;
|
|||
|
|
using System.Drawing;
|
|||
|
|
using System.Collections;
|
|||
|
|
using System.ComponentModel;
|
|||
|
|
using DevExpress.XtraReports.UI;
|
|||
|
|
using System.Collections.Generic;
|
|||
|
|
using WMS.Model.Stock;
|
|||
|
|
using WMS.Model.Base;
|
|||
|
|
using WMS.Common;
|
|||
|
|
|
|||
|
|
namespace WMS.FrmStock
|
|||
|
|
{
|
|||
|
|
public partial class ReportMoveLocSKU : DevExpress.XtraReports.UI.XtraReport
|
|||
|
|
{
|
|||
|
|
public ReportMoveLocSKU(MoveLocModel model, List<MoveLocTabModel> list)
|
|||
|
|
{
|
|||
|
|
InitializeComponent();
|
|||
|
|
|
|||
|
|
if (string.IsNullOrEmpty(model.REMARK)) {
|
|||
|
|
xrLabRemark.Text = string.Empty;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
//通过移位单号得到所有SKU
|
|||
|
|
List<SKUTabModel> allTab = new List<SKUTabModel>();
|
|||
|
|
SKUTabModel queryTab = new SKUTabModel();
|
|||
|
|
queryTab.DOCCTNUMBER = model.MOVELOC_ID;
|
|||
|
|
try
|
|||
|
|
{
|
|||
|
|
//allTab.AddRange(Newtonsoft.Json.JsonConvert.DeserializeObject<List<SKUTabModel>>(WebLockConfig.Instance.WebSKUTab.GetSKUTab(Newtonsoft.Json.JsonConvert.SerializeObject(queryTab))));
|
|||
|
|
}
|
|||
|
|
catch (Exception)
|
|||
|
|
{
|
|||
|
|
SystemCommon.ShowInfoMessageBox("未知错误,请检查网络连接!如仍无法解决问题请联系我们!");
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
List<SKUTabModel> SKU = new List<SKUTabModel>();
|
|||
|
|
foreach (var t in allTab)
|
|||
|
|
{
|
|||
|
|
for (int i = 0; i < t.SKU_NUM; i++)
|
|||
|
|
{
|
|||
|
|
SKU.Add(t);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
foreach (var t in SKU)
|
|||
|
|
{
|
|||
|
|
t.SKU_NUM = 1;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
List<MoveLocTabModel> listNewTab = new List<MoveLocTabModel>();
|
|||
|
|
foreach (var item in list)
|
|||
|
|
{
|
|||
|
|
foreach (var t in SKU)
|
|||
|
|
{
|
|||
|
|
if (t.GOODS_ID == item.GOODS_ID && t.SKU_NUM == 1)
|
|||
|
|
{
|
|||
|
|
t.SKU_NUM = 0;
|
|||
|
|
|
|||
|
|
MoveLocTabModel G = new MoveLocTabModel();
|
|||
|
|
G.SKU_ID = t.SKU_ID;
|
|||
|
|
G.SKU_NAME = t.SKU_NAME;
|
|||
|
|
G.PLAN_NUM = 1;
|
|||
|
|
G.GOODS_ID = item.GOODS_ID;
|
|||
|
|
G.GOODS_NAME = item.GOODS_NAME;
|
|||
|
|
G.OLD_LOC_ID = item.OLD_LOC_ID;
|
|||
|
|
G.DOCCTNUMBER = item.DOCCTNUMBER;
|
|||
|
|
G.LOC_NUM = item.LOC_NUM;
|
|||
|
|
G.MISTOCK_NUM = item.MISTOCK_NUM;
|
|||
|
|
G.MOVELOC_ID = item.MOVELOC_ID;
|
|||
|
|
G.MOVELOC_TAB_ID = item.MOVELOC_TAB_ID;
|
|||
|
|
G.NEW_LOC_ID = item.NEW_LOC_ID;
|
|||
|
|
G.PRICE = item.PRICE;
|
|||
|
|
G.PRODUCTION_DATE = item.PRODUCTION_DATE;
|
|||
|
|
G.PROVIDER_ID = item.PROVIDER_ID;
|
|||
|
|
G.PROVIDER_NAME = item.PROVIDER_NAME;
|
|||
|
|
G.PUTIN_ID = item.PUTIN_ID;
|
|||
|
|
G.REAL_NUM = item.REAL_NUM;
|
|||
|
|
G.SCALE_UNIT = item.SCALE_UNIT;
|
|||
|
|
G.SPECIFICATION = item.SPECIFICATION;
|
|||
|
|
G.UNIT = item.UNIT;
|
|||
|
|
G.UNIT_NAME = item.UNIT_NAME;
|
|||
|
|
G.WARE_DATE = item.WARE_DATE;
|
|||
|
|
listNewTab.Add(G);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
List<MoveLocTabModel> listBindTab = new List<MoveLocTabModel>();
|
|||
|
|
foreach (MoveLocTabModel item in listNewTab)
|
|||
|
|
{
|
|||
|
|
bool exist = false;
|
|||
|
|
foreach (MoveLocTabModel p in listBindTab)
|
|||
|
|
{
|
|||
|
|
if (p.MOVELOC_ID == item.MOVELOC_ID && p.OLD_LOC_ID == item.OLD_LOC_ID && p.NEW_LOC_ID == item.NEW_LOC_ID && p.GOODS_ID == item.GOODS_ID && p.PUTIN_ID == item.PUTIN_ID)
|
|||
|
|
{
|
|||
|
|
exist = true;
|
|||
|
|
p.PLAN_NUM += item.PLAN_NUM;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
if (!exist)
|
|||
|
|
{
|
|||
|
|
listBindTab.Add(item);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
for (int i = 0; i < listBindTab.Count; i++)
|
|||
|
|
{
|
|||
|
|
listBindTab[i].SORT = i + 1;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
bsMoveLoc.DataSource = model;
|
|||
|
|
bsMoveLocTab.DataSource = listBindTab;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
private static ReportMoveLocSKU reportMoveLoc;
|
|||
|
|
/// <summary>
|
|||
|
|
/// 实例化ReportMoveLoc的一个对象
|
|||
|
|
/// </summary>
|
|||
|
|
/// <returns>ReportMoveLoc对象</returns>
|
|||
|
|
public static ReportMoveLocSKU GetInstance(MoveLocModel model, List<MoveLocTabModel> list)
|
|||
|
|
{
|
|||
|
|
reportMoveLoc = new ReportMoveLocSKU(model, list);
|
|||
|
|
|
|||
|
|
return reportMoveLoc;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|