From 7de1489e105d619edbb4c4f46096dac15845e931 Mon Sep 17 00:00:00 2001 From: ifish7 Date: Mon, 14 Aug 2017 17:23:31 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8E=82=E5=AE=B6=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ifish/bean/Tbl_Operate_record.java | 197 +++++++++++ .../java/com/ifish/bean/Tbl_Payee_Info.java | 173 +++++++++ .../com/ifish/bean/Tbl_Security_User.java | 28 +- src/main/java/com/ifish/controller/Admin.java | 98 ++++++ .../java/com/ifish/controller/Factory.java | 86 ++++- .../java/com/ifish/helper/AdminHelper.java | 184 ++++++++++ .../java/com/ifish/helper/AdminHelperI.java | 66 ++++ .../java/com/ifish/helper/FactoryHelper.java | 333 ++++++++++++++++++ .../java/com/ifish/helper/FactoryHelperI.java | 71 ++++ .../com/ifish/mapper/Tbl_Device_Mapper.java | 85 +++++ .../ifish/mapper/Tbl_Device_MapperSql.java | 197 +++++++++++ .../com/ifish/mapper/Tbl_Pay_Bill_Mapper.java | 109 ++++++ .../ifish/mapper/Tbl_Pay_Bill_MapperSql.java | 88 +++++ .../com/ifish/mapper/Tbl_User_Mapper.java | 56 +++ .../com/ifish/mapper/Tbl_User_MapperSql.java | 78 ++++ src/main/webapp/WEB-INF/layout/IndexPage.jsp | 8 +- src/main/webapp/WEB-INF/layout/tiles.xml | 25 ++ .../webapp/WEB-INF/views/admin/menuManage.jsp | 17 + .../webapp/WEB-INF/views/admin/userlist.jsp | 176 +++++++++ .../webapp/WEB-INF/views/factory/list.jsp | 2 +- src/main/webapp/WEB-INF/views/pay/detail.jsp | 198 +++++++++++ src/main/webapp/WEB-INF/views/pay/list.jsp | 236 +++++++++++++ .../WEB-INF/views/query/authorization.jsp | 107 ++++++ src/main/webapp/WEB-INF/views/query/list.jsp | 222 +++++++++++- 24 files changed, 2821 insertions(+), 19 deletions(-) create mode 100644 src/main/java/com/ifish/bean/Tbl_Operate_record.java create mode 100644 src/main/java/com/ifish/bean/Tbl_Payee_Info.java create mode 100644 src/main/java/com/ifish/controller/Admin.java create mode 100644 src/main/java/com/ifish/helper/AdminHelper.java create mode 100644 src/main/java/com/ifish/helper/AdminHelperI.java create mode 100644 src/main/java/com/ifish/mapper/Tbl_Pay_Bill_Mapper.java create mode 100644 src/main/java/com/ifish/mapper/Tbl_Pay_Bill_MapperSql.java create mode 100644 src/main/webapp/WEB-INF/views/admin/menuManage.jsp create mode 100644 src/main/webapp/WEB-INF/views/admin/userlist.jsp create mode 100644 src/main/webapp/WEB-INF/views/pay/detail.jsp create mode 100644 src/main/webapp/WEB-INF/views/pay/list.jsp create mode 100644 src/main/webapp/WEB-INF/views/query/authorization.jsp diff --git a/src/main/java/com/ifish/bean/Tbl_Operate_record.java b/src/main/java/com/ifish/bean/Tbl_Operate_record.java new file mode 100644 index 0000000..9eafa46 --- /dev/null +++ b/src/main/java/com/ifish/bean/Tbl_Operate_record.java @@ -0,0 +1,197 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package com.ifish.bean; + +import java.util.Date; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; + +/** + * 设备操作记录表(电子厂查看)(tbl_operate_record) + * + * @author bianj + * @version 1.0.0 2017-08-07 + */ +@Entity +@Table(name = "tbl_operate_record") +public class Tbl_Operate_record implements java.io.Serializable { + + /** + * 版本号 + */ + private static final long serialVersionUID = -8474976960691862171L; + + /** + * id + */ + @Id + @Column(name = "record_id", unique = true, nullable = false, length = 10) + private Integer recordId; + + /** + * 数量 + */ + @Column(name = "record_number", nullable = false, length = 10) + private Integer recordNumber; + + /** + * IP + */ + @Column(name = "record_ip", nullable = true, length = 30) + private String recordIp; + + /** + * 电子厂代码 + */ + @Column(name = "factory_code", nullable = true, length = 20) + private String factoryCode; + + /** + * 操作类型 + */ + @Column(name = "record_type", nullable = true, length = 20) + private String recordType; + + /** + * 操作时间 + */ + @Column(name = "create_time", nullable = true) + private Date createTime; + + /** + * 编号 + */ + @Column(name = "create_code", nullable = true, length = 50) + private String createCode; + + /** + * 获取id + * + * @return id + */ + public Integer getRecordId() { + return this.recordId; + } + + /** + * 设置id + * + * @param recordId id + */ + public void setRecordId(Integer recordId) { + this.recordId = recordId; + } + + /** + * 获取数量 + * + * @return 数量 + */ + public Integer getRecordNumber() { + return this.recordNumber; + } + + /** + * 设置数量 + * + * @param recordNumber 数量 + */ + public void setRecordNumber(Integer recordNumber) { + this.recordNumber = recordNumber; + } + + /** + * 获取IP + * + * @return IP + */ + public String getRecordIp() { + return this.recordIp; + } + + /** + * 设置IP + * + * @param recordIp IP + */ + public void setRecordIp(String recordIp) { + this.recordIp = recordIp; + } + + /** + * 获取电子厂代码 + * + * @return 电子厂代码 + */ + public String getFactoryCode() { + return this.factoryCode; + } + + /** + * 设置电子厂代码 + * + * @param factoryCode 电子厂代码 + */ + public void setFactoryCode(String factoryCode) { + this.factoryCode = factoryCode; + } + + /** + * 获取操作类型 + * + * @return 操作类型 + */ + public String getRecordType() { + return this.recordType; + } + + /** + * 设置操作类型 + * + * @param recordType 操作类型 + */ + public void setRecordType(String recordType) { + this.recordType = recordType; + } + + /** + * 获取操作时间 + * + * @return 操作时间 + */ + public Date getCreateTime() { + return this.createTime; + } + + /** + * 设置操作时间 + * + * @param createTime 操作时间 + */ + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + /** + * 获取编号 + * + * @return 编号 + */ + public String getCreateCode() { + return this.createCode; + } + + /** + * 设置编号 + * + * @param createCode 编号 + */ + public void setCreateCode(String createCode) { + this.createCode = createCode; + } +} diff --git a/src/main/java/com/ifish/bean/Tbl_Payee_Info.java b/src/main/java/com/ifish/bean/Tbl_Payee_Info.java new file mode 100644 index 0000000..103ecb7 --- /dev/null +++ b/src/main/java/com/ifish/bean/Tbl_Payee_Info.java @@ -0,0 +1,173 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package com.ifish.bean; + +import java.util.Date; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; + +/** + * 收款账号信息(tbl_payee_info) + * + * @author bianj + * @version 1.0.0 2017-08-07 + */ +@Entity +@Table(name = "tbl_payee_info") +public class Tbl_Payee_Info implements java.io.Serializable { + + /** + * 版本号 + */ + private static final long serialVersionUID = -6173960043483971734L; + + /** + * ID + */ + @Id + @Column(name = "payee_id", unique = true, nullable = false, length = 10) + private Integer payeeId; + + /** + * 支付帐号 + */ + @Column(name = "account_no", nullable = false, length = 50) + private String accountNo; + + /** + * 银行卡号 + */ + @Column(name = "bakn_card", nullable = false, length = 50) + private String baknCard; + + /** + * 户名 + */ + @Column(name = "account_name", nullable = false, length = 50) + private String accountName; + + /** + * 银行 + */ + @Column(name = "bank_name", nullable = false, length = 50) + private String bankName; + + /** + * 创建时间 + */ + @Column(name = "create_time", nullable = true) + private Date createTime; + + /** + * 获取ID + * + * @return ID + */ + public Integer getPayeeId() { + return this.payeeId; + } + + /** + * 设置ID + * + * @param payeeId ID + */ + public void setPayeeId(Integer payeeId) { + this.payeeId = payeeId; + } + + /** + * 获取支付帐号 + * + * @return 支付帐号 + */ + public String getAccountNo() { + return this.accountNo; + } + + /** + * 设置支付帐号 + * + * @param accountNo 支付帐号 + */ + public void setAccountNo(String accountNo) { + this.accountNo = accountNo; + } + + /** + * 获取银行卡号 + * + * @return 银行卡号 + */ + public String getBaknCard() { + return this.baknCard; + } + + /** + * 设置银行卡号 + * + * @param baknCard 银行卡号 + */ + public void setBaknCard(String baknCard) { + this.baknCard = baknCard; + } + + /** + * 获取户名 + * + * @return 户名 + */ + public String getAccountName() { + return this.accountName; + } + + /** + * 设置户名 + * + * @param accountName 户名 + */ + public void setAccountName(String accountName) { + this.accountName = accountName; + } + + /** + * 获取银行 + * + * @return 银行 + */ + public String getBankName() { + return this.bankName; + } + + /** + * 设置银行 + * + * @param bankName 银行 + */ + public void setBankName(String bankName) { + this.bankName = bankName; + } + + /** + * 获取创建时间 + * + * @return 创建时间 + */ + public Date getCreateTime() { + return this.createTime; + } + + /** + * 设置创建时间 + * + * @param createTime 创建时间 + */ + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/src/main/java/com/ifish/bean/Tbl_Security_User.java b/src/main/java/com/ifish/bean/Tbl_Security_User.java index 579f58f..354cafc 100644 --- a/src/main/java/com/ifish/bean/Tbl_Security_User.java +++ b/src/main/java/com/ifish/bean/Tbl_Security_User.java @@ -24,7 +24,7 @@ public class Tbl_Security_User { /** * 版本号 */ - private static final long serialVersionUID = -8984570421187661490L; + private static final long serialVersionUID = 1605694509520575278L; /** * 用户id @@ -63,10 +63,16 @@ public class Tbl_Security_User { @Column(name = "rolename", nullable = false, length = 20) private String rolename; + /** + * 是否启用,1启用,0不启用 + */ + @Column(name = "status", nullable = true, length = 1) + private String status; + /** * 厂家代码 */ - @Column(name = "code", nullable = false, length = 20) + @Column(name = "code", nullable = true, length = 20) private String code; /** @@ -183,6 +189,24 @@ public class Tbl_Security_User { this.rolename = rolename; } + /** + * 获取是否启用,1启用,0不启用 + * + * @return 是否启用 + */ + public String getStatus() { + return this.status; + } + + /** + * 设置是否启用,1启用,0不启用 + * + * @param status 是否启用,1启用,0不启用 + */ + public void setStatus(String status) { + this.status = status; + } + /** * 获取厂家代码 * diff --git a/src/main/java/com/ifish/controller/Admin.java b/src/main/java/com/ifish/controller/Admin.java new file mode 100644 index 0000000..4fe3f8a --- /dev/null +++ b/src/main/java/com/ifish/controller/Admin.java @@ -0,0 +1,98 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package com.ifish.controller; + +import com.ifish.bean.Tbl_Security_User; +import com.ifish.helper.AdminHelperI; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.servlet.ModelAndView; + +/** + * + * @author Administrator + */ +@Controller +public class Admin { + + @Autowired + private AdminHelperI adminHelperI; + + /** + * 合作账号管理页面 + * + * @return + */ + @RequestMapping(value = {"/adminUserList"}, method = RequestMethod.GET) + public ModelAndView getUserList() { + return adminHelperI.getUserList(); + } + + /** + * 用户管理页面数据 + * + * @param draw + * @param role + * @param username + * @param start + * @param length + * @return + */ + @RequestMapping(value = {"/adminuserlistdate"}, method = RequestMethod.POST) + @ResponseBody + public Object getUserListDate(String draw, String role, String username, Integer start, Integer length) { + return adminHelperI.getUserListDate(draw, role, username, start, length); + } + + /** + * 插入一条后台用户 + * + * @param tbl_Security_User + * @return + */ + @RequestMapping(value = {"/insertSecurityUser"}, method = RequestMethod.POST) + @ResponseBody + public Object insertUser(Tbl_Security_User tbl_Security_User) { + return adminHelperI.insertUser(tbl_Security_User); + } + + /** + * 修改一条后台用户信息 + * + * @param tbl_Security_User + * @return + */ + @RequestMapping(value = {"/updateSecurityUser"}, method = RequestMethod.POST) + @ResponseBody + public Object updateUser(Tbl_Security_User tbl_Security_User) { + return adminHelperI.updateUser(tbl_Security_User); + } + + /** + * 菜单导航管理页面 + * + * @return + */ + @RequestMapping(value = {"/menuManage"}, method = RequestMethod.GET) + public ModelAndView getMenuManage() { + return adminHelperI.getMenuManage(); + } + + /** + * 删除一条后台账户信息 + * + * @param id + * @return + */ + @RequestMapping(value = {"/deleteSecurityUser"}, method = RequestMethod.POST) + @ResponseBody + public Object deleteSecurityUser(Integer id) { + return adminHelperI.deleteSecurityUser(id); + } +} diff --git a/src/main/java/com/ifish/controller/Factory.java b/src/main/java/com/ifish/controller/Factory.java index b5aee83..308d10c 100644 --- a/src/main/java/com/ifish/controller/Factory.java +++ b/src/main/java/com/ifish/controller/Factory.java @@ -6,6 +6,7 @@ package com.ifish.controller; import com.ifish.bean.Tbl_Factory_List; +import com.ifish.bean.Tbl_Payee_Info; import com.ifish.helper.FactoryHelperI; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; @@ -89,7 +90,7 @@ public class Factory { * @param code * @return */ - @RequestMapping(value = {"/deleteFactory"}, method = RequestMethod.POST, produces = " text/html;charset=utf-8") + @RequestMapping(value = {"/deleteFactory"}, method = RequestMethod.POST, produces = "text/html;charset=utf-8") @ResponseBody public Object deleteFactory(String code) { return factoryHelperI.deleteFactory(code); @@ -111,7 +112,86 @@ public class Factory { * @return */ @RequestMapping(value = {"/querylist"}, method = RequestMethod.GET) - public ModelAndView querylist() { - return factoryHelperI.addFactory(); + public ModelAndView querylist(String factoryCode, String brandCode, String isblacklist, String createTimeBefore, String createTimeAfter) { + return factoryHelperI.querylist(factoryCode, brandCode, isblacklist, createTimeBefore, createTimeAfter); } + + /** + * 授权统计查询页 + * + * @param factoryCode + * @param createTimeBefore + * @param createTimeAfter + * @return + */ + @RequestMapping(value = {"/authorizationQuery"}, method = RequestMethod.GET) + public ModelAndView authorizationQuery(String factoryCode, String createTimeBefore, String createTimeAfter) { + return factoryHelperI.authorizationQuery(factoryCode, createTimeBefore, createTimeAfter); + } + + /** + * 账单列表 + * + * @return + */ + @RequestMapping(value = {"/paylist"}, method = RequestMethod.GET) + public ModelAndView paylist() { + return factoryHelperI.paylist(); + } + + /** + * 账单列表页数据 + * + * @param factoryCode + * @return + */ + @RequestMapping(value = {"/paylistdata"}, method = RequestMethod.POST) + @ResponseBody + public Object paylistData(String factoryCode, String draw, Integer start, Integer length) { + return factoryHelperI.paylistData(factoryCode, draw, start, length); + } + + /** + * 修改账单收费状态 + * + * @param code + * @param month + * @return + */ + @RequestMapping(value = {"/changePayStatus"}, method = RequestMethod.POST, produces = "text/html;charset=utf-8") + @ResponseBody + public Object changePayStatus(String code, String month) { + return factoryHelperI.changePayStatus(code, month); + } + + /** + * 修改收款账号信息 + * + * @param tbl_Payee_Info + * @return + */ + @RequestMapping(value = {"/updatePayeeInfo"}, method = RequestMethod.POST, produces = "text/html;charset=utf-8") + @ResponseBody + public Object updatePayeeInfo(Tbl_Payee_Info tbl_Payee_Info) { + return factoryHelperI.updatePayeeInfo(tbl_Payee_Info); + } + + /** + * 账单详情页面 + * + * @param factoryCode + * @param billMonth + * @return + */ + @RequestMapping(value = {"/paydetail"}, method = RequestMethod.GET) + public ModelAndView paydetail(String factoryCode, String billMonth) { + return factoryHelperI.paydetail(factoryCode, billMonth); + } + + @RequestMapping(value = {"/paydetailDate"}, method = RequestMethod.POST) + @ResponseBody + public Object paydetailDate(String factoryCode, String billMonth, String draw, Integer start, Integer length) { + return factoryHelperI.paydetailDate(factoryCode, billMonth, draw, start, length); + } + } diff --git a/src/main/java/com/ifish/helper/AdminHelper.java b/src/main/java/com/ifish/helper/AdminHelper.java new file mode 100644 index 0000000..6310655 --- /dev/null +++ b/src/main/java/com/ifish/helper/AdminHelper.java @@ -0,0 +1,184 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package com.ifish.helper; + +import com.ifish.bean.Tbl_Security_User; +import com.ifish.mapper.Tbl_User_Mapper; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; +import org.springframework.web.servlet.ModelAndView; + +/** + * + * @author Administrator + */ +@Component +public class AdminHelper implements AdminHelperI { + + @Autowired + private Tbl_User_Mapper tbl_User_Mapper; + + /** + * 合作账号管理页面 + * + * @return + */ + @Override + public ModelAndView getUserList() { + ModelAndView mv = new ModelAndView(); + mv.setViewName("adminuserlist"); + mv.addObject("title", "用户管理"); + mv.addObject("myjs", "\n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + "" + + "" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + "" + + " "); + return mv; + } + + /** + * 根据条件获取后台账号列表 + * + * @param darw + * @param role + * @param username + * @param start + * @param length + * @return + */ + @Override + public Object getUserListDate(String draw, String role, String username, Integer start, Integer length) { + List list = tbl_User_Mapper.getSecurity_UsersList(role, username, start, length); + for (Map map : list) { + if (map.get("factoryname") == null) { + map.put("factoryname", "无"); + } + } + Integer allCount = tbl_User_Mapper.getAllSecurity_user(); + Integer count = 0; + if (StringUtils.isBlank(role) && StringUtils.isBlank(username)) { + count = allCount; + } else { + count = tbl_User_Mapper.getSecurity_UsersListCount(role, username); + } + Map map = new HashMap(); + map.put("data", list); + map.put("draw", draw); + map.put("recordsTotal", count); + map.put("recordsFiltered", count); + return map; + } + + /** + * 菜单导航管理页面 + * + * @return + */ + @Override + public ModelAndView getMenuManage() { + ModelAndView mv = new ModelAndView(); + mv.setViewName("menuManage"); + mv.addObject("title", "菜单管理"); + mv.addObject("myjs", "\n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + "" + + "" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + "" + + " "); + return mv; + } + + /** + * 插入一条后台用户 + * + * @param tbl_Security_User + * @return + */ + @Override + public Object insertUser(Tbl_Security_User tbl_Security_User) { + try { + if (tbl_Security_User.getId() != null && tbl_Security_User.getId() >= 0) { + return "失败"; + } + int i = tbl_User_Mapper.insertSecurityUser(tbl_Security_User); + if (i > 0) { + return "成功"; + } + } catch (Exception e) { + } + return "失败"; + } + + /** + * 修改一条后台用户 + * + * @param tbl_Security_User + * @return + */ + @Override + public Object updateUser(Tbl_Security_User tbl_Security_User) { + try { + if (tbl_Security_User.getId() == null || tbl_Security_User.getId() <= 0) { + return "失败"; + } + int i = tbl_User_Mapper.updateSecurityUser(tbl_Security_User); + if (i > 0) { + return "成功"; + } + + } catch (Exception e) { + } + return "失败"; + } + + /** + * 删除一条后台账号信息 + * + * @param id + * @return + */ + @Override + public Object deleteSecurityUser(Integer id) { + try { + if (id > 0) { + int i = tbl_User_Mapper.deleteScurityUserById(id); + if (i > 0) { + return "成功"; + } + } + } catch (Exception e) { + } + return "失败"; + } + +} diff --git a/src/main/java/com/ifish/helper/AdminHelperI.java b/src/main/java/com/ifish/helper/AdminHelperI.java new file mode 100644 index 0000000..bf157a3 --- /dev/null +++ b/src/main/java/com/ifish/helper/AdminHelperI.java @@ -0,0 +1,66 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package com.ifish.helper; + +import com.ifish.bean.Tbl_Security_User; +import org.springframework.web.servlet.ModelAndView; + +/** + * + * @author Administrator + */ +public interface AdminHelperI { + + /** + * 合作账号管理页面 + * + * @return + */ + public ModelAndView getUserList(); + + /** + * 根据条件获取后台账号列表 + * + * @param darw + * @param role + * @param username + * @param start + * @param length + * @return + */ + public Object getUserListDate(String draw, String role, String username, Integer start, Integer length); + + /** + * 菜单导航管理页面 + * + * @return + */ + public ModelAndView getMenuManage(); + + /** + * 插入一条后台用户 + * + * @param tbl_Security_User + * @return + */ + public Object insertUser(Tbl_Security_User tbl_Security_User); + + /** + * 修改一条后台用户 + * + * @param tbl_Security_User + * @return + */ + public Object updateUser(Tbl_Security_User tbl_Security_User); + + /** + * 删除一条后台账号信息 + * + * @param id + * @return + */ + public Object deleteSecurityUser(Integer id); +} diff --git a/src/main/java/com/ifish/helper/FactoryHelper.java b/src/main/java/com/ifish/helper/FactoryHelper.java index fa201e3..23d19c4 100644 --- a/src/main/java/com/ifish/helper/FactoryHelper.java +++ b/src/main/java/com/ifish/helper/FactoryHelper.java @@ -7,9 +7,17 @@ package com.ifish.helper; import com.ifish.bean.Tbl_Factory_List; import com.ifish.bean.Tbl_HardWare_Type; +import com.ifish.bean.Tbl_Operate_record; +import com.ifish.bean.Tbl_Payee_Info; +import com.ifish.mapper.Tbl_Device_Mapper; import com.ifish.mapper.Tbl_Factory_List_Mapper; +import com.ifish.mapper.Tbl_Pay_Bill_Mapper; import com.ifish.util.IfishUtil; +import java.text.Format; +import java.text.NumberFormat; +import java.text.SimpleDateFormat; import java.util.Arrays; +import java.util.Calendar; import java.util.Date; import java.util.HashMap; import java.util.List; @@ -29,6 +37,12 @@ public class FactoryHelper implements FactoryHelperI { @Autowired private Tbl_Factory_List_Mapper tbl_Factory_List_Mapper; + @Autowired + private Tbl_Device_Mapper tbl_Device_Mapper; + + @Autowired + private Tbl_Pay_Bill_Mapper tbl_Pay_Bill_Mapper; + /** * 电子厂列表 * @@ -294,4 +308,323 @@ public class FactoryHelper implements FactoryHelperI { + " "); return mv; } + + /** + * 查询统计 + * + * @param factoryCode + * @param brandCode + * @param isblacklist + * @param createTimeBefore + * @param createTimeAfter + * @return + */ + @Override + public ModelAndView querylist(String factoryCode, String brandCode, String isblacklist, String createTimeBefore, String createTimeAfter) { + ModelAndView mv = new ModelAndView(); + mv.setViewName("querylist"); + mv.addObject("title", "查询统计"); + mv.addObject("pagetitle", "查询统计"); + List list = tbl_Factory_List_Mapper.getFactoryListData(0, 1000); + mv.addObject("factorylist", list); + List list1 = tbl_Factory_List_Mapper.getAllVenderList(); + mv.addObject("venderlist", list1); + mv.addObject("factoryCode", factoryCode); + mv.addObject("brandCode", brandCode); + mv.addObject("isblacklist", isblacklist); + mv.addObject("createTimeBefore", createTimeBefore); + mv.addObject("createTimeAfter", createTimeAfter); + mv.addObject("map", querylistData(factoryCode, brandCode, isblacklist, createTimeBefore, createTimeAfter)); + mv.addObject("myjs", "\n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + " "); + return mv; + } + + /** + * 查询统计页面数据输出 + * + * @param factoryCode + * @param brandCode + * @param isblacklist + * @param createTimeBefore + * @param createTimeAfter + * @return + */ + public Map querylistData(String factoryCode, String brandCode, String isblacklist, String createTimeBefore, String createTimeAfter) { + Map map = new HashMap(); + //百分比 + NumberFormat numberFormat = NumberFormat.getInstance(); + //设置精确到小数点后0位 + numberFormat.setMaximumFractionDigits(0); + int deviceCount = tbl_Device_Mapper.getDeviceAllCount(isblacklist, factoryCode, brandCode, createTimeBefore, createTimeAfter); + map.put("deviceCount", deviceCount); + Integer bindNumber = tbl_Device_Mapper.getDeviceQueryBindNumber(isblacklist, factoryCode, brandCode, createTimeBefore, createTimeAfter); + map.put("bindNumber", bindNumber); + String bindPrice = numberFormat.format(Float.valueOf(bindNumber) / (float) deviceCount * 100); + map.put("bindPrice", bindPrice); + if (StringUtils.isBlank(factoryCode)) { + List factorylist = tbl_Device_Mapper.getDeviceQueryNumberByFactory(isblacklist, brandCode, createTimeBefore, createTimeAfter); + for (Map map1 : factorylist) { + String factorybindPrice = numberFormat.format(Float.valueOf(map1.get("deviceNumber").toString()) / (float) deviceCount * 100); + map1.put("factorybindPrice", factorybindPrice); + } + map.put("factory", factorylist); + } + + if (StringUtils.isBlank(brandCode)) { + List venderlist = tbl_Device_Mapper.getDeviceQueryNumberByVender(isblacklist, factoryCode, createTimeBefore, createTimeAfter); + for (Map map1 : venderlist) { + String venderbindPrice = numberFormat.format(Float.valueOf(map1.get("deviceNumber").toString()) / (float) deviceCount * 100); + map1.put("venderbindPrice", venderbindPrice); + } + map.put("vender", venderlist); + } + + List hardwareTypelist = tbl_Device_Mapper.getDeviceQueryNumberByFHardWardType(isblacklist, factoryCode, brandCode, createTimeBefore, createTimeAfter); + for (Map map1 : hardwareTypelist) { + String hardbindPrice = numberFormat.format(Float.valueOf(map1.get("deviceNumber").toString()) / (float) deviceCount * 100); + map1.put("hardbindPrice", hardbindPrice); + } + + map.put("hard", hardwareTypelist); + return map; + } + + /** + * 授权统计查询页面 + * + * @param factoryCode + * @param createTimeBefore + * @param createTimeAfter + * @return + */ + @Override + public ModelAndView authorizationQuery(String factoryCode, String createTimeBefore, String createTimeAfter) { + ModelAndView mv = new ModelAndView(); + mv.setViewName("authorization"); + mv.addObject("title", "授权统计"); + mv.addObject("pagetitle", "授权统计"); + List list = tbl_Factory_List_Mapper.getFactoryListData(0, 1000); + mv.addObject("factorylist", list); + mv.addObject("map", authorizationData(factoryCode, createTimeBefore, createTimeAfter)); + mv.addObject("myjs", "\n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + " "); + return mv; + } + + /** + * 获取授权统计页面数据 + * + * @param factoryCode + * @param createTimeBefore + * @param createTimeAfter + * @return + */ + public Map authorizationData(String factoryCode, String createTimeBefore, String createTimeAfter) { + Map map = new HashMap(); + if (StringUtils.isBlank(createTimeBefore) && StringUtils.isBlank(createTimeAfter)) { + //获取上个月数据 + Format format = new SimpleDateFormat("yyyy-MM-dd"); + Calendar calendar = Calendar.getInstance(); + calendar.add(Calendar.MONTH, -1); + //上个月第一天 + calendar.set(Calendar.DAY_OF_MONTH, 1); + createTimeBefore = format.format(calendar.getTime()); + + //上个月最后一天 + int maxDay = calendar.getActualMaximum(Calendar.DAY_OF_MONTH); + calendar.set(Calendar.DAY_OF_MONTH, maxDay); + createTimeAfter = format.format(calendar.getTime()); + } + + if (StringUtils.isBlank(factoryCode)) { + List list = tbl_Device_Mapper.getAuthorizationByFactory(createTimeBefore, createTimeAfter); + map.put("factorylist", list); + } else { + List list = tbl_Device_Mapper.getAuthorizationByDate(createTimeBefore, createTimeAfter, factoryCode); + map.put("datalist", list); + } + return map; + } + + /** + * 账单列表 + * + * @return + */ + @Override + public ModelAndView paylist() { + ModelAndView mv = new ModelAndView(); + mv.setViewName("paylist"); + mv.addObject("title", "账单列表"); + mv.addObject("pagetitle", "账单列表"); + List list = tbl_Factory_List_Mapper.getFactoryListData(0, 1000); + mv.addObject("factorylist", list); + Tbl_Payee_Info payeeInfo = tbl_Pay_Bill_Mapper.getPayeeInfoById("1"); + mv.addObject("payeeInfo", payeeInfo); + mv.addObject("myjs", "\n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + "" + + "" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + "" + + " "); + return mv; + } + + /** + * 账单列表页面数据 + * + * @param code + * @return + */ + @Override + public Object paylistData(String code, String draw, Integer start, Integer length) { + List list = tbl_Pay_Bill_Mapper.getPayListData(code, start, length); + for (Map map : list) { + String data = IfishUtil.format((Date) map.get("payDate")); + map.put("payDate", data); + } + Integer allCount = tbl_Pay_Bill_Mapper.getPayListAllCount(); + Integer count = 0; + if (StringUtils.isNotBlank(code)) { + count = tbl_Pay_Bill_Mapper.getPayListCountByFactory(code); + } else { + count = allCount; + } + Map map = new HashMap(); + map.put("data", list); + map.put("draw", draw); + map.put("recordsTotal", allCount); + map.put("recordsFiltered", count); + return map; + } + + /** + * 账单认收费,修改状态 + * + * @param code + * @param month + * @return + */ + @Override + public Object changePayStatus(String code, String month) { + try { + Integer status = tbl_Pay_Bill_Mapper.updatePayStatus(code, month); + if (status > 0) { + tbl_Pay_Bill_Mapper.updateDeivceIsChange(code, month); + return "成功"; + } + + } catch (Exception e) { + } + return "失败"; + } + + /** + * 修改收款账号信息 + * + * @param tbl_Payee_Info + * @return + */ + @Override + public Object updatePayeeInfo(Tbl_Payee_Info tbl_Payee_Info) { + + try { + int i = tbl_Pay_Bill_Mapper.updatePayeeInfo(tbl_Payee_Info); + if (i > 0) { + return "成功"; + } + } catch (Exception e) { + } + return "失败"; + } + + /** + * 账单详情页面 + * + * @param factoryCode + * @param billMonth + * @return + */ + @Override + public ModelAndView paydetail(String factoryCode, String billMonth) { + ModelAndView mv = new ModelAndView(); + mv.setViewName("paydetail"); + mv.addObject("title", "账单详情"); + mv.addObject("pagetitle", "账单详情"); + mv.addObject("factoryCode", factoryCode); + mv.addObject("billMonth", billMonth); + mv.addObject("myjs", "\n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + "" + + "" + + " \n" + + " \n" + + " \n" + + " \n" + + " \n" + + "" + + " "); + return mv; + } + + /** + * 账单详情页面数据 + * + * @param factoryCode + * @param billMonth + * @param draw + * @param start + * @param length + * @return + */ + @Override + public Object paydetailDate(String factoryCode, String billMonth, String draw, Integer start, Integer length) { + Map map = new HashMap(); + List list = tbl_Pay_Bill_Mapper.getOperate_records(factoryCode, billMonth, start, length); + Integer count = tbl_Pay_Bill_Mapper.getOperate_recordsCount(factoryCode, billMonth); + map.put("data", list); + map.put("draw", draw); + map.put("recordsTotal", count); + map.put("recordsFiltered", count); + return map; + } + } diff --git a/src/main/java/com/ifish/helper/FactoryHelperI.java b/src/main/java/com/ifish/helper/FactoryHelperI.java index 0473a80..e59bd8d 100644 --- a/src/main/java/com/ifish/helper/FactoryHelperI.java +++ b/src/main/java/com/ifish/helper/FactoryHelperI.java @@ -6,6 +6,7 @@ package com.ifish.helper; import com.ifish.bean.Tbl_Factory_List; +import com.ifish.bean.Tbl_Payee_Info; import org.springframework.web.servlet.ModelAndView; /** @@ -71,4 +72,74 @@ public interface FactoryHelperI { * @return */ public ModelAndView addFactory(); + + /** + * 查询统计 + * + * @return + */ + public ModelAndView querylist(String factoryCode, String brandCode, String isblacklist, String createTimeBefore, String createTimeAfter); + + /** + * 授权统计查询页面 + * + * @param factoryCode + * @param createTimeBefore + * @param createTimeAfter + * @return + */ + public ModelAndView authorizationQuery(String factoryCode, String createTimeBefore, String createTimeAfter); + + /** + * 账单列表 + * + * @return + */ + public ModelAndView paylist(); + + /** + * 账单列表页面数据 + * + * @param code + * @return + */ + public Object paylistData(String code, String draw, Integer start, Integer length); + + /** + * 账单认收费,修改状态 + * + * @param code + * @param month + * @return + */ + public Object changePayStatus(String code, String month); + + /** + * 修改收款账号信息 + * + * @param tbl_Payee_Info + * @return + */ + public Object updatePayeeInfo(Tbl_Payee_Info tbl_Payee_Info); + + /** + * 账单详情页面 + * + * @param factoryCode + * @param billMonth + * @return + */ + public ModelAndView paydetail(String factoryCode, String billMonth); + + /** + * 账单详情页面数据 + * + * @param factoryCode + * @param billMonth + * @param draw + * @param start + * @param length + * @return + */ + public Object paydetailDate(String factoryCode, String billMonth, String draw, Integer start, Integer length); } diff --git a/src/main/java/com/ifish/mapper/Tbl_Device_Mapper.java b/src/main/java/com/ifish/mapper/Tbl_Device_Mapper.java index 9213cc0..70f657c 100644 --- a/src/main/java/com/ifish/mapper/Tbl_Device_Mapper.java +++ b/src/main/java/com/ifish/mapper/Tbl_Device_Mapper.java @@ -10,11 +10,13 @@ import com.ifish.bean.Tbl_Device; import com.ifish.bean.Tbl_Device_Statistics; import com.ifish.bean.Tbl_Device_User; import java.util.List; +import java.util.Map; import org.apache.ibatis.annotations.Delete; import org.apache.ibatis.annotations.InsertProvider; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations.SelectKey; +import org.apache.ibatis.annotations.SelectProvider; import org.apache.ibatis.annotations.Update; import org.apache.ibatis.annotations.UpdateProvider; @@ -206,4 +208,87 @@ public interface Tbl_Device_Mapper { @Update("UPDATE tbl_activa_code set is_used='1' WHERE active_code = #{code}") Integer updateTblActivaCodeIsUse(@Param("code") String activa_Code); + /** + * 根据电子厂统计设备信息 + * + * @param isblacklist + * @param brandCode + * @param createTimeBefore + * @param createTimeAfter + * @return + */ + @SelectProvider(type = Tbl_Device_MapperSql.class, method = "getDeviceQueryNumberByFactory") + List getDeviceQueryNumberByFactory(@Param("isblacklist") String isblacklist, @Param("brandCode") String brandCode, @Param("createTimeBefore") String createTimeBefore, @Param("createTimeAfter") String createTimeAfter); + + /** + * 根据鱼缸厂统计设备信息 + * + * @param isblacklist + * @param factoryCode + * @param createTimeBefore + * @param createTimeAfter + * @return + */ + @SelectProvider(type = Tbl_Device_MapperSql.class, method = "getDeviceQueryNumberByVender") + List getDeviceQueryNumberByVender(@Param("isblacklist") String isblacklist, @Param("factoryCode") String factoryCode, @Param("createTimeBefore") String createTimeBefore, @Param("createTimeAfter") String createTimeAfter); + + /** + * 根据设备类型统计设备信息 + * + * @param isblacklist + * @param factoryCode + * @param brandCode + * @param createTimeBefore + * @param createTimeAfter + * @return + */ + @SelectProvider(type = Tbl_Device_MapperSql.class, method = "getDeviceQueryNumberByFHardWardType") + List getDeviceQueryNumberByFHardWardType(@Param("isblacklist") String isblacklist, @Param("factoryCode") String factoryCode, @Param("brandCode") String brandCode, @Param("createTimeBefore") String createTimeBefore, @Param("createTimeAfter") String createTimeAfter); + + /** + * 查询设备总数 + * + * @param isblacklist + * @param factoryCode + * @param brandCode + * @param createTimeBefore + * @param createTimeAfter + * @return + */ + @SelectProvider(type = Tbl_Device_MapperSql.class, method = "getDeviceAllCount") + Integer getDeviceAllCount(@Param("isblacklist") String isblacklist, @Param("factoryCode") String factoryCode, @Param("brandCode") String brandCode, @Param("createTimeBefore") String createTimeBefore, @Param("createTimeAfter") String createTimeAfter); + + /** + * 统计设备绑定数量 + * + * @param isblacklist + * @param factoryCode + * @param brandCode + * @param createTimeBefore + * @param createTimeAfter + * @return + */ + @SelectProvider(type = Tbl_Device_MapperSql.class, method = "getDeviceQueryBindNumber") + Integer getDeviceQueryBindNumber(@Param("isblacklist") String isblacklist, @Param("factoryCode") String factoryCode, @Param("brandCode") String brandCode, @Param("createTimeBefore") String createTimeBefore, @Param("createTimeAfter") String createTimeAfter); + + /** + * 获取电子厂授权统计 + * + * @param createTimeBefore + * @param createTimeAfter + * @return + */ + @SelectProvider(type = Tbl_Device_MapperSql.class, method = "getAuthorizationByFactory") + List getAuthorizationByFactory(@Param("createTimeBefore") String createTimeBefore, @Param("createTimeAfter") String createTimeAfter); + + /** + * 获取对应电子厂对应时间的授权统计 + * + * @param createTimeBefore + * @param createTimeAfter + * @param factoryCode + * @return + */ + @SelectProvider(type = Tbl_Device_MapperSql.class, method = "getAuthorizationByDate") + List getAuthorizationByDate(@Param("createTimeBefore") String createTimeBefore, @Param("createTimeAfter") String createTimeAfter, @Param("factoryCode") String factoryCode); } diff --git a/src/main/java/com/ifish/mapper/Tbl_Device_MapperSql.java b/src/main/java/com/ifish/mapper/Tbl_Device_MapperSql.java index 3728de7..33ec34c 100644 --- a/src/main/java/com/ifish/mapper/Tbl_Device_MapperSql.java +++ b/src/main/java/com/ifish/mapper/Tbl_Device_MapperSql.java @@ -272,4 +272,201 @@ public class Tbl_Device_MapperSql { sb.append(" WHERE device_id = #{device.deviceId}"); return sb.toString(); } + + /** + * 根据电子厂统计设备 + * + * @param isblacklist + * @param brandCode + * @param createTimeBefore + * @param createTimeAfter + * @return + */ + public String getDeviceQueryNumberByFactory(@Param("isblacklist") String isblacklist, @Param("brandCode") String brandCode, @Param("createTimeBefore") String createTimeBefore, @Param("createTimeAfter") String createTimeAfter) { + StringBuilder sb = new StringBuilder(); + sb.append(" SELECT d.factory_code AS factoryCode,f.factory_name AS factoryName,count(*) AS deviceNumber"); + sb.append(" FROM tbl_device d "); + sb.append(" LEFT JOIN tbl_factory_list f ON d.factory_code=f.factory_code "); + sb.append(" LEFT JOIN tbl_device_statistics ts ON d.device_id = ts.device_id "); + sb.append(" where d.is_camera='0'"); + if (StringUtils.isNotBlank(brandCode)) { + sb.append(" AND d.brand_code=#{brandCode}"); + } + if (StringUtils.isNotBlank(isblacklist)) { + sb.append(" AND d.is_blacklist = #{isblacklist}"); + } + if (StringUtils.isNotBlank(createTimeBefore) && StringUtils.isNotBlank(createTimeAfter)) { + sb.append(" AND ts.create_date BETWEEN #{createTimeBefore} AND #{createTimeAfter}"); + } else if (StringUtils.isNotBlank(createTimeBefore)) { + sb.append(" AND ts.create_date >= #{createTimeBefore}"); + } else if (StringUtils.isNotBlank(createTimeAfter)) { + sb.append(" AND ts.create_date >= #{createTimeAfter}"); + } + sb.append(" GROUP BY d.factory_code ORDER BY deviceNumber DESC"); + return sb.toString(); + } + + /** + * 根据鱼缸厂统计设备信息 + * + * @return + */ + public String getDeviceQueryNumberByVender(@Param("isblacklist") String isblacklist, @Param("factoryCode") String factoryCode, @Param("createTimeBefore") String createTimeBefore, @Param("createTimeAfter") String createTimeAfter) { + StringBuilder sb = new StringBuilder(); + sb.append(" SELECT d.brand_code AS brandCode,v.brand_name AS brandName,count(*) AS deviceNumber "); + sb.append(" FROM tbl_device d "); + sb.append(" LEFT JOIN tbl_vender_list v ON d.brand_code=v.brand_code "); + sb.append(" LEFT JOIN tbl_device_statistics ts ON d.device_id = ts.device_id "); + sb.append(" where d.is_camera='0'"); + if (StringUtils.isNotBlank(factoryCode)) { + sb.append(" AND d.factory_code=#{factoryCode}"); + } + if (StringUtils.isNotBlank(isblacklist)) { + sb.append(" AND d.is_blacklist = #{isblacklist}"); + } + if (StringUtils.isNotBlank(createTimeBefore) && StringUtils.isNotBlank(createTimeAfter)) { + sb.append(" AND ts.create_date BETWEEN #{createTimeBefore} AND #{createTimeAfter}"); + } else if (StringUtils.isNotBlank(createTimeBefore)) { + sb.append(" AND ts.create_date >= #{createTimeBefore}"); + } else if (StringUtils.isNotBlank(createTimeAfter)) { + sb.append(" AND ts.create_date >= #{createTimeAfter}"); + } + sb.append(" GROUP BY d.brand_code ORDER BY deviceNumber DESC"); + return sb.toString(); + } + + /** + * 根据设备类型统计设备信息 + * + * @return + */ + public String getDeviceQueryNumberByFHardWardType(@Param("isblacklist") String isblacklist, @Param("factoryCode") String factoryCode, @Param("brandCode") String brandCode, @Param("createTimeBefore") String createTimeBefore, @Param("createTimeAfter") String createTimeAfter) { + StringBuilder sb = new StringBuilder(); + sb.append(" SELECT d.hardware_type AS hardwareType,h.hardware_name AS hardwareName,count(*) AS deviceNumber "); + sb.append(" FROM tbl_device d "); + sb.append(" LEFT JOIN tbl_hardware_type h ON d.hardware_type=h.hardware_type "); + sb.append(" LEFT JOIN tbl_device_statistics ts ON d.device_id = ts.device_id "); + sb.append(" where d.is_camera='0'"); + if (StringUtils.isNotBlank(factoryCode)) { + sb.append(" AND d.factory_code=#{factoryCode}"); + } + if (StringUtils.isNotBlank(brandCode)) { + sb.append(" AND d.brand_code=#{brandCode}"); + } + if (StringUtils.isNotBlank(isblacklist)) { + sb.append(" AND d.is_blacklist = #{isblacklist}"); + } + if (StringUtils.isNotBlank(createTimeBefore) && StringUtils.isNotBlank(createTimeAfter)) { + sb.append(" AND ts.create_date BETWEEN #{createTimeBefore} AND #{createTimeAfter}"); + } else if (StringUtils.isNotBlank(createTimeBefore)) { + sb.append(" AND ts.create_date >= #{createTimeBefore}"); + } else if (StringUtils.isNotBlank(createTimeAfter)) { + sb.append(" AND ts.create_date >= #{createTimeAfter}"); + } + sb.append(" GROUP BY d.hardware_type ORDER BY deviceNumber DESC"); + return sb.toString(); + } + + /** + * 查询设备总数 + * + * @param isblacklist + * @param factoryCode + * @param brandCode + * @param createTimeBefore + * @param createTimeAfter + * @return + */ + public String getDeviceAllCount(@Param("isblacklist") String isblacklist, @Param("factoryCode") String factoryCode, @Param("brandCode") String brandCode, @Param("createTimeBefore") String createTimeBefore, @Param("createTimeAfter") String createTimeAfter) { + StringBuilder sb = new StringBuilder(); + sb.append(" SELECT count(1) from tbl_device d "); + sb.append(" LEFT JOIN tbl_device_statistics ts ON d.device_id = ts.device_id "); + sb.append(" where d.is_camera='0'"); + if (StringUtils.isNotBlank(factoryCode)) { + sb.append(" AND d.factory_code=#{factoryCode}"); + } + if (StringUtils.isNotBlank(brandCode)) { + sb.append(" AND d.brand_code=#{brandCode}"); + } + if (StringUtils.isNotBlank(isblacklist)) { + sb.append(" AND d.is_blacklist = #{isblacklist}"); + } + if (StringUtils.isNotBlank(createTimeBefore) && StringUtils.isNotBlank(createTimeAfter)) { + sb.append(" AND ts.create_date BETWEEN #{createTimeBefore} AND #{createTimeAfter}"); + } else if (StringUtils.isNotBlank(createTimeBefore)) { + sb.append(" AND ts.create_date >= #{createTimeBefore}"); + } else if (StringUtils.isNotBlank(createTimeAfter)) { + sb.append(" AND ts.create_date >= #{createTimeAfter}"); + } + return sb.toString(); + } + + /** + * 统计设备绑定数量 + * + * @param isblacklist + * @param factoryCode + * @param brandCode + * @param createTimeBefore + * @param createTimeAfter + * @return + */ + public String getDeviceQueryBindNumber(@Param("isblacklist") String isblacklist, @Param("factoryCode") String factoryCode, @Param("brandCode") String brandCode, @Param("createTimeBefore") String createTimeBefore, @Param("createTimeAfter") String createTimeAfter) { + StringBuilder sb = new StringBuilder(); + sb.append(" SELECT count(1) from tbl_device_user u "); + sb.append(" LEFT JOIN tbl_device d ON u.device_id=d.device_id "); + sb.append(" LEFT JOIN tbl_device_statistics ts ON d.device_id = ts.device_id "); + sb.append(" where d.is_camera='0'"); + if (StringUtils.isNotBlank(factoryCode)) { + sb.append(" AND d.factory_code=#{factoryCode}"); + } + if (StringUtils.isNotBlank(brandCode)) { + sb.append(" AND d.brand_code=#{brandCode}"); + } + if (StringUtils.isNotBlank(isblacklist)) { + sb.append(" AND d.is_blacklist = #{isblacklist}"); + } + if (StringUtils.isNotBlank(createTimeBefore) && StringUtils.isNotBlank(createTimeAfter)) { + sb.append(" AND ts.create_date BETWEEN #{createTimeBefore} AND #{createTimeAfter}"); + } else if (StringUtils.isNotBlank(createTimeBefore)) { + sb.append(" AND ts.create_date >= #{createTimeBefore}"); + } else if (StringUtils.isNotBlank(createTimeAfter)) { + sb.append(" AND ts.create_date >= #{createTimeAfter}"); + } + return sb.toString(); + } + + /** + * 获取电子厂授权统计 + * + * @param createTimeBefore + * @param createTimeAfter + * @return + */ + public String getAuthorizationByFactory(@Param("createTimeBefore") String createTimeBefore, @Param("createTimeAfter") String createTimeAfter) { + StringBuilder sb = new StringBuilder(); + sb.append("SELECT d.factory_code AS factoryCode,f.factory_name AS factoryName,count(*) AS deviceNumber FROM tbl_device d "); + sb.append(" LEFT JOIN tbl_factory_list f ON f.factory_code=d.factory_code"); + sb.append(" LEFT JOIN tbl_device_statistics ts ON d.device_id=ts.device_id "); + sb.append(" WHERE d.is_blacklist='0' AND d.is_camera='0' AND date_format(ts.authorize_time,'%Y-%m-%d') BETWEEN #{createTimeBefore} AND #{createTimeAfter} "); + sb.append(" GROUP BY d.factory_code ORDER BY deviceNumber DESC"); + return sb.toString(); + } + + /** + * 获取对应电子厂对应时间的授权统计 + * + * @param createTimeBefore + * @param createTimeAfter + * @param factoryCode + * @return + */ + public String getAuthorizationByDate(@Param("createTimeBefore") String createTimeBefore, @Param("createTimeAfter") String createTimeAfter, @Param("factoryCode") String factoryCode) { + StringBuilder sb = new StringBuilder(); + sb.append("SELECT date_format(ts.authorize_time,'%Y-%m-%d') as date,count(*) AS deviceNumber FROM tbl_device d LEFT JOIN tbl_factory_list f ON f.factory_code=d.factory_code "); + sb.append(" LEFT JOIN tbl_device_statistics ts ON ts.device_id = d.device_id WHERE d.is_blacklist=0 AND d.is_camera='0'"); + sb.append(" AND d.factory_code= #{factoryCode} AND date_format(ts.authorize_time,'%Y-%m-%d') BETWEEN #{createTimeBefore} AND #{createTimeAfter} "); + sb.append(" GROUP BY date ORDER BY ts.authorize_time DESC"); + return sb.toString(); + } } diff --git a/src/main/java/com/ifish/mapper/Tbl_Pay_Bill_Mapper.java b/src/main/java/com/ifish/mapper/Tbl_Pay_Bill_Mapper.java new file mode 100644 index 0000000..f736e98 --- /dev/null +++ b/src/main/java/com/ifish/mapper/Tbl_Pay_Bill_Mapper.java @@ -0,0 +1,109 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package com.ifish.mapper; + +import com.ifish.bean.Tbl_Operate_record; +import com.ifish.bean.Tbl_Payee_Info; +import java.util.List; +import java.util.Map; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; +import org.apache.ibatis.annotations.SelectProvider; +import org.apache.ibatis.annotations.Update; +import org.apache.ibatis.annotations.UpdateProvider; + +/** + * + * @author Administrator + */ +public interface Tbl_Pay_Bill_Mapper { + + /** + * 获取账单列表数据 + * + * @param factory + * @param start + * @param length + * @return + */ + @SelectProvider(type = Tbl_Pay_Bill_MapperSql.class, method = "getPayListData") + List getPayListData(@Param("code") String factory, Integer start, Integer length); + + /** + * 获取账单列表总数 + */ + @Select("Select count(1) from tbl_pay_bill") + Integer getPayListAllCount(); + + /** + * 根据电子厂代码获取账单列表所属数量 + * + * @param factoryCode + * @return + */ + @Select("Select count(1) from tbl_pay_bill WHERE factory_code = #{code}") + Integer getPayListCountByFactory(@Param("code") String factoryCode); + + /** + * 修改账单收费状态 + * + * @param code + * @param month + * @return + */ + @Update("Update tbl_pay_bill set pay_status = '1' WHERE factory_code = #{code} and bill_month = #{month}") + Integer updatePayStatus(@Param("code") String code, @Param("month") String month); + + /** + * 修改设备收费信息 + * + * @param code + * @param month + * @return + */ + @Update("UPDATE tbl_device SET is_charge='1' where factory_code=#{code} and is_blacklist='0' and date_format(authorize_time,'%Y-%m')=#{month}") + Integer updateDeivceIsChange(@Param("code") String code, @Param("month") String month); + + /** + * 获取银行卡信息 + * + * @param id + * @return + */ + @Select("select * from tbl_payee_info where payee_id = #{id}") + Tbl_Payee_Info getPayeeInfoById(@Param("id") String id); + + /** + * 修改收款账号信息 + * + * @param payee_Info + * @return + */ + @UpdateProvider(type = Tbl_Pay_Bill_MapperSql.class, method = "updatePayeeInfo") + Integer updatePayeeInfo(@Param("payeeInfo") Tbl_Payee_Info payee_Info); + + /** + * 获取厂商分配记录详情 + * + * @param factoryCode + * @param billMonth + * @param start + * @param length + * @return + */ + @SelectProvider(type = Tbl_Pay_Bill_MapperSql.class, method = "getOperate_records") + List getOperate_records(@Param("code") String factoryCode, @Param("date") String billMonth, Integer start, Integer length); + + /** + * 获取厂商分配记录数量 + * + * @param factoryCode + * @param billMonth + * @return + */ + @Select("Select count(1) from tbl_operate_record where record_type='1' and factory_code = #{code} AND #{date}=date_format(create_time,'%Y-%m')") + Integer getOperate_recordsCount(@Param("code") String factoryCode, @Param("date") String billMonth); +} diff --git a/src/main/java/com/ifish/mapper/Tbl_Pay_Bill_MapperSql.java b/src/main/java/com/ifish/mapper/Tbl_Pay_Bill_MapperSql.java new file mode 100644 index 0000000..ae3a182 --- /dev/null +++ b/src/main/java/com/ifish/mapper/Tbl_Pay_Bill_MapperSql.java @@ -0,0 +1,88 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package com.ifish.mapper; + +import com.ifish.bean.Tbl_Payee_Info; +import com.sun.org.apache.xerces.internal.impl.dv.XSSimpleType; +import org.apache.commons.lang3.StringUtils; +import org.apache.ibatis.annotations.Param; + +/** + * + * @author Administrator + */ +public class Tbl_Pay_Bill_MapperSql { + + /** + * 获取账单列表数据 + * + * @param factory + * @param start + * @param length + * @return + */ + public String getPayListData(@Param("code") String factory, Integer start, Integer length) { + StringBuilder sb = new StringBuilder(); + + sb.append("SELECT factory_name factoryName,a.factory_code factoryCode,bill_month billMonth,authorize_number number,pay_money money,pay_date payDate,pay_status payStatus, a.create_time createTime,a.is_tax isTax from tbl_pay_bill a "); + sb.append(" LEFT JOIN tbl_factory_list b ON a.factory_code = b.factory_code "); + if (StringUtils.isNotBlank(factory)) { + sb.append(" WHERE a.factory_code = #{code}"); + } + sb.append("ORDER BY a.create_time DESC LIMIT ").append(start).append(",").append(length); + + return sb.toString(); + } + + public String updatePayeeInfo(@Param("payeeInfo") Tbl_Payee_Info payee_Info) { + StringBuilder sb = new StringBuilder(); + + sb.append("UPDATE tbl_payee_info set "); + + if (StringUtils.isNotBlank(payee_Info.getAccountName())) { + sb.append("account_name = #{payeeInfo.accountName},"); + } + if (StringUtils.isNotBlank(payee_Info.getAccountNo())) { + sb.append("account_no = #{payeeInfo.accountNo},"); + } + if (StringUtils.isNotBlank(payee_Info.getBaknCard())) { + sb.append("bakn_card = #{payeeInfo.baknCard},"); + } + if (StringUtils.isNotBlank(payee_Info.getBankName())) { + sb.append("bank_name = #{payeeInfo.bankName},"); + } + if (sb.lastIndexOf(",") == sb.length() - 1) { + sb.deleteCharAt(sb.length() - 1); + } + sb.append(" WHERE payee_id = #{payeeInfo.payeeId}"); + + return sb.toString(); + } + + /** + * 获取厂商分配记录详情 + * + * @param factoryCode + * @param billMonth + * @param start + * @param length + * @return + */ + public String getOperate_records(@Param("code") String factoryCode, @Param("date") String billMonth, Integer start, Integer length) { + StringBuilder sb = new StringBuilder(); + + sb.append("Select * from tbl_operate_record where record_type = '1' "); + if (StringUtils.isNotBlank(factoryCode)) { + sb.append(" and factory_code = #{code}"); + } + if (StringUtils.isNotBlank(billMonth)) { + sb.append(" AND #{date}=date_format(create_time,'%Y-%m')"); + } + sb.append(" ORDER BY create_time DESC limit ").append(start).append(",").append(length); + return sb.toString(); + } + +} diff --git a/src/main/java/com/ifish/mapper/Tbl_User_Mapper.java b/src/main/java/com/ifish/mapper/Tbl_User_Mapper.java index 551c432..31b4a36 100644 --- a/src/main/java/com/ifish/mapper/Tbl_User_Mapper.java +++ b/src/main/java/com/ifish/mapper/Tbl_User_Mapper.java @@ -9,6 +9,7 @@ import com.ifish.bean.Tbl_Security_User; import com.ifish.bean.Tbl_User; import java.util.List; import java.util.Map; +import org.apache.ibatis.annotations.Delete; import org.apache.ibatis.annotations.Insert; import org.apache.ibatis.annotations.InsertProvider; import org.apache.ibatis.annotations.Param; @@ -114,6 +115,61 @@ public interface Tbl_User_Mapper { @Select("SELECT * FROM tbl_security_user where username=#{user}") Tbl_Security_User getSecurity_UserByUserName(@Param("user") String userName); + /** + * 根据条件获取后台账号列表 + * + * @param rola + * @param username + * @return + */ + @SelectProvider(type = Tbl_User_MapperSql.class, method = "getSecurity_UsersList") + List getSecurity_UsersList(@Param("role") String role, String username, Integer start, Integer length); + + /** + * 根据条件获取后台账号列表 + * + * @param rola + * @param username + * @return + */ + @SelectProvider(type = Tbl_User_MapperSql.class, method = "getSecurity_UsersListCount") + Integer getSecurity_UsersListCount(@Param("role") String role, String username); + + /** + * 获取后台账号总数 + * + * @return + */ + @Select("SELECT COUNT(1) from tbl_security_user") + Integer getAllSecurity_user(); + + /** + * 插入一条后台用户 + * + * @param tbl_Security_User + * @return + */ + @Insert("INSERT INTO tbl_security_user(username,password,email,role,rolename,status,code,create_time) VALUES (#{user.username}#{user.password}#{user.email}#{user.role}#{user.rolename}#{user.status}#{user.code},NOW())") + Integer insertSecurityUser(@Param("user") Tbl_Security_User tbl_Security_User); + + /** + * 修改一条后台用户信息 + * + * @param tbl_Security_User + * @return + */ + @UpdateProvider(type = Tbl_User_MapperSql.class, method = "updateSecurityUser") + Integer updateSecurityUser(@Param("user") Tbl_Security_User tbl_Security_User); + + /** + * 根据ID删除一条后台账号信息 + * + * @param id + * @return + */ + @Delete("delete from tbl_security_user where id= #{id}") + Integer deleteScurityUserById(@Param("id") Integer id); + /** * 根据条件查询用户列表 * diff --git a/src/main/java/com/ifish/mapper/Tbl_User_MapperSql.java b/src/main/java/com/ifish/mapper/Tbl_User_MapperSql.java index 2fcacf0..ed75260 100644 --- a/src/main/java/com/ifish/mapper/Tbl_User_MapperSql.java +++ b/src/main/java/com/ifish/mapper/Tbl_User_MapperSql.java @@ -5,6 +5,7 @@ */ package com.ifish.mapper; +import com.ifish.bean.Tbl_Security_User; import com.ifish.bean.Tbl_User; import org.apache.ibatis.annotations.Param; import org.apache.commons.lang3.StringUtils; @@ -214,4 +215,81 @@ public class Tbl_User_MapperSql { return sb.toString(); } + + /** + * 根据条件获取后台账号列表 + * + * @param rola + * @param username + * @return + */ + public String getSecurity_UsersList(@Param("role") String role, String username, Integer start, Integer length) { + StringBuilder sb = new StringBuilder(); + sb.append("SELECT a.id,a.username,a.rolename,b.factory_name factoryname,a.`status` FROM tbl_security_user a LEFT JOIN tbl_factory_list b ON a.code = b.factory_code where 1=1"); + if (StringUtils.isNotBlank(role)) { + sb.append(" and role = #{role}"); + } + if (StringUtils.isNotBlank(username)) { + sb.append(" and username like '%" + username + "%'"); + } + sb.append(" ORDER BY role DESC Limit " + start + "," + length); + + return sb.toString(); + } + + /** + * 根据条件获取后台账号列表数量 + * + * @param rola + * @param username + * @return + */ + public String getSecurity_UsersListCount(@Param("role") String role, String username) { + StringBuilder sb = new StringBuilder(); + sb.append("SELECT count(1) FROM tbl_security_user where 1=1"); + if (StringUtils.isNotBlank(role)) { + sb.append(" and role = #{role}"); + } + if (StringUtils.isNotBlank(username)) { + sb.append(" and username like '%" + username + "%'"); + } + + return sb.toString(); + } + + /** + * 修改一条后台用户信息 + * + * @param tbl_Security_User + * @return + */ + public String updateSecurityUser(@Param("user") Tbl_Security_User tbl_Security_User) { + StringBuilder sb = new StringBuilder(); + sb.append("UPDATE tbl_security_user set"); + + if (StringUtils.isNotBlank(tbl_Security_User.getCode())) { + sb.append(" code = #{user.code}"); + } + if (StringUtils.isNotBlank(tbl_Security_User.getEmail())) { + sb.append(" email = #{user.email}"); + } + if (StringUtils.isNotBlank(tbl_Security_User.getPassword())) { + sb.append(" password = #{user.password}"); + } + if (StringUtils.isNotBlank(tbl_Security_User.getRole())) { + sb.append(" role = #{user.role}"); + } + if (StringUtils.isNotBlank(tbl_Security_User.getRolename())) { + sb.append(" rolename = #{user.rolename}"); + } + if (StringUtils.isNotBlank(tbl_Security_User.getStatus())) { + sb.append(" status = #{user.status}"); + } + if (StringUtils.isNotBlank(tbl_Security_User.getUsername())) { + sb.append(" username = #{user.username}"); + } + sb.append(" WHERE id = #{user.id}"); + + return sb.toString(); + } } diff --git a/src/main/webapp/WEB-INF/layout/IndexPage.jsp b/src/main/webapp/WEB-INF/layout/IndexPage.jsp index ab37978..7120871 100644 --- a/src/main/webapp/WEB-INF/layout/IndexPage.jsp +++ b/src/main/webapp/WEB-INF/layout/IndexPage.jsp @@ -135,18 +135,18 @@
  • 查询统计
  • -
  • 授权统计 +
  • 授权统计
  • -
  • 账单列表 +
  • 账单列表
  • 系统管理