发表于: 2018-03-22 20:47:27
1 483
今天完成的事情:(一定要写非常细致的内容,比如说学会了盒子模型,了解了Margin)
后台:产品新增
/**
* 新增产品接口
*
* @param product 产品信息
* @param detailsPicFile 图片对象
* @param modelMap 回显数据
* @return 返回json数据.
*/
@RequestMapping(value = "/a/u/product", method = RequestMethod.POST)
public String insertProduct(Product product, MultipartFile detailsPicFile, ModelMap modelMap) {
product.setCreateBy(7L);
product.setUpdateBy(7L);
try {
product.setDetailsPic(FilesUtil.upLoadFile(detailsPicFile));
} catch (IOException e) {
modelMap.addAttribute("code", -100000);
e.printStackTrace();
}
try {
productService.insert(product);
modelMap.addAttribute("code", 0);
} catch (ServiceException | ServiceDaoException e) {
modelMap.addAttribute("code", -100000);
e.printStackTrace();
}
return "polyFinance-lgd-server/product/json/productNewOne";
}
产品详情
/**
* 获取单个产品详情
*
* @param id 产品id
* @param modelMap 回显数据
* @return
*/
@RequestMapping(value = "/a/u/product/list/{id}", method = RequestMethod.GET)
public String getProduct(@PathVariable Long id, ModelMap modelMap) {
try {
Product product = productService.getObjectById(id);
modelMap.addAttribute("product", product);
modelMap.addAttribute("code", 0);
modelMap.addAttribute("detailsPicUrl", FilesUtil.getUrl(product.getDetailsPic()));
} catch (ServiceException | ServiceDaoException e) {
modelMap.addAttribute("code", -200000);
e.printStackTrace();
}
return "polyFinance-lgd-server/product/json/product";
}
产品修改
/**
* 更新产品接口
*
* @param id 产品ID
* @param product 需要更新的产品原信息
* @param detailsPicFile 图片文件
* @param modelMap
* @return
*/
@RequestMapping(value = "/a/u/product/list/{id}", method = RequestMethod.POST)
public String updateProduct(@PathVariable Long id, Product product, MultipartFile detailsPicFile, ModelMap modelMap) {
if (!CommonUtil.isEmpty(detailsPicFile) && detailsPicFile.getSize() > 0) {
try {
product.setDetailsPic(FilesUtil.upLoadFile(detailsPicFile));
} catch (IOException e) {
modelMap.addAttribute("code", -200000);
e.printStackTrace();
}
}
try {
productService.update(product);
modelMap.addAttribute("code", 0);
} catch (ServiceException | ServiceDaoException e) {
modelMap.addAttribute("code", -200000);
e.printStackTrace();
}
return "polyFinance-lgd-server/product/json/productNewOne";
}
前台:
精选列表和所有产品列表为一个接口:
/**
* 精选,前台产品列表
*
* @param page 当前页数
* @param size 每页数量
* @param recommended 0代表所有产品,1代表查询推荐
* @param productStatus 0在售,1停售
* @param modelMap
* @return
*/
@RequestMapping(value = "/a/product/list", method = RequestMethod.GET)
public String getProductList(Integer page, Integer size, Integer recommended, Integer productStatus, ModelMap modelMap) {
if (page == null) {
page = 1;
}
if (size == null) {
size = 10;
}
int start = (page - 1) * size;
if (start < 0) {
start = 0;
}
try {
if (recommended == 0) {
List<Long> ids = productService.getProductIdsByProductStatus(productStatus, start, size);
List<Product> products = productService.getObjectsByIds(ids);
modelMap.addAttribute("productList", products);
modelMap.addAttribute("code", 0);
modelMap.addAttribute("total", productService.countProductIds());
modelMap.addAttribute("size", size);
} else {
List<Long> ids = productService.getProductIdsByRecommendedAndProductStatus(1, productStatus, start, size);
List<Product> products = productService.getObjectsByIds(ids);
modelMap.addAttribute("productList", products);
modelMap.addAttribute("code", 0);
modelMap.addAttribute("total", productService.countProductIdsByRecommendedAndProductStatus(1, 0));
modelMap.addAttribute("size", 3);
}
} catch (ServiceException | ServiceDaoException e) {
modelMap.addAttribute("code", -100000);
e.printStackTrace();
}
return "polyFinance-lgd-server/product/json/productListJson";
}
产品详情:
/**
* 查询单个产品详情
*
* @param id 产品id
* @param model
* @return
*/
@RequestMapping(value = "/a/product/{id}", method = RequestMethod.GET)
public String getProduct(@PathVariable Long id, ModelMap model) {
try {
Product product = productService.getObjectById(id);
model.addAttribute("product", product);
model.addAttribute("code", 0);
} catch (ServiceException | ServiceDaoException e) {
model.addAttribute("code", -1000000);
e.printStackTrace();
}
return "polyFinance-lgd-server/product/json/productDetailJson";
}
用户投资列表:
/**
* 查询用户投资记录列表
*
* @param id 当前登录用户id
* @param page 当前显示页数
* @param size 每页数量
* @param modelMap
* @return
*/
@RequestMapping(value = "/a/u/investRecord/list/{id}", method = RequestMethod.GET)
public String getUserInverstRecord(@PathVariable Long id, Integer page, Integer size, ModelMap modelMap) {
if (page == null) {
page = 1;
}
if (size == null) {
size = 10;
}
int start = (page - 1) * size;
if (start < 0) {
start = 0;
}
try {
List<Long> ids = investRecordService.getInvestRecordIdsByUserIdOrderByCreateAt(id, start, size);
List<InvestRecord> investRecords = investRecordService.getObjectsByIds(ids);
modelMap.addAttribute("investRecordList", investRecords);
modelMap.addAttribute("code", 0);
modelMap.addAttribute("total", investRecordService.countInvestRecordIdsByUserIdOrderByCreateAt(id));
modelMap.addAttribute("size", size);
} catch (Throwable e) {
modelMap.addAttribute("code", -100000);
e.printStackTrace();
}
return "polyFinance-lgd-server/investRecord/json/investRecordListJson";
}
单条投资详情:
/**
* 查询单条投资记录详情
* @param id 投资记录ID
* @param modelMap
* @return
*/
@RequestMapping(value = "/a/u/investRecord/{id}", method = RequestMethod.GET)
public String getInvestRecord(@PathVariable Long id,ModelMap modelMap){
try {
InvestRecord investRecord = investRecordService.getObjectById(id);
modelMap.addAttribute("investRecord", investRecord);
modelMap.addAttribute("code", 0);
} catch (Throwable e) {
modelMap.addAttribute("code", -100000);
e.printStackTrace();
}
return "polyFinance-lgd-server/investRecord/json/investRecordDetailJson";
}
明天计划的事情:(一定要写非常细致的内容)
进行Redis缓存的部署.
将项目先预部署到服务上,让前端开始使用接口.
遇到的问题:(遇到什么困难,怎么解决的)
get请求的时候出现问题...
原因是生成的代码controller里的URL和自己写的冲突了..
收获:(通过今天的学习,学到了什么知识)
对前后端登陆拦截这块儿如何返回状态码有了了解.
评论