Giter Site home page Giter Site logo

moshopserver's Introduction

moshopserver小程序商城后台系统

Build Status Go Report Card MIT licensed

介绍

本项目需要配合微信小程序端使用,GitHub: https://github.com/tumobi/nideshop-mini-program

测试环境搭建

  • 克隆源码

      git clone https://github.com/harlanc/moshopserver
    
  • 下载所有依赖包

     go mod vendor
    
  • 创建数据库nideshop并导入项目根目录下的nideshop.sql

      CREATE SCHEMA `nideshop` DEFAULT CHARACTER SET utf8mb4 ;
    
  • 配置好小程序相关字段

      [default]
      default_module='api'
      [weixin] 
      #小程序 appid
      appid=""
      #小程序密钥
      secret="" 
      #商户帐号ID
      mch_id='3' 
      #微信支付密钥
      apikey='4'
      #微信异步通知,例:https://www.nideshop.com/api/pay/notify 
      notify_url='5' 
    
  • 运行以下命令(默认为开启8080端口)

     go run main.go
    
  • 小程序的配置参考最后一节

微信小程序客户端截图

首页

专题

分类

商品列表

商品详情

购物车

功能列表

  • 首页
  • 分类首页、分类商品、新品首发、人气推荐商品页面
  • 商品详情页面,包含加入购物车、收藏商品、商品评论功能
  • 搜索功能
  • 专题功能
  • 品牌功能
  • 完整的购物流程,商品的加入、编辑、删除、批量选择,收货地址的选择,下单支付
  • 会员中心(订单、收藏、足迹、收货地址、意见反馈) ....

第三方依赖包

moshopserver's People

Contributors

firma avatar harlanc avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

moshopserver's Issues

小程序token失效后不会更新的问题

第一次登录的时候,生成一个新用户,并且为新用户生成一个token,
wx.setStorageSync('userInfo', res.data.userInfo);
wx.setStorageSync('token', res.data.token);
小程序客户端会调用微信的接口,将token保存在微信服务器中,以后每次接口调用都会使用此token获取UserId,过期后没有实现token的自动更新。

由 moshopserver redirect to auth/loginByWeixin 貌似行不通,因为调用auth/loginByWeixin 需要 code和userinfo参数。

小程序端做这个检查比较合适,过期后直接自动退出登录。或者调用需要登录的moshopserver的时候直接弹出登录对话框。

已知问题

  • 订单列表中商品信息不显示。

  • 用户登录后有时候没有显示登录(头像和用户名不显示)

cart.go 142行

原文是:
o.QueryTable(carttable).Update(orm.Params{"number": orm.ColValue(orm.ColAdd, intnumber)})

我的理解似乎应该是:
o.QueryTable(carttable).Filter("id", cart.Id).Update(orm.Params{"number": orm.ColValue(orm.ColAdd, intnumber)})

包依赖问题的疑问

你的 models, utils 包都是在项目里面的,其他地方引入这些包的时候,都是这种
import (
"encoding/json"
"github.com/astaxie/beego/orm"
"github.com/harlanc/moshopserver/models"
"github.com/harlanc/moshopserver/utils"
)
这样引入的包是在本地缓存的,不是你工程里面的包, models 这些包里面的代码改动的时候也不会马上影响到其他引入的地方,这样不是很奇怪吗?

我试过这样引入包,也是可以的,而且代码改动的话可以马上影响到引入的地方
import (
"encoding/json"
"github.com/astaxie/beego/orm"
"moshopserver/models"
"moshopserver/utils"
)

个人认为第二种引入的方式才是比较合适的,是一个项目比价正常的依赖关系,有本地代码依赖和第三方的依赖,像 java 的 maven
一样。

而且 go mod 的依赖管理现在是比较成熟了,不用把代码放在 gopath 下面了

我是小白,如有得罪请见谅,只是提了一个疑问意见

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.