| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301 |
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Linq;
- using System.Text;
- using Core.Mes.Client.Comm.Attribute;
- using Core.Mes.Client.Comm.Tool;
- namespace Core.StlMes.Client.PlnSaleOrd.炼钢计划.entity
- {
- [Serializable]
- public class PlnSteelforOrdNewEntityAndMerge : PlnSteelforOrdNewEntity
- {
- private string mergeNo;
- public string MergeNo
- {
- get { return mergeNo; }
- set { mergeNo = value; }
- }
- private List<PlnSteelforMergeEntity> mergeList;
- public List<PlnSteelforMergeEntity> MergeList
- {
- get { return mergeList; }
- set
- {
- mergeList = value;
- }
- }
- private List<PlnSteelforMergeEntity> mergeListAll;
- public List<PlnSteelforMergeEntity> MergeListAll
- {
- get
- {
- return mergeListAll;
- }
- set
- {
- mergeListAll = value;
- }
- }
- private List<PlnSteelforMergeEntity> mergeListForSave;
- public List<PlnSteelforMergeEntity> MergeListForSave { get { return mergeListForSave; } set { mergeListForSave = value; } }
- /* private List<PlnSteelforMergeEntity> MergeListForSave
- {
- get
- {
- if (mergeList == null) return null;
- return mergeList.GroupBy(p => new { p.ProPlanId, p.GxPlanNo })
- .Select(entities =>
- {
- var PlnSteelforMergeEntity = entities.FirstOrDefault();
- PlnSteelforMergeEntity.TotMumM = entities.Sum(p => p.TotMumM);
- PlnSteelforMergeEntity.TotWeightM = entities.Sum(p => p.TotWeightM);
- return PlnSteelforMergeEntity;
- }).ToList();
- }
- }*/
- private string steelcode = "";
- /// <summary>
- /// 钢级(牌号)代码
- /// </summary>
- [Description("钢级(牌号)代码")]
- [Nullable(true)]
- [DataLength(10)]
- public string Steelcode
- {
- get { return steelcode; }
- set { steelcode = value; }
- }
- private string produccode = "";
- /// <summary>
- /// 品名代码
- /// </summary>
- [Description("品名代码")]
- [Nullable(true)]
- [DataLength(20)]
- public string Produccode
- {
- get { return produccode; }
- set { produccode = value; }
- }
- private string ifMonitorLg = "";
- /// <summary>
- /// 是否炼钢监制
- /// </summary>
- [Description("是否炼钢监制")]
- [Nullable(true)]
- [DataLength(10)]
- public string IfMonitorLg
- {
- get { return ifMonitorLg; }
- set { ifMonitorLg = value; }
- }
- public void Update()
- {
- MergeList = MergeList == null ? null : MergeList.GroupBy(p => new { p.ProPlanId, p.GxPlanNo })
- .Select(entities =>
- {
- var PlnSteelforMergeEntity = entities.FirstOrDefault();
- PlnSteelforMergeEntity.TotMumM = entities.Sum(p => p.TotMumM);
- PlnSteelforMergeEntity.TotWeightM = entities.Sum(p => p.TotWeightM);
- return PlnSteelforMergeEntity;
- }).ToList();
- if (MergeList != null) {
- MergeList = MergeList.Where(p => p.TotMumM != null && int.Parse(p.TotMumM.ToString()) > 0).ToList();
- }
- if (MergeList != null && MergeList.Any())
- {
- ProPlanId = "";
- GxPlanNo = "";
- Cic = "";
- Pic = "";
- Sic = "";
- Dic = "";
- OrderNo = "";
- FinalUserDesc = "";
- PrdcrNo = "";
- PdeptName = "";
- PrdcrMan = "";
- TotMumM = 0;
- TotWeightM = 0;
- StateLk = MergeList[0].StateLk;
- foreach (PlnSteelforMergeEntity PlnSteelforMergeEntity in MergeList.GroupBy(p => new {p.ProPlanId, p.GxPlanNo})
- .Select(entities =>
- {
- var PlnSteelforMergeEntity = entities.FirstOrDefault();
- PlnSteelforMergeEntity.TotMumM = entities.Sum(p => p.TotMumM);
- PlnSteelforMergeEntity.TotWeightM = entities.Sum(p => p.TotWeightM);
-
- return PlnSteelforMergeEntity;
- }).ToList())
- {
- ProPlanId = (""==ProPlanId?"" :(ProPlanId + ",")) + PlnSteelforMergeEntity.ProPlanId;
- GxPlanNo = ("" == GxPlanNo ? "" : (GxPlanNo + ",")) + PlnSteelforMergeEntity.GxPlanNo;
-
- if (!Cic.Contains(PlnSteelforMergeEntity.Cic))
- {
- Cic =( Cic ==""?"":Cic + ",") + PlnSteelforMergeEntity.Cic;
- }
- if (!Pic.Contains(PlnSteelforMergeEntity.Pic))
- {
- Pic = (Pic == "" ? "" : Pic + ",") + PlnSteelforMergeEntity.Pic;
- }
- if (!Sic.Contains(PlnSteelforMergeEntity.Sic))
- {
- Sic = (Sic == "" ? "" : Sic + ",") +PlnSteelforMergeEntity.Sic;
- }
- if (!Dic.Contains(PlnSteelforMergeEntity.Dic))
- {
- Dic = (Dic == "" ? "" : Dic + ",") + PlnSteelforMergeEntity.Dic;
- }
- if (!OrderNo.Contains(PlnSteelforMergeEntity.OrderNo))
- {
- OrderNo = (OrderNo == "" ? "" : OrderNo + ",") + PlnSteelforMergeEntity.OrderNo;
- }
- if (!FinalUserDesc.Contains(PlnSteelforMergeEntity.FinalUserDesc))
- {
- FinalUserDesc = (FinalUserDesc == "" ? "" : FinalUserDesc + ",") + PlnSteelforMergeEntity.FinalUserDesc;
- }
- if (!PrdcrNo.Contains(PlnSteelforMergeEntity.PrdcrNo))
- {
- PrdcrNo = (PrdcrNo == "" ? "" : PrdcrNo + ",") + PlnSteelforMergeEntity.PrdcrNo;
- }
- if (!PdeptName.Contains(PlnSteelforMergeEntity.PdeptName))
- {
- PdeptName = (PdeptName == "" ? "" : PdeptName + ",") + PlnSteelforMergeEntity.PdeptName;
- }
- if (!PrdcrMan.Contains(PlnSteelforMergeEntity.PrdcrMan))
- {
- PrdcrMan = (PrdcrMan == "" ? "" : PrdcrMan + ",") + PlnSteelforMergeEntity.PrdcrMan;
- }
- TotMumM = TotMumM + PlnSteelforMergeEntity.TotMumM;
- TotWeightM = TotWeightM + PlnSteelforMergeEntity.TotWeightM;
- // if (PlnSteelforMergeEntity.IfMonitorLg == "1") IfMonitorLg = "1";
- }
- if (MergeList.Count == 1) MergeList = null;
-
- }
- }
- public void UpdateSaveData()
- {
- MergeListAll = (MergeList == null || !MergeList.Any())
- ? new DataSourceList<PlnSteelforMergeEntity>() {GetSelfMergeEntity()}
- : MergeList;
- mergeListForSave = (MergeList == null || !MergeList.Any())
- ? null
- : MergeList.GroupBy(p => new {p.ProPlanId, p.GxPlanNo})
- .Select(entities =>
- {
- var PlnSteelforMergeEntity = entities.FirstOrDefault();
- PlnSteelforMergeEntity.TotMumM = entities.Sum(p => p.TotMumM);
- PlnSteelforMergeEntity.TotWeightM = entities.Sum(p => p.TotWeightM);
- return PlnSteelforMergeEntity;
- }).ToList();
- if (MergeListForSave != null && MergeListForSave.Count() == 1) MergeListForSave = null;
- }
- public void Merge(PlnSteelforOrdNewEntityAndMerge TargetEntity)
- {
- if (MergeList == null || MergeList.Count <= 0)
- MergeList = new List<PlnSteelforMergeEntity>() {GetSelfMergeEntity()};
- MergeList.AddRange(
- TargetEntity.MergeList == null || TargetEntity.MergeList.Count <= 0 ? new List<PlnSteelforMergeEntity>() { TargetEntity.GetSelfMergeEntity() } : TargetEntity.MergeList
- );
- Update();
- /* if (TargetEntity.MergeList == null || TargetEntity.MergeList.Count <= 0)
- {
- if (MergeList == null || MergeList.Count <= 0)
- {
- if (ProPlanId == TargetEntity.ProPlanId && GxPlanNo == TargetEntity.GxPlanNo)
- {
- TotMumM += TargetEntity.TotMumM;
- TotWeightM += TargetEntity.TotWeightM;
- }
- else
- {
- MergeList = new List<PlnSteelforMergeEntity>
- {
- GetSelfMergeEntity(),
- TargetEntity.GetSelfMergeEntity()
- };
- Update();
- }
- }
- else
- {
-
- }
- }
- else
- {
-
- }*/
- }
- private PlnSteelforMergeEntity GetSelfMergeEntity()
- {
- PlnSteelforMergeEntity selfMergeEntity = new PlnSteelforMergeEntity
- {
- MergeSeq = 1,
- ProPlanId = ProPlanId,
- GxPlanNo = GxPlanNo,
- LenGpSingle = LenGpSingle,
- CutNumGp = CutNumGp,
- WeightGpOne = WeightGpOne,
- TotMumM = TotMumM,
- TotWeightM = TotWeightM,
- Cic = Cic,
- Pic = Pic,
- Sic = Sic,
- Dic = Dic,
- OrderNo = OrderNo,
- FinalUserDesc = FinalUserDesc,
- Steelcode = Steelcode,
- Steelname = Steelname,
- Produccode = Produccode,
- Producname = Producname,
- IfMonitorLg = IfMonitorLg,
- PrdcrNo = PrdcrNo,
- PdeptName = PdeptName,
- PrdcrMan = PrdcrMan,
- Furnaceno = Furnaceno,
- Sequenceno = Sequenceno,
- StateLk = StateLk
- };
- return selfMergeEntity;
- }
- }
- }
|