java 多线程,
分享于 点击 21412 次 点评:191
java 多线程,
package com.mx.travel.op.team.service.impl;import java.util.ArrayList;
import java.util.List;
import javax.jws.WebService;
import com.mx.travel.ba.flight.api.helper.TicketGroupOrderHelper;
import com.mx.travel.ba.flight.pojo.TicketGroupOrder;
import com.mx.travel.my.system.api.helper.CodeHelper;
import com.mx.travel.my.system.api.helper.LogHelper;
import com.mx.travel.op.team.dao.ITeamDao;
import com.mx.travel.op.team.dao.ITeamOperatorDao;
import com.mx.travel.op.team.dao.ITeamStockDao;
import com.mx.travel.op.team.pojo.Team;
import com.mx.travel.op.team.pojo.TeamOperator;
import com.mx.travel.op.team.pojo.TeamStock;
import com.mx.travel.op.team.service.ITeamDoubleService;
import com.mx.travel.op.util.Util;
@WebService(endpointInterface = "com.mx.travel.op.team.service.ITeamDoubleService", serviceName = "TeamDubleServiceImpl", targetNamespace = "http://service.team.op.travel.mx.com/")
public class TeamDoubleServiceImpl implements ITeamDoubleService, Runnable {
private ITeamDao teamDao;
private ITeamStockDao teamStockDao;
private ITeamOperatorDao teamOperatorDao;
//子线程
private List<Team> teamList;
private List<TeamStock> teamStockList;
private List<TicketGroupOrder> ticketGroupOrderList;
private List<TeamOperator> teamOperatorList;
public ITeamDao getTeamDao() {
return teamDao;
}
public void setTeamDao(ITeamDao teamDao) {
this.teamDao = teamDao;
}
public ITeamStockDao getTeamStockDao() {
return teamStockDao;
}
public void setTeamStockDao(ITeamStockDao teamStockDao) {
this.teamStockDao = teamStockDao;
}
public ITeamOperatorDao getTeamOperatorDao() {
return teamOperatorDao;
}
public void setTeamOperatorDao(ITeamOperatorDao teamOperatorDao) {
this.teamOperatorDao = teamOperatorDao;
}
public List<Team> getTeamList() {
return teamList;
}
public void setTeamList(List<Team> teamList) {
this.teamList = teamList;
}
public List<TeamStock> getTeamStockList() {
return teamStockList;
}
public void setTeamStockList(List<TeamStock> teamStockList) {
this.teamStockList = teamStockList;
}
public List<TicketGroupOrder> getTicketGroupOrderList() {
return ticketGroupOrderList;
}
public void setTicketGroupOrderList(List<TicketGroupOrder> ticketGroupOrderList) {
this.ticketGroupOrderList = ticketGroupOrderList;
}
public List<TeamOperator> getTeamOperatorList() {
return teamOperatorList;
}
public void setTeamOperatorList(List<TeamOperator> teamOperatorList) {
this.teamOperatorList = teamOperatorList;
}
@Override
public int addTeamDouble(List<Team> teamList, List<TeamStock> teamStockList, List<TicketGroupOrder> ticketGroupOrderList, List<TeamOperator> teamOperatorList) {
try {
//封装arrList分配子线程操作
for (int j = 0, optionCount=teamList.size();j < optionCount; j++) {
// 创建子线程
TeamDoubleServiceImpl teamdoubleserviceimpl=new TeamDoubleServiceImpl();
List<Team> newTeamList=new ArrayList<Team>();
if (teamList != null && teamList.size() > 0) {
newTeamList.add(teamList.get(j));
}
teamdoubleserviceimpl.setTeamList(newTeamList);
//2
List<TeamStock> newteamStockList=new ArrayList<TeamStock>();
if (teamStockList != null && teamStockList.size() > 0) {
newteamStockList.add(teamStockList.get(j));
}
teamdoubleserviceimpl.setTeamStockList(newteamStockList);
//3
List<TicketGroupOrder> newticketGroupOrderList=new ArrayList<TicketGroupOrder>();
if (ticketGroupOrderList != null && ticketGroupOrderList.size() > 0) {
newticketGroupOrderList.add(ticketGroupOrderList.get(j));
}
teamdoubleserviceimpl.setTicketGroupOrderList(newticketGroupOrderList);
//4
List<TeamOperator> newteamOperatorList=new ArrayList<TeamOperator>();
if (teamOperatorList != null && teamOperatorList.size() > 0) {
newteamOperatorList.add(teamOperatorList.get(j));
}
teamdoubleserviceimpl.setTeamOperatorList(newteamOperatorList);
teamdoubleserviceimpl.setTeamDao(this.teamDao);
teamdoubleserviceimpl.setTeamOperatorDao(this.teamOperatorDao);
teamdoubleserviceimpl.setTeamStockDao(this.teamStockDao);
Thread objThread = new Thread(teamdoubleserviceimpl);
objThread.setName("teamid"+String.valueOf(j));
objThread.start();
}
} catch (Exception e) {
e.printStackTrace();
return 0;
}
return 1;
}
@Override
public void run() {
Team team = null;
TeamOperator teamOperator = null;
// 获取商品数组
//for (int i = 0; i <this.getTeamStockList().size(); i++) {
// 获取商品信息并填充
team = this.getTeamList().get(0);
this.teamDao.save(team);
teamOperator=this.getTeamOperatorList().get(0);
// 操作表
teamOperator.setTeam(team);
this.teamOperatorDao.save(teamOperator);
// 获取商品库存信息填充
Integer ckdCountNums = 0;//
Integer totalNums = 0;
String arrStockType = "";
String arrStockNote = "";
String arrNumPlanVal = "";
Integer numPlan =this.getTeamStockList().get(0).getStockNum();//商品预售数
Integer numPlanGuide = this.getTeamStockList().get(0).getNumPlanGuide();
Integer numPlanLeader = this.getTeamStockList().get(0).getNumPlanLeader();
if ((!Util.isEqual(numPlan) && numPlan != 0) && (!Util.isEqual(numPlanGuide) && numPlanGuide != 0) && (!Util.isEqual(numPlanLeader) && numPlanLeader != 0)) {
ckdCountNums = 3;
arrStockType = "cust/guide/leader";
arrStockNote = "客人/导游/领队";
arrNumPlanVal = numPlan + "/" + numPlanGuide + "/" + numPlanLeader;
totalNums = numPlan + numPlanGuide + numPlanLeader;
} else if ((!Util.isEqual(numPlan) && numPlan != 0) && (!Util.isEqual(numPlanLeader) && numPlanLeader != 0)) {
ckdCountNums = 2;
arrStockType = "cust/leader";
arrStockNote = "客人/领队";
arrNumPlanVal = numPlan + "/" + numPlanLeader;
totalNums = numPlan + numPlanLeader;
} else if ((!Util.isEqual(numPlan) && numPlan != 0) && (!Util.isEqual(numPlanGuide) && numPlanGuide != 0)) {
ckdCountNums = 2;
arrStockType = "cust/guide";
arrStockNote = "客人/导游";
arrNumPlanVal = numPlan + "/" + numPlanGuide;
totalNums = numPlan + numPlanGuide;
} else if (!Util.isEqual(numPlan) && numPlan != 0) {
ckdCountNums = 1;
arrStockType = "cust";
arrStockNote = "客人";
arrNumPlanVal = numPlan.toString();
totalNums = numPlan;
}
String[] arrCkdType = arrStockType.split("/");
String[] arrCkdNote = arrStockNote.split("/");
String[] arrCkdNumVal = arrNumPlanVal.split("/");
if (this.getTicketGroupOrderList() != null && this.getTicketGroupOrderList().size() > 0) {
TicketGroupOrderHelper.toInsertTicketGroupOrder(this.getTicketGroupOrderList().get(0).getResOrderCode(),
this.getTicketGroupOrderList().get(0).getAirTicketCode(),
this.getTeamList().get(0).getProductCode(), this.getTicketGroupOrderList().get(0).getOrderState(),
this.getTicketGroupOrderList().get(0).getIsEnable(), totalNums, "",
this.getTicketGroupOrderList().get(0).getEmpCode(),
this.getTicketGroupOrderList().get(0).getEmpName(),
this.getTicketGroupOrderList().get(0).getDeptCode(),
this.getTicketGroupOrderList().get(0).getDeptName(),
this.getTicketGroupOrderList().get(0).getCreateTime());
}
for (int s = 0; s < ckdCountNums; s++) {
TeamStock teamStock = new TeamStock();
teamStock.setStockCode(CodeHelper.getCode("SYS_CODE_RULE_OP_TEAM_STOCKCODE"));
if(this.getTicketGroupOrderList() != null && this.getTicketGroupOrderList().size()>0){
teamStock.setResStockCode(this.getTicketGroupOrderList().get(0).getResOrderCode());
}else{
teamStock.setResStockCode("0");
}
teamStock.setProductCode(this.getTeamList().get(0).getProductCode());
teamStock.setPnrCode(this.getTeamStockList().get(0).getPnrCode());
teamStock.setChannelCode("0");
teamStock.setCompCode("0");
teamStock.setStockType(arrCkdType[s]);
teamStock.setStockNum(Integer.valueOf(arrCkdNumVal[s]));
teamStock.setNote(arrCkdNote[s]);
teamStock.setCreateTime(this.getTeamStockList().get(0).getCreateTime());
teamStockDao.save(teamStock);
}
// 商品管理---增加单团日志
LogHelper.opToAddLog(1, team.getProductCode(), "操作员:" + team.getEmpName() + "新增"+team.getExtendService()+"商品:" + team.getTitle(), "Team", "商品创建", team.getEmpCode(), team.getEmpName());
// }
//return 1;//
}
}
相关文章
- 暂无相关文章
用户点评