update 村联络员-督促小组服务团队入股任,镇农科服务部长-督促小组服务团队入股村管理公司任务,村联络员任务-入股甲方公司.改为手动审核,线下转账
This commit is contained in:
parent
a822dc5eae
commit
1e97e3f536
@ -214,14 +214,22 @@ class ApproveController extends BaseAdminController
|
|||||||
$task->save();
|
$task->save();
|
||||||
}
|
}
|
||||||
|
|
||||||
// 小组服务公司股金上交
|
// 小组服务公司股金上交 小组服务团队-入股任务 村联络员-督促小组服务团队入股任务 镇农科服务部长-督促小组服务团队入股村管理公司任务
|
||||||
if ($approve->type == Approve::APPROVE_TYPE_10) {
|
if ($approve->type == Approve::APPROVE_TYPE_10 || $approve->type == Approve::APPROVE_TYPE_11 || $approve->type == Approve::APPROVE_TYPE_13) {
|
||||||
// 上交股金的公司
|
// 小组服务公司
|
||||||
$subordinateCompany = Company::where(['id'=>$approve->department_id])->find();
|
$subordinateCompany = Company::where(['id'=>$approve->department_id])->find();
|
||||||
// 接收股金的公司
|
// 村公司
|
||||||
$parentCompany = Company::where(['village'=>$subordinateCompany['village'], 'company_type'=>17])->find();
|
$parentCompany = Company::where(['village'=>$subordinateCompany['village'], 'company_type'=>17])->find();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 村管理公司股金上交 村联络员任务-入股甲方公司
|
||||||
|
if ($approve->type == Approve::APPROVE_TYPE_12) {
|
||||||
|
// 村公司
|
||||||
|
$subordinateCompany = Company::where(['id'=>$approve->department_id])->find();
|
||||||
|
// 镇农科公司 负责区域包含有村公司的street码
|
||||||
|
$parentCompany = Db::query("select id from la_company where company_type=:company_type and FIND_IN_SET(:street,responsible_area)", ['company_type' => 41,'street'=>$subordinateCompany['street']], true)[0];
|
||||||
|
}
|
||||||
|
|
||||||
$amount = $approve->amount; // 上交股金金额
|
$amount = $approve->amount; // 上交股金金额
|
||||||
|
|
||||||
$subordinateCompany->shareholder_money = $amount;
|
$subordinateCompany->shareholder_money = $amount;
|
||||||
@ -235,7 +243,7 @@ class ApproveController extends BaseAdminController
|
|||||||
$approve->remark = $params['remark'];
|
$approve->remark = $params['remark'];
|
||||||
$approve->save();
|
$approve->save();
|
||||||
|
|
||||||
// 任务结算
|
// 小组服务团队-入股任务结算
|
||||||
if ($approve->type == Approve::APPROVE_TYPE_10) {
|
if ($approve->type == Approve::APPROVE_TYPE_10) {
|
||||||
$taskSchedulingPaln = TaskSchedulingPlan::where(['task_id' => $task->id])
|
$taskSchedulingPaln = TaskSchedulingPlan::where(['task_id' => $task->id])
|
||||||
->withJoin(['scheduling'], 'left')
|
->withJoin(['scheduling'], 'left')
|
||||||
@ -247,6 +255,39 @@ class ApproveController extends BaseAdminController
|
|||||||
$taskInfo = $task->toArray();
|
$taskInfo = $task->toArray();
|
||||||
$this->taskSettlement($taskInfo, $subordinateCompany, $taskSchedulingPaln);
|
$this->taskSettlement($taskInfo, $subordinateCompany, $taskSchedulingPaln);
|
||||||
}
|
}
|
||||||
|
// 村联络员-督促小组服务团队入股
|
||||||
|
if ($approve->type == Approve::APPROVE_TYPE_11) {
|
||||||
|
$taskSchedulingPaln = TaskSchedulingPlan::where(['task_id' => $task->id])
|
||||||
|
->withJoin(['scheduling'], 'left')
|
||||||
|
->where('scheduling.company_type', 17)
|
||||||
|
->where('is_pay',0)
|
||||||
|
->with(['template_info'])
|
||||||
|
->select()
|
||||||
|
->toArray()[0];
|
||||||
|
TaskLogic::dealVillageTask4($taskSchedulingPaln, $approve);
|
||||||
|
}
|
||||||
|
// 村联络员-入股甲方公司
|
||||||
|
if ($approve->type == Approve::APPROVE_TYPE_12) {
|
||||||
|
$taskSchedulingPaln = TaskSchedulingPlan::where(['task_id' => $task->id])
|
||||||
|
->withJoin(['scheduling'], 'left')
|
||||||
|
->where('scheduling.company_type', 17)
|
||||||
|
->where('is_pay',0)
|
||||||
|
->with(['template_info'])
|
||||||
|
->select()
|
||||||
|
->toArray()[0];
|
||||||
|
TaskLogic::dealVillageTask5($taskSchedulingPaln, $approve);
|
||||||
|
}
|
||||||
|
// 镇农科服务部长-督促小组服务团队入股村管理公司任务
|
||||||
|
if ($approve->type == Approve::APPROVE_TYPE_13) {
|
||||||
|
$taskSchedulingPaln = TaskSchedulingPlan::where(['task_id' => $task->id])
|
||||||
|
->withJoin(['scheduling'], 'left')
|
||||||
|
->where('scheduling.company_type', 41)
|
||||||
|
->where('is_pay',0)
|
||||||
|
->with(['template_info'])
|
||||||
|
->select()
|
||||||
|
->toArray()[0];
|
||||||
|
TaskLogic::dealTownTask6($taskSchedulingPaln, $approve);
|
||||||
|
}
|
||||||
Db::commit();
|
Db::commit();
|
||||||
return $this->success('成功');
|
return $this->success('成功');
|
||||||
}
|
}
|
||||||
|
@ -720,6 +720,8 @@ class TaskController extends BaseApiController
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 小组服务团队-入股任务提交
|
||||||
|
|
||||||
public function commit_service_group_task()
|
public function commit_service_group_task()
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
@ -757,4 +759,121 @@ class TaskController extends BaseApiController
|
|||||||
return $this->fail($e->getMessage());
|
return $this->fail($e->getMessage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 村联络员-督促小组服务团队入股任务提交
|
||||||
|
public function commit_village_task_4()
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
$parmas = $this->request->param(); // id annex amount
|
||||||
|
$task = TaskLogic::detail($parmas);
|
||||||
|
if (empty($task)) {
|
||||||
|
$this->fail('任务不存在');
|
||||||
|
}
|
||||||
|
$extend = $task['extend'];
|
||||||
|
$extend['is_commit'] = 1;
|
||||||
|
$extend['annex'] = $parmas['annex'];
|
||||||
|
$extend['file_type'] = $parmas['file_type'];
|
||||||
|
$extend['amount'] = $parmas['amount'];
|
||||||
|
|
||||||
|
Task::where(['id' => $parmas['id']])->update(['extend' => json_encode($extend), 'update_time' => time(), 'director_uid' => $this->userId]); // director_uid 指派人
|
||||||
|
|
||||||
|
// 创建审批任务
|
||||||
|
$approveModel = new Approve();
|
||||||
|
$approveModel->type = Approve::APPROVE_TYPE_11;
|
||||||
|
$approveModel->flow_id = 1;
|
||||||
|
$approveModel->name = $task['title'];
|
||||||
|
$approveModel->admin_id = 0; // 后台发起人id 暂时为0
|
||||||
|
$approveModel->user_id = $this->userId; // 前台发起人用户id
|
||||||
|
$approveModel->task_id = $task['id']; // 任务id
|
||||||
|
$approveModel->department_id = $this->userInfo['company_id']; // 公司id
|
||||||
|
$approveModel->check_status = 1; // 状态 0待审核,1审核中,2审核通过,3审核不通过,4撤销审核
|
||||||
|
$approveModel->other_type = 6;
|
||||||
|
$approveModel->amount = $parmas['amount']; // 入股金额
|
||||||
|
$approveModel->extend = json_encode($extend);
|
||||||
|
$approveModel->create_time = time();
|
||||||
|
$approveModel->update_time = time();
|
||||||
|
$re = $approveModel->save();
|
||||||
|
return $this->success('ok', []);
|
||||||
|
} catch (Exception $e) {
|
||||||
|
return $this->fail($e->getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 村联络员-入股甲方公司任务提交
|
||||||
|
public function commit_village_task_5()
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
$parmas = $this->request->param(); // id annex amount
|
||||||
|
$task = TaskLogic::detail($parmas);
|
||||||
|
if (empty($task)) {
|
||||||
|
$this->fail('任务不存在');
|
||||||
|
}
|
||||||
|
$extend = $task['extend'];
|
||||||
|
$extend['is_commit'] = 1;
|
||||||
|
$extend['annex'] = $parmas['annex'];
|
||||||
|
$extend['file_type'] = $parmas['file_type'];
|
||||||
|
$extend['amount'] = $parmas['amount'];
|
||||||
|
|
||||||
|
Task::where(['id' => $parmas['id']])->update(['extend' => json_encode($extend), 'update_time' => time(), 'director_uid' => $this->userId]); // director_uid 指派人
|
||||||
|
|
||||||
|
// 创建审批任务
|
||||||
|
$approveModel = new Approve();
|
||||||
|
$approveModel->type = Approve::APPROVE_TYPE_12;
|
||||||
|
$approveModel->flow_id = 1;
|
||||||
|
$approveModel->name = $task['title'];
|
||||||
|
$approveModel->admin_id = 0; // 后台发起人id 暂时为0
|
||||||
|
$approveModel->user_id = $this->userId; // 前台发起人用户id
|
||||||
|
$approveModel->task_id = $task['id']; // 任务id
|
||||||
|
$approveModel->department_id = $this->userInfo['company_id']; // 公司id
|
||||||
|
$approveModel->check_status = 1; // 状态 0待审核,1审核中,2审核通过,3审核不通过,4撤销审核
|
||||||
|
$approveModel->other_type = 6;
|
||||||
|
$approveModel->amount = $parmas['amount']; // 入股金额
|
||||||
|
$approveModel->extend = json_encode($extend);
|
||||||
|
$approveModel->create_time = time();
|
||||||
|
$approveModel->update_time = time();
|
||||||
|
$re = $approveModel->save();
|
||||||
|
return $this->success('ok', []);
|
||||||
|
} catch (Exception $e) {
|
||||||
|
return $this->fail($e->getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 服务部长-督促小组服务团队入股村管理公司
|
||||||
|
public function commit_town_service_manager_task_6()
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
$parmas = $this->request->param(); // id annex amount
|
||||||
|
$task = TaskLogic::detail($parmas);
|
||||||
|
if (empty($task)) {
|
||||||
|
$this->fail('任务不存在');
|
||||||
|
}
|
||||||
|
$extend = $task['extend'];
|
||||||
|
$extend['is_commit'] = 1;
|
||||||
|
$extend['annex'] = $parmas['annex'];
|
||||||
|
$extend['file_type'] = $parmas['file_type'];
|
||||||
|
$extend['amount'] = $parmas['amount'];
|
||||||
|
|
||||||
|
Task::where(['id' => $parmas['id']])->update(['extend' => json_encode($extend), 'update_time' => time(), 'director_uid' => $this->userId]); // director_uid 指派人
|
||||||
|
|
||||||
|
// 创建审批任务
|
||||||
|
$approveModel = new Approve();
|
||||||
|
$approveModel->type = Approve::APPROVE_TYPE_13;
|
||||||
|
$approveModel->flow_id = 1;
|
||||||
|
$approveModel->name = $task['title'];
|
||||||
|
$approveModel->admin_id = 0; // 后台发起人id 暂时为0
|
||||||
|
$approveModel->user_id = $this->userId; // 前台发起人用户id
|
||||||
|
$approveModel->task_id = $task['id']; // 任务id
|
||||||
|
$approveModel->department_id = $this->userInfo['company_id']; // 公司id
|
||||||
|
$approveModel->check_status = 1; // 状态 0待审核,1审核中,2审核通过,3审核不通过,4撤销审核
|
||||||
|
$approveModel->other_type = 6;
|
||||||
|
$approveModel->amount = $parmas['amount']; // 入股金额
|
||||||
|
$approveModel->extend = json_encode($extend);
|
||||||
|
$approveModel->create_time = time();
|
||||||
|
$approveModel->update_time = time();
|
||||||
|
$re = $approveModel->save();
|
||||||
|
return $this->success('ok', []);
|
||||||
|
} catch (Exception $e) {
|
||||||
|
return $this->fail($e->getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -2205,7 +2205,19 @@ class TaskLogic extends BaseLogic
|
|||||||
break;
|
break;
|
||||||
case 'town_task_type_6':
|
case 'town_task_type_6':
|
||||||
// 督促小组服务团队入股村联络员所成立的公司任务
|
// 督促小组服务团队入股村联络员所成立的公司任务
|
||||||
self::dealTownTask6($taskSchedulePlan);
|
// 后台手动审核 只判断任务是否超时
|
||||||
|
Log::info(['镇农科公司定时任务结算执行-'.$taskSchedulePlan['template_info']['title']]);
|
||||||
|
$taskTemplateInfo = $taskSchedulePlan['template_info'];
|
||||||
|
$taskDayCount = $taskTemplateInfo['day_count']; // 任务累计进行天数
|
||||||
|
$stageDayTwoAccumulative = intval(bcadd($taskTemplateInfo['stage_day_one'], $taskTemplateInfo['stage_day_two'])); // 第二阶段累计天数 第一+第二
|
||||||
|
// 当前任务进行天数 <= 第一+第二阶段天数 只刷新任务时间
|
||||||
|
if ($taskDayCount <= $stageDayTwoAccumulative) {
|
||||||
|
self::flushTaskTime($taskSchedulePlan);
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
(new Task())->closeTask($taskSchedulePlan['task_id']);
|
||||||
|
}
|
||||||
|
// self::dealTownTask6($taskSchedulePlan);
|
||||||
break;
|
break;
|
||||||
case 'town_task_type_7':
|
case 'town_task_type_7':
|
||||||
// 安全工作任务
|
// 安全工作任务
|
||||||
@ -2555,7 +2567,7 @@ class TaskLogic extends BaseLogic
|
|||||||
* 当前任务进行天数 < 第一+第二阶段天数 只刷新任务时间
|
* 当前任务进行天数 < 第一+第二阶段天数 只刷新任务时间
|
||||||
* 当前任务进行天数 = 第一+第二阶段天数 判定任务是否完成 结算 分润
|
* 当前任务进行天数 = 第一+第二阶段天数 判定任务是否完成 结算 分润
|
||||||
*/
|
*/
|
||||||
private static function dealTownTask6($taskSchedulePlan)
|
public static function dealTownTask6($taskSchedulePlan, $approve)
|
||||||
{
|
{
|
||||||
Log::info(['镇农科公司定时任务结算执行-'.$taskSchedulePlan['template_info']['title']]);
|
Log::info(['镇农科公司定时任务结算执行-'.$taskSchedulePlan['template_info']['title']]);
|
||||||
$taskTemplateInfo = $taskSchedulePlan['template_info'];
|
$taskTemplateInfo = $taskSchedulePlan['template_info'];
|
||||||
@ -2566,25 +2578,16 @@ class TaskLogic extends BaseLogic
|
|||||||
$townCompany = Company::where('id', $taskTemplateInfo['company_id'])->find(); // 镇农科公司
|
$townCompany = Company::where('id', $taskTemplateInfo['company_id'])->find(); // 镇农科公司
|
||||||
$villageCompanyList = Company::where(['street' => $townCompany['street'], 'company_type'=> 17])->select()->toArray(); // 村管理公司
|
$villageCompanyList = Company::where(['street' => $townCompany['street'], 'company_type'=> 17])->select()->toArray(); // 村管理公司
|
||||||
|
|
||||||
// 当前任务进行天数 < 第一+第二阶段天数 只刷新任务时间
|
|
||||||
if ($taskDayCount < $stageDayOneAccumulative) {
|
|
||||||
self::flushTaskTime($taskSchedulePlan);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 当前任务进行天数 = 第一+第二阶段天数 判定任务是否完成 结算 分润
|
// 当前任务进行天数 <= 第一+第二阶段天数 判定任务是否完成 结算 分润
|
||||||
if($taskDayCount == $stageDayTwoAccumulative) {
|
if($taskDayCount <= $stageDayTwoAccumulative) {
|
||||||
// 小组服务公司总数
|
// 小组服务公司总数
|
||||||
$groupServiceCompanyCount = Company::where(['street' => $townCompany['street'], 'company_type'=> 18])->count();
|
$groupServiceCompanyCount = Company::where(['street' => $townCompany['street'], 'company_type'=> 18])->count();
|
||||||
if ($groupServiceCompanyCount == 0) {
|
if ($groupServiceCompanyCount == 0) {
|
||||||
throw new Exception('小组服务公司数量为0异常'.__FILE__.__LINE__);
|
throw new Exception('小组服务公司数量为0异常'.__FILE__.__LINE__);
|
||||||
}
|
}
|
||||||
// 小组服务完成股金上交数
|
// 小组服务完成股金上交数
|
||||||
$sharecapitalPaidCount = 0;
|
$sharecapitalPaidCount = intdiv($approve->amount, 3000);
|
||||||
foreach ($villageCompanyList as $villageCompany) {
|
|
||||||
$sharecapitalPaidCount += Db::name('company_sharecapital_change_log')->where(['parent_company_id'=>$villageCompany['id']])->count();
|
|
||||||
}
|
|
||||||
|
|
||||||
$rate = bcdiv($sharecapitalPaidCount, $groupServiceCompanyCount, 2);
|
$rate = bcdiv($sharecapitalPaidCount, $groupServiceCompanyCount, 2);
|
||||||
|
|
||||||
// 小于50% 未完成 关闭任务
|
// 小于50% 未完成 关闭任务
|
||||||
@ -2675,11 +2678,33 @@ class TaskLogic extends BaseLogic
|
|||||||
break;
|
break;
|
||||||
// 督促小组服务团队入股
|
// 督促小组服务团队入股
|
||||||
case 'village_task_type_4':
|
case 'village_task_type_4':
|
||||||
self::dealVillageTask4($taskSchedulePlan);
|
// 结算逻辑由手动审核,任务超时则关闭
|
||||||
|
$taskTemplateInfo = $taskSchedulePlan['template_info'];
|
||||||
|
$dayCount = $taskTemplateInfo['day_count'];
|
||||||
|
$stageDayCount = bcadd($taskTemplateInfo['stage_day_one'], $taskTemplateInfo['stage_day_two']);
|
||||||
|
// 任务累计天数 < 第一阶段+第二阶段 刷新任务
|
||||||
|
if ($dayCount <= $stageDayCount) {
|
||||||
|
self::flushTaskTime($taskSchedulePlan);
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
(new Task())->closeTask($taskSchedulePlan['task_id']);
|
||||||
|
}
|
||||||
|
// self::dealVillageTask4($taskSchedulePlan);
|
||||||
break;
|
break;
|
||||||
// 入股甲方公司
|
// 入股甲方公司
|
||||||
case 'village_task_type_5':
|
case 'village_task_type_5':
|
||||||
self::dealVillageTask5($taskSchedulePlan);
|
// 结算逻辑由手动审核,任务超时则关闭
|
||||||
|
$taskTemplateInfo = $taskSchedulePlan['template_info'];
|
||||||
|
$dayCount = $taskTemplateInfo['day_count'];
|
||||||
|
$stageDayCount = bcadd($taskTemplateInfo['stage_day_one'], $taskTemplateInfo['stage_day_two']);
|
||||||
|
// 任务累计天数 < 第一阶段+第二阶段 刷新任务
|
||||||
|
if ($dayCount <= $stageDayCount) {
|
||||||
|
self::flushTaskTime($taskSchedulePlan);
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
(new Task())->closeTask($taskSchedulePlan['task_id']);
|
||||||
|
}
|
||||||
|
// self::dealVillageTask5($taskSchedulePlan);
|
||||||
break;
|
break;
|
||||||
// 信息平台铺设工作
|
// 信息平台铺设工作
|
||||||
case 'village_task_type_6':
|
case 'village_task_type_6':
|
||||||
@ -2835,9 +2860,9 @@ class TaskLogic extends BaseLogic
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @param $taskSchedulePlan
|
* @param $taskSchedulePlan
|
||||||
* 督促小组服务团队入股
|
* 督促小组服务团队入股 手动审核通过后才结算
|
||||||
*/
|
*/
|
||||||
private static function dealVillageTask4($taskSchedulePlan)
|
public static function dealVillageTask4($taskSchedulePlan, $approve)
|
||||||
{
|
{
|
||||||
Log::info(['镇农科公司定时任务结算执行-'.$taskSchedulePlan['template_info']['title']]);
|
Log::info(['镇农科公司定时任务结算执行-'.$taskSchedulePlan['template_info']['title']]);
|
||||||
$taskTemplateInfo = $taskSchedulePlan['template_info'];
|
$taskTemplateInfo = $taskSchedulePlan['template_info'];
|
||||||
@ -2845,21 +2870,13 @@ class TaskLogic extends BaseLogic
|
|||||||
$target = $taskTemplateInfo['extend']['target'];
|
$target = $taskTemplateInfo['extend']['target'];
|
||||||
$stageDayCount = bcadd($taskTemplateInfo['stage_day_one'], $taskTemplateInfo['stage_day_two']);
|
$stageDayCount = bcadd($taskTemplateInfo['stage_day_one'], $taskTemplateInfo['stage_day_two']);
|
||||||
$villageCompany = Company::where(['id' => $taskTemplateInfo['company_id']])->find();
|
$villageCompany = Company::where(['id' => $taskTemplateInfo['company_id']])->find();
|
||||||
$townCompany = Db::query("select * from la_company where company_type=:company_type and FIND_IN_SET(:street,responsible_area)", ['company_type' => 41,'street'=>$villageCompany['street']], true)[0];
|
|
||||||
$task = Task::where('id', $taskSchedulePlan['task_id'])->find();
|
$task = Task::where('id', $taskSchedulePlan['task_id'])->find();
|
||||||
|
// 在任务期限内才结算
|
||||||
|
if($dayCount <= $stageDayCount) {
|
||||||
// 任务累计天数 < 第一阶段+第二阶段 刷新任务
|
|
||||||
if ($dayCount < $stageDayCount) {
|
|
||||||
self::flushTaskTime($taskSchedulePlan);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
// 任务累计天数 = 第一阶段+第二阶段 任务判定,计算金额,结算分润
|
|
||||||
if ($dayCount == $stageDayCount) {
|
|
||||||
// 目标入股金额
|
// 目标入股金额
|
||||||
$targetShareholderedMoney = bcmul($target, 3000, 2);
|
$targetShareholderedMoney = bcmul($target, 3000, 2);
|
||||||
// 小组服务股金上交金额
|
// 小组服务股金上交金额
|
||||||
$shareholderedMoney = Db::name('company_sharecapital_change_log')->where(['parent_company_id'=>$townCompany['id']])->sum('amount');
|
$shareholderedMoney = $approve->amount;
|
||||||
|
|
||||||
$rate = bcdiv($shareholderedMoney, $targetShareholderedMoney, 2);
|
$rate = bcdiv($shareholderedMoney, $targetShareholderedMoney, 2);
|
||||||
if (bccomp($rate, 0.5, 2) == -1) {
|
if (bccomp($rate, 0.5, 2) == -1) {
|
||||||
@ -2871,6 +2888,8 @@ class TaskLogic extends BaseLogic
|
|||||||
$task['money'] = self::countSettelmentMoney($rate, $totalMoney);
|
$task['money'] = self::countSettelmentMoney($rate, $totalMoney);
|
||||||
(new VillageShareProfit())->dealVillageTaskSettlement4($task, $villageCompany, $taskSchedulePlan);
|
(new VillageShareProfit())->dealVillageTaskSettlement4($task, $villageCompany, $taskSchedulePlan);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private static function countSettelmentMoney($rate, $totalMoney)
|
private static function countSettelmentMoney($rate, $totalMoney)
|
||||||
@ -2904,38 +2923,22 @@ class TaskLogic extends BaseLogic
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @param $taskSchedulePlan
|
* @param $taskSchedulePlan
|
||||||
* 入股甲方公司
|
* 入股甲方公司 手动审核通过后才结算
|
||||||
* 任务累计天数 < 第一+第二阶段天数 刷新任务
|
|
||||||
* 任务累计天数 = 第一阶段+第二阶段 任务判定,计算金额,结算分润
|
|
||||||
*/
|
*/
|
||||||
private static function dealVillageTask5($taskSchedulePlan)
|
public static function dealVillageTask5($taskSchedulePlan, $approve)
|
||||||
{
|
{
|
||||||
Log::info(['镇农科公司定时任务结算执行-'.$taskSchedulePlan['template_info']['title']]);
|
Log::info(['镇农科公司定时任务结算执行-'.$taskSchedulePlan['template_info']['title']]);
|
||||||
$taskTemplateInfo = $taskSchedulePlan['template_info'];
|
$taskTemplateInfo = $taskSchedulePlan['template_info'];
|
||||||
$dayCount = $taskTemplateInfo['day_count'];
|
$dayCount = $taskTemplateInfo['day_count'];
|
||||||
$target = $taskTemplateInfo['extend']['target'];
|
$target = $taskTemplateInfo['extend']['target'];
|
||||||
$stageDayCount = bcadd($taskTemplateInfo['stage_day_one'], $taskTemplateInfo['stage_day_two']);
|
$stageDayCount = bcadd($taskTemplateInfo['stage_day_one'], $taskTemplateInfo['stage_day_two']);
|
||||||
// $townCompany = Db::query("select * from la_company where company_type=:company_type and FIND_IN_SET(:street,responsible_area)", ['company_type' => 41,'street'=>$villageCompany['street']], true)[0];
|
if ($dayCount <= $stageDayCount) {
|
||||||
// 任务累计天数 < 第一+第二阶段天数 刷新任务
|
|
||||||
if ($dayCount < $stageDayCount) {
|
|
||||||
self::flushTaskTime($taskSchedulePlan['task_id']);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 任务累计天数 = 第一阶段+第二阶段 任务判定,计算金额,结算分润
|
// 任务累计天数 = 第一阶段+第二阶段 任务判定,计算金额,结算分润
|
||||||
if ($dayCount == $stageDayCount) {
|
|
||||||
$villageCompany = Company::where(['id' => $taskTemplateInfo['company_id']])->find();
|
$villageCompany = Company::where(['id' => $taskTemplateInfo['company_id']])->find();
|
||||||
$task = Task::where('id', $taskSchedulePlan['task_id'])->find();
|
$task = Task::where('id', $taskSchedulePlan['task_id'])->find();
|
||||||
// 小组公司列表 村地区码与村管理公司一样且在村管理公司负责小队
|
|
||||||
$groupServiceCompanyList = Company::where(['village' => $villageCompany['village'], 'company_type'=> 18, 'is_contract'=>1])->select()->toArray();
|
|
||||||
$shareholderedMoney = 0; // 已入股股金总额
|
|
||||||
// 查询公司股金变动流水记录
|
|
||||||
$companyIds[] = $villageCompany['id'];
|
|
||||||
foreach ($groupServiceCompanyList as $company) {
|
|
||||||
$companyIds[] = $company['id'];
|
|
||||||
}
|
|
||||||
// 小组服务和村公司股金上交金额
|
// 小组服务和村公司股金上交金额
|
||||||
$shareholderedMoney = Db::name('company_sharecapital_change_log')->whereIn('subordinate_company_id', $companyIds)->where(['parent_company_id'=>$villageCompany['id']])->sum('amount');
|
$shareholderedMoney = $approve->amount;
|
||||||
// 目标上交股金金额 小组应组建团队数量*3000 + 村 6000
|
// 目标上交股金金额 小组应组建团队数量*3000 + 村 6000
|
||||||
$targetShareholderedMoney = bcadd(bcmul($target, 3000), 6000);
|
$targetShareholderedMoney = bcadd(bcmul($target, 3000), 6000);
|
||||||
$rate = bcdiv($shareholderedMoney, $targetShareholderedMoney, 2);
|
$rate = bcdiv($shareholderedMoney, $targetShareholderedMoney, 2);
|
||||||
|
@ -24,6 +24,9 @@ class Approve extends BaseModel
|
|||||||
const APPROVE_TYPE_8 = 8; // 镇农科负责人任务-政策补贴申请
|
const APPROVE_TYPE_8 = 8; // 镇农科负责人任务-政策补贴申请
|
||||||
const APPROVE_TYPE_9 = 9; // 镇农科负责人任务-日常管理及其他临时任务
|
const APPROVE_TYPE_9 = 9; // 镇农科负责人任务-日常管理及其他临时任务
|
||||||
const APPROVE_TYPE_10 = 10; // 小组团队任务-入股任务
|
const APPROVE_TYPE_10 = 10; // 小组团队任务-入股任务
|
||||||
|
const APPROVE_TYPE_11 = 11; // 村联络员任务-督促小组服务团队入股
|
||||||
|
const APPROVE_TYPE_12 = 12; // 村联络员任务-入股甲方公司
|
||||||
|
const APPROVE_TYPE_13 = 13; // 镇农科服务部长任务-督促入股村管理公司
|
||||||
|
|
||||||
public function task()
|
public function task()
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user