public virtual void DeletePlannedBillView(PlannedBillView entity)
 {
     entityDao.DeletePlannedBillView(entity);
 }
 public virtual void UpdatePlannedBillView(PlannedBillView entity)
 {
     entityDao.UpdatePlannedBillView(entity);
 }
    public void InitPageParameter(int id)
    {
        plannedBillView = this.ThePlannedBillViewMgr.LoadPlannedBillView(id);

        #region 查询PlannedBillView对应那些PlannedBill
        DetachedCriteria planBillCriteria = DetachedCriteria.For(typeof(PlannedBill));
        planBillCriteria.CreateAlias("Item", "item");
        planBillCriteria.CreateAlias("Uom", "uom");
        planBillCriteria.CreateAlias("BillAddress", "billAddr");

        planBillCriteria.Add(Expression.Or(Expression.IsNull("ActingQty"), Expression.Not(Expression.EqProperty("PlannedQty", "ActingQty"))));
        planBillCriteria.Add(Expression.Eq("item.Code", plannedBillView.Item.Code));
        planBillCriteria.Add(Expression.Eq("uom.Code", plannedBillView.Uom.Code));
        planBillCriteria.Add(Expression.Eq("UnitCount", plannedBillView.UnitCount));
        planBillCriteria.Add(Expression.Eq("billAddr.Code", plannedBillView.BillAddress.Code));

        IList<PlannedBill> plannedBillList = this.TheCriteriaMgr.FindAll<PlannedBill>(planBillCriteria);
        #endregion

        if (this.ModuleType == BusinessConstants.CODE_MASTER_ORDER_TYPE_VALUE_PROCUREMENT)
        {
            #region 查询LoctionLotDetail并转换为CSInventoryDetail
            DetachedCriteria locLotDetCriteria = DetachedCriteria.For(typeof(LocationLotDetail));
            
            locLotDetCriteria.CreateAlias("Location", "loc");
            locLotDetCriteria.CreateAlias("StorageBin", "bin", NHibernate.SqlCommand.JoinType.LeftOuterJoin);
            locLotDetCriteria.CreateAlias("Item", "item");
            locLotDetCriteria.CreateAlias("PlannedBill", "pb");
            locLotDetCriteria.CreateAlias("pb.OrderHead", "od");
            //locLotDetCriteria.CreateAlias("Hu", "hu");

            locLotDetCriteria.SetProjection(
                Projections.ProjectionList()
                .Add(Projections.GroupProperty("loc.Code").As("LocationCode"))
                .Add(Projections.GroupProperty("loc.Name").As("LocationName"))
                .Add(Projections.GroupProperty("bin.Code").As("Bin"))
                //.Add(Projections.GroupProperty("hu.HuId"))
                .Add(Projections.GroupProperty("LotNo").As("LotNo"))
                .Add(Projections.GroupProperty("od.OrderNo").As("OrderNo"))
                .Add(Projections.GroupProperty("pb.ReceiptNo").As("ReceiptNo"))
                .Add(Projections.GroupProperty("pb.CreateDate").As("ReceiptDate"))
                .Add(Projections.GroupProperty("pb.SettleTerm").As("SettleTerm"))
                .Add(Projections.Sum("Qty").As("i"))
                .Add(Projections.GroupProperty("pb.UnitQty").As("j"))
                );

            locLotDetCriteria.Add(Expression.Not(Expression.Eq("Qty", decimal.Zero)));
            locLotDetCriteria.Add(Expression.Eq("IsConsignment", true));
            locLotDetCriteria.Add(Expression.InG("PlannedBill", plannedBillList));
         
            IList<CSInventoryDetail> csInventoryDetailList = ConvertLocLotDet2CSInventoryDetail(this.TheCriteriaMgr.FindAll(locLotDetCriteria));
            #endregion

            #region 查询IpDetail并转换为CSInventoryDetail
            DetachedCriteria ipDetCriteria = DetachedCriteria.For(typeof(InProcessLocationDetail));
            ipDetCriteria.CreateAlias("OrderLocationTransaction", "olt");
            ipDetCriteria.CreateAlias("InProcessLocation", "ip");
            ipDetCriteria.CreateAlias("PlannedBill", "pb");
            ipDetCriteria.CreateAlias("pb.OrderHead", "od");

            ipDetCriteria.SetProjection(
               Projections.ProjectionList()
               .Add(Projections.GroupProperty("ip.IpNo"))
                //.Add(Projections.GroupProperty("HuId"))
               .Add(Projections.GroupProperty("LotNo"))
               .Add(Projections.GroupProperty("od.OrderNo"))
               .Add(Projections.GroupProperty("pb.ReceiptNo"))
               .Add(Projections.GroupProperty("pb.CreateDate"))
               .Add(Projections.GroupProperty("pb.SettleTerm"))
               .Add(Projections.Sum("Qty"))
               .Add(Projections.GroupProperty("pb.UnitQty"))
               );

            ipDetCriteria.Add((Expression.Eq("ip.Status", BusinessConstants.CODE_MASTER_STATUS_VALUE_CREATE)));
            ipDetCriteria.Add(Expression.InG("PlannedBill", plannedBillList));
            IList<CSInventoryDetail> csInventoryDetailList2 = ConvertIpDet2CSInventoryDetail(this.TheCriteriaMgr.FindAll(ipDetCriteria));

            if (csInventoryDetailList2.Count > 0)
            {
                IListHelper.AddRange<CSInventoryDetail>(csInventoryDetailList, csInventoryDetailList2);

                IListHelper.Sort<CSInventoryDetail>(csInventoryDetailList, "ReceiptDate");
            }
            #endregion

            this.GV_List.DataSource = csInventoryDetailList;
            this.GV_List.DataBind();
        }
        else if (this.ModuleType == BusinessConstants.CODE_MASTER_ORDER_TYPE_VALUE_DISTRIBUTION)
        {
            DetachedCriteria planBillDetailCriteria = DetachedCriteria.For(typeof(PlannedBill));
            planBillDetailCriteria.CreateAlias("OrderHead", "od");

            planBillDetailCriteria.SetProjection(
               Projections.ProjectionList()
               .Add(Projections.GroupProperty("LotNo"))
               .Add(Projections.GroupProperty("od.OrderNo"))
               .Add(Projections.GroupProperty("ExternalReceiptNo"))
               .Add(Projections.GroupProperty("CreateDate"))
               .Add(Projections.GroupProperty("SettleTerm"))
               .Add(Projections.Sum("PlannedQty"))
               .Add(Projections.Sum("ActingQty"))
               );

            IList<int> idList = new List<int>();
            foreach(PlannedBill pb in plannedBillList)
            {
                idList.Add(pb.Id);
            }

            planBillDetailCriteria.Add(Expression.InG("Id", idList));

            this.GV_List.DataSource = ConvertPlanBill2CSInventoryDetail(this.TheCriteriaMgr.FindAll(planBillDetailCriteria));
            this.GV_List.DataBind();
        }
    }   
 public virtual void CreatePlannedBillView(PlannedBillView entity)
 {
     entityDao.CreatePlannedBillView(entity);
 }
 public virtual void UpdatePlannedBillView(PlannedBillView entity)
 {
     Update(entity);
 }
 public virtual void DeletePlannedBillView(PlannedBillView entity)
 {
     Delete(entity);
 }
 public virtual void CreatePlannedBillView(PlannedBillView entity)
 {
     Create(entity);
 }
