1.oracle 表 t_cus_dev_plan 的saleChanceId 对应 t_sale_chance id
2.实体类 CusDevPlan 添加
//与营销机会管理表多对一的关系 SaleChance 的id
private SaleChance saleChance; // 销售机会
3.mapper.xml配置
<mapper namespace="ssmy.dao.CusDevPlanDao">
<resultMap type="ssmy.dto.CusDevPlan" id="CusDevPlan">
<!--<resultMap type="User" id="User"> 如果在sprin文件里配置初始化 mybatis里配置了别名就是有-->
<!-- 用id属性来映射主键字段 -->
<id property="id" column="id" jdbcType="INTEGER"/>
<!-- 用result属性来映射非主键字段 -->
<result property="planItem" column="planItem" jdbcType="VARCHAR"/>
<result property="planDate" column="planDate" jdbcType="TIMESTAMP"/>
<result property="exeAffect" column="exeAffect" jdbcType="VARCHAR"/>
<!--saleChance 对应实体类CusDevPlan private SaleChance saleChance; // 销售机会的引用变量 -->
<association property="saleChance" column="saleChanceId" select="ssmy.dao.SaleChanceDao.findSaleChanceById">
</association>
</resultMap>
//直接用属性.获取数据 页面里也可以 这样获取数据 input 里的value=“saleChance.id”
<insert id="add" parameterType="CusDevPlan">
insert into t_cus_dev_plan values(null,#{saleChance.id},#{planItem},#{planDate},#{exeAffect})
</insert>
</mapper>
4.控制层
/**
* 跟据id来查询实体
* 客户开发计划 表 t_cus_dev_plan
* 与营销机会管理表 t_sale_chance 多对一的关系
* 用这个方法建立关联
*/
@RequestMapping("/findById")
public String findById(@RequestParam(value="id") String id,HttpServletResponse response)throws Exception{
SaleChance saleChance=saleChanceService.findSaleChanceById(Integer.parseInt(id));
JsonConfig jsonConfig=new JsonConfig();
jsonConfig.registerJsonValueProcessor(java.util.Date.class, new DateJsonValueProcessor("yyyy-MM-dd HH:mm"));
JSONObject result=JSONObject.fromObject(saleChance,jsonConfig);
ResponseUtil.write(response, result);
return null;
}
页面 1.cusdevplanManage.jsp
function searchSaleChance(){
$("#dg").datagrid('load',{
"customerName":$("#s_customerName").val(),
"overView":$("#s_overView").val(),
"devResult":$("#s_devResult").combobox("getValue")
});
}
function formatState(val,row){
if(val==1){
return "已分配";
}else{
return "未分配";
}
}
function formatDevResult(val,row){
if(val==0){
return "未开发";