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自动收货解决方案 【附代码】的更多相关文章

  1. 用LabVIEW实现《家国梦》游戏中自动收货收金币

    前几周,很流行一个手机游戏,叫<家国梦>.我在手机上玩了一两天后,发现了两个问题: 1. 收货收金币太没意思,只需要手指滑在固定的路线,一会儿就烦了 2. 怎么追赶也追不上手快的人(当然也 ...

  2. 关于web开发中订单自动超时和自动收货的简单方法(window server)

    最近做一个订单自动超时和自动收货的功能,因为以前是用的mysql 存储过程和定时器来完成,这次的业务逻辑相对复杂用以前的方式就不太合适,本来是准备使用定时执行php脚本来实现的,后来发现业务逻辑中使用 ...

  3. SAP交货单过账自动生产采购订单、采购订单自动收货入库

    公司间需要买卖操作,由于发货和收货都是同一批人在操作,为了减少业务人员的工作量,提高工作效率,特实现以上功能 1.增强实现:增强点为交货单过账成功时触发,在提交前触发,如果遇到不可预知问题,可能造成数 ...

  4. python实现秒杀商品的微信自动提醒功能(附代码)

    技术实现原理:获取京东的具体的商品信息,然后再使用微信发送提醒 工具:需要两个微信号,这两个微信号互为好友 如果你处于想学Python或者正在学习Python,Python的教程不少了吧,但是是最新的 ...

  5. redis发布订阅实现各类定时业务(优惠券过期,商品不支付自动撤单,自动收货等)

    修改redis配置文件找到机器上redis配置文件conf/redis.conf,新增一行  notify-keyspace-events Ex 最后的Ex代表 监听失效的键值 修改后效果如下图 代码 ...

  6. ecshop 调用收货地址

    html {insert_scripts files='region.js,utils.js'} <script type="text/javascript"> reg ...

  7. ecshop自动确认收货(无其他商家)

    1.创建文件 includes/modules/auto_order_confirm.php 代码:(思路:对已经发货和已经付款的订单检索,对比发货时间与当前时间的间隔,达到设定时间则自动收货) &l ...

  8. PHP电商订单自动确认收货redis队列

    一.场景 之前做的电商平台,用户在收到货之后,大部分都不会主动的点击确认收货,导致给商家结款的时候,商家各种投诉,于是就根据需求,要做一个订单在发货之后的x天自动确认收货.所谓的订单自动确认收货,就是 ...

  9. HMS Core定位服务在生活服务类App中可以自动填写收货地址啦

    在涉及团购.外卖.快递.家政.物流.搬家等生活服务类的App.小程序中,填写收货地址是用户高频使用的功能.这一功能通常采取让用户手动填写的解决方案,例如上下拉动选择浙江省-->杭州市--> ...

随机推荐

  1. java读取和写入txt文件

    package com.yinghuo.testDES; import java.io.BufferedReader;import java.io.BufferedWriter;import java ...

  2. PHP链接Redis

    命令行下运行 redis-server.exe redis.windows.conf 此时,redis服务已经开启,然后我们可以再新开一个命令行,作为控制台 redis-cli.exe -h 127. ...

  3. ACM 阶乘的0

    阶乘的0 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述 计算n!的十进制表示最后有多少个0   输入 第一行输入一个整数N表示测试数据的组数(1<=N< ...

  4. 说说如何用js实现一个模板引擎

    本文同步更新在: https://github.com/whxaxes/blog/issues/4 ,在 github 看文章显示效果会更好一些. 前言 不知不觉就很长时间没造过什么轮子了,以前一直想 ...

  5. 初写Python

    #!/usr/bin/env python (指定用什么解释器运行脚本以及解释器所在的位置) # -*- coding:utf-8 -*- (用来指定文件编码为utf-8的)   # 无效的内容,只做 ...

  6. java初级开发一系列的工具安装配置

    最近压力很大,刚刚帮朋友安装了一整套环境,按照印象写下此篇记录(没有图解),一是用来释放压力,二来希望可以帮到各位. 一.首先,Eclipse的安装,下载eclipse压缩包,一般为200~300M, ...

  7. TypeScript设计模式之解释器

    看看用TypeScript怎样实现常见的设计模式,顺便复习一下. 学模式最重要的不是记UML,而是知道什么模式可以解决什么样的问题,在做项目时碰到问题可以想到用哪个模式可以解决,UML忘了可以查,思想 ...

  8. Android Fragment 开发(一)

    最近在学习Fragment 的使用,想弄一个在子窗体中调用父的方法,一直报错,终于找到解决方法啦 父窗体名称:MainActivity 父中有一个public的方法show() 子窗体调用: Main ...

  9. Jackson注解学习参考(转)

    转:http://wong-john.iteye.com/blog/1753402 以下内容摘录.翻译自https://github.com/FasterXML/jackson-annotations ...

  10. Bootstrap 组件之 Navbar

    一.简介 Navbar 指导航条,它在移动设备上显示为折叠状态,在宽屏幕上水平展开.这里 是一个线上例子. 响应式导航条依赖 collapse 插件,定制 Bootstrap 时务必要包含. {设备的 ...