Example #8
0
    public void InitPageParameter(int id)
    {
        plannedBillView = this.ThePlannedBillViewMgr.LoadPlannedBillView(id);

        #region 查询PlannedBillView对应那些PlannedBill
        DetachedCriteria planBillCriteria = DetachedCriteria.For(typeof(PlannedBill));
        planBillCriteria.CreateAlias("Item", "item");
        planBillCriteria.CreateAlias("Uom", "uom");
        planBillCriteria.CreateAlias("BillAddress", "billAddr");

        planBillCriteria.Add(Expression.Or(Expression.IsNull("ActingQty"), Expression.Not(Expression.EqProperty("PlannedQty", "ActingQty"))));
        planBillCriteria.Add(Expression.Eq("item.Code", plannedBillView.Item.Code));
        planBillCriteria.Add(Expression.Eq("uom.Code", plannedBillView.Uom.Code));
        planBillCriteria.Add(Expression.Eq("UnitCount", plannedBillView.UnitCount));
        planBillCriteria.Add(Expression.Eq("billAddr.Code", plannedBillView.BillAddress.Code));

        IList <PlannedBill> plannedBillList = this.TheCriteriaMgr.FindAll <PlannedBill>(planBillCriteria);
        #endregion

        if (this.ModuleType == BusinessConstants.CODE_MASTER_ORDER_TYPE_VALUE_PROCUREMENT)
        {
            #region 查询LoctionLotDetail并转换为CSInventoryDetail
            DetachedCriteria locLotDetCriteria = DetachedCriteria.For(typeof(LocationLotDetail));

            locLotDetCriteria.CreateAlias("Location", "loc");
            locLotDetCriteria.CreateAlias("StorageBin", "bin", NHibernate.SqlCommand.JoinType.LeftOuterJoin);
            locLotDetCriteria.CreateAlias("Item", "item");
            locLotDetCriteria.CreateAlias("PlannedBill", "pb");
            locLotDetCriteria.CreateAlias("pb.OrderHead", "od");
            //locLotDetCriteria.CreateAlias("Hu", "hu");

            locLotDetCriteria.SetProjection(
                Projections.ProjectionList()
                .Add(Projections.GroupProperty("loc.Code").As("LocationCode"))
                .Add(Projections.GroupProperty("loc.Name").As("LocationName"))
                .Add(Projections.GroupProperty("bin.Code").As("Bin"))
                //.Add(Projections.GroupProperty("hu.HuId"))
                .Add(Projections.GroupProperty("LotNo").As("LotNo"))
                .Add(Projections.GroupProperty("od.OrderNo").As("OrderNo"))
                .Add(Projections.GroupProperty("pb.ReceiptNo").As("ReceiptNo"))
                .Add(Projections.GroupProperty("pb.CreateDate").As("ReceiptDate"))
                .Add(Projections.GroupProperty("pb.SettleTerm").As("SettleTerm"))
                .Add(Projections.Sum("Qty").As("i"))
                .Add(Projections.GroupProperty("pb.UnitQty").As("j"))
                );

            locLotDetCriteria.Add(Expression.Not(Expression.Eq("Qty", decimal.Zero)));
            locLotDetCriteria.Add(Expression.Eq("IsConsignment", true));
            locLotDetCriteria.Add(Expression.InG("PlannedBill", plannedBillList));

            IList <CSInventoryDetail> csInventoryDetailList = ConvertLocLotDet2CSInventoryDetail(this.TheCriteriaMgr.FindAll(locLotDetCriteria));
            #endregion

            #region 查询IpDetail并转换为CSInventoryDetail
            DetachedCriteria ipDetCriteria = DetachedCriteria.For(typeof(InProcessLocationDetail));
            ipDetCriteria.CreateAlias("OrderLocationTransaction", "olt");
            ipDetCriteria.CreateAlias("InProcessLocation", "ip");
            ipDetCriteria.CreateAlias("PlannedBill", "pb");
            ipDetCriteria.CreateAlias("pb.OrderHead", "od");

            ipDetCriteria.SetProjection(
                Projections.ProjectionList()
                .Add(Projections.GroupProperty("ip.IpNo"))
                //.Add(Projections.GroupProperty("HuId"))
                .Add(Projections.GroupProperty("LotNo"))
                .Add(Projections.GroupProperty("od.OrderNo"))
                .Add(Projections.GroupProperty("pb.ReceiptNo"))
                .Add(Projections.GroupProperty("pb.CreateDate"))
                .Add(Projections.GroupProperty("pb.SettleTerm"))
                .Add(Projections.Sum("Qty"))
                .Add(Projections.GroupProperty("pb.UnitQty"))
                );

            ipDetCriteria.Add((Expression.Eq("ip.Status", BusinessConstants.CODE_MASTER_STATUS_VALUE_CREATE)));
            ipDetCriteria.Add(Expression.InG("PlannedBill", plannedBillList));
            IList <CSInventoryDetail> csInventoryDetailList2 = ConvertIpDet2CSInventoryDetail(this.TheCriteriaMgr.FindAll(ipDetCriteria));

            if (csInventoryDetailList2.Count > 0)
            {
                IListHelper.AddRange <CSInventoryDetail>(csInventoryDetailList, csInventoryDetailList2);

                IListHelper.Sort <CSInventoryDetail>(csInventoryDetailList, "ReceiptDate");
            }
            #endregion

            this.GV_List.DataSource = csInventoryDetailList;
            this.GV_List.DataBind();
        }
        else if (this.ModuleType == BusinessConstants.CODE_MASTER_ORDER_TYPE_VALUE_DISTRIBUTION)
        {
            DetachedCriteria planBillDetailCriteria = DetachedCriteria.For(typeof(PlannedBill));
            planBillDetailCriteria.CreateAlias("OrderHead", "od");

            planBillDetailCriteria.SetProjection(
                Projections.ProjectionList()
                .Add(Projections.GroupProperty("LotNo"))
                .Add(Projections.GroupProperty("od.OrderNo"))
                .Add(Projections.GroupProperty("ExternalReceiptNo"))
                .Add(Projections.GroupProperty("CreateDate"))
                .Add(Projections.GroupProperty("SettleTerm"))
                .Add(Projections.Sum("PlannedQty"))
                .Add(Projections.Sum("ActingQty"))
                );

            IList <int> idList = new List <int>();
            foreach (PlannedBill pb in plannedBillList)
            {
                idList.Add(pb.Id);
            }

            planBillDetailCriteria.Add(Expression.InG("Id", idList));

            this.GV_List.DataSource = ConvertPlanBill2CSInventoryDetail(this.TheCriteriaMgr.FindAll(planBillDetailCriteria));
            this.GV_List.DataBind();
        }
    }
Example #9
0
 public virtual void DeletePlannedBillView(PlannedBillView entity)
 {
     entityDao.DeletePlannedBillView(entity);
 }
Example #10
0
 public virtual void UpdatePlannedBillView(PlannedBillView entity)
 {
     entityDao.UpdatePlannedBillView(entity);
 }
Example #11
0
 public virtual void CreatePlannedBillView(PlannedBillView entity)
 {
     entityDao.CreatePlannedBillView(entity);
 }