123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166 |
- package com.dgtly.api.controller;
- import com.dgtly.apiframework.util.TokenUtil;
- import com.dgtly.common.annotation.ApiPassToken;
- import com.dgtly.common.constant.UserConstants;
- import com.dgtly.common.core.controller.ApiBaseController;
- import com.dgtly.common.core.domain.AjaxResult;
- import com.dgtly.common.core.domain.ParameterObject;
- import com.dgtly.common.core.domain.ResultType;
- import com.dgtly.companyext.domain.CompanyHonour;
- import com.dgtly.companyext.domain.CompanyReviewed;
- import com.dgtly.companyext.service.ICompanyHonourService;
- import com.dgtly.companyext.service.ICompanyReviewedService;
- import com.dgtly.member.domain.MemberFollow;
- import com.dgtly.member.service.IMemberFollowService;
- import com.dgtly.system.domain.SysCompany;
- import com.dgtly.system.service.ISysCompanyService;
- import com.dgtly.system.service.ISysDictDataService;
- import com.dgtly.system.service.ISysUserService;
- import io.swagger.annotations.ApiImplicitParam;
- import io.swagger.annotations.ApiOperation;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.web.bind.annotation.PostMapping;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RestController;
- import java.util.List;
- @RestController
- @RequestMapping("/company")
- @ApiPassToken/* 不用验证token 方法上可用*/
- public class SysCompanyController extends ApiBaseController {
- @Autowired
- private ISysCompanyService companyService;
- @Autowired
- private ISysUserService userService;
- @Autowired
- private IMemberFollowService memberFollowService;
- @Autowired
- private ICompanyReviewedService companyReviewedService;
- @Autowired
- private ICompanyHonourService companyHonourService;
- @Autowired
- private ISysDictDataService dictDataService;
- @ApiOperation(value = "商家详情")
- @ApiImplicitParam(name = "params" , paramType = "body")
- @PostMapping("/details")
- public Object detail(){
- ParameterObject obj = getParameterObject();
- obj.checkParameterNotNull("id");
- Long companyId = obj.getLong("id");
- SysCompany sysCompany = companyService.selectSysCompanyById(companyId);
- /*处理公司类型*/
- String companyTypeName = dictDataService.selectDictLabel("company_type",sysCompany.getCompanyType());
- CompanyHonour ch = new CompanyHonour();
- ch.setCompanyId(companyId);
- List<CompanyHonour> chs = companyHonourService.selectCompanyHonourList(ch);
- int isFollow = 0;
- /*判断用户是否关注商户*/
- try{
- String memberId = TokenUtil.getTokenUserId();
- if(memberId!=null){
- MemberFollow mf= new MemberFollow();
- mf.setCompanyId(companyId);
- mf.setMemberId(Long.parseLong(memberId));
- List<MemberFollow> mfList= memberFollowService.selectMemberFollowList(mf);
- if(mfList.size()>0){
- isFollow=1;
- }
- }
- }catch (Exception e){
- }
- if(sysCompany!=null){
- return AjaxResult.success(sysCompany).putKV("isFollow",isFollow)
- .putKV("companyTypeName",companyTypeName).putKV("companyHonours",chs);
- }else{
- return AjaxResult.error(ResultType.NUll);
- }
- }
- @ApiOperation(value = "热门商家列表")
- @ApiImplicitParam(name = "params" , paramType = "body")
- @PostMapping("/hotlist")
- public Object getHotList(){
- List<SysCompany> goodsInfos = companyService.selectCompanyHotList();
- return AjaxResult.success().putKV("list",goodsInfos);
- }
- @ApiOperation(value = "商家列表")
- @ApiImplicitParam(name = "params" , paramType = "body")
- @PostMapping("/list")
- public Object getList(){
- ParameterObject obj = getParameterObject();
- startPage(obj);
- SysCompany sc = obj.parseBean(SysCompany.class);
- List<SysCompany> scs = companyService.selectSysCompanyListExRoot(sc);
- return AjaxResult.success(getDataTable(scs));
- }
- @ApiOperation(value = "商家入驻")
- @ApiImplicitParam(name = "params" , paramType = "body")
- @PostMapping("/enter")
- public Object enter(){
- ParameterObject obj = getParameterObject();
- obj.checkParameterNotNull("loginName,password,companyName");
- CompanyReviewed cr = obj.parseBean(CompanyReviewed.class);
- if (UserConstants.USER_NAME_NOT_UNIQUE.equals(userService.checkLoginNameUnique(cr.getLoginName())))
- {
- return AjaxResult.error(ResultType.LOGINNAMEREPEAT);
- }
- else if (UserConstants.USER_NAME_NOT_UNIQUE.equals(companyReviewedService.checkLoginNameUnique(cr.getLoginName())))
- {
- return AjaxResult.error(ResultType.LOGINNAMEREPEAT);
- }
- else if (cr.getPassword().length() < UserConstants.PASSWORD_MIN_LENGTH
- || cr.getPassword().length() > UserConstants.PASSWORD_MAX_LENGTH)
- {
- return AjaxResult.error(ResultType.PASSWORD_LENGTH_ERROR);
- }
- int i= companyReviewedService.insertCompanyReviewed(cr);
- return toAjax(i);
- }
- @ApiOperation(value = "商家入驻公示列表")
- @ApiImplicitParam(name = "params" , paramType = "body",example = "{}")
- @PostMapping("/enterPublicity")
- public Object enterPublicity(){
- ParameterObject obj = getParameterObject();
- startPage(obj);
- CompanyReviewed cr = new CompanyReviewed();
- List<CompanyReviewed> crs = companyReviewedService.selectEnterPublicityList();
- return AjaxResult.success(getDataTable(crs));
- }
- /**
- * @descption: 统计平台商户入驻数量
- * @param:
- * @return:
- * @auther: LiuLingChao
- * @date: 2020-03-11 11:07
- */
- @PostMapping("/countCompanyInfo")
- public Object countCompanyInfo(){
- int companyNum = companyService.countCompany();
- return AjaxResult.success().putKV("companyNum",companyNum-1);
- }
- }
|