Skip to content

Commit 4eb1d1d

Browse files
committed
🎨 #1571 对微信模版消息行业信息不一致的变态问题尽可能的进行优化
1 parent bcefec0 commit 4eb1d1d

File tree

4 files changed

+31
-17
lines changed

4 files changed

+31
-17
lines changed

Diff for: weixin-java-mp/src/main/java/me/chanjar/weixin/mp/bean/template/WxMpTemplateIndustryEnum.java

+7-7
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,9 @@ public enum WxMpTemplateIndustryEnum {
4141
*/
4242
BANK("金融业", "银行", 7),
4343
/**
44-
* 金融业 - 基金|理财|信托
44+
* 金融业 - 证券|基金|理财|信托(实际是这个)
4545
*/
46-
FUND("金融业", "基金|理财|信托", 8),
46+
FUND("金融业", "证券基金理财信托", 8),
4747
/**
4848
* 金融业 - 保险
4949
*/
@@ -93,9 +93,9 @@ public enum WxMpTemplateIndustryEnum {
9393
*/
9494
MUSEUM("政府与公共事业", "博物馆", 20),
9595
/**
96-
* 政府与公共事业 - 公共事业|非盈利机构
96+
* 政府与公共事业 - 公共事业非盈利机构
9797
*/
98-
PUBLIC_WORKS_NONPROFIT("政府与公共事业", "公共事业|非盈利机构", 21),
98+
PUBLIC_WORKS_NONPROFIT("政府与公共事业", "公共事业非盈利机构", 21),
9999
/**
100100
* 医药护理 - 医药医疗
101101
*/
@@ -125,7 +125,7 @@ public enum WxMpTemplateIndustryEnum {
125125
*/
126126
THE_PLANE_RELATED("交通工具", "飞机相关", 28),
127127
/**
128-
* 房地产 - 建筑
128+
* 房地产 - 房地产|建筑(实际上是这个)
129129
*/
130130
ARCHITECTURE("房地产", "建筑", 29),
131131
/**
@@ -153,9 +153,9 @@ public enum WxMpTemplateIndustryEnum {
153153
*/
154154
AUTHENTICATION("商业服务", "认证", 35),
155155
/**
156-
* 商业服务 - 会计|审计
156+
* 商业服务 - 审计
157157
*/
158-
AUDIT("商业服务", "会计|审计", 36),
158+
AUDIT("商业服务", "审计", 36),
159159
/**
160160
* 文体娱乐 - 传媒
161161
*/

Diff for: weixin-java-mp/src/main/java/me/chanjar/weixin/mp/util/json/WxMpIndustryGsonAdapter.java

+5
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,11 @@ public WxMpTemplateIndustry deserialize(JsonElement jsonElement, Type type, Json
2929

3030
private WxMpTemplateIndustryEnum convertFromJson(JsonObject json) {
3131
String secondClass = GsonHelper.getString(json, "second_class");
32+
final WxMpTemplateIndustryEnum industryEnum = WxMpTemplateIndustryEnum.findBySecondary(secondClass);
33+
if (industryEnum != null) {
34+
return industryEnum;
35+
}
36+
3237
if (secondClass.contains("|")) {
3338
secondClass = secondClass.split("\\|")[1];
3439
}

Diff for: weixin-java-mp/src/test/java/me/chanjar/weixin/mp/api/impl/WxMpTemplateMsgServiceImplTest.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,8 @@ public void testGetIndustry() throws Exception {
5353

5454
@Test
5555
public void testSetIndustry() throws Exception {
56-
WxMpTemplateIndustry industry = new WxMpTemplateIndustry(WxMpTemplateIndustryEnum.findByCode(1),
57-
WxMpTemplateIndustryEnum.findByCode(4));
56+
WxMpTemplateIndustry industry = new WxMpTemplateIndustry(WxMpTemplateIndustryEnum.findByCode(29),
57+
WxMpTemplateIndustryEnum.findByCode(8));
5858
boolean result = this.wxService.getTemplateMsgService().setIndustry(industry);
5959
Assert.assertTrue(result);
6060
}

Diff for: weixin-java-mp/src/test/java/me/chanjar/weixin/mp/bean/template/WxMpTemplateIndustryTest.java

+17-8
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
import org.testng.annotations.Test;
44

55
import static org.assertj.core.api.Assertions.assertThat;
6-
import static org.testng.Assert.*;
76

87
/**
98
* 测试类.
@@ -13,11 +12,21 @@
1312
*/
1413
public class WxMpTemplateIndustryTest {
1514

16-
@Test
17-
public void testFromJson() {
18-
String json="{\"primary_industry\":{\"first_class\":\"IT科技\",\"second_class\":\"互联网|电子商务\"},\"secondary_industry\":{\"first_class\":\"房地产\",\"second_class\":\"房地产|建筑\"}}";
19-
final WxMpTemplateIndustry industry = WxMpTemplateIndustry.fromJson(json);
20-
assertThat(industry).isNotNull();
21-
System.out.println(industry);
22-
}
15+
@Test
16+
public void testFromJson() {
17+
String json = "{\"primary_industry\":{\"first_class\":\"IT科技\",\"second_class\":\"互联网|电子商务\"}," +
18+
"\"secondary_industry\":{\"first_class\":\"房地产\",\"second_class\":\"房地产|建筑\"}}";
19+
final WxMpTemplateIndustry industry = WxMpTemplateIndustry.fromJson(json);
20+
assertThat(industry).isNotNull();
21+
System.out.println(industry);
22+
}
23+
24+
@Test
25+
public void testFromJson_another_example() {
26+
String json = "{\"primary_industry\":{\"first_class\":\"金融业\",\"second_class\":\"基金理财信托\"}," +
27+
"\"secondary_industry\":{\"first_class\":\"房地产\",\"second_class\":\"建筑\"}}";
28+
final WxMpTemplateIndustry industry = WxMpTemplateIndustry.fromJson(json);
29+
assertThat(industry).isNotNull();
30+
System.out.println(industry);
31+
}
2332
}

0 commit comments

Comments
 (0)