コード例 #1
0
 public MedicineDeliveryAllocationEntity(int subNo, VWareHouseDetail vWareHouseDetail)
 {
     this.SubNo            = subNo;
     this.VWareHouseDetail = vWareHouseDetail;
     this.LotNo            = this.VWareHouseDetail == null ? null : this.VWareHouseDetail.LotNo;
     this.ExpiredDate      = this.VWareHouseDetail == null ? (DateTime?)null : this.VWareHouseDetail.ExpiredDate;
     this.InStockQty       = VWareHouseDetail.Qty;
     this.AllocatedQty     = vWareHouseDetail.AllocatedQty;
 }
コード例 #2
0
 /// <summary>
 /// Autoes the allocate.
 /// </summary>
 /// <param name="medicineDeliveryDetails">The medicine delivery details.</param>
 /// <param name="wareHouseDetails">The ware house details.</param>
 /// <returns></returns>
 private void AutoAllocate(List <MedicineDeliveryDetail> medicineDeliveryDetails, List <VWareHouseDetail> wareHouseDetails)
 {
     foreach (var deliveryDetailItem in medicineDeliveryDetails)
     {
         deliveryDetailItem.AllocatedWareHouseDetail = new List <VWareHouseDetail>();
         var warehouseDetailList = wareHouseDetails.Where(x => x.MedicineId == deliveryDetailItem.MedicineId).OrderBy(x => x.ExpiredDate).OrderBy(x => x.Id).ToList();
         foreach (var t in warehouseDetailList)
         {
             if (deliveryDetailItem.NotAllocatedQty <= 0)
             {
                 break;
             }
             if (deliveryDetailItem.NotAllocatedQty <= t.Qty)
             {
                 var allocated = new VWareHouseDetail
                 {
                     MedicineId   = t.MedicineId,
                     ClinicId     = t.ClinicId,
                     LotNo        = t.LotNo,
                     ExpiredDate  = t.ExpiredDate,
                     Qty          = t.Qty,
                     AllocatedQty = deliveryDetailItem.NotAllocatedQty,
                     InStockQty   = t.InStockQty
                 };
                 deliveryDetailItem.NotAllocatedQty = 0;
                 deliveryDetailItem.AllocatedWareHouseDetail.Add(allocated);
                 deliveryDetailItem.NotAllocatedQty = 0;
             }
             else
             {
                 var allocated = new VWareHouseDetail
                 {
                     MedicineId   = t.MedicineId,
                     ClinicId     = t.ClinicId,
                     LotNo        = t.LotNo,
                     ExpiredDate  = t.ExpiredDate,
                     Qty          = t.Qty,
                     AllocatedQty = t.Qty,
                     InStockQty   = t.InStockQty
                 };
                 deliveryDetailItem.NotAllocatedQty -= allocated.AllocatedQty;
                 deliveryDetailItem.AllocatedWareHouseDetail.Add(allocated);
             }
             if (deliveryDetailItem.NotAllocatedQty == 0)
             {
                 break;
             }
         }
     }
 }
コード例 #3
0
 private void BtnSaveClick(object sender, EventArgs e)
 {
     this.selectedWareHouseDetail = (VWareHouseDetail)this.bdsVWarehouseDetail.Current;
     this.DialogResult            = DialogResult.Yes;
     this.Close();
 }
コード例 #4
0
 private void DataGridViewX1CellDoubleClick(object sender, DataGridViewCellEventArgs e)
 {
     this.selectedWareHouseDetail = (VWareHouseDetail)this.bdsVWarehouseDetail.Current;
     this.DialogResult            = DialogResult.Yes;
     this.Close();
 }