?? gbs_requestaction.java
字號:
/**
* method GBS_UsermasterAction.java
* created on 07-30-2004
*
* @author GXK
* @version 1.0
*/
package ACTION;
import java.util.ArrayList;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import COMMON.BaseCommonCheck;
import COMMON.BaseDispatchAction;
import COMMON.MessageList;
import COMMON.ReturnValue;
import COMMON.SendMail;
import COMMON.SystemConstants;
import DataBean.GBS_Customer_stBean;
import DataBean.GBS_MWideUse_stBean;
import DataBean.GBS_RFP_stBean;
import DataBean.GBS_RfpAttachList_stBean;
import DataBean.GBS_RfpCountry_stBean;
import LOGIC.GBS_RequestActionLogic;
//import DataBean.*;
//END UOC
/////////////////////////////////////////////////////////////////
public class GBS_RequestAction extends BaseDispatchAction implements SystemConstants {
/**
* init pagelike SUBSIDIARY data
* @param mapping
* @param form
* @param request
* @param response
* @return
* @throws Exception
*/
public ActionForward init(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
throws Exception {
log.info("[location info]GBS_UsermasterAction.init method!");
GBS_RequestForm requestForm = (GBS_RequestForm) form;
//get login user info from session
this.setUserInfoFromSession(request, requestForm);
GBS_RequestActionLogic logic = new GBS_RequestActionLogic(this.getDataSource(request));
ReturnValue returnValue = new ReturnValue();
//1-1 屭媞儅僗僞偐傜僨乕僞傪専嶕偟偰
returnValue = (ReturnValue) logic.getCustomer(requestForm.getCustomerID());
if (returnValue.isError()) {
if (returnValue.isBussinessError()) {
this.setMessage(returnValue.getMessageList());
}
//getErrorCode, getErrorMessage() proc
} else {
GBS_Customer_stBean Customer_stBean = (GBS_Customer_stBean) returnValue.getDataValue();
requestForm.setCustomerID(Customer_stBean.getCustomerID());
requestForm.setCustomerName(Customer_stBean.getCustomerName());
requestForm.setCustomerCategory(Customer_stBean.getCustomerCategory());
}
//
this.removeFromSession(request, RFPATTACHLIST);
//1-2 儊乕儞夋柺偐傜RFP斣崋丂=丂""丂偺応崌
// if( requestForm.getRfpNo().trim().equals("") ){
requestForm.setMethod("insert");
requestForm.setOriginatingSubsidiary(requestForm.getLoginSubsidiaryName());
// }
//1-3 儊乕儞夋柺偐傜RFP斣崋丂亙亜丂""丂偺応崌
String OriginatingSubsidiaryCode = "";
if (!requestForm.getRfpNo().trim().equals("")) {
//requestForm.setMethod( "update" );
//RFP忣曬偐傜RFP忣曬傪庢摼丏
GBS_RFP_stBean RFP_stBean = new GBS_RFP_stBean();
returnValue = (ReturnValue) logic.getRfpInfo(requestForm.getCustomerID(), requestForm.getRfpNo());
if (returnValue.isError()) {
if (returnValue.isBussinessError()) {
this.setMessage(returnValue.getMessageList());
}
//getErrorCode, getErrorMessage() proc
} else {
RFP_stBean = (GBS_RFP_stBean) returnValue.getDataValue();
requestForm.setCustomerID(RFP_stBean.getCustomerID());
requestForm.setRfpNo(RFP_stBean.getRfpNo());
requestForm.setDueDate(RFP_stBean.getDueDate());
requestForm.setInfoDueDate(RFP_stBean.getInfoDueDate());
requestForm.setRepRcvDate(RFP_stBean.getRepRcvDate());
requestForm.setInfoCountry(RFP_stBean.getInfoCountry());
requestForm.setInfoDelivery(RFP_stBean.getInfoDelivery());
requestForm.setInfoHardCategory(RFP_stBean.getInfoHardCategory());
requestForm.setQuantity(RFP_stBean.getQuantity());
requestForm.setRemarks(RFP_stBean.getRemarks());
requestForm.setComment(RFP_stBean.getComment());
OriginatingSubsidiaryCode = RFP_stBean.getRfpSubsidiaryCode();
//Originating Subsidiary Name 傪庢摼
returnValue = logic.getSubsidiaryName(RFP_stBean.getRfpSubsidiaryCode());
if (!returnValue.isError()) {
requestForm.setOriginatingSubsidiary(
returnValue.getDataValue() == null ? "" : returnValue.getDataValue().toString());
}
requestForm.setMethod("update");
}
//RFP偺娭楢崙忣曬傪庢摼
returnValue = (ReturnValue) logic.getRfpCountryInfo(requestForm.getCustomerID(), requestForm.getRfpNo());
if (returnValue.isError()) {
if (returnValue.isBussinessError()) {
this.setMessage(returnValue.getMessageList());
}
//getErrorCode, getErrorMessage() proc
} else {
ArrayList RfpCountryList = (ArrayList) returnValue.getDataValue();
//崙柤,崙僐乕僪
String countries = "";
String countriesCode = "";
for (int i = 0; RfpCountryList != null && i < RfpCountryList.size(); i++) {
GBS_RfpCountry_stBean RfpCountry_stBean = (GBS_RfpCountry_stBean) RfpCountryList.get(i);
if (i == RfpCountryList.size() - 1) {
if (RfpCountry_stBean.getCountryName() != null) {
countries = countries + RfpCountry_stBean.getCountryName();
countriesCode += RfpCountry_stBean.getCountryCode();
}
} else {
if (RfpCountry_stBean.getCountryName() != null) {
countries = countries + RfpCountry_stBean.getCountryName() + ",";
countriesCode += RfpCountry_stBean.getCountryCode() + ",";
}
}
}
requestForm.setCountries(countries);
requestForm.setCountrycode(countriesCode);
//尰朄柤
String subsidiary = "";
for (int i = 0; RfpCountryList != null && i < RfpCountryList.size(); i++) {
GBS_RfpCountry_stBean RfpCountry_stBean = (GBS_RfpCountry_stBean) RfpCountryList.get(i);
if (RfpCountry_stBean.getSubsidiaryName() == null || RfpCountry_stBean.getSubsidiaryName().equals("")) {
RfpCountryList.remove(i);
i--;
}
}
for (int i = 0; RfpCountryList != null && i < RfpCountryList.size(); i++) {
for (int j = i + 1; j < RfpCountryList.size(); j++) {
GBS_RfpCountry_stBean RfpCountry_stBean = (GBS_RfpCountry_stBean) RfpCountryList.get(i);
GBS_RfpCountry_stBean RfpCountry_stBean1 = (GBS_RfpCountry_stBean) RfpCountryList.get(j);
if (RfpCountry_stBean.getSubsidiaryCode().equals(RfpCountry_stBean1.getSubsidiaryCode())) {
RfpCountryList.remove(j);
j--;
}
}
}
//ArrayList subsidiaryList = new ArrayList();
for (int i = 0; RfpCountryList != null && i < RfpCountryList.size(); i++) {
GBS_RfpCountry_stBean RfpCountry_stBean = (GBS_RfpCountry_stBean) RfpCountryList.get(i);
if (i == RfpCountryList.size() - 1) {
subsidiary = subsidiary + RfpCountry_stBean.getSubsidiaryName();
} else {
subsidiary = subsidiary + RfpCountry_stBean.getSubsidiaryName() + ",";
}
//subsidiaryList.add()
}
requestForm.setParticipatingSubsidiaries(subsidiary);
}
//RFP揧晅帒椏偐傜RFP揧晅帒椏僨乕僞傪庢摼丏
ArrayList RfpAttachList = new ArrayList();
GBS_RfpAttachList_stBean RfpAttachList_stBean = new GBS_RfpAttachList_stBean();
returnValue =
(ReturnValue) logic.getRfpAttachInfo(
requestForm.getCustomerID(),
requestForm.getRfpNo(),
requestForm.getLoginPlusHour());
RfpAttachList = (ArrayList) returnValue.getDataValue();
requestForm.setRfpAttachList(RfpAttachList);
//whether Edit Button can show or not
if (requestForm.getLoginSubsidiaryCode2().equals(OriginatingSubsidiaryCode)) {
requestForm.setEditflag(true);
}else{
requestForm.setEditflag(false);
}
//(4)RFP揧晅帒椏傪SESSION偵曐懚偡傞
this.saveToSession(request, RFPATTACHLIST, RfpAttachList);
}
return (mapping.findForward(nextview));
}
public ActionForward update(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response)
throws Exception {
//HttpSession session = request.getSession();
GBS_RequestForm requestForm = (GBS_RequestForm) form;
//get login user info from session
this.setUserInfoFromSession(request, requestForm);
ReturnValue returnValue = new ReturnValue();
GBS_RequestActionLogic logic = new GBS_RequestActionLogic(this.getDataSource(request));
//InputCheck
MessageList errorMsg = new MessageList();
errorMsg = (MessageList) inputCheck(requestForm, request);
if (errorMsg.size() > 0) {
//save error to request
this.setMessage(errorMsg);
requestForm.setRfpAttachList((ArrayList) this.getFromSession(request, RFPATTACHLIST));
return (mapping.findForward(nextview));
}
//GBS_RfpAttachList_stBean RfpAttachList_stBean = new GBS_RfpAttachList_stBean();
//String updateuser = thisform.getLoginMemberNameLast() + " " + thisform.getLoginMemberNameFirst();
//3乚2乚1.丂RFP偺忣曬傪捛壛
returnValue =
logic.updRfpInfo(
requestForm.getCustomerID(),
requestForm.getRfpNo(),
BaseCommonCheck.convertDateToYYYYMMDD(requestForm.getRepRcvDate()),
BaseCommonCheck.convertDateToYYYYMMDD(requestForm.getDueDate()),
BaseCommonCheck.convertDateToYYYYMMDD(requestForm.getInfoDueDate()),
requestForm.getInfoCountry(),
requestForm.getInfoHardCategory(),
requestForm.getInfoDelivery(),
requestForm.getQuantity(),
requestForm.getRemarks(),
requestForm.getComment(),
requestForm.getLoginUserId(),
requestForm.getLoginSubsidiaryCode2());
if (returnValue.isError()) {
if (returnValue.isBussinessError()) {
this.setMessage(returnValue.getMessageList());
}
//getErrorCode, getErrorMessage proc
//僨乕僞専嶕昁梫偱偡丠妋擣昁梫偱偡丅
return (mapping.findForward(nextview));
}
//3乚2乚2丏丂RFP娭楢崙偺忣曬傪捛壛
String countriesCode = requestForm.getCountrycode();
ArrayList countryCodeList = new ArrayList();
while (countriesCode.lastIndexOf(",") > 0) {
countryCodeList.add(countriesCode.substring(countriesCode.lastIndexOf(",") + 1));
countriesCode = countriesCode.substring(0, countriesCode.lastIndexOf(","));
}
countryCodeList.add(countriesCode);
returnValue =
logic.saveRfpCountryInfo(
requestForm.getCustomerID(),
requestForm.getRfpNo(),
requestForm.getLoginUserId(),
countryCodeList);
if (returnValue.isError()) {
if (returnValue.isBussinessError()) {
this.setMessage(returnValue.getMessageList());
}
//getErrorCode, getErrorMessage proc
//僨乕僞専嶕昁梫偱偡丠妋擣昁梫偱偡丅
return (mapping.findForward(nextview));
}
//3乚2乚3丏丂RFP揧晅帒椏偺忣曬傪捛壛
//RFP揧晅帒椏偐傜RFP揧晅帒椏僨乕僞傪庢摼丏
ArrayList RfpAttachList = new ArrayList();
RfpAttachList = (ArrayList) this.getFromSession(request, RFPATTACHLIST);
returnValue = logic.saveRfpAttachment(RfpAttachList, requestForm.getLoginUserId());
if (returnValue.isError()) {
if (returnValue.isBussinessError()) {
this.setMessage(returnValue.getMessageList());
}
//getErrorCode, getErrorMessage proc
//僨乕僞専嶕昁梫偱偡丠妋擣昁梫偱偡丅
return (mapping.findForward(nextview));
}
//Get the mailList and send mail
if (!BaseCommonCheck.isEmpty(requestForm.getLoginEmail())) {
ArrayList mailList = new ArrayList();
returnValue = logic.getMail(requestForm.getCustomerID(), requestForm.getRfpNo());
if (returnValue.isError()) {
if (returnValue.isBussinessError()) {
this.setMessage(returnValue.getMessageList());
}
return (mapping.findForward(nextview));
} else {
mailList = (ArrayList) returnValue.getDataValue();
}
//Get mail server
String smtpServer = "";
String mailUser = "";
String mailPasswd = "";
returnValue = logic.getWideUse("SMTP");
if (returnValue.isError()) {
if (returnValue.isBussinessError()) {
this.setMessage(returnValue.getMessageList());
}
return (mapping.findForward(nextview));
} else {
ArrayList tmpList = (ArrayList) returnValue.getDataValue();
for (int i = 0; tmpList != null && i < tmpList.size(); i++) {
GBS_MWideUse_stBean stBean = (GBS_MWideUse_stBean) tmpList.get(i);
if ("SMTP".equals(stBean.getMainKey())) {
smtpServer = BaseCommonCheck.convertNullToSpace(stBean.getString1());
mailUser = BaseCommonCheck.convertNullToSpace(stBean.getString2());
mailPasswd = BaseCommonCheck.convertNullToSpace(stBean.getString3());
break;
}
}
}
//Get mail server
String url = "";
returnValue = logic.getWideUse("URL");
if (returnValue.isError()) {
if (returnValue.isBussinessError()) {
this.setMessage(returnValue.getMessageList());
}
return (mapping.findForward(nextview));
} else {
ArrayList tmpList = (ArrayList) returnValue.getDataValue();
if (tmpList != null && tmpList.size() > 0) {
GBS_MWideUse_stBean stBean = (GBS_MWideUse_stBean) tmpList.get(0);
url = BaseCommonCheck.convertNullToSpace(stBean.getString1());
}
}
if (!url.equals("")) {
//http://localhost:8080/gbs/GBS_login.do?method=init&customerId=marine&rfpNo=2&jumpTo=request
url += "GBS_login.do?method=init&jumpTo=request&customerId=";
url += requestForm.getCustomerID();
url += "&rfpNo=";
url += requestForm.getRfpNo();
}
//Get replyTo
ArrayList replyTo = new ArrayList();
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -