rendered paste bodypackage com.inspired.pefproject.command
{
import com.adobe.cairngorm.business.ServiceLocator;
import com.adobe.cairngorm.commands.ICommand;
import com.adobe.cairngorm.control.CairngormEvent;
import com.adobe.cairngorm.control.CairngormEventDispatcher;
import com.inspired.pefproject.control.FileUpload;
import com.inspired.pefproject.control.NewProductsDeliveryEvent;
import com.inspired.pefproject.model.PEFModelLocator;
import com.inspired.pefproject.views.Depots.clerk.ViewVesselDelivery;
import com.inspired.pefproject.vo.CustomEvent;
import com.inspired.pefproject.vo.ProductsDelivery;
import flash.net.FileReference;
import mx.controls.Alert;
import mx.rpc.AsyncToken;
import mx.rpc.IResponder;
public class AddProductsDelivery implements ICommand, IResponder
{
private var evt:NewProductsDeliveryEvent
//private var viewVesselDelivery:ViewVesselDelivery = model.viewVesselDeliveryForm;
public function execute(event:CairngormEvent):void
{
evt = event as NewProductsDeliveryEvent
var service:Object = ServiceLocator.getInstance().getRemoteObject("transactionService");
var response:AsyncToken = service.processProductDeliveryForm(evt.productsDelivery);
response.addResponder(this);
}
private var model:PEFModelLocator = PEFModelLocator.getInstance()
public function result(data:Object):void
{
var args:Object = new Object();
args.productType = evt.productsDelivery.productDetails.productType
args.volume = evt.productsDelivery.volume
ViewVesselDelivery.dispatchEvent( new CustomEvent('ProductChosen',args,true))
model.allProductsDelivery.addItem(evt.productsDelivery)
model.viewVesselDeliveryForm.productDeliverys.addItemAt( evt.productsDelivery,0)
var userFile:FileReference
var i:int
try
{
var item:ProductsDelivery = data.result
PEFModelLocator.getInstance().allProductsDelivery.addItem(item);
for(i=0;i<model.allUploads.length;i++)
{
userFile = model.allUploads.getItemAt(i) as FileReference
CairngormEventDispatcher.getInstance().dispatchEvent(new FileUpload(userFile))
}
}
catch(e:Error)
{
//Alert.show(e.toString())
//remove for block below on production version
for(i=0;i<model.allUploads.length;i++)
{
userFile = model.allUploads.getItemAt(i) as FileReference
CairngormEventDispatcher.getInstance().dispatchEvent(new FileUpload(userFile))
}
}
}
public function fault(info:Object):void
{
Alert.show("" +info.fault);
}