|
一、问题需求- 有时候会有将一些数据写入子功能集合中的操作,以订单的商品数量需要写入转运单中为例
二、实现思路- 根据订单号去获取订单中的商品信息
- 将通过订单号获取到的商品信息写入转运单功能中
三、具体操作
- 创建订单及订单详细信息(订单商品)
- 其次创建转运单及转运详细信息(订单商品)
- 根据订单号去查询订单商品,并将商品信息写入转运详细信息中,并且订单只能选择一次(也有可能会根据业务进行数据判断–目前未实现)
四、实现代码
(代码针对版本为7.2安全版本)
- <font face="微软雅黑">function(field,sels,sswin){
- //获取表单
- var form= field.up("jeformview");
- //获取子功能集合
- var child = form.down("childfuncfield[name=childfuncfield_1]");
- //获取到grid
- var grid = child.grid;
- //判断选中的值,是否为空
- if(sels && sels.length>0){
- var record = sels[0];
- //获取订单编号
- var orderCode = record.get("TEST_DDBH");
- //查询订单信息
- var orderinfo = JE.ajax({
- url:"/je/load",
- // params:{tableCode:"JE_ORDER_TEST",whereSql:" AND TEST_DDBH = '"+orderCode+"'",limit:-1}
- params:{tableCode:"JE_ORDER_TEST",j_query:Ext.encode({custom:[{"type":"=","code":"TEST_DDBH","value":orderCode,"cn":"and"}]})}
- });
- //根据订单ID查询订单商品
- var productinfo = JE.ajax({
- url:"/je/load",
- // params:{tableCode:"JE_ORDER_PRODUCT",whereSql:" AND PRODUCT_DDID = '"+orderinfo.JE_ORDER_TEST_ID+"'",limit:-1}
- params:{tableCode:"JE_ORDER_PRODUCT",j_query:Ext.encode({custom:[{"type":"=","code":"PRODUCT_DDID","value":orderinfo.rows[0].JE_ORDER_TEST_ID,"cn":"and"}]})}
- });
- //判断是否有数据
- if(productinfo.rows.length > 0){
- var data = [];//定义空数组
- //循环商品数据
- Ext.each(productinfo.rows,function(item,index){
- data.push({PRODUCT_SPMC:item.PRODUCT_SPMC,PRODUCT_SPSL:item.PRODUCT_SPSL});
- });
- //写入子功能集合
- grid.getStore().loadData(data);
- }
- }
- form.form.findField('ZHAUNYUN_DDH').setReadOnly(true);
- return true;
- }</font>
复制代码 五、展示效果
|
|