ECSHOP自动收货解决方案 【附代码】
ecshop系统,本身不带自动确认收货的,网上也找了一下,很多很复杂,且需要在服务器端设置定时任务,如果是虚拟主机,基本上就歇菜了。
某宝有一些卖自动收货的插件,不太了解其机制,不过也比较贵,要1-200一个。没办法,就自己开发吧。以下为解决方案。
解决思路:
跟淘宝的类似,默认设置7天后还没有自动确认收货,那么就会系统强制确认收货。只不过这个强制确认收货,没有在系统里设置常驻内存的程序,也没有设置系统自动任务,为变通的方案。设定为用户在登录成功后,进入用户中心页面,就会扫描自己名下,有没有超过7天还未确认收货的订单,如果有,则启动确认收货程序。没有,则跳过。
方案说明:
1、这个强制确认收货,其实不是完整版的强制确认收货,不一定是到了15天系统就自动确认收货了,而是在下一次用户登录的时候检索是否有超时的订单,所以,这个自动确认收货的时间,其实不一定是准确的。只不过不需要用户再主动点一下;
2、本来有考虑到在网站首页或者其他页面嵌入一个触发点,然后启动自动确认收货程序,但是考虑到,如果系统用户比较多(或者订单比较多),这个遍历的过程可能就会比较长了,系统开销大,也可能页面超时,所以就弄的这个变通方案。
3、ECSHOP有一个计划任务的功能,但是之前没有用过,再次优化的方案,可以写一个程序,然后开启计划任务,这样也可用满足要求。
所以,这个是不圆满版的解决方案,只是修改起来比较简单,菜鸟都会,另外因为是用户登录触发的,所以对系统资源占用不高,所以,有需要的童鞋可以拿去。
搜索“if ($action == 'default')”,然后在“$info = get_user_default($user_id);”后面,插入以下代码即可
$orders = get_user_orders($user_id,1000,0);
foreach($orders as $ord){
if($ord['order_status_flg']==5 && $ord['order_status'] == '已确认,已付款,已发货'){
//此条件下的为未确认收货的订单,开始启动自动收货程序
$ord['order_time'] = strtotime($ord['order_time']);
$thistime = time();
if($thistime>($ord['order_time']+86400*7)){//如果订单日期往后7天大于当前时间 则表示有超时未确认的订单
affirm_received($ord['order_id'], $user_id);//强制确认收货
}
}
}
程序affirm_received即为确认收货程序。
文章来源:http://www.ledaokj.com/a-wlyx/176/4437.html
ECSHOP自动收货解决方案 【附代码】的更多相关文章
- 用LabVIEW实现《家国梦》游戏中自动收货收金币
前几周,很流行一个手机游戏,叫<家国梦>.我在手机上玩了一两天后,发现了两个问题: 1. 收货收金币太没意思,只需要手指滑在固定的路线,一会儿就烦了 2. 怎么追赶也追不上手快的人(当然也 ...
- 关于web开发中订单自动超时和自动收货的简单方法(window server)
最近做一个订单自动超时和自动收货的功能,因为以前是用的mysql 存储过程和定时器来完成,这次的业务逻辑相对复杂用以前的方式就不太合适,本来是准备使用定时执行php脚本来实现的,后来发现业务逻辑中使用 ...
- SAP交货单过账自动生产采购订单、采购订单自动收货入库
公司间需要买卖操作,由于发货和收货都是同一批人在操作,为了减少业务人员的工作量,提高工作效率,特实现以上功能 1.增强实现:增强点为交货单过账成功时触发,在提交前触发,如果遇到不可预知问题,可能造成数 ...
- python实现秒杀商品的微信自动提醒功能(附代码)
技术实现原理:获取京东的具体的商品信息,然后再使用微信发送提醒 工具:需要两个微信号,这两个微信号互为好友 如果你处于想学Python或者正在学习Python,Python的教程不少了吧,但是是最新的 ...
- redis发布订阅实现各类定时业务(优惠券过期,商品不支付自动撤单,自动收货等)
修改redis配置文件找到机器上redis配置文件conf/redis.conf,新增一行 notify-keyspace-events Ex 最后的Ex代表 监听失效的键值 修改后效果如下图 代码 ...
- ecshop 调用收货地址
html {insert_scripts files='region.js,utils.js'} <script type="text/javascript"> reg ...
- ecshop自动确认收货(无其他商家)
1.创建文件 includes/modules/auto_order_confirm.php 代码:(思路:对已经发货和已经付款的订单检索,对比发货时间与当前时间的间隔,达到设定时间则自动收货) &l ...
- PHP电商订单自动确认收货redis队列
一.场景 之前做的电商平台,用户在收到货之后,大部分都不会主动的点击确认收货,导致给商家结款的时候,商家各种投诉,于是就根据需求,要做一个订单在发货之后的x天自动确认收货.所谓的订单自动确认收货,就是 ...
- HMS Core定位服务在生活服务类App中可以自动填写收货地址啦
在涉及团购.外卖.快递.家政.物流.搬家等生活服务类的App.小程序中,填写收货地址是用户高频使用的功能.这一功能通常采取让用户手动填写的解决方案,例如上下拉动选择浙江省-->杭州市--> ...
随机推荐
- Tesseract pytesseract的安装和使用
Tesseract是开源的OCR引擎,可以识别的图片里的文字,支持unicode(UTF-8)编码,100多种语言,需要下载相应语言的训练数据. 安装: 有两种方法,一种是通过编译源码,比较麻烦.我使 ...
- Laravel笔记目录
一.MVC 1.路由 2.控制器与视图 3.控制器与路由的绑定 4.中间件 二.模式与数据库 1.数据库迁移 2.填充测试数据 3.ORM入门 4.分页 三.Laravel的生命周期 1.Larave ...
- 老司机教你如何正确地在大陆安装 BlackArch
BlackArch 官方有一个比较完整的安装指南文档,其地址为 https://blackarch.org/blackarch-install.html 正如其第一行所述的那样 This tutori ...
- Linux i2c子系统(一) _动手写一个i2c设备驱动
i2c总线是一种十分常见的板级总线,本文以linux3.14.0为参考, 讨论Linux中的i2c驱动模型并利用这个模型写一个mpu6050的驱动, 最后在应用层将mpu6050中的原始数据读取出来 ...
- Oracle 数据库启用归档
一.关闭数据库 二.启动数据库到mount状态 三.启用或停止归档模式 启用 停用 四.开启数据库并查看归档模式 参考文档:http://blog.csdn.net/feifei_86/article ...
- hdoj1242(bfs+priority_queue)
之前用dfs剪枝AC了,http://www.cnblogs.com/ediszhao/p/4741825.html,这次用bfs+priority_queue来尝试解题 题意:拯救行动,天使r有多个 ...
- 对Vue.js $watch方法的理解
博主最近对着vue.js的官方教程在自学vue.js,博主自幼愚钝,在教程中真的是好多点都不太理解,接下来要说的这个$watch方法就是其中一个不太理解的点了.咱们先来看一下对于$watch方法在vu ...
- 跑马灯、短信与反射EditText
1.1.跑马灯功能 Android自带支持跑马灯功能,实现此功能需要设置已下属性: android:ellipsize="marquee" // 必选,跑马灯样式 android: ...
- 微信公众号java开发思路
方法一:不开启开发模式,直接在自定义菜单中跳转到网页,适用于流量较小的公众号. 方法二:开启开发者模式,关闭自带的自定义菜单和消息回复,接入自己开发的应用 1.接入校验:创建s ...
- iOS开发之UIWindow
1.概述 UIWindow是一种特殊的UIView,通常在一个app中只会有一个UIWindow. iOS程序启动完毕后,创建的第一个视图控件就是UIWindow,接着创建控制器的view,最后将控制 ...