From 0b746abd8340ec4e61acb7026751d60993b7a2bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E7=A3=8A?= <寮犵@LAPTOP-O3DO03BA> Date: Tue, 5 Jun 2018 09:37:36 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E4=BA=8C=E6=89=8B=E8=BD=A6=E8=AF=84?= =?UTF-8?q?=E4=BC=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../LBEquipmentCarTempInfo.jsp | 30 ++ .../LBEquipmentCarTempList.jsp | 50 +++ WebContent/WEB-INF/etc/jbo/jbo_app.xml | 106 +++++ src_jbo/jbo/app/LB_EQUIPMENT_CAR_TEMP.java | 396 ++++++++++++++++++ 4 files changed, 582 insertions(+) create mode 100644 WebContent/Tenwa/Lease/App/Interface/VehicleEvaluation/LBEquipmentCarTempInfo.jsp create mode 100644 WebContent/Tenwa/Lease/App/Interface/VehicleEvaluation/LBEquipmentCarTempList.jsp create mode 100644 src_jbo/jbo/app/LB_EQUIPMENT_CAR_TEMP.java diff --git a/WebContent/Tenwa/Lease/App/Interface/VehicleEvaluation/LBEquipmentCarTempInfo.jsp b/WebContent/Tenwa/Lease/App/Interface/VehicleEvaluation/LBEquipmentCarTempInfo.jsp new file mode 100644 index 000000000..0e224f109 --- /dev/null +++ b/WebContent/Tenwa/Lease/App/Interface/VehicleEvaluation/LBEquipmentCarTempInfo.jsp @@ -0,0 +1,30 @@ +<%@ page contentType="text/html; charset=GBK"%> +<%@ include file="/Frame/resources/include/include_begin_info.jspf"%><% + /* + Author: undefined 2018-06-04 + Content: 示例详情页面 + History Log: + */ + String sPrevUrl = CurPage.getParameter("PrevUrl"); + if(sPrevUrl == null) sPrevUrl = "/Tenwa/Lease/App/Interface/VehicleEvaluation/LBEquipmentCarTempList.jsp"; + + String sTempletNo = "LBEquipmentCarTempInfo";//--模板号-- + ASObjectModel doTemp = new ASObjectModel(sTempletNo); + doTemp.setColTips("", "测试"); + ASObjectWindow dwTemp = new ASObjectWindow(CurPage, doTemp,request); + dwTemp.Style = "2";//freeform + //dwTemp.ReadOnly = "-2";//只读模式 + dwTemp.genHTMLObjectWindow(CurPage.getParameter("ID")); + + String sButtons[][] = { + {"true","All","Button","保存","保存所有修改","as_save(0)","","","",""}, + {String.valueOf(!com.amarsoft.are.lang.StringX.isSpace(sPrevUrl)),"All","Button","返回","返回列表","returnList()","","","",""} + }; + sButtonPosition = "south"; +%><%@ include file="/Frame/resources/include/ui/include_info.jspf"%> + +<%@ include file="/Frame/resources/include/include_end.jspf"%> \ No newline at end of file diff --git a/WebContent/Tenwa/Lease/App/Interface/VehicleEvaluation/LBEquipmentCarTempList.jsp b/WebContent/Tenwa/Lease/App/Interface/VehicleEvaluation/LBEquipmentCarTempList.jsp new file mode 100644 index 000000000..6597afc5a --- /dev/null +++ b/WebContent/Tenwa/Lease/App/Interface/VehicleEvaluation/LBEquipmentCarTempList.jsp @@ -0,0 +1,50 @@ +<%@ page contentType="text/html; charset=GBK"%> +<%@ include file="/Frame/resources/include/include_begin_list.jspf"%><% + /* + Author: undefined 2018-06-04 + Content: + History Log: + */ + ASObjectModel doTemp = new ASObjectModel("LBEquipmentCarTempList"); + ASObjectWindow dwTemp = new ASObjectWindow(CurPage,doTemp,request); + dwTemp.Style="1"; //--设置为Grid风格-- + dwTemp.ReadOnly = "1"; //只读模式 + dwTemp.setPageSize(10); + dwTemp.genHTMLObjectWindow(""); + + //0、是否展示 1、 权限控制 2、 展示类型 3、按钮显示名称 4、按钮解释文字 5、按钮触发事件代码 6、 7、 8、 9、图标,CSS层叠样式 10、风格 + String sButtons[][] = { + {"true","All","Button","新增","新增","newRecord()","","","","btn_icon_add",""}, + {"true","","Button","详情","详情","viewAndEdit()","","","","btn_icon_detail",""}, + {"true","","Button","删除","删除","if(confirm('确实要删除吗?'))as_delete(0)","","","","btn_icon_delete",""}, + {"true","","Button","估值","估值"," vehicleAppraisement()","","","","btn_icon_check",""} + }; +%><%@include file="/Frame/resources/include/ui/include_list.jspf"%> + +<%@ include file="/Frame/resources/include/include_end.jspf"%> \ No newline at end of file diff --git a/WebContent/WEB-INF/etc/jbo/jbo_app.xml b/WebContent/WEB-INF/etc/jbo/jbo_app.xml index 63ac8bb19..474843d14 100644 --- a/WebContent/WEB-INF/etc/jbo/jbo_app.xml +++ b/WebContent/WEB-INF/etc/jbo/jbo_app.xml @@ -4544,6 +4544,112 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src_jbo/jbo/app/LB_EQUIPMENT_CAR_TEMP.java b/src_jbo/jbo/app/LB_EQUIPMENT_CAR_TEMP.java new file mode 100644 index 000000000..f40426d5b --- /dev/null +++ b/src_jbo/jbo/app/LB_EQUIPMENT_CAR_TEMP.java @@ -0,0 +1,396 @@ +package jbo.app; + +import java.lang.String; + +/** +* 汽车租赁物临时表 - JBO命名常量类

