package com.dev.swms.server.telnet.demo;

import java.io.IOException;

import net.wimpi.telnetd.net.Connection;

import com.dev.kangaroo.shell.BreakException;
import com.dev.kangaroo.shell.ContinueException;
import com.dev.kangaroo.shell.Energy4BaseShell;

public class BarcodeShell extends Energy4BaseShell {

	@Override
	protected void setShellMessage(String message) {
	}

	@Override
	protected String getShellMessage() {
		return null;
	}

	@Override
	protected void mainProcess(Connection connection) throws BreakException,
			ContinueException, IOException {
		//输入文本内容： 如 当前库位: 1234567
		output("location","1234567");
		
		//构造一个文本输入控件，并获取输入的VALUE
		String barcodeLocation = getTextField("barcodeLocation");
		
		//隐藏location，barcodeLocation二个文本内容
		hide("location");
		hide("barcodeLocation");
		
		//重新输入operLocation,条码内容
		output("operLocation",barcodeLocation);
		
		int inventoryQuantity = getIntegerField("inventoryQuantity");
		
		//到这里可以调用wmsASNManager的receiver方法收货。   
		//shell中无法到XML中注入manager,如要调用spring bean环境中的对象方法只需调用invoke(beanId,methodName,方法参数)
		//invoke可接收返回值
//		try {
//			invoke("wmsASNManager", "receiver", barcodeLocation,inventoryQuantity);
//		} catch (BusinessException e) {
//			e.printStackTrace();
//			setStatusMessage(e.getMessage());
//		} catch (Exception e) {
//			e.printStackTrace();
//		}
		//下面可以在次跳shell页面
		forward("energy4MenuShell");
	}

}
