where('status',1)->count(); if($count<300){ self::setError('用户档案数量300不足,无法创建任务模板'); return false; } } $moeny=TaskTemplate::where('company_id', $params['company_id'])->sum('money'); $money_two=TaskTemplate::where('company_id', $params['company_id'])->sum('money_two'); $money_three=TaskTemplate::where('company_id', $params['company_id'])->sum('money_three'); $SchedulingMoney=TaskScheduling::where('company_id', $params['company_id'])->value('money'); if($moeny+$params['money']>$SchedulingMoney){ self::setError('任务模板合计金额不能大于任务调度金额'); return false; } if($money_two+$params['money']>$SchedulingMoney){ self::setError('任务模板合计金额不能大于任务调度金额'); return false; } if($money_three+$params['money']>$SchedulingMoney){ self::setError('任务模板合计金额不能大于任务调度金额'); return false; } if($moeny+$params['money_two']>$SchedulingMoney){ self::setError('任务模板合计金额不能大于任务调度金额'); return false; } if($money_two+$params['money_two']>$SchedulingMoney){ self::setError('任务模板合计金额不能大于任务调度金额'); return false; } if($money_three+$params['money_two']>$SchedulingMoney){ self::setError('任务模板合计金额不能大于任务调度金额'); return false; } if($moeny+$params['money_three']>$SchedulingMoney){ self::setError('任务模板合计金额不能大于任务调度金额'); return false; } if($money_two+$params['money_three']>$SchedulingMoney){ self::setError('任务模板合计金额不能大于任务调度金额'); return false; } if($money_three+$params['money_three']>$SchedulingMoney){ self::setError('任务模板合计金额不能大于任务调度金额'); return false; } if($params['type']==32){ $object_id=CompanyProperty::where('company_id',$params['company_id'])->value('object_id'); if(!$object_id){ self::setError('该公司没有三轮车,请先租赁三轮车'); return false; } } TaskTemplate::create([ 'title' => $params['title'], 'admin_id' => $params['admin_id'], 'company_id' => $params['company_id'], 'task_scheduling' => $params['task_scheduling']??0, 'money' => $params['money'], 'money_two' => $params['money_two'], 'money_three' => $params['money_three'], 'type' => $params['type'], 'types' => $params['types'], 'status' => $params['status'], 'content' => $params['content'], 'extend'=>json_encode($params['extend']), 'stage_day_one' => $params['stage_day_one']??0, 'proportion_one' => $params['proportion_one']??0, 'stage_day_two' => $params['stage_day_two']??0, 'proportion_two' => $params['proportion_two']??0, ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 编辑任务模板 * @param array $params * @return bool * @author likeadmin * @date 2023/08/06 17:30 */ public static function edit(array $params): bool { Db::startTrans(); try { $moeny=TaskTemplate::where('company_id', $params['company_id'])->sum('money'); $SchedulingMoney=TaskScheduling::where('company_id', $params['company_id'])->value('money'); if($moeny+$params['money']>$SchedulingMoney){ self::setError('任务模板合计金额不能大于任务调度金额'); return false; } TaskTemplate::where('id', $params['id'])->update([ 'title' => $params['title'], 'admin_id' => $params['admin_id'], 'money' => $params['money'], 'money_two' => $params['money_two'], 'money_three' => $params['money_three'], 'type' => $params['type'], 'types' => $params['types'], 'status' => $params['status'], 'content' => $params['content'], 'extend'=>json_encode($params['extend']), 'stage_day_one' => $params['stage_day_one']??0, 'proportion_one' => $params['proportion_one']??0, 'stage_day_two' => $params['stage_day_two']??0, 'proportion_two' => $params['proportion_two']??0, ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 删除任务模板 * @param array $params * @return bool * @author likeadmin * @date 2023/08/06 17:30 */ public static function delete(array $params): bool { return TaskTemplate::destroy($params['id']); } /** * @notes 获取任务模板详情 * @param $params * @return array * @author likeadmin * @date 2023/08/06 17:30 */ public static function detail($params): array { return TaskTemplate::findOrEmpty($params['id'])->toArray(); } }