镇管理公司任务-小组服务公司上交股金接口
This commit is contained in:
parent
0e5697f454
commit
dabac037c4
@ -5,9 +5,12 @@ namespace app\api\controller;
|
|||||||
use app\common\logic\contract\ContractLogic;
|
use app\common\logic\contract\ContractLogic;
|
||||||
use app\common\model\auth\Admin;
|
use app\common\model\auth\Admin;
|
||||||
use app\common\model\Company;
|
use app\common\model\Company;
|
||||||
|
use app\common\model\company\CompanyAccountLog;
|
||||||
use app\common\model\contract\Contract;
|
use app\common\model\contract\Contract;
|
||||||
|
use app\common\model\task\Task;
|
||||||
use app\common\model\user\User;
|
use app\common\model\user\User;
|
||||||
use app\common\model\user\UserAccountLog;
|
use app\common\model\user\UserAccountLog;
|
||||||
|
use think\Exception;
|
||||||
use think\facade\Db;
|
use think\facade\Db;
|
||||||
use app\common\model\informationg\UserInformationg;
|
use app\common\model\informationg\UserInformationg;
|
||||||
use app\common\model\informationg\UserInformationgDemand;
|
use app\common\model\informationg\UserInformationgDemand;
|
||||||
@ -201,7 +204,7 @@ class CompanyController extends BaseApiController
|
|||||||
public function shareholder_info()
|
public function shareholder_info()
|
||||||
{
|
{
|
||||||
// $params = $this->request->param();
|
// $params = $this->request->param();
|
||||||
$find = Company::where('id', $this->userInfo['company_id'])->field('shareholder_money,village')->find()->toArray();
|
$find = Company::where('id', $this->userInfo['company_id'])->field('id,shareholder_money,village')->find()->toArray();
|
||||||
$find['is_contract'] = 0;
|
$find['is_contract'] = 0;
|
||||||
$find['check_status'] = 0;
|
$find['check_status'] = 0;
|
||||||
if ($find) {
|
if ($find) {
|
||||||
@ -227,10 +230,17 @@ class CompanyController extends BaseApiController
|
|||||||
} else {
|
} else {
|
||||||
$find['is_village'] = 0;
|
$find['is_village'] = 0;
|
||||||
}
|
}
|
||||||
|
// 股金任务是否完成
|
||||||
|
$task = Task::where(['company_id' => $find['id'], 'type' => 35, 'status' => 3])->find();
|
||||||
|
$find['is_done_task'] = 0;
|
||||||
|
if (!empty($task)) {
|
||||||
|
$find['is_done_task'] = 1;
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
$find['contract_url'] = '';
|
$find['contract_url'] = '';
|
||||||
$find['contract_time'] = '';
|
$find['contract_time'] = '';
|
||||||
$find['is_village'] = 0;
|
$find['is_village'] = 0;
|
||||||
|
$find['is_done_task'] = 0;
|
||||||
}
|
}
|
||||||
return $this->success('ok', $find);
|
return $this->success('ok', $find);
|
||||||
}
|
}
|
||||||
@ -262,8 +272,75 @@ class CompanyController extends BaseApiController
|
|||||||
}
|
}
|
||||||
return $this->fail(ContractLogic::getError());
|
return $this->fail(ContractLogic::getError());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 小组服务公司股金上交
|
||||||
|
*/
|
||||||
public function pay_share_capital()
|
public function pay_share_capital()
|
||||||
{
|
{
|
||||||
// return
|
try {
|
||||||
|
$param = $this->request->param();
|
||||||
|
// 上交股金金额
|
||||||
|
$amount = $param['amount'];
|
||||||
|
// 小组服务公司
|
||||||
|
$serviceGroupCompany = Company::where('id', $this->userInfo['company_id'])->find()->toArray();
|
||||||
|
if ($amount < 0) {
|
||||||
|
$this->fail('参数错误,金额不能为负数');
|
||||||
|
}
|
||||||
|
if ($amount > $serviceGroupCompany['shareholder_money']) {
|
||||||
|
$this->fail('公司股东金额不足以抵扣上交股金金额');
|
||||||
|
}
|
||||||
|
// 村管理公司
|
||||||
|
$villageCompany = Company::where(['village'=>$serviceGroupCompany['village'], 'company_type' => 17])->find()->toArray();
|
||||||
|
|
||||||
|
Db::startTrans();
|
||||||
|
$sharecapitalChangeLogData = [
|
||||||
|
'subordinate_company_id' => $serviceGroupCompany['id'],
|
||||||
|
'parent_company_id' => $villageCompany['id'],
|
||||||
|
'amount' => $amount
|
||||||
|
];
|
||||||
|
$sharecapitalChangeLogInsertId = Db::name('company_sharecapital_change_log')->insertGetId($sharecapitalChangeLogData);
|
||||||
|
|
||||||
|
// 小组服务公司股金变动 + 公司股金减少记录
|
||||||
|
$leftAmount = bcsub($serviceGroupCompany['shareholder_money'], $amount, 2);
|
||||||
|
Company::where('id', $this->userInfo['company_id'])->save('shareholder_money', $leftAmount);
|
||||||
|
$company_log1 = [
|
||||||
|
'sn' => generate_sn(UserAccountLog::class, 'sn', 20),
|
||||||
|
'company_id' => $serviceGroupCompany['id'],
|
||||||
|
'change_object' => 2, // 变动对象 1余额 2股金
|
||||||
|
'change_type' => CompanyAccountLog::SHAREHOLDER_DEC_DEPOSIT, //变动类型
|
||||||
|
'action' => 2, //1-增加 2-减少
|
||||||
|
'left_amount' => $leftAmount, //变动后数量
|
||||||
|
'change_amount' => $amount, //变动数量
|
||||||
|
'extend' => json_encode(['company_sharecapital_change_log_id' => $sharecapitalChangeLogInsertId]),
|
||||||
|
'status' => 1,
|
||||||
|
];
|
||||||
|
CompanyAccountLog::create($company_log1);
|
||||||
|
|
||||||
|
// 村管理公司股金变动 + 公司股金增加记录
|
||||||
|
$addAmount = bcadd($villageCompany['shareholder_money'], $amount, 2);
|
||||||
|
Company::where('id', $villageCompany['id'])->save('shareholder_money', $addAmount);
|
||||||
|
|
||||||
|
// 公司账户变动记录
|
||||||
|
$company_log2 = [
|
||||||
|
'sn' => generate_sn(UserAccountLog::class, 'sn', 20),
|
||||||
|
'company_id' => $villageCompany['id'],
|
||||||
|
'change_object' => 2, // 变动对象 1余额 2股金
|
||||||
|
'change_type' => CompanyAccountLog::TASK_INC_SHAREHOLDER_MONEY, //变动类型
|
||||||
|
'action' => 1, //1-增加 2-减少
|
||||||
|
'left_amount' => $addAmount, //变动后数量
|
||||||
|
'change_amount' => $amount, //变动数量
|
||||||
|
'extend' => json_encode(['company_sharecapital_change_log_id' => $sharecapitalChangeLogInsertId]),
|
||||||
|
'status' => 1,
|
||||||
|
];
|
||||||
|
CompanyAccountLog::create($company_log2);
|
||||||
|
Db::commit();
|
||||||
|
return $this->success('上交成功');
|
||||||
|
} catch (Exception $e) {
|
||||||
|
Db::rolback();
|
||||||
|
return $this->fail($e->getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user