From df7be8d9d9f64f88434c05328bbb03c3cf8ad4bb Mon Sep 17 00:00:00 2001
From: xufenglei <xufenglei>
Date: Thu, 21 Dec 2017 15:44:37 +0800
Subject: [PATCH] 账户管理

---
 src/main/java/com/moral/service/impl/AccountServiceImpl.java |   37 ++++++++++++++++++
 src/main/java/com/moral/common/util/WebUtils.java            |    2 
 src/main/java/com/moral/common/bean/Constants.java           |    2 
 src/main/java/com/moral/common/bean/PageBean.java            |   47 +++++++++++++++++++++++
 src/main/java/com/moral/service/AccountService.java          |    5 ++
 5 files changed, 91 insertions(+), 2 deletions(-)

diff --git a/src/main/java/com/moral/common/bean/Constants.java b/src/main/java/com/moral/common/bean/Constants.java
index 79474f6..6eef6c6 100644
--- a/src/main/java/com/moral/common/bean/Constants.java
+++ b/src/main/java/com/moral/common/bean/Constants.java
@@ -16,6 +16,6 @@
 	
 	public static final String IS_USED_FALSE = "0";
 
-	public static final String IS_USED_TRUE = "0";
+	public static final String IS_USED_TRUE = "1";
 }
 
diff --git a/src/main/java/com/moral/common/bean/PageBean.java b/src/main/java/com/moral/common/bean/PageBean.java
new file mode 100644
index 0000000..9d05601
--- /dev/null
+++ b/src/main/java/com/moral/common/bean/PageBean.java
@@ -0,0 +1,47 @@
+package com.moral.common.bean;
+
+import java.io.Serializable;
+import java.util.List;
+
+import com.github.pagehelper.Page;
+
+import lombok.Data;
+
+/**
+ * ������Bean
+ * 
+ * @param <T>
+ */
+@Data
+public class PageBean<T> implements Serializable {
+    /**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	private List<T> data;    //���������
+	private Long total;        //������������
+    private Integer pageIndex;    // ���������
+    private Integer pageSize;    // ���������������
+    private Integer pages;        // ���������
+    private Integer size;        // ������������������ <= pageSize������������������ArrayList���size������
+    
+    /**
+     * ������Page���������������������������Page������������JSON���������������������������������������List������������
+     * ������������������������
+     * @param list          page������
+     * @param navigatePages ������������
+     */
+    public PageBean(List<T> list) {
+        if (list instanceof Page) {
+            Page<T> page = (Page<T>) list;
+            this.pageIndex = page.getPageNum();
+            this.pageSize = page.getPageSize();
+            this.total = page.getTotal();
+            this.pages = page.getPages();
+            this.data = page;
+            this.size = page.size();
+        }
+    }
+    
+}
+
diff --git a/src/main/java/com/moral/common/util/WebUtils.java b/src/main/java/com/moral/common/util/WebUtils.java
index 01651a2..131ff51 100644
--- a/src/main/java/com/moral/common/util/WebUtils.java
+++ b/src/main/java/com/moral/common/util/WebUtils.java
@@ -29,7 +29,7 @@
 					params.put(unprefixed, values);
 				}
 				else {
-					if (!ObjectUtils.isEmpty(values[0])) {
+					if (!ObjectUtils.isEmpty(values[0]) && !"null".equalsIgnoreCase(values[0])) {
 						params.put(unprefixed, values[0]);
 					}
 				}
diff --git a/src/main/java/com/moral/service/AccountService.java b/src/main/java/com/moral/service/AccountService.java
index 69c2880..f6a8171 100644
--- a/src/main/java/com/moral/service/AccountService.java
+++ b/src/main/java/com/moral/service/AccountService.java
@@ -2,6 +2,7 @@
 
 import java.util.Map;
 
+import com.moral.common.bean.PageBean;
 import com.moral.entity.Account;
 
 public interface AccountService {
@@ -12,4 +13,8 @@
 
 	void setOrgIdsByAccount(Map<String, Object> parameters);
 
+	PageBean<Account> getAccountListByPage(Map<String, Object> parameters);
+
+	Integer saveOrUpdateAccount(Account account);
+
 }
diff --git a/src/main/java/com/moral/service/impl/AccountServiceImpl.java b/src/main/java/com/moral/service/impl/AccountServiceImpl.java
index fada657..4c25ca1 100644
--- a/src/main/java/com/moral/service/impl/AccountServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/AccountServiceImpl.java
@@ -7,19 +7,29 @@
 import static org.apache.commons.lang3.StringUtils.isNumeric;
 import static org.springframework.util.ObjectUtils.isEmpty;
 
+import java.util.Date;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 import java.util.Set;
 
 import javax.annotation.Resource;
 
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.ObjectUtils;
 
+import com.github.pagehelper.PageHelper;
+import com.moral.common.bean.Constants;
+import com.moral.common.bean.PageBean;
 import com.moral.common.exception.BusinessException;
 import com.moral.entity.Account;
 import com.moral.mapper.AccountMapper;
 import com.moral.service.AccountService;
 import com.moral.service.OrganizationService;
+
+import tk.mybatis.mapper.entity.Example;
+import tk.mybatis.mapper.entity.Example.Criteria;
 
 @Service
 public class AccountServiceImpl implements AccountService {
@@ -79,4 +89,31 @@
 		}
 	}
 
+	@Override
+	public PageBean<Account> getAccountListByPage(Map<String, Object> parameters) {
+		Example example = new Example(Account.class);
+		Criteria criteria = example.createCriteria();
+		if (parameters.containsKey("name")) {
+			criteria.andLike("name", "%" + (String) parameters.get("name") + "%");
+		}
+		if (parameters.containsKey("mobile")) {
+			criteria.andLike("mobile", "%" + (String) parameters.get("mobile") + "%");
+		}
+		PageHelper.startPage(Integer.valueOf((String) parameters.get("pageIndex")), Integer.valueOf((String) parameters.get("pageSize")));
+		List<Account> accounts = accountMapper.selectByExample(example);
+		return new PageBean<Account>(accounts);
+	}
+
+	@Override
+	@Transactional
+	public Integer saveOrUpdateAccount(Account account) {
+		if (ObjectUtils.isEmpty(account.getId())) {
+			account.setIsDelete(Constants.IS_DELETE_FALSE);
+			account.setCreateTime(new Date());
+			return accountMapper.insertSelective(account);
+		}else {
+			return accountMapper.updateByPrimaryKeySelective(account);
+		}
+	}
+
 }

--
Gitblit v1.8.0