delboy1978uk / expenses
一种收支记录的工具
v2.1.9
2017-12-15 19:31 UTC
Requires
- delboy1978uk/common: ^2.4.0
Requires (Dev)
- codeception/codeception: ^2.1.3
README
安装
使用composer安装该包
composer require delboy1978uk/expenses
数据库设置
根据 vendor/delboy1978uk/common/migrant-cfg.php.dist 创建 migrant-cfg.php,并在包部分添加 delboy1978uk/expenses。然后运行
migrant migrate
公共包注册
Expenses 与 delboy1978uk/common 配合使用,它包含 Doctrine 实体管理器和 Pimple DIC。将 Del\Expenses\ExpensesPackage 注册到容器中。
use Del\Common\ContainerService; use Del\Expenses\ExpensesPackage; $package = new ExpensesPackage(); ContainerService::getInstance()->registerToContainer($package);
Expenses 服务
$container = ContainerService::getInstance()->getContainer(); $svc = $container['service.expenses'];
服务方法
$svc->createIncomeFromArray($data); $svc->createExpenditureFromArray($data); $svc->createExpenseClaimFromArray($data); $svc->toArray($entity); $svc->saveIncome($entity); $svc->saveExpenditure($entity); $svc->saveExpenseClaim($entity); $svc->deleteIncome($entity); $svc->deleteExpenditure($entity); $svc->deleteExpenseClaim($entity); $svc->deleteEntry($entity); $svc->findByCriteria($criteria); $svc->findIncomeById($id); $svc->findExpenditureById($id); $svc->findExpenseClaimById($id); $svc->findExpenseClaimById($id); $svc->saveIncome($income); $svc->saveExpenditure($expenditure); $svc->saveExpenseClaim($claim);
实体
有三种类型的实体,它们都扩展了抽象类 Entry,Income,Expenditure 和 Expense Claim。Income 和 Expenditure 对于个体经营者来说已经足够,有限公司的人可以使用 ExpenseClaim 实体来记录自己口袋里的支出,这些支出可以从业务中报销。所有这些都是为了确定你的应税收入。EntryInterface 有以下方法
$entity->getId(); $entity->getUserId(); $entity->getDate(); $entity->getAmount(); $entity->getDescription(); $entity->getNote(); $entity->getCategory(); $entity->getType();
条件
使用条件对象搜索数据库很简单
use Del\Expenses\Criteria\EntryCriteria; $criteria = new Criteria(); $criteria->setUserId(42); $criteria->setType('IN'); // also OUT or CLAIM $criteria->setOrder(Criteria::ORDER_DATE); $criteria->setLimit(25); $criteria->setOffset(74); $results = $svc->findByCriteria($criteria);