找回密码
 开放注册

QQ登录

只需一步,快速开始

微信登录

微信扫码,快速开始

通达OA官网网站
搜索
查看: 2893|回复: 0

“购物车”原理在OA中的应用

  [复制链接]

257

主题

1154

回帖

1万

牛毛

游客

积分
18851
QQ
发表于 2018-6-21 00:14:51 | 显示全部楼层 |阅读模式
本帖最后由 cgft 于 2018-6-28 16:01 编辑

大家知道,购物网站都为顾客提供了一个“购物车“的贴心服务。
当顾客在网店里看中一款商品后,即可放入到购物车中。
购物车的实现方法,就是把顾客选中的商品信息,随时记录到用户端或服务端(一般是服务端)的一个存储区里。这样,即使顾客关闭或跳转当前的浏览网页,甚至顾客数天之后在别的地方登录,仍能调取到选中的商品。

如果在OA运行的一些模块里,如物品领用、档案借阅、办公用品管理等等,在需要记录多条数据选择的地方,也引入“购物车”的概念,想必会很好地改善用户体验。

本人在二开的物料管理中,就为物料申领环节打造了一个简易的“购物车“。
用户在填报物品领料单时,有人习惯于使用模糊查找功能选择物品。但如果是批量领料,实现糊查找功能就比较困难。但使用“购物车,就能把用户多次单选的物品组合成一个批量领料单后一次提交,也就用不着分别提交了。
这样即方便了申请人的操作,也提高了后续各个审批环节的工作效率(见下图)。



根据工作性质,领料信息不必保存在服务端,也不必永久保存。以cookie的形式保存到客户端就能满足实际工作需求。
关键代码:
$CUR_CART_ARRY 二维数组,保存物品代码、申领申领等信息;
保存cookie:(cookie有效期,4个多小时)
  1. setcookie('ftdzyh_cart_info', serialize($CUR_CART_ARRY), time()+15000);
复制代码


读取cookie:
  1. $CUR_CART_ARRY= unserialize(stripslashes($_COOKIE['ftdzyh_cart_info']));
复制代码


删除一条物品信息:
  1. unset($CUR_CART_ARRY[$CAR_ID]);               // $CAR_ID,物品代码
复制代码


清空cookie:
  1. setcookie('ftdzyh_cart_info', '');
复制代码


注意:若物品信息含中文字符,如要显示读取的cookie,中文字串须用函数
  1. iconv('utf-8', MYOA_CHARSET, $STR_ChineseCharacters);
复制代码


进行编码转换。

慢一些显示的动画:



gwc1.gif
gwc.gif
您需要登录后才可以回帖 登录 | 开放注册

本版积分规则

咨询电话:400 818 0505 通达OA,国内协同管理软件行业内唯一的央企单位,中国协同OA软件的领跑者,优秀协同办公解决方案供应商

帮助|Archiver|小黑屋|通信管理局专项备案号:[2008]238号|由NB5牛论坛提供技术支持NB5社区 ( 皖ICP备08004151号;皖公网安备34010402700514号 )

GMT+8, 2025-3-12 08:25 , Processed in 0.158913 second(s), 43 queries .

Powered by Discuz

Copyright © 2001-2025, 北京通达信科科技有限公司.

快速回复 返回顶部 返回列表