feat: 优化收银台现金流水逻辑
This commit is contained in:
parent
2258d11ea8
commit
ec86c3b6b7
@ -11,11 +11,17 @@ class CashFlowLogic extends BaseLogic
|
||||
public function insert($storeId, $amount)
|
||||
{
|
||||
$model = new StoreCashFinanceFlow();
|
||||
$model->store_id = $storeId;
|
||||
$model->cash_price = $amount;
|
||||
$model->receivable = $amount;
|
||||
$model->status = YesNoEnum::NO;//收银台收了默认算完成了
|
||||
$model->save();
|
||||
$find = $model->where(['store_id' => $storeId])->whereDay('create_time')->where('status', 0)->find();
|
||||
if ($find) {
|
||||
$find->cash_price = bcadd($find->cash_price, $amount, 2);
|
||||
$find->receivable = bcadd($find->receivable, $amount, 2);
|
||||
$find->save();
|
||||
} else {
|
||||
$model->store_id = $storeId;
|
||||
$model->cash_price = $amount;
|
||||
$model->receivable = $amount;
|
||||
$model->status = YesNoEnum::NO; //收银台收了默认算完成了
|
||||
$model->save();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -0,0 +1,66 @@
|
||||
<?php
|
||||
|
||||
namespace app\store\controller\store_cash_finance_flow;
|
||||
|
||||
|
||||
use app\store\controller\BaseAdminController;
|
||||
use app\admin\logic\store_cash_finance_flow\StoreCashFinanceFlowLogic;
|
||||
use app\admin\validate\store_cash_finance_flow\StoreCashFinanceFlowValidate;
|
||||
use app\common\model\store_cash_finance_flow\StoreCashFinanceFlow;
|
||||
use app\store\lists\store_cash_finance_flow\StoreCashFinanceFlowLists;
|
||||
|
||||
/**
|
||||
* 现金流水控制器
|
||||
* Class StoreCashFinanceFlowController
|
||||
* @package app\admin\controller\store_cash_finance_flow
|
||||
*/
|
||||
class StoreCashFinanceFlowController extends BaseAdminController
|
||||
{
|
||||
|
||||
|
||||
/**
|
||||
* @notes 获取现金流水列表
|
||||
* @return \think\response\Json
|
||||
* @author admin
|
||||
* @date 2024/06/06 10:29
|
||||
*/
|
||||
public function lists()
|
||||
{
|
||||
return $this->dataLists(new StoreCashFinanceFlowLists());
|
||||
}
|
||||
|
||||
/**
|
||||
* @notes 编辑现金流水
|
||||
* @return \think\response\Json
|
||||
* @author admin
|
||||
* @date 2024/06/06 10:29
|
||||
*/
|
||||
public function edit()
|
||||
{
|
||||
$id=$this->request->post('id');
|
||||
$res=StoreCashFinanceFlow::where(['store_id'=>$this->adminInfo['store_id'],'id'=>$id])->update(['store_status'=>1]);
|
||||
if ($res) {
|
||||
return $this->success('上交成功,等待财务审核', [], 1, 1);
|
||||
}
|
||||
return $this->fail('没有更新');
|
||||
}
|
||||
|
||||
/**
|
||||
* @notes 获取现金流水详情
|
||||
* @return \think\response\Json
|
||||
* @author admin
|
||||
* @date 2024/06/06 10:29
|
||||
*/
|
||||
public function detail()
|
||||
{
|
||||
$params = (new StoreCashFinanceFlowValidate())->goCheck('detail');
|
||||
$result = StoreCashFinanceFlowLogic::detail($params);
|
||||
$result['image']='https://lihaiim.oss-cn-chengdu.aliyuncs.com/public/uploads/images/20240619/20240619104553f7e108704.jpg';
|
||||
$result['bank_code']='456565656';
|
||||
$result['bank_name']='里海农科';
|
||||
$result['bank_address']='泸州支行';
|
||||
return $this->data($result);
|
||||
}
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,72 @@
|
||||
<?php
|
||||
|
||||
namespace app\store\lists\store_cash_finance_flow;
|
||||
|
||||
|
||||
use app\admin\lists\BaseAdminDataLists;
|
||||
use app\common\model\store_cash_finance_flow\StoreCashFinanceFlow;
|
||||
use app\common\lists\ListsSearchInterface;
|
||||
use app\common\model\auth\Admin;
|
||||
use app\common\model\system_store\SystemStore;
|
||||
|
||||
/**
|
||||
* 现金流水列表
|
||||
* Class StoreCashFinanceFlowLists
|
||||
* @package app\admin\listsstore_cash_finance_flow
|
||||
*/
|
||||
class StoreCashFinanceFlowLists extends BaseAdminDataLists implements ListsSearchInterface
|
||||
{
|
||||
|
||||
|
||||
/**
|
||||
* @notes 设置搜索条件
|
||||
* @return \string[][]
|
||||
* @author admin
|
||||
* @date 2024/06/06 10:29
|
||||
*/
|
||||
public function setSearch(): array
|
||||
{
|
||||
return [
|
||||
"between_time" => 'create_time'
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @notes 获取现金流水列表
|
||||
* @return array
|
||||
* @throws \think\db\exception\DataNotFoundException
|
||||
* @throws \think\db\exception\DbException
|
||||
* @throws \think\db\exception\ModelNotFoundException
|
||||
* @author admin
|
||||
* @date 2024/06/06 10:29
|
||||
*/
|
||||
public function lists(): array
|
||||
{
|
||||
$this->searchWhere[]=['store_id','=',$this->adminInfo['store_id']];
|
||||
return StoreCashFinanceFlow::where($this->searchWhere)
|
||||
->field(['id', 'store_id', 'cash_price', 'receivable', 'receipts', 'admin_id', 'file', 'remark', 'status'])
|
||||
->limit($this->limitOffset, $this->limitLength)
|
||||
->order(['id' => 'desc'])
|
||||
->select()->each(function ($item) {
|
||||
$item->store_name =SystemStore::where('id', $item->store_id)->value('name');
|
||||
if($item->admin_id>0){
|
||||
$item->admin_name =Admin::where('id', $item->admin_id)->value('name');
|
||||
}
|
||||
})
|
||||
->toArray();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @notes 获取现金流水数量
|
||||
* @return int
|
||||
* @author admin
|
||||
* @date 2024/06/06 10:29
|
||||
*/
|
||||
public function count(): int
|
||||
{
|
||||
return StoreCashFinanceFlow::where($this->searchWhere)->count();
|
||||
}
|
||||
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user