public int InsertRcvLine(POReceiptLineModel model)
        {
            model.CreationDate   = DateTime.Now;
            model.LastUpdateDate = DateTime.Now;

            return(factory.POReceiptLineDao.Insert(model));
        }
예제 #2
0
        public void Delete(POReceiptLineModel model)
        {
            string sql =
                @"DELETE FROM po_receipt_lines
               WHERE receipt_line_id = @receipt_line_id";

            object[] parms = { "@receipt_line_id", model.ReceiptLineId };
            db.Update(sql, parms);
        }
예제 #3
0
        public int Insert(POReceiptLineModel model)
        {
            string sql =
                @"INSERT INTO po_receipt_lines
	                (last_update_date,last_updated_by,creation_date
	                ,created_by,receipt_header_id,line_num
	                ,category_id,quantity_shipped,quantity_received
	                ,unit_of_measure,item_description,item_id
	                ,item_revision,vendor_item_num,vendor_lot_num
	                ,uom_conversion_rate,shipment_line_status_code,source_document_code
	                ,po_header_id,po_release_id,po_line_id
	                ,po_line_location_id,po_distribution_id,requisition_line_id
	                ,req_distribution_id,routing_header_id,packing_slip
	                ,from_organization_id,deliver_to_person_id,employee_id
	                ,destination_type_code,to_organization_id,to_subinventory
	                ,locator_id,deliver_to_location_id,charge_account_id
	                ,transportation_account_id,shipment_unit_price,transfer_cost
	                ,transportation_cost,comments,attribute_category
	                ,attribute1,attribute2,attribute3
	                ,attribute4,attribute5,tax_name
	                ,tax_amount,invoice_status_code,cum_comparison_flag
	                ,truck_num,bar_code_label,cost_group_id
	                ,secondary_quantity_shipped,secondary_quantity_received,secondary_unit_of_measure
	                ,qc_require_inspc_flag ,qc_inspection_status,mmt_transaction_id
	                ,asn_lpn_id,amount,amount_received
	                ,job_id,approval_status,amount_shipped
	                ,project_id,project_num,quantity_ordered
                    ,cost_code,lot_number,qc_inspection_by)
                VALUES
	                ( @last_update_date, @last_updated_by, @creation_date
	                , @created_by, @receipt_header_id, @line_num
	                , @category_id, @quantity_shipped, @quantity_received
	                , @unit_of_measure, @item_description, @item_id
	                , @item_revision, @vendor_item_num, @vendor_lot_num
	                , @uom_conversion_rate, @shipment_line_status_code, @source_document_code
	                , @po_header_id, @po_release_id, @po_line_id
	                , @po_line_location_id, @po_distribution_id, @requisition_line_id
	                , @req_distribution_id, @routing_header_id, @packing_slip
	                , @from_organization_id, @deliver_to_person_id, @employee_id
	                , @destination_type_code, @to_organization_id, @to_subinventory
	                , @locator_id, @deliver_to_location_id, @charge_account_id
	                , @transportation_account_id, @shipment_unit_price, @transfer_cost
	                , @transportation_cost, @comments, @attribute_category
	                , @attribute1, @attribute2, @attribute3
	                , @attribute4, @attribute5, @tax_name
	                , @tax_amount, @invoice_status_code, @cum_comparison_flag
	                , @truck_num, @bar_code_label, @cost_group_id
	                , @secondary_quantity_shipped, @secondary_quantity_received, @secondary_unit_of_measure
	                , @qc_require_inspc_flag, @qc_inspection_status, @mmt_transaction_id
	                , @asn_lpn_id, @amount, @amount_received
	                , @job_id, @approval_status, @amount_shipped
	                , @project_id, @project_num,@quantity_ordered
                    , @cost_code, @lot_number,@qc_inspection_by)";

            return(db.Insert(sql, Take(model)));
        }
        private void Confirm_QC(object sender, EventArgs e)
        {
            IEnumerable <POReceiptLineModel> lines = _view.rcvLines;
            POReceiptLineModel lineSelected        = _view.lineInspection;

            lines.Where(p => p.ReceiptLineId.Equals(lineSelected.ReceiptLineId)).ToList()
            .ForEach(u =>
            {
                u.QcInspectionStatus = lineSelected.QcInspectionStatus;
                u.QcInspectionBy     = _view.EpiSession.User.Id;
            });

            _view.rcvLines = lines;
            _view.LineRefresh();
            _view.lineInspection = null;
        }
        private void Seleted_Line(object sender, EventArgs e)
        {
            MetroGrid grd = sender as MetroGrid;

            POReceiptLineModel line = new POReceiptLineModel();

            try
            {
                line = (POReceiptLineModel)grd.CurrentRow.DataBoundItem;
                _view.lineSeleted = line;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Failed", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

            if (line.QcRequireInspcFlag)
            {
                _view.lineInspection = _view.lineSeleted;
            }
        }
        private void AddReceivingLine(List <POLineModel> poLines)
        {
            if (poLines.Count > 0)
            {
                POReceiptHeaderModel recHead = _view.headSeleted;
                foreach (var poLine in poLines)
                {
                    POReceiptLineModel recLine = new POReceiptLineModel();
                    recLine.CreatedBy          = _view.EpiSession.User.Id;
                    recLine.LastUpdatedBy      = _view.EpiSession.User.Id;
                    recLine.ReceiptHeaderId    = _view.headSeleted.ReceiptHeaderId;
                    recLine.LineNum            = 0;                                         //When to generate line num after Received status
                    recLine.QuantityShipped    = poLine.Quantity - poLine.QuantityReceived; //Default 0
                    recLine.QuantityReceived   = poLine.QuantityReceived;
                    recLine.UnitOfMeasure      = string.IsNullOrEmpty(poLine.Uom) ? "PCS" : poLine.Uom;
                    recLine.ItemDescription    = poLine.ItemDescription;
                    recLine.ItemId             = poLine.ItemId;
                    recLine.SourceDocumentCode = "PURCHASING";
                    recLine.PoHeaderId         = poLine.PoHeaderId;
                    recLine.PoLineId           = poLine.PoLineId;
                    recLine.ToSubinventory     = poLine.RefProjectNum;
                    recLine.ProjectId          = poLine.RefProjectId;
                    recLine.ProjectNum         = poLine.RefProjectNum;
                    recLine.ShipmentUnitPrice  = poLine.UnitPrice;
                    recLine.TaxName            = poLine.TaxCode;
                    recLine.TaxAmount          = poLine.TaxAmount;
                    recLine.InvoiceStatusCode  = "N";
                    recLine.PrjCostId          = poLine.ProjCostId;
                    recLine.QuantityOrdered    = poLine.Quantity;
                    recLine.CostCode           = poLine.CostCode;
                    recLine.Attribute1         = poLine.BOM; /*Bom Number*/

                    CostGroupModel cost = _view.costs.Where(x => x.CostCode == poLine.CostCode).FirstOrDefault();
                    if (cost == null)
                    {
                        MessageBox.Show("Cost Code : " + cost.CostCode +
                                        " in PO Line : " + poLine.PoLineNum + " dose not exist.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        break;
                    }

                    int dup = _view.rcvLines.Where(x => x.PoLineId == poLine.PoLineId).ToList().Count();
                    if (dup > 0)
                    {
                        MessageBox.Show("PO Line : " + poLine.PoLineNum + " was existing within Receive.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        break;
                    }

                    recLine.QcRequireInspcFlag = cost.MakingFlag;

                    if (recLine.QcRequireInspcFlag)
                    {
                        recLine.QcInspectionStatus = 2; //Default PASS
                    }
                    else
                    {
                        recLine.QcInspectionStatus = 0; //NOTHING
                    }

                    if (_view.rcvLines.Count() == 0)
                    {
                        recHead.SourceType = poLine.LineType;
                        if (recLine.QcRequireInspcFlag)
                        {
                            recHead.QCInspectionFlag = true;
                            recHead.InspectionStatus = "HOLD";
                        }
                        else
                        {
                            recHead.QCInspectionFlag = false;
                            recHead.InspectionStatus = "NO INSPECTION";
                        }
                    }
                    else
                    {
                        if (poLine.LineType.Trim() != recHead.SourceType.Trim())
                        {
                            MessageBox.Show("PO Type is not match Receive.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            break;
                        }

                        if (cost.MakingFlag != recHead.QCInspectionFlag)
                        {
                            MessageBox.Show("PO Type is not match Receive for Job process.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            break;
                        }
                    }

                    _repository.InsertRcvLine(recLine);
                }

                _view.rcvLines = _repository.GetRcvLineByHeaderID(recHead.ReceiptHeaderId);
                _view.BindingRcvLines(_view.rcvLines);
                _repository.UpdateRcvHead(recHead);
                _view.headSeleted = recHead;
            }
        }
 public void DeleteRcvLine(POReceiptLineModel model)
 {
     factory.POReceiptLineDao.Delete(model);
 }
        public void UpdateRcvLine(POReceiptLineModel model)
        {
            model.LastUpdateDate = DateTime.Now;

            factory.POReceiptLineDao.Update(model);
        }
예제 #9
0
 private object[] Take(POReceiptLineModel model)
 {
     return(new object[]
     {
         "@receipt_line_id", model.ReceiptLineId,
         "@last_update_date", model.LastUpdateDate,
         "@last_updated_by", model.LastUpdatedBy,
         "@creation_date", model.CreationDate,
         "@created_by", model.CreatedBy,
         "@receipt_header_id", model.ReceiptHeaderId,
         "@line_num", model.LineNum,
         "@category_id", model.CategoryId,
         "@quantity_shipped", model.QuantityShipped,
         "@quantity_ordered", model.QuantityOrdered,
         "@quantity_received", model.QuantityReceived,
         "@unit_of_measure", model.UnitOfMeasure,
         "@item_description", model.ItemDescription,
         "@item_id", model.ItemId,
         "@item_revision", model.ItemRevision,
         "@vendor_item_num", model.VendorItemNum,
         "@vendor_lot_num", model.VendorLotNum,
         "@uom_conversion_rate", model.UomConversionRate,
         "@shipment_line_status_code", model.ShipmentLineStatusCode,
         "@source_document_code", model.SourceDocumentCode,
         "@po_header_id", model.PoHeaderId,
         "@po_release_id", model.PoReleaseId,
         "@po_line_id", model.PoLineId,
         "@po_line_location_id", model.PoLineLocationId,
         "@po_distribution_id", model.PoDistributionId,
         "@requisition_line_id", model.RequisitionLineId,
         "@req_distribution_id", model.ReqDistributionId,
         "@routing_header_id", model.RoutingHeaderId,
         "@packing_slip", model.PackingSlip,
         "@from_organization_id", model.FromOrganizationId,
         "@deliver_to_person_id", model.DeliverToPersonId,
         "@employee_id", model.EmployeeId,
         "@destination_type_code", model.DestinationTypeCode,
         "@to_organization_id", model.ToOrganizationId,
         "@to_subinventory", model.ToSubinventory,
         "@locator_id", model.LocatorId,
         "@deliver_to_location_id", model.DeliverToLocationId,
         "@charge_account_id", model.ChargeAccountId,
         "@transportation_account_id", model.TransportationAccountId,
         "@shipment_unit_price", model.ShipmentUnitPrice,
         "@transfer_cost", model.TransferCost,
         "@transportation_cost", model.TransportationCost,
         "@comments", model.Comments,
         "@attribute_category", model.AttributeCategory,
         "@attribute1", model.Attribute1,
         "@attribute2", model.Attribute2,
         "@attribute3", model.Attribute3,
         "@attribute4", model.Attribute4,
         "@attribute5", model.Attribute5,
         "@tax_name", model.TaxName,
         "@tax_amount", model.TaxAmount,
         "@invoice_status_code", model.InvoiceStatusCode,
         "@cum_comparison_flag", (model.CumComparisonFlag) ? "Y" : "N",
         "@truck_num", model.TruckNum,
         "@bar_code_label", model.BarCodeLabel,
         "@cost_group_id", model.PrjCostId,
         "@secondary_quantity_shipped", model.SecondaryQuantityShipped,
         "@secondary_quantity_received", model.SecondaryQuantityReceived,
         "@secondary_unit_of_measure", model.SecondaryUnitOfMeasure,
         "@qc_require_inspc_flag", (model.QcRequireInspcFlag) ? "Y" : "N",
         "@qc_inspection_status", model.QcInspectionStatus,
         "@mmt_transaction_id", model.MmtTransactionId,
         "@asn_lpn_id", model.AsnLpnId,
         "@amount", model.Amount,
         "@amount_received", model.AmountReceived,
         "@job_id", model.JobId,
         "@approval_status", model.ApprovalStatus,
         "@amount_shipped", model.AmountShipped,
         "@project_id", model.ProjectId,
         "@project_num", model.ProjectNum,
         "@cost_code", model.CostCode,
         "@lot_number", model.LotNumber,
         "@qc_inspection_by", model.QcInspectionBy
     });
 }
예제 #10
0
        public void Update(POReceiptLineModel model)
        {
            string sql =
                @"UPDATE po_receipt_lines
               SET last_update_date = @last_update_date
                  ,last_updated_by = @last_updated_by
                  ,receipt_header_id = @receipt_header_id
                  ,line_num = @line_num
                  ,category_id = @category_id
                  ,quantity_shipped = @quantity_shipped
                  ,quantity_received = @quantity_received
                  ,unit_of_measure = @unit_of_measure
                  ,item_description = @item_description
                  ,item_id = @item_id
                  ,item_revision = @item_revision
                  ,vendor_item_num = @vendor_item_num
                  ,vendor_lot_num = @vendor_lot_num
                  ,uom_conversion_rate = @uom_conversion_rate
                  ,shipment_line_status_code = @shipment_line_status_code
                  ,source_document_code = @source_document_code
                  ,po_header_id = @po_header_id
                  ,po_release_id = @po_release_id
                  ,po_line_id = @po_line_id
                  ,po_line_location_id = @po_line_location_id
                  ,po_distribution_id = @po_distribution_id
                  ,requisition_line_id = @requisition_line_id
                  ,req_distribution_id = @req_distribution_id
                  ,routing_header_id = @routing_header_id
                  ,packing_slip = @packing_slip
                  ,from_organization_id = @from_organization_id
                  ,deliver_to_person_id = @deliver_to_person_id
                  ,employee_id = @employee_id
                  ,destination_type_code = @destination_type_code
                  ,to_organization_id = @to_organization_id
                  ,to_subinventory = @to_subinventory
                  ,locator_id = @locator_id
                  ,deliver_to_location_id = @deliver_to_location_id
                  ,charge_account_id = @charge_account_id
                  ,transportation_account_id = @transportation_account_id
                  ,shipment_unit_price = @shipment_unit_price
                  ,transfer_cost = @transfer_cost
                  ,transportation_cost = @transportation_cost
                  ,comments = @comments
                  ,attribute_category = @attribute_category
                  ,attribute1 = @attribute1
                  ,attribute2 = @attribute2
                  ,attribute3 = @attribute3
                  ,attribute4 = @attribute4
                  ,attribute5 = @attribute5
                  ,tax_name = @tax_name
                  ,tax_amount = @tax_amount
                  ,invoice_status_code = @invoice_status_code
                  ,cum_comparison_flag = @cum_comparison_flag
                  ,truck_num = @truck_num
                  ,bar_code_label = @bar_code_label
                  ,cost_group_id = @cost_group_id
                  ,secondary_quantity_shipped = @secondary_quantity_shipped
                  ,secondary_quantity_received = @secondary_quantity_received
                  ,secondary_unit_of_measure = @secondary_unit_of_measure
                  ,qc_require_inspc_flag = @qc_require_inspc_flag
                  ,qc_inspection_status = @qc_inspection_status
                  ,mmt_transaction_id = @mmt_transaction_id
                  ,asn_lpn_id = @asn_lpn_id
                  ,amount = @amount
                  ,amount_received = @amount_received
                  ,job_id = @job_id
                  ,approval_status = @approval_status
                  ,amount_shipped = @amount_shipped
                  ,project_id = @project_id
                  ,project_num = @project_num
                  ,quantity_ordered = @quantity_ordered
                  ,cost_code = @cost_code
                  ,lot_number = @lot_number
                  ,qc_inspection_by = @qc_inspection_by
             WHERE receipt_line_id = @receipt_line_id";

            db.Update(sql, Take(model));
        }