Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
130 commits
Select commit Hold shift + click to select a range
585b721
fix potential resource leak
binarywang Sep 1, 2016
66cd7cd
fix some warnings in test files
binarywang Sep 1, 2016
6f297ae
fix some warnings in common modules
binarywang Sep 1, 2016
5bbf578
Merge pull request #1 from wechat-group/develop
aimilin6688 Sep 1, 2016
59f92a3
重构修复部分代码
binarywang Sep 1, 2016
c7efcae
更改版本号
binarywang Sep 1, 2016
71709bb
重构修复部分代码
binarywang Sep 1, 2016
d31c9f7
标记分组接口为过期的
binarywang Sep 2, 2016
9b0ab05
移动两个group相关的测试
binarywang Sep 2, 2016
ce58afc
增加用户标签添加接口
binarywang Sep 2, 2016
fa51539
接口调用加入日志输出
binarywang Sep 2, 2016
99bb1a9
修改readme
binarywang Sep 6, 2016
6588e25
add one pic
binarywang Sep 6, 2016
0f42e64
修改readme
binarywang Sep 6, 2016
329433f
修改readme
binarywang Sep 6, 2016
e9c504b
修改readme
binarywang Sep 6, 2016
f2b840c
修改readme
binarywang Sep 6, 2016
5c3bf7a
Update README.md
binarywang Sep 6, 2016
b8f95cc
Merge branch 'master' into develop
binarywang Sep 7, 2016
168e168
jedis作为非必需依赖项改为provided,同时更改版本号用于发布临时版本
binarywang Sep 7, 2016
1388060
fix warnings
binarywang Sep 8, 2016
4e67dbe
fix warnings
binarywang Sep 8, 2016
cc59d27
Suppress Warnings
binarywang Sep 8, 2016
d42227c
fix warnings
binarywang Sep 8, 2016
69df599
fix warnings
binarywang Sep 8, 2016
775f058
fix warnings
binarywang Sep 8, 2016
b68ec3a
fix warnings
binarywang Sep 8, 2016
7bf7f28
修复代码格式
binarywang Sep 8, 2016
3ab8a3c
增加用户标签查询接口
binarywang Sep 8, 2016
f66c0b0
修复由于静态引用SimpleDateFormat导致线程不安全的代码
binarywang Sep 9, 2016
82d71ea
修复对应常量名
binarywang Sep 9, 2016
a1d5b3d
重构统计接口代码
binarywang Sep 9, 2016
ea35246
暂时去掉jackson代码,用于展示数据的代码放在客户端比较好些
binarywang Sep 9, 2016
8970b2c
脱敏
binarywang Sep 9, 2016
5d95f37
fix some format
binarywang Sep 11, 2016
214661b
增加用户标签修改接口
binarywang Sep 11, 2016
8374971
修复完善用户标签修改接口
binarywang Sep 11, 2016
ede2496
parameterized some generic types
binarywang Sep 12, 2016
f13dcaa
增加删除标签的接口
binarywang Sep 13, 2016
5aa51e2
fix some warnings
binarywang Sep 13, 2016
023ed9a
修复企业号proxy为空的bug,并重构规范若干变量的命名
binarywang Sep 14, 2016
1d8326e
修复公众号proxy为空的bug,并发布临时版本2.1.2
binarywang Sep 14, 2016
6d3b065
增加editorconfig文件,统一设置缩进格式
Sep 14, 2016
9a38010
Merge pull request #39 from kakotor/develop
binarywang Sep 14, 2016
15f17b2
增加设置setConnectionManagerShared参数避免PoolingHttpClientConnectionManager被…
Sep 14, 2016
b26a017
Merge pull request #40 from kakotor/develop
binarywang Sep 14, 2016
21f1497
修复代理没有设置时会存在的问题
binarywang Sep 16, 2016
ad71e3c
新增卡券的客服消息类型
mgcnrx11 Sep 18, 2016
b17041e
发送客服消息接口转移到客服专用service中,使用时需要加入getKefuService()
binarywang Sep 19, 2016
b941a57
add user black list api and impl
kareanyi Sep 20, 2016
63c41d4
1.rename openId to openid 2.rename blackList to blacklist 3.refine bl…
kareanyi Sep 20, 2016
228bd49
创建菜单时添加日志记录功能
Sep 20, 2016
b18056c
Merge pull request #2 from wechat-group/develop
aimilin6688 Sep 20, 2016
c5c8628
添加获取标签下粉丝列表的接口
binarywang Sep 20, 2016
a304bc5
查询订单支付状态返回的结果WxMpPayResult增加新字段
aalx Sep 20, 2016
d92c379
Merge branch 'develop' of https://github.com/aalx/weixin-java-tools.g…
Sep 21, 2016
21c5855
Update README.md
binarywang Sep 21, 2016
fcc5eff
Merge pull request #43 from aalx/develop
binarywang Sep 21, 2016
0fd7906
格式化代码,去掉无用的一些东西
binarywang Sep 21, 2016
54ab159
Merge pull request #41 from mgcnrx11/feat-custom-msg-wxcard
binarywang Sep 21, 2016
1ca8e51
修复一点小问题
binarywang Sep 21, 2016
b98661b
删除多余判断
Sep 21, 2016
350ffc3
Merge pull request #42 from aimilin6688/develop
binarywang Sep 21, 2016
592ac81
格式化并优化简化代码
binarywang Sep 21, 2016
9780d65
添加批量为用户打标签的接口
binarywang Sep 21, 2016
6e32028
添加批量为用户取消标签的接口
binarywang Sep 21, 2016
7e21f46
添加获取用户身上的标签列表的接口
binarywang Sep 21, 2016
95aa369
优化调整代码
binarywang Sep 22, 2016
9f0c221
清理无用javadoc
binarywang Sep 22, 2016
5b4a0ea
调整javadoc
binarywang Sep 22, 2016
b3234a0
调整部分素材管理的单元测试代码
binarywang Sep 22, 2016
2907d32
打印微信接口访问日志
binarywang Sep 22, 2016
26af3c5
修复下载多媒体文件时,如果token正好无效时无法自动刷新token的问题
binarywang Sep 22, 2016
ec2e599
修复两个客服接口地址问题(怀疑是微信官方偷偷改了的??!!!)
binarywang Sep 22, 2016
aeea340
修改日志内容
binarywang Sep 23, 2016
fe2a6a6
删去@return,与已有代码风格保持一致
Sep 23, 2016
1e6fbbd
Merge pull request #44 from mgcnrx11/feat-custom-msg-wxcard
binarywang Sep 23, 2016
3ba6dbb
重构支付相关对象包结构
binarywang Sep 24, 2016
58d10b7
修改部分javadoc
binarywang Sep 24, 2016
748a81b
修改toString方法
binarywang Sep 24, 2016
d3edb44
初步定义好发送红包的请求对象类
binarywang Sep 24, 2016
06c73ca
添加发送红包的重载方法,准备替代现有的代码
binarywang Sep 24, 2016
7f830e2
添加缺少的代码
binarywang Sep 24, 2016
b13d3c9
为新增加的发送红包的接口方法添加单元测试,仅测试接口格式,未测试实际功能
binarywang Sep 24, 2016
e70c539
对相应数据进行判断,及时抛出异常
binarywang Sep 24, 2016
64ec8a3
为照顾travis-ci,暂时屏蔽aliyun的repo
binarywang Sep 24, 2016
29c6d14
为照顾travis-ci,暂时屏蔽aliyun的repo
binarywang Sep 24, 2016
19cfded
fix gradle repositories
binarywang Sep 24, 2016
b12e52e
add guava lib
binarywang Sep 24, 2016
ea6a9b5
fix package for Maps
binarywang Sep 24, 2016
15e2700
fix gradle and refactor pom
binarywang Sep 24, 2016
6a19062
准备重构统一下单接口方法
binarywang Sep 25, 2016
fcede8f
add store service
binarywang Sep 26, 2016
e9a21b2
add store bean
binarywang Sep 26, 2016
b555cc3
增加annotation用于标识字段是否必填
binarywang Sep 26, 2016
c483829
add missing @Override
binarywang Sep 26, 2016
839ecad
增加新的统一下单接口,并添加对接口格式的单元测试,并未对实际功能进行测试
binarywang Sep 26, 2016
c538f69
Update README.md
binarywang Sep 26, 2016
dae8e40
重构已有支付代码
binarywang Sep 26, 2016
18e7f7e
Merge branch 'develop' into store
binarywang Sep 26, 2016
b7e8f21
添加门店管理-创建门店的接口,单元测试仅测试格式,暂未通过测试
binarywang Sep 26, 2016
8619430
添加构造支付参数的重载方法,准备替换原有方法
binarywang Sep 26, 2016
435eb12
果断去掉旧有接口代码
binarywang Sep 27, 2016
bda5ab0
添加门店查询列表的接口,并修复创建门店的接口, for issue #17
binarywang Sep 27, 2016
c7a04d5
Update README.md
binarywang Sep 27, 2016
94b42ee
优化门店查询列表的接口, for issue #17
binarywang Sep 27, 2016
c4a4119
Update README.md
binarywang Sep 28, 2016
721df6f
Update README.md
binarywang Sep 28, 2016
a575777
Delete github_id.png
binarywang Sep 28, 2016
cb9380c
添加对发送模板消息的单元测试
binarywang Sep 28, 2016
a5779a7
Merge pull request #3 from wechat-group/develop
aimilin6688 Sep 28, 2016
0ee199d
1.添加获取用户信息单元测试类
Sep 28, 2016
aabdc8e
Merge pull request #46 from aimilin6688/develop
binarywang Sep 28, 2016
742c74d
用户信息添加新增的tagid_list属性
binarywang Sep 28, 2016
815ea18
简化代码
binarywang Sep 28, 2016
74a0ada
更改原始作者
binarywang Sep 28, 2016
1352385
移除Group相关接口
binarywang Sep 28, 2016
f2a858d
调整移除group相关接口后的代码
binarywang Sep 28, 2016
d7e35a1
修复一个属性错误
binarywang Sep 28, 2016
f300831
简化代码
binarywang Sep 28, 2016
7478361
去掉多余重复的日志输出
binarywang Sep 28, 2016
6889e3d
添加门店信息查看的接口, for issue #17
binarywang Sep 28, 2016
091aefe
添加门店服务信息修改的接口, for issue #17
binarywang Sep 28, 2016
460a52b
添加删除门店的接口, for issue #17
binarywang Sep 28, 2016
8a5fdb1
添加查询门店类目列表的接口, for issue #17
binarywang Sep 28, 2016
d9e8fe6
添加门店审核事件推送的相关消息变量和事件常量, for issue #17
binarywang Sep 28, 2016
87ab934
格式化部分代码
binarywang Sep 29, 2016
5345a6d
重构WxMpXmlMessage,修改fromUserName为fromUser,toUserName为toUser,避免不必要的歧义
binarywang Sep 30, 2016
ae3577f
修正部分文字
binarywang Sep 30, 2016
5c53319
升级版本号为新版本2.2.0
binarywang Sep 30, 2016
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# EditorConfig: http://editorconfig.org/

