# afanti **Repository Path**: sunpp125/afanti ## Basic Information - **Project Name**: afanti - **Description**: springboot +dubbo - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2018-06-29 - **Last Updated**: 2020-12-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # afanti项目 ## 项目拆分 本次afanti系统分为两个项目,分别为:
**afanti-service**:afanti服务
**afanti-api**:afanti对外API
## 本次上线项目分支 http://10.200.5.103/ai_dp/afanti/tree/master ## 部署及编译所需java版本 jdk1.8.0_152 ## 编译方式 maven 打包生成可执行jar 包:
afanti-service-0.0.1-SNAPSHOT.jar
afanti-api-0.0.1-SNAPSHOT.jar
## mysql连接地址 ##### 创建一个新数据库,创建脚本: ```sql CREATE DATABASE /*!32312 IF NOT EXISTS*/`afanti` /*!40100 DEFAULT CHARACTER SET utf8 */; USE `afanti`; /*Table structure for table `t_dest` */ DROP TABLE IF EXISTS `t_dest`; CREATE TABLE `t_dest` ( `dest_id` int(10) NOT NULL COMMENT '主键目的地id', `dest_name` varchar(100) DEFAULT '' COMMENT '中文名称', `parent_id` int(10) DEFAULT NULL COMMENT '上级目的地ID', `parent_name` varchar(50) DEFAULT '' COMMENT '上级目的地名称', `district_id` int(10) DEFAULT NULL COMMENT '行政区域ID', `district_name` varchar(50) DEFAULT NULL COMMENT '行政区域名称', `dest_type` varchar(50) DEFAULT NULL COMMENT '目的地类型', `dest_type_name` varchar(50) DEFAULT '' COMMENT '目的地类型中文名', `parents` varchar(100) DEFAULT '' COMMENT '父ID集合', `parent_names` varchar(100) DEFAULT '' COMMENT '父级名称集合', `children` longtext COMMENT '子目的地集合', `en_name` varchar(100) DEFAULT '' COMMENT '英文名称', `pinyin` varchar(150) DEFAULT '' COMMENT '拼音', `short_pinyin` char(20) DEFAULT NULL COMMENT '简拼', `cancel_flag` char(1) DEFAULT 'Y' COMMENT '是否有效', `stage` tinyint(1) DEFAULT '1' COMMENT 'POI类型,1-地区类,2-POI类,3-酒店类', `range` tinyint(1) DEFAULT '0' COMMENT '0-POI和酒店类,1-城市以上目的地,2-城市以下目的地', `intro` varchar(500) DEFAULT '' COMMENT '一句话简介', `star` tinyint(1) DEFAULT '0' COMMENT '星级,最高为5', `abroad` char(1) DEFAULT 'N' COMMENT '是否境外,Y-是,N-否,默认为N', `img_url` varchar(150) DEFAULT '' COMMENT '图片URL', `city_ranking` int(10) DEFAULT NULL COMMENT '景点城市排名', `country_ranking` int(10) DEFAULT NULL COMMENT '景点全国排名', `scenic_num` int(10) DEFAULT '0' COMMENT '地区下属景点数量', `play_time` char(20) DEFAULT NULL COMMENT '游玩时长', `heritage` char(1) DEFAULT 'N' COMMENT '是否世界遗产,Y-是,N-否,默认为N', `protected_area` char(1) DEFAULT 'N' COMMENT '是否国家保护地,Y-是,N-否', `ent_sight` varchar(50) DEFAULT 'N' COMMENT '是否同时属于景点和娱乐点', `count_want` int(10) DEFAULT '0' COMMENT '数据统计-想去', `count_been` int(10) DEFAULT '0' COMMENT '数据统计-去过', `coord_type` char(10) DEFAULT '' COMMENT '坐标类型,BAIDU-百度地图,GOOGLE-谷歌地图', `scenic_tag` varchar(500) DEFAULT '' COMMENT '景点主题标签', `longitude` decimal(11,8) DEFAULT '0.00000000' COMMENT '经度', `latitude` decimal(11,8) DEFAULT '0.00000000' COMMENT '纬度', `g_longitude` decimal(11,8) DEFAULT '0.00000000' COMMENT '谷歌地图经度', `g_latitude` decimal(11,8) DEFAULT '0.00000000' COMMENT '谷歌地图纬度', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `modify_time` datetime DEFAULT NULL COMMENT '修改时间', `remark` varchar(500) DEFAULT NULL COMMENT '备注', PRIMARY KEY (`dest_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; /*Table structure for table `t_hotel_detail` */ DROP TABLE IF EXISTS `t_hotel_detail`; CREATE TABLE `t_hotel_detail` ( `hotel_id` int(10) NOT NULL COMMENT '酒店详情id', `dest_id` int(10) NOT NULL COMMENT '目的地id', `opening_time` varchar(20) DEFAULT NULL COMMENT '开业时间', `hotel_name` varchar(100) DEFAULT NULL COMMENT '酒店名称', `en_name` varchar(400) DEFAULT NULL COMMENT '英文名称', `star` varchar(50) DEFAULT '0' COMMENT '星级,最高为5', `referenceprice` decimal(10,0) DEFAULT NULL COMMENT '参考价格', `tag` varchar(200) DEFAULT NULL COMMENT '主题标签', `type` varchar(200) DEFAULT NULL COMMENT '酒店类型', `img_url` varchar(150) DEFAULT NULL COMMENT '图片地址', `survey` varchar(4000) DEFAULT NULL COMMENT '概况', `facilities` varchar(200) DEFAULT NULL COMMENT '设施', `address` varchar(500) DEFAULT NULL COMMENT '地址', `traffic` varchar(4000) DEFAULT NULL COMMENT '交通', `policy` varchar(4000) DEFAULT NULL COMMENT '政策', `service` varchar(1000) DEFAULT NULL COMMENT '服务', `tel` varchar(200) DEFAULT NULL COMMENT '电话', `website` varchar(100) DEFAULT NULL COMMENT '网址', `remark` varchar(500) DEFAULT NULL COMMENT '备注', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `modify_time` datetime DEFAULT NULL COMMENT '修改时间', PRIMARY KEY (`hotel_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; /*Table structure for table `t_scenic_detail` */ DROP TABLE IF EXISTS `t_scenic_detail`; CREATE TABLE `t_scenic_detail` ( `scenic_id` int(10) NOT NULL COMMENT '景点id', `dest_id` int(10) NOT NULL COMMENT '目的地id', `scenic_name` varchar(50) DEFAULT NULL COMMENT '景点名称', `en_name` varchar(100) DEFAULT NULL, `survey` varchar(500) DEFAULT NULL COMMENT '概况', `address` varchar(255) DEFAULT NULL COMMENT '地址', `traffic` text COMMENT '交通', `bussiness_hours` varchar(500) DEFAULT NULL COMMENT '营业时间', `ticket_price` text COMMENT '门票价格', `tel` varchar(100) DEFAULT NULL COMMENT '电话', `website` varchar(40) DEFAULT NULL COMMENT '网址', `tips` text COMMENT '小贴士', `remark` varchar(500) DEFAULT NULL COMMENT '备注信息', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `modify_time` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`scenic_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; /*Table structure for table `t_subject_themes_relation` */ DROP TABLE IF EXISTS `t_subject_themes_relation`; CREATE TABLE `t_subject_themes_relation` ( `relation_id` int(10) NOT NULL AUTO_INCREMENT COMMENT '关系ID', `subject_id` int(10) NOT NULL COMMENT '主题ID', `subject_name` varchar(30) NOT NULL COMMENT '主题名称', `subject_pinyin` varchar(30) DEFAULT NULL COMMENT '主题拼音', `theme_names` varchar(100) DEFAULT '' COMMENT '对应行程主题', `cancel_flag` char(1) DEFAULT NULL COMMENT '是否有效', `redflag` char(1) DEFAULT NULL COMMENT '是否标红', `type` varchar(30) DEFAULT NULL COMMENT '主题类型', PRIMARY KEY (`relation_id`) ) ENGINE=MyISAM AUTO_INCREMENT=27 DEFAULT CHARSET=utf8; /*Table structure for table `t_travel` */ DROP TABLE IF EXISTS `t_travel`; CREATE TABLE `t_travel` ( `travel_id` int(10) NOT NULL COMMENT '行程id', `title` varchar(100) DEFAULT '' COMMENT '行程名称', `dest_id` int(11) DEFAULT NULL COMMENT '目的地id(外键)', `memo` text COMMENT '描述', `status` tinyint(1) DEFAULT '99' COMMENT '状态,1-草稿,99-发布', `travel_days` int(10) DEFAULT NULL COMMENT '行程天数', `cost` decimal(20,0) DEFAULT NULL COMMENT '建议花费', `img_url` varchar(150) DEFAULT '' COMMENT '图片地址', `seq` int(20) DEFAULT '0' COMMENT '排序', `hashtag` varchar(100) DEFAULT NULL COMMENT '主题标签包含亲子、情侣', `adopt_num` int(8) DEFAULT '1' COMMENT '采纳数量', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `modify_time` datetime DEFAULT NULL COMMENT '修改时间', PRIMARY KEY (`travel_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; /*Table structure for table `t_travel_detail` */ DROP TABLE IF EXISTS `t_travel_detail`; CREATE TABLE `t_travel_detail` ( `travel_detail_id` int(10) NOT NULL COMMENT '行程明细id', `travel_id` int(10) DEFAULT NULL COMMENT '行程id(外键)', `memo` text COMMENT '描述信息', `seq` int(11) DEFAULT '1' COMMENT '排序', `remark` varchar(100) DEFAULT '' COMMENT '备注信息', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `modify_time` datetime DEFAULT NULL COMMENT '修改时间', PRIMARY KEY (`travel_detail_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; /*Table structure for table `t_travel_detail_dest` */ DROP TABLE IF EXISTS `t_travel_detail_dest`; CREATE TABLE `t_travel_detail_dest` ( `travel_detail_destid` int(10) NOT NULL COMMENT '行程明细对应目的地id', `travel_detail_id` int(10) DEFAULT NULL COMMENT '行程明细id', `dest_id` int(10) DEFAULT NULL COMMENT '目的地id', `seq` int(1) DEFAULT '0' COMMENT '排序', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `modify_time` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`travel_detail_destid`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; /*Table structure for table `t_user_dest_intention` */ DROP TABLE IF EXISTS `t_user_dest_intention`; CREATE TABLE `t_user_dest_intention` ( `user_dest_intention_id` int(10) NOT NULL COMMENT '用户目的地意向id', `dest_id` int(10) NOT NULL COMMENT '目的地id', `user_id` int(10) NOT NULL COMMENT '用户id', `open_id` int(10) NOT NULL COMMENT '微信id', `want_status` tinyint(1) NOT NULL DEFAULT '0' COMMENT ' 想去状态 1有效,0无效', `been_status` tinyint(1) NOT NULL DEFAULT '0' COMMENT ' 要去状态 1有效,0无效', `create_time` datetime NOT NULL COMMENT '创建时间', `modify_time` datetime DEFAULT NULL COMMENT '修改时间', PRIMARY KEY (`user_dest_intention_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; /*Table structure for table `t_user_travel` */ DROP TABLE IF EXISTS `t_user_travel`; CREATE TABLE `t_user_travel` ( `user_travel_id` int(10) NOT NULL COMMENT '用户行程id', `user_id` int(10) NOT NULL COMMENT '用户id', `open_id` int(10) NOT NULL COMMENT '微信id(唯一标识)', `travel_id` int(10) NOT NULL COMMENT '他人行程id', `title` varchar(100) NOT NULL DEFAULT '' COMMENT '行程名称', `dest_id` int(11) NOT NULL COMMENT '目的地id(外键)', `memo` text NOT NULL COMMENT '描述', `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT ' 状态 1有效,0无效', `travel_days` int(10) NOT NULL COMMENT '行程天数', `cost` decimal(20,0) NOT NULL COMMENT '建议花费', `img_url` varchar(150) NOT NULL DEFAULT '' COMMENT '图片地址', `seq` int(20) NOT NULL DEFAULT '0' COMMENT '排序', `hashtag` char(50) DEFAULT NULL COMMENT '主题标签包含亲子、情侣', `create_time` datetime NOT NULL COMMENT '创建时间', `modify_time` datetime DEFAULT NULL COMMENT '修改时间', PRIMARY KEY (`user_travel_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; /*Table structure for table `t_user_travel_detail` */ DROP TABLE IF EXISTS `t_user_travel_detail`; CREATE TABLE `t_user_travel_detail` ( `user_travel_detail_id` int(10) NOT NULL COMMENT '用户行程明细id', `user_travel_id` int(10) NOT NULL COMMENT '用户行程id(外键)', `memo` text NOT NULL COMMENT '描述信息', `seq` int(11) NOT NULL DEFAULT '1' COMMENT '排序', `remark` varchar(100) DEFAULT '' COMMENT '备注信息', `create_time` datetime DEFAULT NULL COMMENT '创建时间', `modify_time` datetime DEFAULT NULL COMMENT '修改时间', PRIMARY KEY (`user_travel_detail_id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; /*Table structure for table `t_user_travel_detail_dest` */ DROP TABLE IF EXISTS `t_user_travel_detail_dest`; CREATE TABLE `t_user_travel_detail_dest` ( `user_travel_detail_destid` int(10) NOT NULL COMMENT '用户行程明细与目的地关联id', `user_travel_detail_id` int(10) NOT NULL COMMENT '用户行程明细id', `dest_id` int(10) NOT NULL COMMENT '目的地id', `seq` int(1) NOT NULL DEFAULT '0' COMMENT '排序', `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT ' 状态 1有效,0无效', `create_time` datetime NOT NULL COMMENT '创建时间', `modify_time` datetime DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`user_travel_detail_destid`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; ``` ## 主机配置 使用域名方式访问,只有afanti-api需要域名方式(ip修改为应用部署具体服务器对应ip,部署在同一台服务器ip可以相同) 10.115.x.45 zhiyu.m.lvmama.com ## 相关脚本(在项目文件夹下) afanti-service 启停脚本:
```shell APP_NAME='afanti-service' command='nohup java -Xms512m -Xmx512m -jar afanti-service-0.0.1-SNAPSHOT.jar' log_file_url="logs/log.log" pid_file="afanti-service.pid" log_path="logs" start(){ if [ "$log_file_url" != "" ]; then echo "STARTING $APP_NAME ....." exec $command > "$log_file_url" 2>&1 & echo $! > "$pid_file" else echo "STARTING $APP_NAME ....." exec $command & echo $! > "$pid_file" & fi } stop(){ echo "STOPING $APP_NAME ....." PID=$(cat "$pid_file") kill -9 $PID } case "$1" in start) start ;; stop) stop ;; restart) stop start ;; *) printf 'Usage: %s {start|stop|restart}\n' exit 1 ;; esac ``` afanti-service.sh 可传参数 start stop restart
afanti-api 启停脚本:
```shell APP_NAME='afanti-api' command='nohup java -Xms512m -Xmx512m -jar afanti-api-0.0.1-SNAPSHOT.jar' log_file_url="logs/log.log" pid_file="afanti-api.pid" log_path="logs" start(){ if [ "$log_file_url" != "" ]; then echo "STARTING $APP_NAME ....." exec $command > "$log_file_url" 2>&1 & echo $! > "$pid_file" else echo "STARTING $APP_NAME ....." exec $command & echo $! > "$pid_file" & fi } stop(){ echo "STOPING $APP_NAME ....." PID=$(cat "$pid_file") kill -9 $PID } case "$1" in start) start ;; stop) stop ;; restart) stop start ;; *) printf 'Usage: %s {start|stop|restart}\n' exit 1 ;; esac ``` afanti-api.sh 可传参数 start stop restart
# 启动顺序: **1)** afanti-service(启动成功30S后) **2)** afanti-api
**afanti-service-0.0.1-SNAPSHOT.jar**
**afanti-api-0.0.1-SNAPSHOT.jar**
# 配置文件 在项目文件夹下 config文件夹中,为yml类型
afanti-service的application.yml文件内容:
```yml server: port: 9988 #address: localhost context-path: /afanti-service spring: datasource: name: afanti url: jdbc:mysql://192.168.0.63:3306/afanti?characterEncoding=UTF-8 username: root password: 111111 # 使用druid数据源 type: com.alibaba.druid.pool.DruidDataSource driver-class-name: com.mysql.jdbc.Driver filters: stat,log4j maxActive: 50 initialSize: 5 maxWait: 60000 minIdle: 1 timeBetweenEvictionRunsMillis: 60000 minEvictableIdleTimeMillis: 300000 validationQuery: select 'x' testWhileIdle: true #cachePrepStmts: true 开启二级缓存 testOnBorrow: true testOnReturn: true poolPreparedStatements: true maxOpenPreparedStatements: 20 dubbo: application: name: afanti-service registry: protocol: zookeeper address: N/A protocol: name: dubbo port: 20880 scan: com.lvmama aop: proxy-target-class: true mybatis: typeAliasesPackage: com.lvmama.core.bean mapperLocations: classpath*:dao/**/*.xml ``` afanti-api的application.yml文件内容:
```yml server: port: 6088 #address: localhost context-path: /afanti-api spring: dubbo: application: name: afanti-api registry: protocol: zookeeper address: N/A scan: com.lvmama consumer: timeout: 60000 ``` ## 部署完成测试 POST man测试:
https://m.lvmama.com/zhiyu/trip/searchTravels
入参:
```text { "destId":251, "pageNo":1, "pageSize":10 } ```