基于java SSM和微信小程序的商城小程序
实现功能
技术选型
1 后端使用技术
1.1 springframework4.3.7.RELEASE
1.2 mybatis3.1.0、MyBatis-Plus 3.1.0
1.3 shiro1.3.2
1.4 servlet3.1.0
1.5 druid1.0.28
1.6 slf4j1.7.19
1.7 fastjson1.2.30
1.8 poi3.15
1.9 velocity1.7
1.10 quartz2.2.3
1.11 mysql5.1.39
1.12 swagger2.4
1.13 j2cache2.3.22-release
1.14 weixin-java-mp3.2.0
1.15 MybatisPlus3.1.0
1.16 lombok
2 前端使用技术
2.1 Vue2.5.1
2.2 iview
2.3 layer3.0.3
2.4 jquery2.2.4
2.5 bootstrap3.3.7
2.6 jqgrid5.1.1
2.7 ztree3.5.26
2.8 froala_editor1.2.2
演示视频
控制层部分逻辑代码
@RestController
@RequestMapping("sys/region")
public class SysRegionController {
@Autowired
private SysRegionService sysRegionService;
/**
* 查看列表
*
* @param params 请求参数
* @return R
*/
@RequestMapping("/list")
@RequiresPermissions("sys:region:list")
public R list(@RequestParam Map<String, Object> params) {
//查询列表数据
Query query = new Query(params);
List<SysRegionEntity> regionList = sysRegionService.queryList(query);
int total = sysRegionService.queryTotal(query);
PageUtils pageUtil = new PageUtils(regionList, total, query.getLimit(), query.getPage());
return R.ok().put("page", pageUtil);
}
/**
* 根据主键获取信息
*
* @param id 主键
* @return R
*/
@RequestMapping("/info/{id}")
@RequiresPermissions("sys:region:info")
public R info(@PathVariable("id") Integer id) {
SysRegionEntity region = sysRegionService.queryObject(id);
return R.ok().put("region", region);
}
/**
* 新增地址
*
* @param region 地址
* @return R
*/
@SysLog("新增地址")
@RequestMapping("/save")
@RequiresPermissions("sys:region:save")
public R save(@RequestBody SysRegionEntity region) {
sysRegionService.save(region);
return R.ok();
}
/**
* 修改地址
*
* @param region 地址
* @return R
*/
@SysLog("修改地址")
@RequestMapping("/update")
@RequiresPermissions("sys:region:update")
public R update(@RequestBody SysRegionEntity region) {
sysRegionService.update(region);
return R.ok();
}
/**
* 删除地址
*
* @param ids 主键集
* @return R
*/
@SysLog("删除地址")
@RequestMapping("/delete")
@RequiresPermissions("sys:region:delete")
public R delete(@RequestBody Integer[] ids) {
sysRegionService.deleteBatch(ids);
return R.ok();
}
/**
* 查询所有国家
*
* @return R
*/
@RequestMapping("/getAllCountry")
public R getAllCountry() {
List<SysRegionEntity> list = RegionCacheUtil.getAllCountry();
return R.ok().put("list", list);
}
/**
* 查询所有省份
*
* @return R
*/
@RequestMapping("/getAllProvice")
public R getAllProvice(@RequestParam(required = false) Integer areaId) {
List<SysRegionEntity> list = RegionCacheUtil.getAllProviceByParentId(areaId);
return R.ok().put("list", list);
}
/**
* 查询所有城市
*
* @return R
*/
@RequestMapping("/getAllCity")
public R getAllCity(@RequestParam(required = false) Integer areaId) {
List<SysRegionEntity> list = RegionCacheUtil.getChildrenCity(areaId);
return R.ok().put("list", list);
}
/**
* 查询所有区县
*
* @return R
*/
@RequestMapping("/getChildrenDistrict")
public R getChildrenDistrict(@RequestParam(required = false) Integer areaId) {
List<SysRegionEntity> list = RegionCacheUtil.getChildrenDistrict(areaId);
return R.ok().put("list", list);
}
/**
* 查看信息(全部加载页面渲染太慢!)
*
* @return R
*/
@RequestMapping("/getAreaTree")
public R getAreaTree() {
List<SysRegionEntity> list = RegionCacheUtil.sysRegionEntityList;
for (SysRegionEntity sysRegionEntity : list) {
sysRegionEntity.setValue(sysRegionEntity.getId() + "");
sysRegionEntity.setLabel(sysRegionEntity.getName());
}
List<SysRegionEntity> node = TreeUtils.factorTree(list);
return R.ok().put("node", node);
}
/**
* 根据类型获取区域
*
* @param type 类型
* @return R
*/
@RequestMapping("/getAreaByType")
public R getAreaByType(@RequestParam(required = false) Integer type) {
List<SysRegionEntity> list = new ArrayList<>();
if (type.equals(0)) {
} else if (type.equals(1)) {//省份
list = RegionCacheUtil.getAllCountry();
} else if (type.equals(2)) {
list = RegionCacheUtil.getAllProvice();
} else if (type.equals(3)) {
list = RegionCacheUtil.getAllCity();
}
return R.ok().put("list", list);
}
}
