//package com.tongtech.tongintegrator;
import java.sql.CallableStatement;import java.sql.DriverManager;import java.sql.SQLException;import java.sql.Types;import java.util.Properties;
import com.tongtech.tongintegrator.adaptor.Controller;import com.tongtech.tongintegrator.adaptor.IbafException;//import com.tongtech.tongintegrator.adaptor.IbafException;import com.tongtech.tongintegrator.adaptor.PipelineException;import com.tongtech.tongintegrator.adaptor.usercustom.SimpleProcess;import com.tongtech.tongintegrator.dataobjects.*;
import org.apache.log4j.Category;
import java.io.*;
public class setDOUserID extends SimpleProcess {
/* private static final String RECEIVED_PASSWORD_ATTNAME = "MEMBER_PASSWORD"; private static final String RECEIVED_USERNAME_ATTNAME = "MEMBER_USERNAME"; private static final String RECEIVED_USERUUID_ATTNAME = "MEMBER_USERUUID"; private static final String RECEIVED_EMAIL_ATTNAME = "MEMBER_EMAIL";*/
static Category cat = Category.getInstance(setDOUserID.class.getName());
int do_stock_id;
Object do_picture1;
Object do_stock_blob;
Object do_stock_datetime;
OutputStream ostream;
String blobDOName;
String pictureName;
String blobName;
String datetimeName;
int blobIndex;
int datetimeIndex;
int picture1Index; String _inDOName = null; String _outUserIDAttName =null; String _passwordAttName = null; String _usernameAttName = null; String _useruuidAttName = null; String _emailAttName = null; String _procedureName = null;
String _url = null; String _login = null; String _password = null;
/* public int getUserId(String FirstName,String LastName,String Unit, String Street,String City,String Region,String PostalCode, String Country,String Telephone,String Email,String Username, String Password,String AffiliateId) throws SQLException{ */ public int getUserId(String Username,String Password,String useruuid,String email) throws SQLException{// insertUsers /* String url = "jdbc:microsoft:sqlserver://168.1.100.30:1433;DatabaseName=ncxx;SelectMethod=cursor"; //String url = "jdbc:microsoft:sqlserver://210.73.72.87:1433;DatabaseName=ncxx;SelectMethod=cursor"; String login = "sa"; // use your login here String password = "cxxxzx"; // use your password here */ String url = _url; String login = _login; String password = _password; int userid = 0; //String strInsertUsers = "{?=call AddUser(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)}"; String strInsertUsers = "{?=call "+_procedureName+"(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)}"; java.sql.Connection con = null; CallableStatement stm=null; try { con=DriverManager.getConnection(url,login,password); stm = con.prepareCall(strInsertUsers); stm.registerOutParameter(1,Types.INTEGER); /* stm.setString(2, FirstName); stm.setString(3, LastName); stm.setString(4, Unit); stm.setString(5, Street); stm.setString(6, City); stm.setString(7, Region); stm.setString(8, PostalCode); stm.setString(9, Country); stm.setString(10, Telephone); stm.setString(11, Email); stm.setString(12, Username); stm.setString(13, Password); stm.setInt(14, IsSuperUser); stm.setInt(15,AffiliateId); */ // 对以下字段固定规则FirstName, LastName, Unit,Street, City, Region, PostalCode,Country, Telephone, Email,AffiliateId stm.setString(2, Username); stm.setString(3, Username); stm.setString(4, null); stm.setString(5, null); stm.setString(6, null); stm.setString(7, null); stm.setString(8, null); stm.setString(9, null); stm.setString(10, null); stm.setString(11, email); stm.setString(12, Username); stm.setString(13, Password); stm.setInt(14, 0); stm.setInt(15, 0); stm.setString(16, useruuid); stm.execute(); userid = stm.getInt(1); cat.info("call procedure AddUser..."); cat.info("insert into users,return SCOPE_IDENTITY:"+userid); } catch (SQLException e) { stm.close(); con.close(); throw new RuntimeException(e); } return userid;
} /** * @param i * @param object */ private void setString(int i, Object object) { // TODO 自动生成方法存根 }
public void userInit(String name, Properties props, String prefix, Controller controller) throws IbafException { //default_insert_do if (props.getProperty(prefix + "." + "inDOName") != null) { _inDOName = props.getProperty(prefix + "." + "inDOName").toString().trim(); } // MEMBER_USERID if (props.getProperty(prefix + "." + "outAttName") != null) { _outUserIDAttName = props.getProperty(prefix + "." + "outAttName").toString().trim(); }
// MEMBER_PASSWORD if (props.getProperty(prefix + "." + "passwordAttName") != null) { _passwordAttName = props.getProperty(prefix + "." + "passwordAttName").toString().trim(); } // MEMBER_USERNAME if (props.getProperty(prefix + "." + "usernameAttName") != null) { _usernameAttName = props.getProperty(prefix + "." + "usernameAttName").toString().trim(); } // MEMBER_USERUUID if (props.getProperty(prefix + "." + "useruuidAttName") != null) { _useruuidAttName = props.getProperty(prefix + "." + "useruuidAttName").toString().trim(); } // MEMBER_EMAIL if (props.getProperty(prefix + "." + "emailAttName") != null) { _emailAttName = props.getProperty(prefix + "." + "emailAttName").toString().trim(); } // jdbc:microsoft:sqlserver://168.1.100.30:1433;DatabaseName=ncxx;SelectMethod=cursor if (props.getProperty(prefix + "." + "jdbcurl") != null) { _url = props.getProperty(prefix + "." + "jdbcurl").toString().trim(); } // sa if (props.getProperty(prefix + "." + "db_login") != null) { _login = props.getProperty(prefix + "." + "db_login").toString().trim(); } // cxxxzx if (props.getProperty(prefix + "." + "db_password") != null) { _password = props.getProperty(prefix + "." + "db_password").toString().trim(); } // AddUser if (props.getProperty(prefix + "." + "db_procedureName") != null) { _procedureName = props.getProperty(prefix + "." + "db_procedureName").toString().trim(); }
} public DataObject[] processDataObjects(DataObject[] inDobs) throws PipelineException {
int doLength = inDobs.length; for (int indexOfDO = 0; indexOfDO < doLength; indexOfDO++) { DOType inType = inDobs[indexOfDO].getType(); SDOType inTypea = (SDOType) inDobs[indexOfDO].getType(); try { if (!inTypea.isExistAttribute(_outUserIDAttName)) inTypea.addAttribute(_outUserIDAttName, SDOType.INT32); } catch (DuplicateAttributeException e3) { // TODO Auto-generated catch block e3.printStackTrace(); } catch (InvalidParameterException e3) { // TODO Auto-generated catch block e3.printStackTrace(); } if (inType.getName().equals(_inDOName)) { DataObject inDO = inDobs[indexOfDO]; try { String email = (inDO.getAttributeValue(_emailAttName)).toString(); System.out.println("email:"+email); String password = (inDO.getAttributeValue(_passwordAttName)).toString(); System.out.println("password:"+password); String username = (inDO.getAttributeValue(_usernameAttName)).toString(); System.out.println("username:"+username); String useruuid = (inDO.getAttributeValue(_useruuidAttName)).toString(); System.out.println("useruuid:"+useruuid); int userid=getUserId(username,password,useruuid,email); System.out.println("userid:"+userid); System.out.println("_outUserIDAttName:"+_outUserIDAttName); String tmp=Integer.toString(userid); System.out.println("tmp:"+tmp); inDO.setAttributeValue(_outUserIDAttName,Integer.toString(userid));
} catch (InvalidParameterException e2) { // TODO 自动生成 catch 块 e2.printStackTrace(); } catch (SQLException e) { // TODO 自动生成 catch 块 e.printStackTrace(); }
}// for(int indexOfDO=0;indexOfDO<doLength;indexOfDO++) }//if (inType =="member_do"){ return inDobs; }}