root = true

[*]
indent_style = space
indent_size = 2
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

[*.md]
trim_trailing_whitespace = false
69 changes: 34 additions & 35 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,58 +1,59 @@
# Weixin Java Tools 微信公众号/企业号开发Java SDK
## [![Open Source Love](https://badges.frapsoft.com/os/v1/open-source.svg?v=103)](https://github.com/ellerbrock/open-source-badge/) ![Maven Central](https://img.shields.io/maven-central/v/com.github.binarywang/weixin-java-parent.svg) [![Build Status](https://travis-ci.org/binarywang/weixin-java-tools.svg?branch=develop)](https://travis-ci.org/binarywang/weixin-java-tools)
## [![Open Source Love](https://badges.frapsoft.com/os/v1/open-source.svg?v=103)](https://github.com/ellerbrock/open-source-badge/) ![Maven Central](https://img.shields.io/maven-central/v/com.github.binarywang/weixin-java-parent.svg) [![Build Status](https://travis-ci.org/wechat-group/weixin-java-tools.svg?branch=develop)](https://travis-ci.org/wechat-group/weixin-java-tools)


### 声明:本项目Fork自chanjarster/weixin-java-tools,但由于原项目已停止维护,故单独维护和发布,且发布到maven上的groupId也会不同,详细信息见下文。
### 注意:
1. ***本项目Fork自chanjarster/weixin-java-tools,但由于原项目已停止维护,故单独维护和发布,且发布到maven上的groupId也会不同,详细信息见下文。***
1. ***自2.0.0版本以来,主要是公众号的接口调整比较大,主要是为了解决主接口类过于庞大不方便管理的问题,将接口实现代码按模块进行拆分。***
1. 最新更新:2016-09-30 发布2.2.0正式版!

