Browse Source

增加用户指引的开启关闭设置

hejq 8 years ago
parent
commit
ed435e6327

+ 34 - 0
src/main/java/com/uas/platform/b2b/dao/GuideSettingDao.java

@@ -0,0 +1,34 @@
+package com.uas.platform.b2b.dao;
+
+import com.uas.platform.b2b.model.GuideSetting;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+/**
+ * Created by hejq on 2017-12-13.
+ */
+@Repository
+public interface GuideSettingDao extends JpaRepository<GuideSetting, Long>, JpaSpecificationExecutor<GuideSetting> {
+
+    /**
+     * 通过用户uu,指引名称,开关状态查询数量
+     *
+     * @param useruu
+     * @param name
+     * @param status
+     * @return
+     */
+    Integer countByUseruuAndAndNameAndsAndStatus(Long useruu, String name, Short status);
+
+    /**
+     * 通过用户uu,指引名称查询数量
+     *
+     * @param useruu
+     * @param name
+     * @return
+     */
+    List<GuideSetting> findByUseruuAndAndName(Long useruu, String name);
+}

+ 95 - 0
src/main/java/com/uas/platform/b2b/model/GuideSetting.java

@@ -0,0 +1,95 @@
+package com.uas.platform.b2b.model;
+
+import javax.persistence.*;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 用户的指引开关设置
+ *
+ * Created by hejq on 2017-12-13.
+ */
+@Entity
+@Table(name = "sec$guidesetting")
+public class GuideSetting implements Serializable {
+
+    /**
+     * 序列
+     */
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * id
+     */
+    @Id
+    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "sec$guidesetting_gen")
+    @SequenceGenerator(name = "sec$guidesetting_gen", sequenceName = "sec$guidesetting_seq", allocationSize = 1)
+    @Column(name = "gu_id")
+    private Long id;
+
+    /**
+     *  指引名称
+     */
+    @Column(name = "gu_name")
+    private String name;
+
+    /**
+     * 设置人uu号,用人做过滤
+     */
+    @Column(name = "gu_useruu")
+    private Long useruu;
+
+    /**
+     *  开启设置<br>
+     *     1: 开启
+     *     0:关闭
+     */
+    @Column(name = "gu_status")
+    private Short status;
+
+    /**
+     * 设置日期
+     */
+    @Column(name = "gu_date")
+    private Date date;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public Long getUseruu() {
+        return useruu;
+    }
+
+    public void setUseruu(Long useruu) {
+        this.useruu = useruu;
+    }
+
+    public Short getStatus() {
+        return status;
+    }
+
+    public void setStatus(Short toggle) {
+        this.status = toggle;
+    }
+
+    public Date getDate() {
+        return date;
+    }
+
+    public void setDate(Date date) {
+        this.date = date;
+    }
+}

+ 1 - 2
src/main/java/com/uas/platform/b2b/service/CommunalLogService.java

@@ -4,8 +4,7 @@ import com.uas.platform.b2b.model.CommunalLog;
 import com.uas.platform.core.logging.LogService;
 
 /**
- * Created by hejq on 2017-12-12.
+ * Created by US50 on 2017-12-12.
  */
 public interface CommunalLogService extends LogService<CommunalLog> {
-
 }

+ 26 - 0
src/main/java/com/uas/platform/b2b/service/GuideSettingService.java

@@ -0,0 +1,26 @@
+package com.uas.platform.b2b.service;
+
+import com.uas.platform.b2b.model.GuideSetting;
+
+/**
+ * Created by hejq on 2017-12-13.
+ */
+public interface GuideSettingService {
+
+    /**
+     * 通过用户uu和指引的名称查询是否开启
+     *
+     * @param useruu
+     * @param guName
+     * @param status
+     * @return
+     */
+    boolean toggle(Long useruu, String guName, Short status);
+
+    /**
+     * 保存用户设置
+     *
+     * @param setting
+     */
+    void save(GuideSetting setting);
+}

+ 39 - 0
src/main/java/com/uas/platform/b2b/service/impl/GuideSettingServiceImpl.java

@@ -0,0 +1,39 @@
+package com.uas.platform.b2b.service.impl;
+
+import com.uas.platform.b2b.dao.GuideSettingDao;
+import com.uas.platform.b2b.model.GuideSetting;
+import com.uas.platform.b2b.service.GuideSettingService;
+import com.uas.platform.b2b.support.CommBufferedLogger;
+import com.uas.platform.core.logging.BufferedLoggerManager;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.List;
+
+/**
+ * Created by hejq on 2017-12-13.
+ */
+@Service
+public class GuideSettingServiceImpl implements GuideSettingService {
+
+    @Autowired
+    private GuideSettingDao settingDao;
+
+    private final static CommBufferedLogger logger = BufferedLoggerManager.getLogger(CommBufferedLogger.class);
+
+    @Override
+    public boolean toggle(Long useruu, String guName, Short status) {
+        Integer count = settingDao.countByUseruuAndAndNameAndsAndStatus(useruu, guName, status);
+        return count > 0 ? true : false;
+    }
+
+    @Override
+    public void save(GuideSetting setting) {
+       List<GuideSetting> settings = settingDao.findByUseruuAndAndName(setting.getUseruu(), setting.getName());
+       if(!CollectionUtils.isEmpty(settings))
+           setting.setId(settings.get(0).getId());
+        settingDao.save(setting);
+        logger.log(setting.getName(), "success", "设置" + setting.getName() + "状态为:" + setting.getStatus(), setting.getUseruu());
+    }
+}