请选择 进入手机版 | 继续访问电脑版

通达用户社区[OA论坛]

 找回密码
 立即注册
搜索
查看: 1782|回复: 1

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

[复制链接]
发表于 2018-6-21 00:14:51 | 显示全部楼层 |阅读模式
本帖最后由 cgft 于 2018-6-28 16:01 编辑

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

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

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

gwc1.gif


根据工作性质,领料信息不必保存在服务端,也不必永久保存。以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);
复制代码


进行编码转换。

慢一些显示的动画:

gwc.gif

回复

使用道具 举报

小黑屋|手机版|Archiver|通达用户社区[OA论坛] ( 京ICP备14032129号

GMT+8, 2019-10-19 20:47 , Processed in 0.131273 second(s), 23 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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