### 最新更新:2.1.0版发布!!! on 2016-08-31
===========

#### ***自2.0.0版本以来,接口调整比较大,主要是公众号的调整,企业号无过多调整,主要是为了解决主接口类过于庞大不方便管理的问题,将接口实现代码按模块进行拆分。所以如果习惯于1.X.X版本的同学不想做过多更改的话,请慎重考虑升级到2.X.X版本.***
---
## 开发交流方式:
1. ***入群须知:为保证入群成员质量,请申请入群前,先Star本项目,然后在申请入群时,输入您的Github帐号ID,以便管理员核对,ID即你的github主页地址https://github.com/XXXX 中最后的部分XXXX的内容,或者在github网页右上角点击头像后查看Signed in as后方内容。***
1. QQ群:343954419 [![Join QQ Group](http://pub.idqqimg.com/wpa/images/group.png)](http://shang.qq.com/wpa/qunwpa?idkey=078f7a153d243853e24cf2b542e7a6ccbf2a592bc138080f84d11297f736ec46)
1. 微信群: 因二维码有时间限制,如有想加入微信群的,请入QQ群后咨询获取最新入群二维码;
1. 有功能需求或由于微信官方接口调整导致的代码问题,可以直接提出issue,便于讨论追踪问题;
1. 详细开发文档请看 [Wiki](https://github.com/wechat-group/weixin-java-tools/wiki)。

### 详细开发文档请看 [wiki](https://github.com/chanjarster/weixin-java-tools/wiki)。
===========
## 开发交流工具:
* 微信群: 因二维码有时间限制,如有想加入微信群的,请入QQ群后咨询获取最新入群二维码。
* QQ群:343954419 [![Join QQ Group](http://pub.idqqimg.com/wpa/images/group.png)](http://shang.qq.com/wpa/qunwpa?idkey=078f7a153d243853e24cf2b542e7a6ccbf2a592bc138080f84d11297f736ec46)
* ***注意:为保证入群成员质量,请申请入群前,先Star本项目,然后在申请入群时,输入您的Github帐号ID,以便管理员核对,ID即你的github主页地址https://github.com/XXXX 中最后的部分XXXX的内容,或者在github网页右上角点击头像查看,如下图Signed in as下方黄色标识内容即是:***
* ![github_id](https://raw.githubusercontent.com/wechat-group/weixin-java-tools/develop/res/github_id.png)

===========

## 版本说明
* 本项目定为每月发布一次正式版,版本号格式为X.X.0(如2.0.0,2.1.0等),月初或月底发布新版本,遇到重大问题需修复会及时提交新版本,欢迎大家随时提交Pull Request。
* BUG修复和新特性一般会先发布成小版本作为临时版本(如2.0.1,2.0.2等,即尾号不为0,以区别于正式版)。
* 目前最新版本号为 ![Maven Central](https://img.shields.io/maven-central/v/com.github.binarywang/weixin-java-parent.svg) ,也可以通过访问如下地址查看所有最新的版本:
- [【公众号】](http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22com.github.binarywang%22%20AND%20a%3A%22weixin-java-mp%22)
- [【企业号】](http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22com.github.binarywang%22%20AND%20a%3A%22weixin-java-cp%22)

* 本项目定为每月发布一次正式版,版本号格式为X.X.0(如2.0.0,2.1.0等),月初或月底发布新版本,遇到重大问题需修复会及时提交新版本,欢迎大家随时提交Pull Request;
* BUG修复和新特性一般会先发布成小版本作为临时版本(如2.0.1,2.0.2等,即尾号不为0,以区别于正式版);
* 目前最新版本号为 ![Maven Central](https://img.shields.io/maven-central/v/com.github.binarywang/weixin-java-parent.svg) ,也可以通过访问链接[【公众号】](http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22com.github.binarywang%22%20AND%20a%3A%22weixin-java-mp%22) 、[【企业号】](http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22com.github.binarywang%22%20AND%20a%3A%22weixin-java-cp%22)
分别查看所有最新的版本。

## Maven & Gradle

* 公众号(订阅号、服务号):

maven:
```xml
<dependency>
<groupId>com.github.binarywang</groupId>
<artifactId>weixin-java-mp</artifactId>
<version>2.1.0</version>
<version>2.2.0</version>
</dependency>
```

gradle:
```groovy
compile 'com.github.binarywang:weixin-java-mp:2.1.0'
compile 'com.github.binarywang:weixin-java-mp:2.2.0'
```

* 企业号:

maven:
```xml
<dependency>
<groupId>com.github.binarywang</groupId>
<artifactId>weixin-java-cp</artifactId>
<version>2.1.0</version>
<version>2.2.0</version>
</dependency>
```

gradle:
```groovy
compile 'com.github.binarywang:weixin-java-cp:2.1.0'
compile 'com.github.binarywang:weixin-java-cp:2.2.0'
```

#### 本项目主要存放在github上,地址为 :
Expand All @@ -63,16 +64,14 @@ compile 'com.github.binarywang:weixin-java-cp:2.1.0'
* https://git.coding.net/binarywang/weixin-java-tools.git


## 目前可参考的Demo项目:
* https://github.com/wechat-group/weixin-java-tools-springmvc
* https://github.com/wechat-group/weixin-mp-demo
* ===========以下为备份仓库,会保持跟主仓库同步
* http://git.oschina.net/binary/weixin-mp-demo
* https://bitbucket.org/binarywang/weixin-mp-demo
## 目前可参考的Demo项目有两个:
1. https://github.com/wechat-group/weixin-mp-demo
1. https://github.com/wechat-group/weixin-java-tools-springmvc

## 关于代码贡献
* 非常欢迎和感谢对本项目发起Pull Request的同学,本项目代码风格为使用2个空格代表一个Tab,因此在提交代码时请注意一下,否则很容易在IDE格式化代码后与原代码产生大量diff,这样会给其他人阅读代码带来极大的困扰。
* 为了便于设置,本项目引入editorconfig插件,请使用eclipse的同学在贡献代码前安装相关插件,IntelliJ IDEA则自带支持,无需额外安装插件。
* 本项目可以采用两种方式接受代码贡献:

* 非常欢迎和感谢对本项目发起Pull Request的同学,本项目可以采用两种方式接受代码贡献:
* 第一种就是基于[Git Flow](https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow)开发流程,因此在发起Pull Request的时候请选择develop分支。
* 另外一种贡献代码的方式就是加入SDK Developers开发组,如果对自己的代码足够自信,可以随时提交代码,注意要随时进行单元测试,保证提交代码没有明显问题,具体加入方式,请咨询管理员。
* 本项目代码风格为使用2个空格代表一个Tab,因此在提交代码时请注意一下,否则很容易在IDE格式化代码后与原代码产生大量diff,这样会给其他人阅读代码带来极大的困扰。
1. 第一种就是基于[Git Flow](https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow)开发流程,因此在发起Pull Request的时候请选择develop分支。
1. 另外一种贡献代码的方式就是加入SDK Developers开发组,前提是对自己的代码足够自信就可以申请加入,加入之后可以随时直接提交代码,但要注意对所做的修改或新增的代码进行单元测试,保证提交代码没有明显问题,具体加入方式,请咨询管理员。
8 changes: 5 additions & 3 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ allprojects {
apply plugin: 'maven'

group = 'com.github.binarywang'
version = '2.1.0-SNAPSHOT'
version = '2.2.0'
}

subprojects {
Expand All @@ -13,8 +13,8 @@ subprojects {

repositories {
mavenLocal()

maven { url "http://maven.aliyun.com/nexus/content/groups/public" }
maven { url "http://central.maven.org/maven2" }
//maven { url "http://maven.aliyun.com/nexus/content/groups/public" }
}


Expand All @@ -24,6 +24,8 @@ subprojects {
compile group: 'org.apache.httpcomponents', name: 'httpmime', version:'4.5'
compile group: 'org.jodd', name: 'jodd-http', version:'3.6.7'
compile group: 'com.google.code.gson', name: 'gson', version:'2.7'
compile group: 'com.google.guava', name: 'guava', version:'19.0'
compile group: 'org.jooq', name: 'joor', version:'0.9.6'
compile group: 'commons-codec', name: 'commons-codec', version:'1.10'
compile group: 'commons-io', name: 'commons-io', version:'2.5'
compile group: 'org.apache.commons', name: 'commons-lang3', version:'3.4'
Expand Down
29 changes: 22 additions & 7 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>com.github.binarywang</groupId>
<artifactId>weixin-java-parent</artifactId>
<version>2.1.0</version>
<version>2.2.0</version>
<packaging>pom</packaging>
<name>WeiXin Java Tools - Parent</name>
<description>微信公众号、企业号上级POM</description>
Expand Down Expand Up @@ -49,9 +49,10 @@
<slf4j.version>1.7.10</slf4j.version>
<logback.version>1.1.2</logback.version>
<jodd-http.version>3.6.7</jodd-http.version>
<jackson.version>2.8.0</jackson.version>
<jedis.version>2.9.0</jedis.version>
<gson.version>2.7</gson.version>
<guava.version>19.0</guava.version>
<joor.version>0.9.6</joor.version>
<commons-lang3.version>3.4</commons-lang3.version>
<commons-io.version>2.5</commons-io.version>
<commons-codec.version>1.10</commons-codec.version>
Expand Down Expand Up @@ -106,15 +107,19 @@
<artifactId>commons-lang3</artifactId>
<version>${commons-lang3.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>${jedis.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
</dependency>
<dependency>
<groupId>org.jooq</groupId>
<artifactId>joor</artifactId>
</dependency>
</dependencies>

Expand Down Expand Up @@ -156,6 +161,16 @@
<version>${jetty.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>${guava.version}</version>
</dependency>
<dependency>
<groupId>org.jooq</groupId>
<artifactId>joor</artifactId>
<version>${joor.version}</version>
</dependency>
</dependencies>
</dependencyManagement>

Expand Down
2 changes: 1 addition & 1 deletion weixin-java-common/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<groupId>com.github.binarywang</groupId>
<artifactId>weixin-java-parent</artifactId>
<version>2.1.0</version>
<version>2.2.0</version>
</parent>

<artifactId>weixin-java-common</artifactId>
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
package me.chanjar.weixin.common.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
* 标识某个字段是否是必填的
*
* Created by Binary Wang on 2016/9/25.
* @author binarywang (https://github.com/binarywang)
*
*/
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.FIELD)
public @interface Required {

}
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ public class WxConsts {
public static final String CUSTOM_MSG_MUSIC = "music";
public static final String CUSTOM_MSG_NEWS = "news";
public static final String CUSTOM_MSG_FILE = "file";
public static final String CUSTOM_MSG_WXCARD = "wxcard";
public static final String CUSTOM_MSG_TRANSFER_CUSTOMER_SERVICE = "transfer_customer_service";
public static final String CUSTOM_MSG_SAFE_NO = "0";
public static final String CUSTOM_MSG_SAFE_YES = "1";
Expand Down Expand Up @@ -61,7 +62,7 @@ public class WxConsts {
/**
* 群发反馈消息代码所对应的文字描述
*/
public static final Map<String, String> MASS_ST_2_DESC = new HashMap<String, String>();
public static final Map<String, String> MASS_ST_2_DESC = new HashMap<>();
///////////////////////
// 微信端推送过来的事件类型
///////////////////////
Expand Down Expand Up @@ -92,6 +93,8 @@ public class WxConsts {
public static final String EVT_KF_CREATE_SESSION = "kf_create_session"; // 客服接入会话
public static final String EVT_KF_CLOSE_SESSION = "kf_close_session"; // 客服关闭会话
public static final String EVT_KF_SWITCH_SESSION = "kf_switch_session"; // 客服转接会话
public static final String EVT_POI_CHECK_NOTIFY = "poi_check_notify"; //门店审核事件推送

///////////////////////
// 上传多媒体文件的类型
///////////////////////
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ public class WxMessageInMemoryDuplicateChecker implements WxMessageDuplicateChec
/**
* 消息id->消息时间戳的map
*/
private final ConcurrentHashMap<String, Long> msgId2Timestamp = new ConcurrentHashMap<String, Long>();
private final ConcurrentHashMap<String, Long> msgId2Timestamp = new ConcurrentHashMap<>();

/**
* 后台清理线程是否已经开启
Expand Down Expand Up @@ -56,19 +56,19 @@ public WxMessageInMemoryDuplicateChecker(Long timeToLive, Long clearPeriod) {
}

protected void checkBackgroundProcessStarted() {
if (backgroundProcessStarted.getAndSet(true)) {
if (this.backgroundProcessStarted.getAndSet(true)) {
return;
}
Thread t = new Thread(new Runnable() {
@Override
public void run() {
try {
while (true) {
Thread.sleep(clearPeriod);
Thread.sleep(WxMessageInMemoryDuplicateChecker.this.clearPeriod);
Long now = System.currentTimeMillis();
for (Map.Entry<String, Long> entry : msgId2Timestamp.entrySet()) {
if (now - entry.getValue() > timeToLive) {
msgId2Timestamp.entrySet().remove(entry);
for (Map.Entry<String, Long> entry : WxMessageInMemoryDuplicateChecker.this.msgId2Timestamp.entrySet()) {
if (now - entry.getValue() > WxMessageInMemoryDuplicateChecker.this.timeToLive) {
WxMessageInMemoryDuplicateChecker.this.msgId2Timestamp.entrySet().remove(entry);
}
}
}
Expand All @@ -87,7 +87,7 @@ public boolean isDuplicate(String messageId) {
return false;
}
checkBackgroundProcessStarted();
Long timestamp = msgId2Timestamp.putIfAbsent(messageId, System.currentTimeMillis());
Long timestamp = this.msgId2Timestamp.putIfAbsent(messageId, System.currentTimeMillis());
return timestamp != null;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,15 +16,15 @@ public static WxAccessToken fromJson(String json) {
}

public String getAccessToken() {
return accessToken;
return this.accessToken;
}

public void setAccessToken(String accessToken) {
this.accessToken = accessToken;
}

public int getExpiresIn() {
return expiresIn;
return this.expiresIn;
}

public void setExpiresIn(int expiresIn) {
Expand Down
Loading