完成进销存单据的账户余额的自动计算功能

This commit is contained in:
季圣华
2017-01-08 19:00:39 +08:00
parent 66d4b2fcf2
commit c9ddc1a8e7
10 changed files with 64 additions and 11 deletions

View File

@@ -10,10 +10,12 @@ import net.sf.json.JSONObject;
import org.springframework.dao.DataAccessException;
import com.jsh.base.BaseAction;
import com.jsh.base.Log;
import com.jsh.model.po.DepotHead;
import com.jsh.model.po.Logdetails;
import com.jsh.model.po.Account;
import com.jsh.model.vo.basic.AccountModel;
import com.jsh.service.basic.AccountIService;
import com.jsh.service.materials.DepotHeadIService;
import com.jsh.util.PageUtil;
/**
* 结算账户
@@ -23,7 +25,8 @@ import com.jsh.util.PageUtil;
public class AccountAction extends BaseAction<AccountModel>
{
private AccountIService accountService;
private AccountModel model = new AccountModel();
private DepotHeadIService depotHeadService;
private AccountModel model = new AccountModel();
@SuppressWarnings({ "rawtypes", "unchecked" })
public String getAccount()
@@ -290,7 +293,7 @@ public class AccountAction extends BaseAction<AccountModel>
item.put("name", account.getName());
item.put("serialNo", account.getSerialNo());
item.put("initialAmount", account.getInitialAmount());
item.put("currentAmount", account.getCurrentAmount());
item.put("currentAmount", getAccountSum(account.getId()) + account.getInitialAmount());
item.put("remark", account.getRemark());
item.put("op", 1);
dataArray.add(item);
@@ -309,6 +312,31 @@ public class AccountAction extends BaseAction<AccountModel>
Log.errorFileSync(">>>>>>>>>回写查询结算账户信息结果异常", e);
}
}
/**
* 单个账户的金额求和
* @param id
* @return
*/
public Double getAccountSum(Long id){
Double accountSum = 0.0;
try{
PageUtil<DepotHead> pageUtil = new PageUtil<DepotHead>();
pageUtil.setPageSize(0);
pageUtil.setCurPage(0);
pageUtil.setAdvSearch(getCondition_getSum(id));
depotHeadService.find(pageUtil);
List<DepotHead> dataList = pageUtil.getPageList();
if(dataList!= null){
for(DepotHead depotHead:dataList){
accountSum = accountSum + depotHead.getChangeAmount();
}
}
}
catch (DataAccessException e){
Log.errorFileSync(">>>>>>>>>查找进销存信息异常", e);
}
return accountSum;
}
/**
* 查找结算账户信息-下拉框
@@ -380,6 +408,20 @@ public class AccountAction extends BaseAction<AccountModel>
condition.put("id_s_order", "desc");
return condition;
}
/**
* 拼接搜索条件-结算账户当前余额求和
* @return
*/
private Map<String,Object> getCondition_getSum(Long id)
{
/**
* 拼接搜索条件
*/
Map<String,Object> condition = new HashMap<String,Object>();
condition.put("AccountId_n_eq", id);
return condition;
}
//=============以下spring注入以及Model驱动公共方法与Action处理无关==================
@Override
@@ -391,4 +433,7 @@ public class AccountAction extends BaseAction<AccountModel>
{
this.accountService = accountService;
}
public void setDepotHeadService(DepotHeadIService depotHeadService) {
this.depotHeadService = depotHeadService;
}
}

View File

@@ -270,10 +270,10 @@ public class DepotHeadAction extends BaseAction<DepotHeadModel>
item.put("HandsPersonName", depotHead.getHandsPersonId()==null?"":depotHead.getHandsPersonId().getName());
item.put("AccountId", depotHead.getAccountId()==null?"":depotHead.getAccountId().getId());
item.put("AccountName", depotHead.getAccountId()==null?"":depotHead.getAccountId().getName());
item.put("ChangeAmount", depotHead.getChangeAmount());
item.put("ChangeAmount", depotHead.getChangeAmount()==null?"":Math.abs(depotHead.getChangeAmount()));
item.put("AllocationProjectId", depotHead.getAllocationProjectId()==null?"":depotHead.getAllocationProjectId().getId());
item.put("AllocationProjectName", depotHead.getAllocationProjectId()==null?"":depotHead.getAllocationProjectId().getName());
item.put("TotalPrice", depotHead.getTotalPrice());
item.put("TotalPrice", depotHead.getTotalPrice()==null?"":Math.abs(depotHead.getTotalPrice()));
item.put("Remark", depotHead.getRemark());
item.put("op", 1);
dataArray.add(item);

View File

@@ -1,5 +1,4 @@
package com.jsh.service.basic;
import com.jsh.base.BaseService;
import com.jsh.dao.basic.AccountIDAO;
import com.jsh.model.po.Account;
@@ -9,11 +8,11 @@ public class AccountService extends BaseService<Account> implements AccountIServ
@SuppressWarnings("unused")
private AccountIDAO accountDao;
public void setAccountDao(AccountIDAO accountDao)
public void setAccountDao(AccountIDAO accountDao)
{
this.accountDao = accountDao;
}
@Override
protected Class<Account> getEntityClass()
{