瀏覽代碼

Merge branch 'dev' of wangjun/wlyy2.0 into dev

wangzhinan 4 年之前
父節點
當前提交
8b63389798

+ 14 - 2
business/base-service/src/main/java/com/yihu/jw/hospital/message/dao/BaseBannerDao.java

@ -2,16 +2,28 @@ package com.yihu.jw.hospital.message.dao;
import com.yihu.jw.entity.hospital.message.BaseBannerDO;
import com.yihu.jw.entity.hospital.message.SystemMessageDO;
import org.hibernate.annotations.SQLInsert;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.List;
import java.util.Map;
/**
 * @author wangzhinan
 * @vsrsion 2.0
 * Created at 2020.07.08
 */
public interface BaseBannerDao extends PagingAndSortingRepository<BaseBannerDO, String>, JpaSpecificationExecutor<BaseBannerDO> {
    @Query(value = "select * from base_banner p where p.name like %?1% and p.status = ?2 order by  p.sort desc limit ?3,?4 ",nativeQuery = true)
    List<BaseBannerDO> queryByNameAndStatus(String name,Integer status,Integer pageNo,Integer pageSize);
    @Query( value = "select max(t.sort) from base_banner t",nativeQuery = true)
    Integer getMaxSort();
    @Query( value = "select min(t.sort) from base_banner t",nativeQuery = true)
    Integer getMinSort();
    @Query(value = "select * from base_banner where id = ( select id from base_banner where sort > ?1 order by sort desc limit 0,1)",nativeQuery = true)
    BaseBannerDO upBanner(Integer sort);
    @Query(value = "select * from base_banner where id = ( select id from base_banner where sort < ?1 order by sort desc limit 0,1)",nativeQuery = true)
    BaseBannerDO downBanner(Integer sort);
}

+ 149 - 0
business/base-service/src/main/java/com/yihu/jw/hospital/message/service/BaseBannerService.java

@ -0,0 +1,149 @@
package com.yihu.jw.hospital.message.service;
import com.yihu.jw.entity.hospital.message.BaseBannerDO;
import com.yihu.jw.entity.hospital.message.SystemMessageDO;
import com.yihu.jw.hospital.message.dao.BaseBannerDao;
import com.yihu.jw.hospital.message.dao.SystemMessageDao;
import com.yihu.jw.utils.StringUtil;
import com.yihu.mysql.query.BaseJpaService;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.persistence.criteria.CriteriaBuilder;
import java.util.Date;
import java.util.List;
import java.util.Map;
@Service
public class BaseBannerService extends BaseJpaService<BaseBannerDO, BaseBannerDao> {
    @Autowired
    private BaseBannerDao baseBannerDao;
    @Autowired
    private JdbcTemplate jdbcTemplate;
    /**
     * 医生锦旗管理查询
     * @param
     * @return
     * @throws Exception
     */
    public List<BaseBannerDO> queryBannerByNameAndStatus(String name, Integer status, Integer page, Integer pageSize){
        Integer pageNo = (page-1)*pageSize;
        List<BaseBannerDO> baseBannerDO = baseBannerDao.queryByNameAndStatus(name,status,pageNo,pageSize);
        return baseBannerDO;
    }
    /**
     * 医生锦旗新增
     * @param
     * @return
     * @throws Exception
     */
    public BaseBannerDO creatBanner(BaseBannerDO baseBannerDO){
        String sql = "select max(sort) as sort from base_banner";
        List<Map<String,Object>> list = jdbcTemplate.queryForList(sql);
        Map<String,Object> map = list.get(0);
        int sort = 0;
        if(null!=map){
            sort = Integer.valueOf(map.get("sort").toString());
        }
        baseBannerDO.setSort(sort+1);
        baseBannerDO.setUpdateTime(new Date());
        baseBannerDO.setCreateTime(new Date());
        BaseBannerDO result =  baseBannerDao.save(baseBannerDO);
        return result;
    }
    /**
     * 医生锦旗更新
     * @param
     * @return
     * @throws Exception
     */
    public BaseBannerDO updateBanner(String id,String name,String img,String updateUser,String updateUserName){
        BaseBannerDO bannerDO = baseBannerDao.findOne(id);
        if (null == bannerDO){
            return null;
        }
        if (!StringUtil.isEmpty(name)){
            bannerDO.setName(name);
            bannerDO.setUpdateTime(new Date());
        }
        if (!StringUtil.isEmpty(img)){
            bannerDO.setImg(img);
        }
        if (!StringUtil.isEmpty(updateUser)){
            bannerDO.setUpdateUser(updateUser);
        }
        if (!StringUtil.isEmpty(updateUserName)){
            bannerDO.setUpdateUser(updateUserName);
        }
        baseBannerDao.save(bannerDO);
        return bannerDO;
    }
    /**
     * 医生锦旗删除
     * @param
     * @return
     * @throws Exception
     */
    public Boolean deleteBanner(String id){
        BaseBannerDO bannerDO = baseBannerDao.findOne(id);
        if (null == bannerDO){
            return false;
        }
        baseBannerDao.delete(id);
        return true;
    }
    /**
     * 医生锦旗上移
     * @param
     * @return
     * @throws Exception
     */
    public BaseBannerDO upBanner(String id) throws Exception{
        BaseBannerDO bannerDO = baseBannerDao.findOne(id);
        int maxSort = baseBannerDao.getMaxSort();
        int sort = 0;
        if(null!=bannerDO){
            sort = bannerDO.getSort();
        }
        BaseBannerDO upPrevious = baseBannerDao.upBanner(sort);
        if (maxSort==sort){
            throw new Exception("不能上移");
        }
        //交换sort值
        bannerDO.setSort(upPrevious.getSort());
        upPrevious.setSort(sort);
        baseBannerDao.save(bannerDO);
        baseBannerDao.save(upPrevious);
        return bannerDO;
    }
    /**
     * 医生锦旗下移
     * @param
     * @return
     * @throws Exception
     */
    public BaseBannerDO downBanner(String id) throws Exception{
        //当前banner
        BaseBannerDO bannerDO = baseBannerDao.findOne(id);
        int minSort = baseBannerDao.getMinSort();
        int sort = 0;
        if(null!=bannerDO){
            sort = bannerDO.getSort();
        }
        //获取的下一条banner
        BaseBannerDO downPrevious = baseBannerDao.downBanner(sort);
        if (minSort==sort){
            throw new Exception("不能下移");
        }
        //交换sort值
        bannerDO.setSort(downPrevious.getSort());
        downPrevious.setSort(sort);
        baseBannerDao.save(bannerDO);
        baseBannerDao.save(downPrevious);
        return bannerDO;
    }
}