+* Note: This file is generated by ADE tools, dont modify it.
+ +*/ +public interface LB_EQUIPMENT_CAR_TEMP{ + /** + * 汽车租赁物临时表

+ * 代表本类映射的BizObjectClass + */ + public static final String CLASS_NAME = "jbo.app.LB_EQUIPMENT_CAR_TEMP"; + /** + * 标识 STRING(32)
+ */ + public static final String ID = "ID"; + /** + * 项目编号 STRING(32)
+ */ + public static final String PROJECT_ID = "PROJECT_ID"; + /** + * 合同编号 STRING(32)
+ */ + public static final String CONTRACT_ID = "CONTRACT_ID"; + /** + * 车辆类型 STRING(30)
+ */ + public static final String DEVICE_TYPE = "DEVICE_TYPE"; + /** + * 设备名称 STRING(200)
+ */ + public static final String EQUIP_NAME = "EQUIP_NAME"; + /** + * 车辆品牌 STRING(30)
+ */ + public static final String BRAND = "BRAND"; + /** + * 型号 STRING(30)
+ */ + public static final String MODEL = "MODEL"; + /** + * 数量 STRING(30)
+ */ + public static final String EQUIP_NUM = "EQUIP_NUM"; + /** + * 单价 STRING(30)
+ */ + public static final String PRICE = "PRICE"; + /** + * 单位 STRING(30)
+ */ + public static final String UNIT = "UNIT"; + /** + * 交易价格 STRING(30)
+ */ + public static final String EQUIP_PRICE = "EQUIP_PRICE"; + /** + * 设备原值 STRING(30)
+ */ + public static final String TOTAL = "TOTAL"; + /** + * 车辆指导价 STRING(30)
+ */ + public static final String NOW_TOTAL = "NOW_TOTAL"; + /** + * 供应商id STRING(32)
+ */ + public static final String VNDR = "VNDR"; + /** + * 供应商 STRING(200)
+ */ + public static final String VNDR_NAME = "VNDR_NAME"; + /** + * 制造商id STRING(32)
+ */ + public static final String MANUFACTURER = "MANUFACTURER"; + /** + * 生产商 STRING(200)
+ */ + public static final String MANUFACTURER_NAME = "MANUFACTURER_NAME"; + /** + * 设备序列号 STRING(30)
+ */ + public static final String EQUIP_NUMBER = "EQUIP_NUMBER"; + /** + * 交付地点 STRING(100)
+ */ + public static final String EQUIP_DELIVERY_PLACE = "EQUIP_DELIVERY_PLACE"; + /** + * 交付时间 STRING(30)
+ */ + public static final String EQUIP_DELIVERY_DATE = "EQUIP_DELIVERY_DATE"; + /** + * 设备设置地址 STRING(100)
+ */ + public static final String EQUIP_PLACE = "EQUIP_PLACE"; + /** + * 其他配置说明 STRING(1000)
+ */ + public static final String MEMO = "MEMO"; + /** + * 数据状态 STRING(32)
+ */ + public static final String DATA_STATE = "DATA_STATE"; + /** + * 是否在流程中 STRING(1000)
+ */ + public static final String IS_FLOW = "IS_FLOW"; + /** + * 状态 STRING(1000)
+ */ + public static final String STATUS = "STATUS"; + /** + * 流程编号 STRING(32)
+ */ + public static final String FLOWUNID = "FLOWUNID"; + /** + * 登记人 STRING(32)
+ */ + public static final String INPUTUSERID = "INPUTUSERID"; + /** + * 登记部门 STRING(32)
+ */ + public static final String INPUTORGID = "INPUTORGID"; + /** + * 登记时间 STRING(32)
+ */ + public static final String INPUTTIME = "INPUTTIME"; + /** + * 更新人 STRING(32)
+ */ + public static final String UPDATEUSERID = "UPDATEUSERID"; + /** + * 更新部门 STRING(32)
+ */ + public static final String UPDATEORGID = "UPDATEORGID"; + /** + * 更新时间 STRING(32)
+ */ + public static final String UPDATETIME = "UPDATETIME"; + /** + * 车架号 STRING(100)
+ */ + public static final String FRAME_NUMBER = "FRAME_NUMBER"; + /** + * 发动机号 STRING(100)
+ */ + public static final String ENGINE_NUMBER = "ENGINE_NUMBER"; + /** + * 车牌号 STRING(100)
+ */ + public static final String PLATE_NUMBER = "PLATE_NUMBER"; + /** + * 租赁物类型 STRING(32)
+ */ + public static final String EQUIP_TYPE = "EQUIP_TYPE"; + /** + * 收货人 STRING(30)
+ */ + public static final String CONSIGNEE = "CONSIGNEE"; + /** + * 收货人联系电话 STRING(30)
+ */ + public static final String CONSIGNEE_TEL = "CONSIGNEE_TEL"; + /** + * 设备交付情况 STRING(30)
+ */ + public static final String IS_DELIVERY = "IS_DELIVERY"; + /** + * 交付说明 STRING(1000)
+ */ + public static final String REMARK = "REMARK"; + /** + * 驱动形式 STRING(100)
+ */ + public static final String DRIVE_TYPE = "DRIVE_TYPE"; + /** + * 车辆颜色 STRING(32)
+ */ + public static final String CAR_COLOUR = "CAR_COLOUR"; + /** + * 排量 STRING(32)
+ */ + public static final String DISPLACEMENT = "DISPLACEMENT"; + /** + * 车牌号码 STRING(32)
+ */ + public static final String LICENSE_PLATE_NUMBER = "LICENSE_PLATE_NUMBER"; + /** + * 年检有效期 STRING(32)
+ */ + public static final String EXPIRYDATE = "EXPIRYDATE"; + /** + * 驾驶人姓名 STRING(32)
+ */ + public static final String D_NAME = "D_NAME"; + /** + * 驾驶人性别 STRING(32)
+ */ + public static final String D_SEX = "D_SEX"; + /** + * 驾驶人身份证号 STRING(32)
+ */ + public static final String D_CERTID = "D_CERTID"; + /** + * 驾驶人身份证地址 STRING(200)
+ */ + public static final String D_CERT_ADDR = "D_CERT_ADDR"; + /** + * 驾驶人身份证有效期 STRING(32)
+ */ + public static final String D_CERT_VALID = "D_CERT_VALID"; + /** + * 驾驶证 STRING(32)
+ */ + public static final String D_DRIVE = "D_DRIVE"; + /** + * 驾驶人手机号码 STRING(32)
+ */ + public static final String D_TEL = "D_TEL"; + /** + * 驾驶人常住地址 STRING(200)
+ */ + public static final String D_ADDR = "D_ADDR"; + /** + * 驾驶人学历 STRING(32)
+ */ + public static final String D_EDU_LEVEL = "D_EDU_LEVEL"; + /** + * 驾驶人公司名称 STRING(100)
+ */ + public static final String D_WORK_NAME = "D_WORK_NAME"; + /** + * 驾驶人公司地址 STRING(200)
+ */ + public static final String D_WORK_ADDR = "D_WORK_ADDR"; + /** + * 驾驶人当前工作工作年限 STRING(32)
+ */ + public static final String D_WORK_YEAR = "D_WORK_YEAR"; + /** + * 驾驶人月薪 DOUBLE(22)
+ */ + public static final String D_SALARY = "D_SALARY"; + /** + * 驾驶人ID STRING(32)
+ */ + public static final String D_ID = "D_ID"; + /** + * 车系 STRING(80)
+ */ + public static final String car_series = "car_series"; + /** + * 档位 STRING(80)
+ */ + public static final String gears = "gears"; + /** + * 评估价格 STRING(32)
+ */ + public static final String evaluated_price = "evaluated_price"; + /** + * 优秀最低车商收购价 STRING(32)
+ */ + public static final String excellent_dealer_low_buy_price = "excellent_dealer_low_buy_price"; + /** + * 优秀车商收车价 STRING(32)
+ */ + public static final String excellent_dealer_buy_price = "excellent_dealer_buy_price"; + /** + * 优秀最低个人交易价 STRING(32)
+ */ + public static final String excellent_individual_low_sold_price = "excellent_individual_low_sold_price"; + /** + * 优秀个人交易价 STRING(32)
+ */ + public static final String excellent_individual_price = "excellent_individual_price"; + /** + * 优秀最低车商零售价 STRING(32)
+ */ + public static final String excellent_dealer_low_sold_price = "excellent_dealer_low_sold_price"; + /** + * 优秀车商零售价 STRING(32)
+ */ + public static final String excellent_dealer_price = "excellent_dealer_price"; + /** + * 优秀最高车商零售价 STRING(32)
+ */ + public static final String excellent_dealer_high_sold_price = "excellent_dealer_high_sold_price"; + /** + * 良好最低车商收购 STRING(32)
+ */ + public static final String good_dealer_low_buy_price = "good_dealer_low_buy_price"; + /** + * 良好车商收车价 STRING(32)
+ */ + public static final String good_dealer_buy_price = "good_dealer_buy_price"; + /** + * 良好最低个人交易价 STRING(32)
+ */ + public static final String good_individual_low_sold_price = "good_individual_low_sold_price"; + /** + * 良好个人交易价 STRING(32)
+ */ + public static final String good_individual_price = "good_individual_price"; + /** + * 良好最低车商零售价 STRING(32)
+ */ + public static final String good_dealer_low_sold_price = "good_dealer_low_sold_price"; + /** + * 良好车商零售价 STRING(32)
+ */ + public static final String good_dealer_price = "good_dealer_price"; + /** + * 良好最高车商零售价 STRING(32)
+ */ + public static final String good_dealer_high_sold_price = "good_dealer_high_sold_price"; + /** + * 普通最低车商收购 STRING(32)
+ */ + public static final String normal_dealer_low_buy_price = "normal_dealer_low_buy_price"; + /** + * 普通车商收车价 STRING(32)
+ */ + public static final String normal_dealer_buy_price = "normal_dealer_buy_price"; + /** + * 普通最低个人交易价 STRING(32)
+ */ + public static final String normal_individual_low_sold_price = "normal_individual_low_sold_price"; + /** + * 普通个人交易价 STRING(32)
+ */ + public static final String normal_individual_price = "normal_individual_price"; + /** + * 普通最低车商零售价 STRING(32)
+ */ + public static final String normal_dealer_low_sold_price = "normal_dealer_low_sold_price"; + /** + * 普通车商零售价 STRING(32)
+ */ + public static final String normal_dealer_price = "normal_dealer_price"; + /** + * 普通最高车商零售价 STRING(32)
+ */ + public static final String normal_dealer_high_sold_price = "normal_dealer_high_sold_price"; + /** + * 排放标准 STRING(32)
+ */ + public static final String discharge_standard = "discharge_standard"; + /** + * 详细估值结果报告页面地址 STRING(100)
+ */ + public static final String detail_report_url = "detail_report_url"; + /** + * 查询编号 STRING(32)
+ */ + public static final String taken = "taken"; + /** + * 车型ID STRING(32)
+ */ + public static final String modelId = "modelId"; + /** + * 城市标识 STRING(32)
+ */ + public static final String zone = "zone"; + /** + * 车牌上牌日期 STRING(32)
+ */ + public static final String regDate = "regDate"; + /** + * 车辆行驶里程 STRING(32)
+ */ + public static final String mile = "mile"; + /** + * CITYID STRING(32)
+ */ + public static final String CITYID = "CITYID"; + /** + * CITYNAME STRING(100)
+ */ + public static final String CITYNAME = "CITYNAME"; + /** + * 保留字段1 STRING(100)
+ */ + public static final String retainfield1 = "retainfield1"; + /** + * 保留字段2 STRING(100)
+ */ + public static final String retainfield2 = "retainfield2"; + /** + * 保留字段3 STRING(100)
+ */ + public static final String retainfield3 = "retainfield3"; +} \ No newline at end of file From d0c736ebfad4f881cc10ca27b7d8b3871412aada Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E7=A3=8A?= <寮犵@LAPTOP-O3DO03BA> Date: Tue, 5 Jun 2018 09:42:45 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E4=BA=8C=E6=89=8B=E8=BD=A6=E8=A1=A5?= =?UTF-8?q?=E5=85=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../vehicleAssessmentController.java | 80 +++++++++++++++++++ .../lease/util/VehicleAppraisementUtil.java | 56 +++++++++++++ 2 files changed, 136 insertions(+) create mode 100644 src_tenwa/com/tenwa/lease/app/vehicleAssessment/vehicleAssessmentController.java create mode 100644 src_tenwa/com/tenwa/lease/util/VehicleAppraisementUtil.java diff --git a/src_tenwa/com/tenwa/lease/app/vehicleAssessment/vehicleAssessmentController.java b/src_tenwa/com/tenwa/lease/app/vehicleAssessment/vehicleAssessmentController.java new file mode 100644 index 000000000..53feb967c --- /dev/null +++ b/src_tenwa/com/tenwa/lease/app/vehicleAssessment/vehicleAssessmentController.java @@ -0,0 +1,80 @@ +package com.tenwa.lease.app.vehicleAssessment; +/** + * 二手车评估 + * @author 张磊 + */ +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.List; +import java.util.concurrent.ConcurrentHashMap; +import org.apache.log4j.Logger; +import jbo.app.LB_EQUIPMENT_CAR_TEMP; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.amarsoft.are.jbo.BizObject; +import com.amarsoft.are.jbo.BizObjectManager; +import com.amarsoft.are.jbo.JBOFactory; +import com.amarsoft.are.jbo.JBOTransaction; +import com.tenwa.lease.util.VehicleAppraisementUtil; + +public class vehicleAssessmentController { + + private String id; + + private Logger logger = Logger.getLogger(this.getClass()); + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String vehicleAppraisement(JBOTransaction tx){ + String result = null; + try { + BizObjectManager bomLSNT = JBOFactory.getBizObjectManager(LB_EQUIPMENT_CAR_TEMP.CLASS_NAME,tx); + BizObject boLSNT = bomLSNT.createQuery("ID=:ID").setParameter("ID",id).getSingleResult(false); + //获取车型ID + String modelId = boLSNT.getAttribute("modelId").toString(); + //获取地区编号 + String zone = boLSNT.getAttribute("zone").toString(); + //因为从数据库获取到的上牌日期的格式不满足接口需求,所以要利用SimpleDateFormat进行变换 + Date date = new SimpleDateFormat("yyyy/MM/dd").parse(boLSNT.getAttribute("regDate").toString()); + String regDate = new SimpleDateFormat("yyyy-MM-dd").format(date); + //获取车辆行驶里程 + String mile = boLSNT.getAttribute("mile").toString(); + //得到Car300接口返回的Json数据 + String responseResult = VehicleAppraisementUtil.getVehicleAppraisementResponse(modelId, zone, regDate, mile); + JSONObject object = JSONObject.parseObject(responseResult); + boLSNT.setAttributeValue("discharge_standard", object.get("discharge_standard").toString()); + boLSNT.setAttributeValue("detail_report_url", object.get("detail_report_url").toString()); + //提取出Json数据中的status属性(1:成功;0:失败)并判断,如果为0,则将出错原因返回到前台 + String status = object.get("status").toString(); + if(status == "0"){ + result = object.getString("error_msg").toString(); + return result; + } + //将Json字符串中的数组数据部分转换为Json数组 + List list = JSONArray.parseArray((String)object.get("eval_prices"),ConcurrentHashMap.class); + //遍历Json数组并将对应字段的数据加入到数据库中 + for(int i=0;i