java+mysql+ssm开发的公司财务管理系统

本文档介绍了一个使用Java后端、SSM(Spring、SpringMVC、MyBatis)框架和MySQL数据库开发的公司财务管理系统。系统前端采用Bootstrap,实现了数据的增删查改操作,代码已上传至GitHub。详细介绍了关键操作如数据加载、计数、读取、保存、编辑和删除等方法。
摘要由CSDN通过智能技术生成

MoneyManager
财务管理系统简介
Bootstrap前端框架, 后端用的是ssm,数据库持久化部分是自己写的

代码已经上传github,下载地址: https://github.com/21503882/companyfinancial-

 

 

import java.util.Date;
import java.util.List;
import java.util.Map;

import com.google.gson.Gson;
import com.ming.entity.BillForOut;


import com.ming.entity.Message;
import com.ming.entity.User;
import com.ming.service.BillForInService;
import com.ming.service.BillForOutService;
import com.ming.service.IBillForInService;
import com.ming.service.IBillForOutService;
import com.ming.service.IMessageService;
import com.ming.service.IUserService;
import com.ming.service.MessageService;
import com.ming.service.UserService;
import com.ming.util.Condition;
import com.ming.util.DataUtil;
import com.ming.util.KaptchaUtil;
import com.ming.util.MailUtil;


import com.ming.util.Permission;
import com.ming.util.WebUtil;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;

public class BillForOutAction extends ActionSupport {
    private static final long serialVersionUID = 1L;
    
    private static final Gson GSON = new Gson();
    private static final IBillForOutService billForOutService = new BillForOutService();
    private static final IMessageService messageService = new MessageService();
    private static final IUserService userService = new UserService();
    private static final IBillForInService billForInService = new BillForInService();
    
    /* 开始配置数据接收 */
    private String id;
    private String billForOut;
    private int curPage;
    private int limit;
    private String condition;
    private String validCode;
    
    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getBillForOut() {
        return billForOut;
    }

    public void setBillForOut(String billForOut) {
        this.billForOut = billForOut;
    }

    public int getCurPage() {
        return curPage;
    }

    public void setCurPage(int curPage) {
        this.curPage = curPage;
    }

    public int getLimit() {
        return limit;
    }

    public void setLimit(int limit) {
        this.limit = limit;
    }

    public String getCondition() {
        return condition;
    }

    public void setCondition(String condition) {
        this.condition = condition;
    }

    public String getValidCode() {
        return validCode;
    }

    public void setValidCode(String validCode) {
        this.validCode = validCode;
    }
    /* 结束配置数据接收 */

    /**
     * 读取多条数据
     */
    @Permission
    public void load() {
        try {
            List<Map<String, Object>> datas = billForOutService.loadSpecial(conditionString(), curPage, limit);
            if (datas != null) {
                String json = GSON.toJson(datas);
                WebUtil.writeJson(json);
            } else {
                WebUtil.writeJson(WebUtil.JSON_ERROR);
            }
        } catch (Exception e) {
            e.printStackTrace();
            WebUtil.writeJson(WebUtil.JSON_ERROR);
        }
    }
    
    /**
     * 获取数据条数
     */
    @Permission
    public void count() {
        try {
            int length = billForOutService.countSpecial(conditionString());
            if (length != -1) {
                String json = "{\"count\":" + length + "}";
                WebUtil.writeJson(json);
            } else {
                WebUtil.writeJson(WebUtil.JSON_ERROR);
            }
        } catch (Exception e) {
            e.printStackTrace();
            WebUtil.writeJson(WebUtil.JSON_ERROR);
        }
    }
    
    /**
     * 读取一条数据
     */
    @Permission
    public void loadOne() {
        try {
            String[] params = new String[] {"id", "date", "event", "amount", "payId", "status", "recordId", "createDate", "remark"};
            
            Map<String, Object> data = billForOutService.loadOne(params, "id = '" + id + "'");
            if (data != null) {
                String json = GSON.toJson(data);
                WebUtil.writeJson(json);
            } else {
                WebUtil.writeJson(WebUtil.JSON_ERROR);
            }
        } catch (Exception e) {
            e.printStackTrace();
            WebUtil.writeJson(WebUtil.JSON_ERROR);
        }
    }
    