+ 34 - 6
common/common-entity/src/main/java/com/yihu/jw/entity/hospital/message/BaseBannerDO.java

@ -22,12 +22,15 @@ public class BaseBannerDO extends UuidIdentityEntityWithOperator {
     *锦旗名称
     */
    private String name;
    /*
      *医生id
     */
    private String saasId;
    /**
     *锦旗描述
     */
    private String desc;
    private String description;
    /**
     *锦旗图标
     */
@ -38,8 +41,30 @@ public class BaseBannerDO extends UuidIdentityEntityWithOperator {
     * 排序
     */
    private Integer sort;
    /*
    *状态
     */
    private Integer status;
    @Column(name = "saas_id")
    public String getSaasId() {
        return saasId;
    }
    public void setSaasId(String saasId) {
        this.saasId = saasId;
    }
    @Column(name = "status")
    public Integer getStatus() {
        return status;
    }
    public void setStatus(Integer status) {
        this.status = status;
    }
    @Column(name = "name")
    public String getName() {
        return name;
    }
@ -48,14 +73,16 @@ public class BaseBannerDO extends UuidIdentityEntityWithOperator {
        this.name = name;
    }
    public String getDesc() {
        return desc;
    @Column(name = "description")
    public String getDescription() {
        return description;
    }
    public void setDesc(String desc) {
        this.desc = desc;
    public void setDescription(String description) {
        this.description = description;
    }
    @Column(name = "img")
    public String getImg() {
        return img;
    }
@ -64,6 +91,7 @@ public class BaseBannerDO extends UuidIdentityEntityWithOperator {
        this.img = img;
    }
    @Column(name = "sort")
    public Integer getSort() {
        return sort;
    }

+ 15 - 0
common/common-request-mapping/src/main/java/com/yihu/jw/rm/hospital/BaseHospitalRequestMapping.java

@ -1,6 +1,8 @@
package com.yihu.jw.rm.hospital;
import com.sun.javafx.image.PixelUtils;
/**
 * Created by Trick on 2019/5/16.
 */
@ -1109,8 +1111,21 @@ public class BaseHospitalRequestMapping {
        public static final String updateMessage  = "/updateMessage";
        public static final String searchMessagePageList  = "/searchMessagePageList";
        public static final String queryById  = "/queryById";
    }
    /**
     * 医生礼物管理
     */
    public static class BaseBannerssage extends Basic{
        public static final String baseBanner  = "/baseBanner";
        public static final String queryByAndStatud = "/getByNameAndStatus";
        public static final String createBanner = "/creaetBanner";
        public static final String updateBanner = "/updateBanner";
        public static final String deleteBanner = "/deleteBanner";
        public static final String upBanner = "/upBanner";
        public static final String downBanner = "/downBanner";
    }
    /**
     * 医生分析总览
     */

+ 131 - 0
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/message/BaseBannerController.java

@ -0,0 +1,131 @@
package com.yihu.jw.hospital.endpoint.message;
import com.yihu.jw.entity.hospital.message.BaseBannerDO;
import com.yihu.jw.entity.hospital.message.SystemMessageDO;
import com.yihu.jw.entity.wlyy.agreement.WlyyAgreementDO;
import com.yihu.jw.restmodel.web.Envelop;
import com.yihu.jw.restmodel.web.endpoint.EnvelopRestEndpoint;
import com.yihu.jw.hospital.message.service.BaseBannerService;
import com.yihu.jw.restmodel.web.Envelop;
import com.yihu.jw.rm.hospital.BaseHospitalRequestMapping;
import com.yihu.jw.utils.StringUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.apache.commons.lang.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
@RequestMapping(value = BaseHospitalRequestMapping.BaseBannerssage.baseBanner)
@Api(value = "医生礼物管理", description = "医生礼物管理", tags = {"互联网医院 - 医生礼物管理接口"})
public class BaseBannerController extends EnvelopRestEndpoint{
    private static Logger logger = LoggerFactory.getLogger(SystemMessageController.class);
    @Autowired
    private BaseBannerService baseBannerService;
    @ApiOperation("查询礼物")
    @PostMapping(value= BaseHospitalRequestMapping.BaseBannerssage.queryByAndStatud)
    public List<BaseBannerDO> queryByAndStatud(@ApiParam(name = "name", value = "锦旗名称")
                                                   @RequestParam(value = "name", required = false) String name,
                                               @ApiParam(name = "status", value = "锦旗状态")
                                                   @RequestParam(value = "status", required = false) String status,
                                                   @ApiParam(name = "page", value = "第几页,从1开始", required = true, defaultValue = "1")
                                                   @RequestParam(value = "page", required = true,defaultValue = "1")Integer page,
                                               @ApiParam(name = "pageSize", value = "每页分页大小", required = true, defaultValue = "10")
                                                   @RequestParam(value = "pageSize", required = true,defaultValue = "10")Integer pageSize){
        int queryStatus = 0;
        if (StringUtils.isNotEmpty(status)) {
            queryStatus = Integer.valueOf(status);
        }
        List<BaseBannerDO> result = baseBannerService.queryBannerByNameAndStatus(name,queryStatus,page,pageSize);
        return result;
    }
    @PostMapping(value= BaseHospitalRequestMapping.BaseBannerssage.createBanner)
    @ApiOperation("新增医生礼物")
    public Envelop createBanner(
            @ApiParam(name = "json", value = "Json数据", required = true)
            @RequestParam(value = "json", required = false)String json)throws Exception{
        BaseBannerDO bannerDO = toEntity(json,BaseBannerDO.class);
        BaseBannerDO result = baseBannerService.creatBanner(bannerDO);
        if (null == result){
            return failed("新增失败");
        }
        return success("新增成功");
    }
    @PostMapping(value= BaseHospitalRequestMapping.BaseBannerssage.updateBanner)
    @ApiOperation("更新礼物信息")
    public Envelop updateMessage(
            @ApiParam(name = "id", value = "id", required = true)
            @RequestParam(value = "id", required = true)String id,
            @ApiParam(name = "name", value = "name", required = false)
            @RequestParam(value = "name", required = false)String name,
            @ApiParam(name = "img", value = "img", required = false)
            @RequestParam(value = "img", required = false)String img)throws Exception {
        String updateUser = getUID();
        String updateUserName = getUNAME();
        BaseBannerDO result = baseBannerService.updateBanner(id,name,img,updateUser,updateUserName);
        if (null == result) {
            return failed("更新失败,礼物不存在");
        }
        return success("更新成功");
    }
    @GetMapping(value= BaseHospitalRequestMapping.BaseBannerssage.deleteBanner)
    @ApiOperation("删除礼物信息")
    public Envelop deleteBanner(@ApiParam(name = "id", value = "id", required = true)
                                    @RequestParam(value = "id", required = true)String id){
        boolean flag = baseBannerService.deleteBanner(id);
        if (true==flag){
            return success("删除成功");
        }else {
            return failed("删除失败");
        }
    }
    @GetMapping(value= BaseHospitalRequestMapping.BaseBannerssage.upBanner)
    @ApiOperation("上移礼物信息")
    public Envelop upBanner(@ApiParam(name = "id", value = "id", required = true)
                                @RequestParam(value = "id", required = true)String id){
        BaseBannerDO bannerDO = new BaseBannerDO();
        String erroMessage = null;
        try {
            bannerDO = baseBannerService.upBanner(id);
        } catch (Exception e) {
            erroMessage = e.getMessage();
        }
        if (StringUtils.isNotEmpty(erroMessage)){
            return failed("上移失败"+erroMessage);
        }else {
            return success("上移成功");
        }
    }
    @GetMapping(value= BaseHospitalRequestMapping.BaseBannerssage.downBanner)
    @ApiOperation("下移礼物信息")
    public Envelop downBanner(@ApiParam(name = "id", value = "id", required = true)
                                 @RequestParam(value = "id", required = true)String id){
        BaseBannerDO bannerDO = new BaseBannerDO();
        String erroMessage = null;
        try {
            bannerDO = baseBannerService.downBanner(id);
        } catch (Exception e) {
            erroMessage = e.getMessage();
        }
        if (StringUtils.isNotEmpty(erroMessage)){
            return failed("下移失败"+erroMessage);
        }else {
            return success("下移成功");
        }
    }
}