diff --git a/src_tenwa/com/tenwa/lease/app/quartzmession/QueryCommercialVehicleModeListAction.java b/src_tenwa/com/tenwa/lease/app/quartzmession/QueryCommercialVehicleModeListAction.java new file mode 100644 index 000000000..985bff54d --- /dev/null +++ b/src_tenwa/com/tenwa/lease/app/quartzmession/QueryCommercialVehicleModeListAction.java @@ -0,0 +1,203 @@ +package com.tenwa.lease.app.quartzmession; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import jbo.app.tenwa.customer.LB_CARDATA_COMMERCIAL_BRAND; +import jbo.app.tenwa.customer.LB_CARDATA_COMMERCIAL_MODEL; +import jbo.app.tenwa.customer.LB_CARDATA_COMMERCIAL_SERIES; +import jbo.app.tenwa.customer.LB_CARDATA_COMMERCIAL_VERSION; + +import org.quartz.Job; +import org.quartz.JobExecutionContext; +import org.quartz.JobExecutionException; + +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; +import com.amarsoft.app.awe.config.InitSecondHandCarConfig; +import com.amarsoft.app.util.StringUtil; +import com.amarsoft.are.jbo.BizObject; +import com.amarsoft.are.jbo.BizObjectManager; +import com.amarsoft.are.jbo.JBOException; +import com.amarsoft.are.jbo.JBOFactory; +import com.amarsoft.are.jbo.JBOTransaction; +import com.tenwa.lease.util.VehicleAppraisementUtil; + +public class QueryCommercialVehicleModeListAction implements Job{ + + @Override + public void execute(JobExecutionContext arg0) throws JobExecutionException { + JBOTransaction tx = null; + try { + tx = JBOFactory.createJBOTransaction(); + BizObjectManager bm1 = JBOFactory.getBizObjectManager(LB_CARDATA_COMMERCIAL_BRAND.CLASS_NAME, tx); + BizObjectManager bm2 = JBOFactory.getBizObjectManager(LB_CARDATA_COMMERCIAL_SERIES.CLASS_NAME, tx); + BizObjectManager bm3 = JBOFactory.getBizObjectManager(LB_CARDATA_COMMERCIAL_MODEL.CLASS_NAME, tx); + BizObjectManager bm4 = JBOFactory.getBizObjectManager(LB_CARDATA_COMMERCIAL_VERSION.CLASS_NAME, tx); + //接口url中的fromVersion参数 + String fromVersion = null; + //开关,作用是若判断为第一次调用接口,保存版本信息到Version表,而不是第一次调用时则将这个值变为true,则更新版本表 + boolean versionflag = true; + //查询二手车版本表,若为空则说明是第一次调用二手车车型库接口 + BizObject versionResult = bm4.createQuery("select O.currentversion,O.initialversion from O").getSingleResult(false); + if(versionResult == null){ + versionflag = false; + fromVersion = InitSecondHandCarConfig.COMVERSION; + }else{ + fromVersion = versionResult.getAttribute("currentversion").toString(); + } + String url = "http://"+InitSecondHandCarConfig.PREFIX+".che300.com/service/common/eval?fromVersion=" + +fromVersion+"&oper=exportCommercialModel"+"&token="+InitSecondHandCarConfig.TOKEN+""; + String responseResult = VehicleAppraisementUtil.getResponseResult(url); + //使用fastjson解析接口返回的json数据 + JSONObject object = JSONObject.parseObject(responseResult); + // + if("0".equals(object.get("status").toString())){ + return; + } + JSONObject dataObject = (JSONObject) object.get("data"); + @SuppressWarnings("rawtypes") + List brandList = JSON.parseArray(JSON.toJSONString(dataObject.get("brand")), HashMap.class); + System.out.println("品牌大小:"+brandList.size()); + @SuppressWarnings("rawtypes") + List seriesList = JSON.parseArray(JSON.toJSONString(dataObject.get("series")), HashMap.class); + System.out.println("车系大小:"+seriesList.size()); + @SuppressWarnings("rawtypes") + List modelList = JSON.parseArray(JSON.toJSONString(dataObject.get("model")), HashMap.class); + System.out.println("车型大小:"+modelList.size()); + + JSONObject versionListObject = (JSONObject) dataObject.get("version"); + //判断解析出的brandList是否为空,若不为空则执行 + if(!brandList.isEmpty()){ + for(int i=0;i