    /**
     * 保存一条数据
     */
    @Permission
    public void save() {
        try {
            BillForOut billForOutObject = GSON.fromJson(billForOut, BillForOut.class);
            billForOutObject.setId(DataUtil.getUUID());
            billForOutObject.setCreateDate(Double.parseDouble(DataUtil.getDateString(new Date(), "yyyyMMdd")));
            
            boolean isSucceed = billForOutService.save(billForOutObject);
            if (isSucceed) {
                WebUtil.writeJson(WebUtil.JSON_SUCCESS);
            } else {
                WebUtil.writeJson(WebUtil.JSON_ERROR);
            }
        } catch (Exception e) {
            e.printStackTrace();
            WebUtil.writeJson(WebUtil.JSON_ERROR);
        }
    }
    
    /**
     * 修改一条数据
     */
    @Permission
    public void edit() {
        try {
            BillForOut billForOutObject = GSON.fromJson(billForOut, BillForOut.class);
            
            boolean isSucceed = billForOutService.update(billForOutObject);
            if (isSucceed) {
                WebUtil.writeJson(WebUtil.JSON_SUCCESS);
            } else {
                WebUtil.writeJson(WebUtil.JSON_ERROR);
            }
        } catch (Exception e) {
            e.printStackTrace();
            WebUtil.writeJson(WebUtil.JSON_ERROR);
        }
    }
    
    /**
     * 删除一条数据
     */
    @Permission
    public void delete() {
        try {
            BillForOut billForOutObject = new BillForOut(id);
            
            boolean isSucceed = billForOutService.delete(billForOutObject);
            if (isSucceed) {
                WebUtil.writeJson(WebUtil.JSON_SUCCESS);
            } else {
                WebUtil.writeJson(WebUtil.JSON_ERROR);
            }
        } catch (Exception e) {
            e.printStackTrace();
            WebUtil.writeJson(WebUtil.JSON_ERROR);
        }
    }
    
    /**
     * 组合条件
     * @return 条件SQL语句
     */
    private String conditionString() {
        try {
            if (condition != null) {
                Condition conditionObject = GSON.fromJson(condition, Condition.class);
                
                String conditionString = "";
                if (conditionObject.getPayName() != null)
                    conditionString += "payName LIKE '%" + conditionObject.getPayName() + "%' AND ";
                if (conditionObject.getStatus() != null)
                    conditionString += "status = '" + conditionObject.getStatus() + "' AND ";
                
                if (conditionString.length() > 5)
                    conditionString = conditionString.substring(0, conditionString.length() - 5);
                
                return conditionString;
            } else {
                return null;
            }
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }
    
    /**
     * 读取个人报账数据
     */
    @Permission
    public void loadMine() {
        try {
            Map<String, Object> session = ActionContext.getContext().getSession();
            String userId = (String) session.get("userId");
            
            List<Map<String, Object>> datas = billForOutService.loadMineSpecial(userId, conditionMineString(), curPage, limit);
            if (datas != null) {
                String json = GSON.toJson(datas);
                WebUtil.writeJson(json);
            } else {
                WebUtil.writeJson(WebUtil.JSON_ERROR);
            }
        } catch (Exception e) {
            e.printStackTrace();
            WebUtil.writeJson(WebUtil.JSON_ERROR);
        }
    }
    
    /**
     * 获取个人报账数据条数
     */
    @Permission
    public void countMine() {
        try {
            Map<String, Object> session = ActionContext.getContext().getSession();
            String userId = (String) session.get("userId");
            
            int length = billForOutService.countMineSpecial(userId, conditionMineString());
            if (length != -1) {
                String json = "{\"count\":" + length + "}";
                WebUtil.writeJson(json);
            } else {
                WebUtil.writeJson(WebUtil.JSON_ERROR);
            }
        } catch (Exception e) {
            e.printStackTrace();
            WebUtil.writeJson(WebUtil.JSON_ERROR);
        }
    }
    
    /**
     * 个人报账数据组合条件
     * @return 条件SQL语句
     */
    private String conditionMineString() {
        try {
            if (condition != null) {
                Condition conditionObject = GSON.fromJson(condition, Condition.class);
                
                String conditionString = "";
                if (conditionObject.getStatus() != null)
                    conditionString += "status = '" + conditionObject.getStatus() + "' AND ";
    

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值