This commit is contained in:
mkm 2023-08-09 15:44:41 +08:00
parent d2d1a0ee06
commit 6fb5f9b5d7
2 changed files with 47 additions and 20 deletions

View File

@ -3,21 +3,43 @@ namespace app\common\logic\finance;
use app\common\enum\user\AccountLogEnum;
use app\common\logic\AccountLogLogic;
use app\common\model\Company;
use app\common\model\user\User;
class ShareProfit
{
public function first($data,$company_id,$user_id,$money)
public function first($data)
{
$userAll=User::where('company_id',$data['company_id'])->where('admin_id',0)->field('id,user_money')->select();
$company=Company::where('id',$data['company_id'])->field('id,deposit,company_money')->find();
$master_maoney=bcdiv($data['money'],2,2);
$this->master($data,$master_maoney,$data['user_id']);
$userAll=User::where('company_id',$data['company_id'])->where('admin_id',0)->field('id,user_money')->select();
$yser_all_count=count($userAll);
$merber_money=bcdiv(bcsub($data['money'],$master_maoney,2),$yser_all_count,2);
foreach ($userAll as $key => $value) {
$this->member($data,$merber_money,$value['id']);
}
}
private function master($data,$money,$user_id){
/**负责人的分润
* @param $data
*/
private function master($data,$money,$user_id): void{
$master=User::where('id',$user_id)->field('id,user_money')->find();
AccountLogLogic::add($user_id, AccountLogEnum::UM_INC_TASK, AccountLogEnum::INC,$money,
$data['sn'],
'充值订单退款');
$data['msg']);
}
/**成员分润
* @param $data
*/
private function member($data,$money,$user_id): void{
$master=User::where('id',$user_id)->field('id,user_money')->find();
AccountLogLogic::add($user_id, AccountLogEnum::UM_INC_TASK, AccountLogEnum::INC,$money,
$data['sn'],
$data['msg']);
}
}

View File

@ -23,12 +23,13 @@ class UserInformationg extends BaseModel
return $this->hasOne(\app\common\model\informationg\UserInformationgDemand::class, 'information_id', 'id');
}
public function getExtendAttr($valur,$data){
$company_name=Company::where('id',$data['company_id'])->value('company_name');
$nickname=User::where('id',$data['create_user_id'])->value('nickname');
public function getExtendAttr($valur, $data)
{
$company_name = Company::where('id', $data['company_id'])->value('company_name');
$nickname = User::where('id', $data['create_user_id'])->value('nickname');
return [
'company_name'=>$company_name,
'nickname'=>$nickname
'company_name' => $company_name,
'nickname' => $nickname
];
}
@ -37,7 +38,7 @@ class UserInformationg extends BaseModel
{
return self::where($param)->with('company')
->field('id,area_id,area_id as area_name,street_id,street_id as street_name,village_id,village_id as village_name, street_id as street_name,brigade_id,brigade_id as brigade_name,name,phone,age,address,create_time,update_time')
->order('id','desc')
->order('id', 'desc')
->page($page)->limit($size)->select();
}
@ -52,8 +53,8 @@ class UserInformationg extends BaseModel
'name' => $param['name'],
'phone' => $param['phone'],
'age' => $param['age'],
'sex'=>$param['sex'],
'id_card'=>$param['id_card'],
'sex' => $param['sex'],
'id_card' => $param['id_card'],
'wechat' => $param['wechat'],
'area_id' => $param['area_id'],
'street_id' => $param['street_id'],
@ -86,12 +87,12 @@ class UserInformationg extends BaseModel
public static function informationg_demand($param, $id, $admin_id)
{
if(isset($param['card_id']) &&$param['card_id'] >0){
$category_id=Db::name('category_business')->where('id',$param['card_id'])->value('pid');
$category_child=$param['card_id'];
}else{
$category_id=0;
$category_child=0;
if (isset($param['card_id']) && $param['card_id'] > 0) {
$category_id = Db::name('category_business')->where('id', $param['card_id'])->value('pid');
$category_child = $param['card_id'];
} else {
$category_id = 0;
$category_child = 0;
}
$data = [
'create_user_id' => $admin_id,
@ -119,7 +120,7 @@ class UserInformationg extends BaseModel
$a = json_decode($v['data'], true);
$arr = [
'id' => $v['category_child'],
'update_time'=>$v['update_time'],
'update_time' => $v['update_time'],
'datas' => $a
];
if ($a) {
@ -156,6 +157,10 @@ class UserInformationg extends BaseModel
}
public function getBrigadeNameAttr($value)
{
return Db::name('geo_brigade')->where(['id' => $this->brigade_id])->value('brigade_name');
if ($this->brigade_id) {
return Db::name('geo_brigade')->where('id', 'in', explode(',', $this->brigade_id))->field('brigade_name')->find();
} else {
return [];
}
}
}