Browse Source

add - 团队协议

liugc 1 năm trước cách đây
mục cha
commit
60f1912bb0

+ 130 - 0
app/adminapi/controller/tenant/TenantAgreeController.php

@@ -0,0 +1,130 @@
+<?php
+// +----------------------------------------------------------------------
+// | likeadmin快速开发前后端分离管理后台(PHP版)
+// +----------------------------------------------------------------------
+// | 欢迎阅读学习系统程序代码,建议反馈是我们前进的动力
+// | 开源版本可自由商用,可去除界面版权logo
+// | gitee下载:https://gitee.com/likeshop_gitee/likeadmin
+// | github下载:https://github.com/likeshop-github/likeadmin
+// | 访问官网:https://www.likeadmin.cn
+// | likeadmin团队 版权所有 拥有最终解释权
+// +----------------------------------------------------------------------
+// | author: likeadminTeam
+// +----------------------------------------------------------------------
+
+
+namespace app\adminapi\controller\tenant;
+
+
+use app\adminapi\controller\BaseAdminController;
+use app\adminapi\lists\tenant\TenantAgreeLists;
+use app\adminapi\logic\setting\web\WebSettingLogic;
+use app\adminapi\logic\tenant\TenantAgreeLogic;
+use app\adminapi\validate\tenant\TenantAgreeValidate;
+
+
+/**
+ * TenantAgree控制器
+ * Class TenantAgreeController
+ * @package app\adminapi\controller
+ */
+class TenantAgreeController extends BaseAdminController
+{
+
+
+    /**
+     * @notes 获取列表
+     * @return \think\response\Json
+     * @author likeadmin
+     * @date 2025/02/26 14:54
+     */
+    public function lists()
+    {
+        return $this->dataLists(new TenantAgreeLists());
+    }
+
+
+    /**
+     * @notes 添加
+     * @return \think\response\Json
+     * @author likeadmin
+     * @date 2025/02/26 14:54
+     */
+    public function add()
+    {
+        $params = (new TenantAgreeValidate())->post()->goCheck('add');
+        $result = TenantAgreeLogic::add($params);
+        if (true === $result) {
+            return $this->success('添加成功', [], 1, 1);
+        }
+        return $this->fail(TenantAgreeLogic::getError());
+    }
+
+
+    /**
+     * @notes 编辑
+     * @return \think\response\Json
+     * @author likeadmin
+     * @date 2025/02/26 14:54
+     */
+    public function edit()
+    {
+        $params = (new TenantAgreeValidate())->post()->goCheck('edit');
+        $result = TenantAgreeLogic::edit($params);
+        if (true === $result) {
+            return $this->success('编辑成功', [], 1, 1);
+        }
+        return $this->fail(TenantAgreeLogic::getError());
+    }
+
+
+    /**
+     * @notes 删除
+     * @return \think\response\Json
+     * @author likeadmin
+     * @date 2025/02/26 14:54
+     */
+    public function delete()
+    {
+        $params = (new TenantAgreeValidate())->post()->goCheck('delete');
+        TenantAgreeLogic::delete($params);
+        return $this->success('删除成功', [], 1, 1);
+    }
+
+
+    /**
+     * @notes 获取详情
+     * @return \think\response\Json
+     * @author likeadmin
+     * @date 2025/02/26 14:54
+     */
+    public function detail()
+    {
+        $params = (new TenantAgreeValidate())->goCheck('detail');
+        $result = TenantAgreeLogic::detail($params);
+        return $this->data($result);
+    }
+    /**
+     * @notes 协议详情
+     * @return \think\response\Json
+     * @author likeadmin
+     * @date 2025/02/26 14:54
+     */
+    public function agreeDetail()
+    {
+        $result = WebSettingLogic::getTenantAgreement();
+        return $this->data($result);
+    }
+    /**
+     * @notes 设置协议
+     * @return \think\response\Json
+     * @author likeadmin
+     * @date 2025/02/26 14:54
+     */
+    public function setAgree()
+    {
+        $params = request()->post();
+        WebSettingLogic::setTenantAgreement($params);
+        return $this->data($params);
+    }
+}

+ 77 - 0
app/adminapi/lists/tenant/TenantAgreeLists.php

@@ -0,0 +1,77 @@
+<?php
+// +----------------------------------------------------------------------
+// | likeadmin快速开发前后端分离管理后台(PHP版)
+// +----------------------------------------------------------------------
+// | 欢迎阅读学习系统程序代码,建议反馈是我们前进的动力
+// | 开源版本可自由商用,可去除界面版权logo
+// | gitee下载:https://gitee.com/likeshop_gitee/likeadmin
+// | github下载:https://github.com/likeshop-github/likeadmin
+// | 访问官网:https://www.likeadmin.cn
+// | likeadmin团队 版权所有 拥有最终解释权
+// +----------------------------------------------------------------------
+// | author: likeadminTeam
+// +----------------------------------------------------------------------
+
+namespace app\adminapi\lists\tenant;
+
+
+use app\adminapi\lists\BaseAdminDataLists;
+use app\common\model\tenant\TenantAgree;
+use app\common\lists\ListsSearchInterface;
+
+
+/**
+ * TenantAgree列表
+ * Class TenantAgreeLists
+ * @package app\adminapi\lists
+ */
+class TenantAgreeLists extends BaseAdminDataLists implements ListsSearchInterface
+{
+
+
+    /**
+     * @notes 设置搜索条件
+     * @return \string[][]
+     * @author likeadmin
+     * @date 2025/02/26 14:54
+     */
+    public function setSearch(): array
+    {
+        return [
+            '=' => ['code', 'agree_type', 'worker_id', 'sign', 'pdf_url', 'audit_state'],
+        ];
+    }
+
+
+    /**
+     * @notes 获取列表
+     * @return array
+     * @throws \think\db\exception\DataNotFoundException
+     * @throws \think\db\exception\DbException
+     * @throws \think\db\exception\ModelNotFoundException
+     * @author likeadmin
+     * @date 2025/02/26 14:54
+     */
+    public function lists(): array
+    {
+        return TenantAgree::with(['masterWorkerInfo'])->where($this->searchWhere)
+            ->field(['*'])
+            ->limit($this->limitOffset, $this->limitLength)
+            ->order(['id' => 'desc'])
+            ->select()
+            ->toArray();
+    }
+
+
+    /**
+     * @notes 获取数量
+     * @return int
+     * @author likeadmin
+     * @date 2025/02/26 14:54
+     */
+    public function count(): int
+    {
+        return TenantAgree::where($this->searchWhere)->count();
+    }
+
+}

+ 23 - 0
app/adminapi/logic/setting/web/WebSettingLogic.php

@@ -198,4 +198,27 @@ class WebSettingLogic extends BaseLogic
         return $config;
     }
 
+    /**
+     * @notes 设置团队协议
+     * @param array $params
+     */
+    public static function setTenantAgreement(array $params)
+    {
+        ConfigService::set('tenant_agreement', 'tenant_cooperate_title', $params['tenant_cooperate_title'] ?? '');
+        ConfigService::set('tenant_agreement', 'tenant_cooperate_content', clear_file_domain($params['tenant_cooperate_content'] ?? ''));
+    }
+
+
+    /**
+     * @notes 获取工程师协议
+     * @return array
+     */
+    public static function getTenantAgreement() : array
+    {
+        $config = [
+            'tenant_cooperate_title' => ConfigService::get('tenant_agreement', 'tenant_cooperate_title')?? '',
+            'tenant_cooperate_content' => ConfigService::get('tenant_agreement', 'tenant_cooperate_content')??'',
+        ];
+        return $config;
+    }
 }

+ 111 - 0
app/adminapi/logic/tenant/TenantAgreeLogic.php

@@ -0,0 +1,111 @@
+<?php
+// +----------------------------------------------------------------------
+// | likeadmin快速开发前后端分离管理后台(PHP版)
+// +----------------------------------------------------------------------
+// | 欢迎阅读学习系统程序代码,建议反馈是我们前进的动力
+// | 开源版本可自由商用,可去除界面版权logo
+// | gitee下载:https://gitee.com/likeshop_gitee/likeadmin
+// | github下载:https://github.com/likeshop-github/likeadmin
+// | 访问官网:https://www.likeadmin.cn
+// | likeadmin团队 版权所有 拥有最终解释权
+// +----------------------------------------------------------------------
+// | author: likeadminTeam
+// +----------------------------------------------------------------------
+
+namespace app\adminapi\logic\tenant;
+
+
+use app\common\model\tenant\TenantAgree;
+use app\common\logic\BaseLogic;
+use think\facade\Db;
+
+
+/**
+ * TenantAgree逻辑
+ * Class TenantAgreeLogic
+ * @package app\adminapi\logic
+ */
+class TenantAgreeLogic extends BaseLogic
+{
+
+
+    /**
+     * @notes 添加
+     * @param array $params
+     * @return bool
+     * @author likeadmin
+     * @date 2025/02/26 14:54
+     */
+    public static function add(array $params): bool
+    {
+        Db::startTrans();
+        try {
+            TenantAgree::create([
+                'code' => $params['code'],
+                'agree_type' => $params['agree_type'],
+                'worker_id' => $params['worker_id'],
+                'sign' => $params['sign'],
+                'pdf_url' => $params['pdf_url'],
+                'audit_state' => $params['audit_state']
+            ]);
+
+            Db::commit();
+            return true;
+        } catch (\Exception $e) {
+            Db::rollback();
+            self::setError($e->getMessage());
+            return false;
+        }
+    }
+
+
+    /**
+     * @notes 编辑
+     * @param array $params
+     * @return bool
+     * @author likeadmin
+     * @date 2025/02/26 14:54
+     */
+    public static function edit(array $params): bool
+    {
+        Db::startTrans();
+        try {
+            TenantAgree::where('id', $params['id'])->update([
+                'audit_state' => $params['audit_state']
+            ]);
+
+            Db::commit();
+            return true;
+        } catch (\Exception $e) {
+            Db::rollback();
+            self::setError($e->getMessage());
+            return false;
+        }
+    }
+
+
+    /**
+     * @notes 删除
+     * @param array $params
+     * @return bool
+     * @author likeadmin
+     * @date 2025/02/26 14:54
+     */
+    public static function delete(array $params): bool
+    {
+        return TenantAgree::destroy($params['id']);
+    }
+
+
+    /**
+     * @notes 获取详情
+     * @param $params
+     * @return array
+     * @author likeadmin
+     * @date 2025/02/26 14:54
+     */
+    public static function detail($params): array
+    {
+        return TenantAgree::findOrEmpty($params['id'])->toArray();
+    }
+}

+ 100 - 0
app/adminapi/validate/tenant/TenantAgreeValidate.php

@@ -0,0 +1,100 @@
+<?php
+// +----------------------------------------------------------------------
+// | likeadmin快速开发前后端分离管理后台(PHP版)
+// +----------------------------------------------------------------------
+// | 欢迎阅读学习系统程序代码,建议反馈是我们前进的动力
+// | 开源版本可自由商用,可去除界面版权logo
+// | gitee下载:https://gitee.com/likeshop_gitee/likeadmin
+// | github下载:https://github.com/likeshop-github/likeadmin
+// | 访问官网:https://www.likeadmin.cn
+// | likeadmin团队 版权所有 拥有最终解释权
+// +----------------------------------------------------------------------
+// | author: likeadminTeam
+// +----------------------------------------------------------------------
+
+namespace app\adminapi\validate\tenant;
+
+
+use app\common\validate\BaseValidate;
+
+
+/**
+ * TenantAgree验证器
+ * Class TenantAgreeValidate
+ * @package app\adminapi\validate
+ */
+class TenantAgreeValidate extends BaseValidate
+{
+
+     /**
+      * 设置校验规则
+      * @var string[]
+      */
+    protected $rule = [
+        'id' => 'require',
+        'code' => 'require',
+        'worker_id' => 'require',
+        'audit_state' => 'require',
+    ];
+
+
+    /**
+     * 参数描述
+     * @var string[]
+     */
+    protected $field = [
+        'id' => 'id',
+        'code' => '协议编号',
+        'worker_id' => '团队负责工程师ID',
+        'audit_state' => '审核状态',
+    ];
+
+
+    /**
+     * @notes 添加场景
+     * @return TenantAgreeValidate
+     * @author likeadmin
+     * @date 2025/02/26 14:54
+     */
+    public function sceneAdd()
+    {
+        return $this->only(['code','worker_id','audit_state']);
+    }
+
+
+    /**
+     * @notes 编辑场景
+     * @return TenantAgreeValidate
+     * @author likeadmin
+     * @date 2025/02/26 14:54
+     */
+    public function sceneEdit()
+    {
+        return $this->only(['id','code','worker_id','audit_state']);
+    }
+
+
+    /**
+     * @notes 删除场景
+     * @return TenantAgreeValidate
+     * @author likeadmin
+     * @date 2025/02/26 14:54
+     */
+    public function sceneDelete()
+    {
+        return $this->only(['id']);
+    }
+
+
+    /**
+     * @notes 详情场景
+     * @return TenantAgreeValidate
+     * @author likeadmin
+     * @date 2025/02/26 14:54
+     */
+    public function sceneDetail()
+    {
+        return $this->only(['id']);
+    }
+
+}

+ 28 - 0
app/common/command/AddAgreementPdf.php

@@ -2,6 +2,7 @@
 namespace app\common\command;
 
 use app\common\model\master_worker\MasterWorkerAgree;
+use app\common\model\tenant\TenantAgree;
 use PhpAmqpLib\Connection\AMQPStreamConnection;
 use PhpAmqpLib\Message\AMQPMessage;
 use PhpAmqpLib\Wire\AMQPTable;
@@ -98,6 +99,33 @@ class AddAgreementPdf extends Command
         }
     }
 
+    /**
+     * 团队协议生成PDF文件
+     * @param $param
+     * @return void
+     */
+    public static function addTenantAgreePdf($param)
+    {
+        $code = $param['code'];
+        $url = $param['url'];
+        $pdf = '/'.$code.'.pdf';
+        $path = 'uploads/agreement_pdf/'.date('Ymd');
+        if(!file_exists($path)){
+            mkdir ($path,0777,true);
+        }
+        $shell_ = 'wkhtmltopdf --page-height 297mm '.$url.' '.$path.$pdf;
+        $output = [];
+        $return_var = 0;
+        \exec($shell_ . ' > /dev/null 2>&1', $output, $return_var);
+        if ($return_var === 0) {
+            $agreement = TenantAgree::where('code', $code)->findOrEmpty();
+            $agreement->pdf_url = $path.$pdf;
+            $agreement->save();
+        } else {
+            // 处理错误
+            echo "Command failed with return code: $return_var";
+        }
+    }
 
     public static function sendMq($code,$url):bool
     {

+ 38 - 0
app/common/model/tenant/TenantAgree.php

@@ -0,0 +1,38 @@
+<?php
+// +----------------------------------------------------------------------
+// | likeadmin快速开发前后端分离管理后台(PHP版)
+// +----------------------------------------------------------------------
+// | 欢迎阅读学习系统程序代码,建议反馈是我们前进的动力
+// | 开源版本可自由商用,可去除界面版权logo
+// | gitee下载:https://gitee.com/likeshop_gitee/likeadmin
+// | github下载:https://github.com/likeshop-github/likeadmin
+// | 访问官网:https://www.likeadmin.cn
+// | likeadmin团队 版权所有 拥有最终解释权
+// +----------------------------------------------------------------------
+// | author: likeadminTeam
+// +----------------------------------------------------------------------
+
+namespace app\common\model\tenant;
+
+
+use app\common\model\BaseModel;
+use app\common\model\master_worker\MasterWorker;
+use app\common\model\master_worker\MasterWorkerInfo;
+
+
+/**
+ * TenantAgree模型
+ * Class TenantAgree
+ * @package app\common\model
+ */
+class TenantAgree extends BaseModel
+{
+    
+    protected $name = 'tenant_agree';
+
+    public function masterWorkerInfo()
+    {
+        return $this->hasOne(MasterWorkerInfo::class, 'worker_id', 'worker_id');
+    }
+    
+}

+ 28 - 0
app/index/controller/TenantAgreementController.php

@@ -0,0 +1,28 @@
+<?php
+
+namespace app\index\controller;
+
+use app\BaseController;
+use app\common\command\AddAgreementPdf;
+use app\common\model\master_worker\MasterWorkerAgree;
+use app\common\model\tenant\TenantAgree;
+use app\common\service\JsonService;
+use think\facade\View;
+
+class TenantAgreementController extends BaseController
+{
+    //http:// /index/tenant_agreement/index?code=
+    public function index()
+    {
+        $code = $this->request->param('code');
+        if(empty($code)){
+            return JsonService::fail('code不存在');
+        }
+        $agree = TenantAgree::with('masterWorkerInfo')->where('code', $code)->findOrEmpty();
+        $agree['sign'] = $this->request->domain().'/'.$agree['sign'];
+        View::assign([
+            'agree'  => $agree,
+        ]);
+        return view('tenant_agree');
+    }
+}

+ 1206 - 0
app/index/view/tenant_agreement/tenant_agree.html

@@ -0,0 +1,1206 @@
+<!DOCTYPE html>
+<html>
+
+<head>
+    <meta charset="utf-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+    <title>团队合作协议</title>
+    <style>
+        body,
+        html {
+            margin: 0px;
+            padding: 0px;
+        }
+
+        body {
+            font-size: 16px;
+            color: #333333;
+            line-height: 1.8em;
+            /* overflow: hidden; */
+        }
+        .page-container{
+            position: relative;
+        }
+        .text-content {
+            width: 720px;
+            padding: 20px 30px 100px;
+            margin: 0 auto;
+            position: relative;
+        }
+
+        table {
+            width: 100%;
+            border-collapse: collapse;
+            page-break-inside: avoid; /* 防止在表格内部断页 */
+        }
+        th, td {
+            border: 1px solid black;
+            padding: 5px;
+            text-align: center;
+        }
+        th {
+            background-color: #f2f2f2;
+            font-size: 16px;
+        }
+
+        b {
+            display: block;
+            padding: 20px 0px 10px;
+        }
+
+        p {
+            margin: 0px;
+            font-size: 16px;
+            color: #333333;
+            word-wrap: break-word;
+            word-break: break-all;
+            line-height: 1.8em;
+            text-align: justify;
+            text-indent: 32px;
+        }
+
+        /*.text-indent {*/
+        /*  text-indent: 2em;*/
+        /*}*/
+
+        .all-indent {
+            padding-left: 2em;
+        }
+
+        .pay-button {
+            width: 120px;
+            color: #ffffff;
+            font-weight: 600;
+            border-radius: 4px;
+            padding: 10px 0px;
+            background-color: #00a1d6;
+            text-align: center;
+            position: absolute;
+            bottom: 40px;
+            right: 0px;
+        }
+
+        .title {
+            text-align: center;
+            margin: 30px auto;
+            line-height: 1.4em;
+        }
+
+        .indent {
+            text-indent: 2em;
+        }
+
+        .person-info {
+            /* display: flex;
+                    justify-content: space-evenly; */
+        }
+
+        .personal-info {}
+
+        .company-info {
+            flex: 1;
+        }
+
+        .bottom-sign {
+            position: relative;
+            padding-bottom: 50px;
+            overflow: hidden;
+        }
+
+        .bottom-sign>div {
+            width: 48%;
+            min-height: 170px;
+        }
+
+        .sign-content {
+            padding-left: 20px;
+            box-sizing: border-box;
+            position: relative;
+        }
+
+        .sign-title {
+            margin-right: 20px;
+            font-size: 16px;
+        }
+
+        .sign-name {
+            margin: 0px;
+        }
+
+        .company-name {}
+
+        .user-sign {
+            width: 200px;
+            margin: 0 auto;
+        }
+
+        .sign-img {
+            width: 150px;
+            height: 150px;
+            display: block;
+            position: absolute;
+            bottom: 0px;
+            left: 105px;
+            top: 32px;
+        }
+
+        .sign-date {
+            margin: 0px;
+            position: absolute;
+            bottom: 0px;
+            left: 20px;
+        }
+
+        .company-sign-container {
+            position: relative;
+            top: 28px;
+        }
+
+        .watermark {
+            width: 100%;
+            overflow: hidden;
+            position: absolute;
+            top: 0px;
+            left: 0px;
+            z-index: -1;
+            user-select: none;
+        }
+
+        .watermark > div{
+            width: 100%;
+            height: 1200px;
+            display: flex;
+            align-items: center;
+            position: relative;
+        }
+        .watermark > div > .seal-content{
+            width: 25px;
+            height: max-content;
+            margin-left: auto;
+            overflow: hidden;
+        }
+        .watermark > div > .seal-content > img{
+            width: 200px;
+            display: block;
+        }
+        .watermark > div:nth-child(2) img{
+            margin-left: -25px;
+        }
+        .watermark > div:nth-child(3) img{
+            margin-left:-50px;
+        }
+        .watermark > div:nth-child(4) img{
+            margin-left:-75px;
+        }
+        .watermark > div:nth-child(5) img{
+            margin-left:-100px;
+        }
+        .watermark > div:nth-child(6) img{
+            margin-left:-125px;
+        }
+        .watermark > div:nth-child(7) img{
+            margin-left:-150px;
+        }
+        .watermark > div:nth-child(8) img{
+            margin-left:-175px;
+        }
+
+        @media screen and (max-width: 960px) {
+
+            .text-content {
+                width: 100vw;
+                box-sizing: border-box;
+            }
+
+            .person-info {
+                display: block;
+            }
+
+            .indent {
+                text-indent: 2em;
+            }
+            table {
+                page-break-inside: avoid;
+            }
+            td {
+                page-break-inside: avoid; /* 防止在单元格内部断页 */
+            }
+            .pay-button {
+                width: 100vw;
+                position: fixed;
+                bottom: 0px;
+                left: 0px;
+                right: 0px;
+                z-index: 999;
+                border-radius: 0px;
+                padding-bottom: 20px;
+            }
+
+            .user-sign {
+                width: 120px;
+                margin: 0 auto;
+                display: block;
+            }
+
+            .sign-img {
+                right: 0px;
+            }
+
+            .sign-content {
+                padding-left: 0px;
+                margin-bottom: 20px;
+            }
+
+            .bottom-sign>div {
+                width: 50%;
+            }
+
+            .company-sign-container {
+                position: relative;
+                top: 28px;
+            }
+        }
+        .underline {
+            text-decoration: underline;
+        }
+    </style>
+</head>
+
+<body>
+<div class="page-container">
+    <div class="text-content">
+        <h3 class="title">
+            团队合作协议<br>
+        </h3>
+        <p>
+            【首部与导言】
+        </p>
+        <p>
+            欢迎团队负责人和团队成员共同遵守本协议。
+        </p>
+        <div class="person-info">
+            <div class="personal-info">
+                <p>姓名:{$agree.masterWorkerInfo.real_name}</p>
+                <p>身份证号:{$agree.masterWorkerInfo.id_card}</p>
+                <p>联系电话:{$agree.masterWorkerInfo.mobile}</p>
+                <p>联系地址:{$agree.masterWorkerInfo.address}</p>
+            </div>
+        </div>
+        <p class="text-indent indent">
+            使用维修很忙团队软件及服务平台,成为维修很忙家庭维保服务信息平台的注册团队(以下称“您”)。
+        </p>
+        <p class="text-indent indent">
+            为了使用维修很忙家庭维保服务信息平台的服务,您应当阅读并遵守《团队合作协议》(以下简称“本协议”)、《维修很忙隐私政策(团队版)》。请您务必审慎阅读、充分理解各条款内容,特别是免除或者限制维修很忙家庭维保服务信息平台责任的条款、对您权利进行限制的条款、约定争议解决方式和司法管辖的条款等,以及开通或者使用某项服务的单独协议或规则。限制、免责条款或者其他涉及您重大权益的条款可能以加粗、加下划线等形式提示您重点注意。
+        </p>
+        <p class="text-indent indent">
+            当您按照注册页面提示填写信息并完成全部注册程序后,或者阅读并点击“同意”本协议及相关规范、附件,或者使用维修很忙家庭维保服务信息平台,或者以其他任何明示或者默示的方式表示接受本协议的,即表示您已充分阅读、完全理解并同意接受本协议所有条款,本协议即在您与维修很忙家庭维保服务信息平台之间产生法律效力,成为对双方具有约束力的法律文件。在注册或者阅读本协议过程中,如果您不同意本协议的任何内容或无法准确理解条款含义,或者您不符合本协议或其他任何条款约定,请您立即停止注册程序或者停止使用/接受维修很忙家庭维保服务信息平台的任何服务。
+        </p>
+        <p class="text-indent indent">
+            您理解并同意维修很忙家庭维保服务信息平台仅为您提供家庭维保相关的综合技术支持服务,您与维修很忙家庭维保服务信息平台之间均无任何订立劳动合同的意思表示,亦不构成任何直接或间接的劳动/劳务关系。您作为具备提供家庭设备安装、维修、保养,管道疏通,水电、家具的安装与维修,房屋修缮,开锁,修锁等服务(以下称“家庭维保服务”)之技术和资质的专业人员,需自购配件、装备,与用户进行交易,为用户完成对应的家庭维保服务。
+        </p>
+        <p class="text-indent indent">
+            您与维修很忙家庭维保服务信息平台之间均无任何订立劳动合同的意思表示,亦不构成任何直接或间接的劳动/劳务关系。您作为具备提供家庭设备安装、维修、保养,管道疏通,水电、家具的安装与维修,房屋修缮,开锁,修锁等服务(以下称“家庭维保服务”)之技术和资质的专业人员,需自购配件、装备,与用户进行交易,为用户完成对应的家庭维保服务。
+        </p>
+        <br>
+        <p class="indent">
+            <b>第一条定义</b>
+        </p>
+        <p class="text-indent indent">
+            1.维修很忙家庭维保服务信息平台:以下简称“我们”或者“平台”,是指武汉开源节流科技有限公司及其关联公司所运营和管理的,为用户、团队的交易活动(包括家庭维修信息发布、家庭维修服务工单领取、家庭维修服务费支付等)提供综合技术支持的第三方电商网络信息平台,该平台面向用户、团队提供综合技术支持的途径包括但不限于维修很忙团队APP手机客户端、微信小程序、网站以及未来开发产生的其他等形式。
+        </p>
+        <p class="text-indent indent">
+            2.用户:是指通过维修很忙旗下相关客户端平台或者渠道发布维修需求,并支付家庭维保服务费的商户、消费者。
+        </p>
+        <p class="text-indent indent">
+            3.团队:即本协议中的“您”,是指接受并同意本协议全部规定及平台规则,注册登录并经平台审核通过后,利用自身技能、自有工具,通过平台自主选择、完成家庭维保服务事项,并在服务完成后从用户处获取相应服务费的完全民事行为能力人。
+        </p>
+        <p class="text-indent indent">
+            4.家庭维保服务:是指用户通过维修很忙旗下相关客户端平台或者渠道发布的设备安装、维修、保养、管道疏通、水电、家具的安装与维修、房屋修缮、开锁、修锁等家庭维保服务事项信息。
+        </p>
+        <p class="indent">
+            <b>第二条协议范围</b>
+        </p>
+        <p class="text-indent indent">
+            1.本协议的签约双方为维修很忙家庭维保服务信息平台的实际运营商武汉开源节流科技有限公司与使用维修很忙家庭维修平台信息服务的团队,本协议是您与维修很忙家庭维保服务信息平台之间关于您使用维修很忙家庭维保服务信息平台提供的各项服务所订立的服务条款,具有正式书面合同的效力。
+        </p>
+        <p class="text-indent indent">
+            2.您知晓武汉开源节流科技有限公司仅为您提供维修很忙家庭维保服务信息平台信息技术相关的服务,因业务需要,您同意武汉开源节流科技有限公司代表其关联公司或者合作方与您签署其他相关服务协议(如有)、届时由对应关联方、合作方(如有)在相关区域、领域内实际履行协议、收取/支付服务报酬,并为其履行行为按本协议约定承担法律后果,各个履行主体作为独立法律实体单独承担法律责任,相互间不承担担保、保证、连带等责任。
+        </p>
+        <p class="text-indent indent">
+            3.本协议内容同时包括本协议正文、本协议援引的其他协议、《维修很忙家庭维修隐私政策(团队版)》、所有平台已经发布或后续不时发布并依法通知您的各类平台规则、您在平台填写或确认的内容以及您在使用维修很忙家庭维保服务信息平台某一特定服务时另单独的协议、相关业务规则等(以下统称“单独协议”)。前述平台规则/内容一经正式发布/确认,即为本协议不可分割的一部分,与本协议正文具有同等的法律效力。
+        </p>
+        <p class="text-indent indent">
+            4.为了不断提升平台用户与团队体验,适应法律法规要求等原因,您同意平台修改本协议、制定、修改平台规则。对于影响您权利义务的变更,平台将提前在平台公示,并视变更的重要程度而采取确认、提示等提醒服务。本协议与平台规则的修订构成对本协议的补充,成为本协议的一部分,一经发布即发生效力。如您不同意修订后内容,请勿继续使用平台服务,如您在修订内容发布后仍继续使用平台服务的,视为您以事实履行接受了修订后的协议内容。除另行声明或签署协议后,任何基于提升用户及团队体验、服务升级等目的所扩大的服务范围或软件功能的增加均受本协议的约束。
+        </p>
+        <p class="text-indent indent">
+            <b>第三条合作事项</b>
+        </p>
+        <p class="text-indent indent">
+            1.维修很忙家庭维保服务信息平台作为家庭维保服务O2O平台,拥有丰富的家庭维保服务的信息、资源及成熟的经营模式,是为用户和您之间提供互通信息的平台,服务模式为用户以服务需求方身份在维修很忙家庭维保服务信息平台或者渠道发布维修需求事项,平台予以展示,由您自主选择是否接收前述服务事项并完成委托事项。平台将为您有偿提供完成家庭维保服务所需要的包括但不限于以下事项的各项技术支撑服务:
+        </p>
+        <p class="text-indent indent">
+            (1)以我们的名义为您设计、制作、推广服务宣传品;
+        </p>
+        <p class="text-indent indent">
+            (2)为您即将提供的家庭维保服务提供订单派送/管理、呼叫系统、运营支撑等平台服务;
+        </p>
+        <p class="text-indent indent">
+            (3)为您报告与用户的交易机会,推送交易订单信息;
+        </p>
+        <p class="text-indent indent">
+            (4)其他技术信息服务。
+        </p>
+        <p class="text-indent indent">
+            2.您特别确认,由于您为用户提供的维保服务存在一定地域限制且需要专业人员/主体为您线下讲解平台规则、维修技术难点,以提高您的家庭维保服务交付能力,您基于前述原因特委托武汉开源节流科技有限公司为您寻找区域运营服务方和/或区域网点服务方并代为签署相应服务协议,您委托平台直接从您的家庭维保服务费中划扣同等金额的款项至实际服务主体账户作为其服务的报酬,您同意接受武汉开源节流科技有限公司代您与区域运营服务方和/或区域网点服务方签署的协议的约束。(如有)区域运营服务方和/或区域网点服务方为您提供服务内容以相关协议约定为准或者平台展示规则为准。
+        </p>
+        <p class="text-indent indent">
+            3.您特别确认,由于家庭维保服务技能属性较强,您同意接受平台主管团队(如有)为您提供技能提升带练,对此您需要向为您提供技能带练服务的主管团队支付一定的报酬,届时如存在该服务,您委托平台直接从您的家庭维保服务费中划扣同等金额的款项至主管团队账户作为其为您提供服务的报酬。此外,您知晓并同意当您符合平台主管团队标准的,您自愿成为平台主管团队为其他团队提供有偿技能提升服务。主管团队标准与报酬详见平台规则。
+        </p>
+        <p class="text-indent indent">
+            4.您应自行准备提供家庭维保服务所需要的包括但不限于如下设备并承担费用:
+        </p>
+        <p class="text-indent indent">
+            (1)上网设备与开支,包括但不限于手机、电脑或者其他上网终端、调制解调器即其他必备的上网装置,以及网络接入费、上网设备租用费、手机流量等;
+        </p>
+        <p class="text-indent indent">
+            (2)完成维保服务需要的工具、设备。
+        </p>
+        <p class="indent">
+            <b>第四条服务费用结算</b>
+        </p>
+        <p class="text-indent indent">
+            1.【服务费标准】您同意当您基于我们的平台综合技术服务与用户达成交易,且用户最终为您的家庭维保服务支付费用时,您同意按用户支付的家庭维保服务费用总额(含您与用户基于我们的服务所衍生的其他收入亦属信息技术服务费用的支付范畴)的一定比例(20%-50%)向我们支付信息技术服务费,具体比例与计算标准以平台实时显示的数据为准;同时,您无条件且不可撤销的授权我们根据市场变化实时调整上述费用比例与计算标准。
+        </p>
+        <p class="text-indent indent">
+            2.您委托平台为您提供代收代付服务,即您同意并授权平台在您为用户完成家庭维保服务后代您向用户收取的家庭维保服务费用至平台合作银行的清分账户(指电商管家平台交易资金,以下称“清分账户”)或者代收至平台账户后转至清分账户,平台每周在与您完成对账后,按协议与平台规则的约定,从您家庭维保服务费中划扣您应当向平台、第三方服务方主体的费用后,将剩余的家庭维保服务费支付至您在平台的提留账户,由您自行提现至您个人账号绑定的银行账户。您特别确认从清分账户支付至您账户的款项,并非您从事了平台安排的劳动/劳务而支付的报酬,而是您收取的用户向您支付的家庭维保服务费在支付信息技术服务费等费用后所作的结算。
+        </p>
+        <p class="text-indent indent">
+            3.您特别确认,清分账户支付至您账户的款项,是您收取的家庭维保服务费用在支付信息技术服务费用等后所作的结算。该结算款项为平台默认您按平台规则进行行为规范的全部奖励,当平台抽查到您在服务过程中某项行为规范不符合平台规则时,平台将根据实际情况扣除一定金额的行为规范奖励,奖励扣除的具体标准以平台相关规则为准。
+        </p>
+        <p class="text-indent indent">
+            4.若用户发生退款,您同意委托平台按照平台相应规则向用户进行退款。如该笔费用已结算的,则您同意平台从您清分账户中未结算的家庭维保服务费中划扣等值金额的款项退还给用户。
+        </p>
+        <p class="text-indent indent">
+            5.如您对结算至您提留账户中的款项由异议或者对结算数据有异议的,应于收悉相应数据后24小时内向平台提出书面异议,逾期视为无异议。平台已充分告知,且您已明确知晓,如您虽然满足结算条件,但在奖励发放时点前的任何时间与我们终止/中止/解除合作的,您同意将无法享有未发放的所有奖励。
+        </p>
+        <p class="text-indent indent">
+            6.请您知悉,如您不如约及时向我们支付信息技术服务费用,我们将采取法律手段以保障我方权益。如您在基于我们的平台支撑服务与用户达成交易后,引导用户采取取消订单或者减少订单金额等方式跳单的,或者私自收取维保服务费用后不及时交至清分账户的,我们有权要求您按平台规则向我们支付对应的平台信息服务费,同时我们将保留一切追究您法律责任的权利。
+        </p>
+        <p class="indent">
+            <b>第五条账号使用与资格审核</b>
+        </p>
+        <p class="text-indent indent">
+            1.您知悉并同意,您仅能使用本人手机号注册维修很忙团队小程序,以登录、访问平台获取用户家庭维保信息。
+        </p>
+        <p class="text-indent indent">
+            2.您已了解,如您在使用维修很忙团队小程序账号时违反本协议或平台规则,平台有权对您的账号采取必要措施(包括但不限于限制、临时中止、永久封禁等措施),从而影响您对平台服务的正常使用,且需您自行承担因此而产生的任何责任或不利后果。
+        </p>
+        <p class="text-indent indent">
+            3.您在成为维修很忙家庭维保服务平台的团队,并通过平台自主选择、完成家庭维保服务事项前,应首先满足如下资格条件:
+        </p>
+        <p class="text-indent indent">
+            (1)具有完全民事行为能力;
+        </p>
+        <p class="text-indent indent">
+            (2)年龄:年满十八周岁且不得超过五十周岁;
+        </p>
+        <p class="text-indent indent">
+            (3)身体健康,且未患有有可能妨碍家庭维保服务的疾病;
+        </p>
+        <p class="text-indent indent">
+            (4)具有从事家庭维保服务行业相关法律法规要求的应当具备的资格/资质;
+        </p>
+        <p class="text-indent indent">
+            (5)其他平台公示的团队应当满足的条件。
+        </p>
+        <p class="text-indent indent">
+            如果您不具备前述条件,平台有权立即注销您已注册完成的账号或立即停止向您提供服务。对您之前的行为,您及/或您的监护人应依照法律规定承担相应后果。
+        </p>
+        <p class="text-indent indent">
+            4.您应按照平台要求提供注册资料(包括但不限于身份证、无犯罪记录证明),并保证前述资料真实、准确、完整、合法、有效。如您的注册资料有所变动,您应及时更新,否则,您应承担相应责任与后果。您授权平台或者平台委托的第三方对您提供的签署资料进行审核。即便平台有对您资料进行审核,但该审核通过并不代表平台对前述资料的真实、准确、完整、合法及有效性进行确认,您仍对您提交的全部资料的真实、准确、完整、合法及有效性自行承担全部责任。
+        </p>
+        <p class="text-indent indent">
+            5.您应谨慎合理的保存、使用您的用户名和密码,并对通过您的账号实施的所有行为、活动及事件负责。您若发现账号存在安全漏洞等情况,应立即依照本协议及相关规则的规定,采取措施并予以处理。请您知晓,若您需要更改您账号下绑定的手机号码,您按平台指引完成相关操作后,即视为您已完成绑定手机号码的更改,您对新绑定手机号码下进行的所有操作行为如接单等行为负责。
+        </p>
+        <p class="text-indent indent">
+            6.您不得将平台账户借(租)给他人使用,否则平台有权依照本协议及相关规则的相关规定及原则予以处理。
+        </p>
+        <p class="text-indent indent">
+            7.您注册账号后,如存在连续1个月未登陆该账户的情形,平台有权注销该账号,以免造成资源浪费,由此带来的任何损失均由您自行承担。
+        </p>
+        <p class="text-indent indent">
+            8.您同意,平台通过向您注册账号或资格审核时预留的地址、电话等任一方式发送消息,或者通过平台向您发送站内消息,即视为平台向您履行了送达、通知义务。
+        </p>
+        <p class="text-indent indent">
+            9.您同意,在符合法律法规的规定,或经国家机关要求的前提下,平台有权对您的注册账号进行限制或冻结,在该等情况下,您可能无法继续登录或使用您的注册账号。
+        </p>
+        <p class="indent">
+            <b>第六条:各方权利义务</b>
+        </p>
+        <p class="text-indent indent">
+            1.您应在完成家庭维保服务过程中(包括往来于客户处的交通出行,下同)时刻保持谨慎注意义务、安全意识,并自行承担在完成家庭维保服务过程中所产生的一切责任,包括但不限于一切安全事故、自身或用户或其他第三人人身/财产损失等。
+        </p>
+        <p class="text-indent indent">
+            2.您特别确认,不论何种情况,您在进行高空作业时,必须由2人及以上进行共同作业。
+        </p>
+        <p class="text-indent indent">
+            3.您特别确认,您在来往于作业现场途中,应按国家相关规定,持有“机动车驾驶证”“行驶证”等证件;在进行相关作业时,应按国家规定持有“高空作业证”“电工作业证”等相关证件。具备法律、行政法规、部门规章或者其他规范性文件要求的从事相应业务应当具备的资质证件。
+        </p>
+        <p class="text-indent indent">
+            4.您特别确认,您在完成家庭维保服务过程中,不得再行委托、雇佣以及通过其他方式由第三方主导、协助、参与完成服务工作,否则,服务过程中,导致的您、第三方或用户遭受的人身、财产损失均与平台无关。如因此造成我们损失,我们有权向您全额追偿,并从您服务质量保证金、清分资金中予以扣除。
+        </p>
+        <p class="text-indent indent">
+            5.您了解并同意在为用户提供家庭维保服务时对我们品牌进行包括但不限于任何方式的展示我们标识,佩戴/使用印有我们名称或logo的维保装备的无偿推广。对此,您特别确认“无偿推广”行为并非我们的强制性要求,并非我们对您进行了劳动标准化管理,您不是为我们提供劳动/劳务工作人员,您只是在我们平台注册认证的合作团队。
+        </p>
+        <p class="text-indent indent">
+            6.您确认,您自行承担因本协议产生的所有税费,并向用户以及相关方开具收取了家庭维保服务的发票。同时,您自愿同意并承诺授权我们和/或合作的第三方机构为您代办纳税、为用户及相关方开票的相关事宜,且有权在为您代理纳税申报、代开发票等相关事宜时使用您的个人信息。对此,我们承诺将会严格保护您的个人信息。
+        </p>
+        <p class="text-indent indent">
+            7.您承诺您不会进行以获取不正当利益为目的的任何形式的虚假服务事项,包括但不限于:“跳单”行为(指接到平台的订单,获得订单信息后,越过平台与用户进行交易),私自转让交易机会等利用我们的服务而恶意隐瞒相关收入行为,自行或协同他人伪造服务事项,或在已无服务需求情况下获取平台显示的家庭维保服务费及相应奖励;发现用户或其他团队进行虚假服务事项,不及时向平台反馈或参与其违规行为;其他通过平台获取服务事项却未发生真实服务的行为。如您违反本款之约定,我们将按平台规则要求您承担违约责任。
+        </p>
+        <p class="text-indent indent">
+            8.除另有约定外,您特别确认,您将按照您对用户承诺、平台规则等全面履行“返修”“质保”等义务,如您不及时履行,我们有权通过平台、线下等方式协调其他团队代您履行,代履行费用由您承担并从您服务质量保证金、清分资金中予以扣除。
+        </p>
+        <p class="text-indent indent">
+            9.如您在合作中向我们或关联子公司(即我们平台的全资子公司)借款,则您明确知悉并同意委托我们在您的清分资金中予以扣除,不足部分在您的质保金账户中予以扣除。
+        </p>
+        <p class="text-indent indent">
+            10.您知晓,合作期间,平台可根据实际需求,在特定时间、品类、区域设定灵活性、阶段性的激励活动,具体活动规则以平台发布的内容为准。
+        </p>
+        <p class="text-indent indent">
+            11.您知晓,作为合作方,您不得有任何泄露、出卖平台合作方/渠道方信息的行为且不得在任何渠道发布不属实言论或不得有任何恶意诋毁平台、误导舆论的行为。
+        </p>
+        <p class="text-indent indent">
+            12.您在使用平台提供服务时须遵守法律法规,不得制作、复制、发布、传播含有下列内容的信息或从事相关行为,也不得为制作、复制、发布、转播含有下列内容的信息或从事相关行为提供便利:
+        </p>
+        <p class="text-indent indent">
+            (1)反对宪法所确定的基本原则;
+        </p>
+        <p class="text-indent indent">
+            (2)危害国家安全,泄露国家秘密,颠覆国家政权,破坏国家统一;
+        </p>
+        <p class="text-indent indent">
+            (3)损害国家荣誉和利益;
+        </p>
+        <p class="text-indent indent">
+            (4)煽动民族仇恨、民族歧视,破坏民族团结;
+        </p>
+        <p class="text-indent indent">
+            (5)破坏国家宗教政策,宣扬邪教和封建迷信;
+        </p>
+        <p class="text-indent indent">
+            (6)散布谣言,扰乱社会秩序,破坏社会稳定;
+        </p>
+        <p class="text-indent indent">
+            (7)散布淫秽、色情、赌博、暴力、凶杀、恐怖或者教唆犯罪;
+        </p>
+        <p class="text-indent indent">
+            (8)侮辱或诽谤他人,侵害平台与他人合法权益;
+        </p>
+        <p class="text-indent indent">
+            (9)违反法律法规底线、社会制度底线、国家利益底线、公民合法权益底线、社会公共秩序底线、道德风尚底线和信息真实性底线;
+        </p>
+        <p class="text-indent indent">
+            (10)相关法律法规或本协议、相关协议、规则等禁止的。
+        </p>
+        <p class="text-indent indent">
+            13.如果您在使用服务过程中违反了相关法律法规或本协议约定,相关国家机关或机构可能会对您提起诉讼、罚款或采取其他制裁措施,并要求平台给予协助。因此给您或他人造成损害的,您应自行承担全部责任,平台不承担任何责任。
+        </p>
+        <p class="text-indent indent">
+            14.为了保证服务质量,您保证不会使用劣质、三无产品为平台用户提供家庭维保服务,否则由此产生的责任与损失均由您承担。另外,为了方便您更好的为用户服务,我们有物优价廉的配件、工具等购买渠道,如您需要购买的,可按平台规则自行前往相关主体处采购商品并支付相应对价。您清楚了解如您前往我们提供的渠道购买商品,并非我们的强制要求,而是您基于商品市场判断而自行选择结果,并非平台向您出售商品,即您与商品出售方单独签署买卖合同进行交易,与平台无关。
+        </p>
+        <p class="text-indent indent">
+            15.您在平台上使用第三方提供的产品或服务时,除遵守本协议的约定外,还应遵守第三方的协议,我们和第三方对可能出现的纠纷在法律规定的约定的范围内各自承担责任。
+        </p>
+        <p class="indent">
+            <b>第七条:知识产权条款</b>
+        </p>
+        <p class="text-indent indent">
+            1.未经平台书面许可,您不得从事下列任一行为:
+        </p>
+        <p class="text-indent indent">
+            (1)删除软件及其副本上关于著作权的信息;
+        </p>
+        <p class="text-indent indent">
+            (2)对软件进行反向工程、反向汇编、反向编译,或者以其他方式尝试发现软件的源代码;
+        </p>
+        <p class="text-indent indent">
+            (3)对平台拥有知识产权的内容进行使用、出租、出借、复制、修改、链接、转载、汇编、发表、出版、建立镜像站点等;
+        </p>
+        <p class="text-indent indent">
+            (4)对软件或软件运行过程中释放到任何终端内存中的数据、软件运行过程中客户端与服务器端的交互数据,以及软件运行所必须的系统数据,进行复制、修改、增加、挂接运行或创作任何衍生作品,形式包括但不限于使用插件、外挂或非经平台授权的第三方工具/服务接入软件和相关系统;
+        </p>
+        <p class="text-indent indent">
+            (5)通过修改或伪造软件运行中的指令、数据等任何方式,增加、删减、变动软件的功能或运行效果,或者将用于上述用途的软件、方法进行运营户或向公众传播,无论这些行为是否为商业目的;
+        </p>
+        <p class="text-indent indent">
+            (6)通过非平台开发、授权的第三方软件、插件、外挂、设备等任何方式,登录或使用平台软件及服务,或制作、发布、传播非平台发布、授权的用于登录或使用平台软件即服务的第三方软件、插件、外挂、系统、设备等。
+        </p>
+        <p class="text-indent indent">
+            2.平台在服务过程中提供的内容(包括但不限于网页、文字、图片、音频、视频、图表、计算机软件、广告等)的知识产权归平台所有。各项电子服务的所有权和运作权归武汉开源节流科技有限公司所有;除另有特别声明外,平台在提供服务时所依托的著作权、专利权即其他知识产权归武汉开源节流科技有限公司所有。
+        </p>
+        <p class="text-indent indent">
+            3.平台在服务过程中所使用的“维修很忙”形象等商业标识,其著作权或商标归武汉开源节流科技有限公司所有。
+        </p>
+        <p class="text-indent indent">
+            4.上述即其他任何本服务包含的内容的知识产权均受法律法规保护,未经平台、相关权利人书面许可,任何人不得以任何形式进行使用或创造相关衍生品。
+        </p>
+        <p class="indent">
+            <b>第八条:隐私条款</b>
+        </p>
+        <p class="text-indent indent">
+            1.您知悉、理解并同意,平台在服务过程中,可能涉及手机储存、使用、共享和保护您的个人信息。在您使用平台提供的服务时,您同意并授权平台无偿的收集或使用、共享关于您的各种形式(如文字、图片、视频、音频等)的个人信息及相关数据(包括但不限于个人头像、地址、联系信息、身份信息、账户信息、设备信息、位置信息、浏览/搜索偏好、行为习惯等)。平台亦有权应政府部门(包括司法及行政部门)的要求,向其提供您在平台填写的注册信息和发布记录等必要信息。此外,您知晓并认可平台可能会与第三方合作而向您提供相关的平台服务,在此情况下,如该第三方同意同意承担与平台同等的保护您隐私的责任,则平台有权将您的注册资料等提供给第三方。另外,您同意并授权,在不透露您隐私资料的前提下,平台有权对与您账户相关的整个数据库进行分析并对相关的数据库进行商业上的利用,即您同意我们及我们的关联方存储、使用、复制、修订、编辑、发布、展示、翻译上述信息,并基于此信息制作派生作品,或将上述信息在任何期间内纳入任何其他作品。
+        </p>
+        <p class="text-indent indent">
+            2.您账户被注销后,平台没有义务为您保留或向您披露账户中的任何信息,也没有义务向您或第三方转发任何您未曾阅读或发送过的信息。
+        </p>
+        <p class="text-indent indent">
+            3.您同意,平台停止向您提供服务后,平台仍享有下列权利:
+        </p>
+        <p class="text-indent indent">
+            (1)继续保存您未及时删除的注册信息及使用平台的服务期间发布的所有信息至法律规定的记录保存期满;
+        </p>
+        <p class="text-indent indent">
+            (2)您在使用平台服务期间存在违法行为或违反本协议和/或平台规则的行为的,平台仍可依据本协议向您主张权利。
+        </p>
+        <p class="indent">
+            <b>第九条:保证条款</b>
+        </p>
+        <p class="text-indent indent">
+            1.为保证您及时、用心为用户提供履行本协议项下家庭维保服务及售后服务,保障用户人身、财产安全及服务质量,您同意:
+        </p>
+        <p class="text-indent indent">
+            (1)授权我们可于合作期间任何时候及建立合作前对您进行背景调查,我们会根据您的授权委托第三方对您的相关信息真实性进行核实,包括但不限于个人身份信息、犯罪记录、个人征信等;
+        </p>
+        <p class="text-indent indent">
+            (2)向我们支付一定数额的服务质量保证金,且您可按照双方约定的方式进行缴纳。(具体金额缴纳方式及退还机制以《服务质量保证金规则》为准)。
+        </p>
+        <p class="text-indent indent">
+            2.如您拒绝我方的背景调查,则您同意我们将有权拒绝与您合作或立即停止与您的合作;双方合作终止的,上述关于背景调查的授权自行终止。
+        </p>
+        <p class="indent">
+            <b>第十条:保险条款</b>
+        </p>
+        <p class="text-indent indent">
+            1.您认可基于与我们平台的合作关系存在保险利益,并自愿同意委托我们为您履行本协议项下服务而产生的风险投保团体意外险或其他性质的保险,且同意我们委托第三方金融机构从您的家庭维保服务费用中扣除对应投保所需费用。
+        </p>
+        <p class="text-indent indent">
+            2.如您为用户提供维保服务过程中出现保险相关协议约定的承保情形,您自愿同意授权承保人将相关保险赔偿金支付至我们指定账户,并由我们再行支付至您。
+        </p>
+        <p class="indent">
+            <b>第十一条:不可抗力及其他免责事由</b>
+        </p>
+        <p class="text-indent indent">
+            1.您理解并同意,我们按照现有技术和条件所能达到的现状为您提供服务。我们会尽最大努力保障服务的连贯性和安全性,但我们不能随时预见和防范法律、技术以及其他风险,我们对此类风险在法律允许的范围内免责,包括但不限于不可抗力、病毒、木马、黑客攻击、系统不稳定、第三方服务瑕疵、政府行为等原因不可能导致的服务终端、数据丢失以及其他的损失和风险。出现上述情况时,我们将努力在第一时间与相关单位配合,争取及时进行处理,但是由此给您造成的损失我们在法律允许的范围内免责。
+        </p>
+        <p class="text-indent indent">
+            2.在法律允许的范围内,我们对以下情形导致的服务终端或受阻不承担责任:
+        </p>
+        <p class="text-indent indent">
+            (1)受到计算机病毒、木马或其他恶意程序、黑客攻击的破坏;
+        </p>
+        <p class="text-indent indent">
+            (2)您或我们的电脑软件、系统、硬件和通信线路出现故障;
+        </p>
+        <p class="text-indent indent">
+            (3)您操作不当或您通过非平台授权的方式使用服务;
+        </p>
+        <p class="text-indent indent">
+            (4)程序版本过时、设备老化和/或其兼容性问题;
+        </p>
+        <p class="text-indent indent">
+            (5)其他平台无法控制或合理预见的情形;
+        </p>
+        <p class="text-indent indent">
+            3.您理解并同意,在使用本服务过程中,可能会遇到网络信息或其他团队行为带来的风险,我们不对任何信息的真实性、适用性、合法性承担责任,也不对侵权行为给你造成的损害负责。
+        </p>
+        <p class="text-indent indent">
+            这些风险包括但不限于:
+        </p>
+        <p class="text-indent indent">
+            (1)来自他人匿名或冒名的含有威胁、诽谤、令人反感或非法内容的信息;
+        </p>
+        <p class="text-indent indent">
+            (2)遭受他人误导、欺骗或其他导致或可能导致的任何心理、生理上的伤害以及经济上的损失;
+        </p>
+        <p class="text-indent indent">
+            (3)其他网络信息或团队行为引起的风险。
+        </p>
+        <p class="text-indent indent">
+            4.我们依据本协议约定获得处理违法违规内容的权利,该权利不构成我们的义务或承诺,我们不能保证及时发现违法行为或进行相应处理;
+        </p>
+        <p class="text-indent indent">
+            4.我们依据本协议约定获得处理违法违规内容的权利,该权利不构成我们的义务或承诺,我们不能保证及时发现违法行为或进行相应处理;
+        </p>
+        <p class="text-indent indent">
+            6.本协议项下,我们仅向您提供信息技术支撑服务,最终由您与用户订立安装、维修、保养等合同关系,且您与用户之间无论就何种法律关系产生的一切纠纷与我们无关,我们不对此承担任何责任。
+        </p>
+        <p class="indent">
+            <b>第十二条:协议的生效与变更</b>
+        </p>
+        <p class="text-indent indent">
+            1.您点击“同意”本协议及相关规范、附件,或者使用维修很忙家庭维保服务信息平台,或者以其他任何明示或者默示的方式表示接受本协议的行为时,本协议即发生法律效力,我们双方即受该协议的约束。
+        </p>
+        <p class="text-indent indent">
+            2.您同意我们在必要时有权修改本协议条款,您在我们变更条款后,继续使用凭条服务的,即视为您已接受变更后的协议。
+        </p>
+        <p class="indent">
+            <b>第十三条:协议的变更、中断、终止</b>
+        </p>
+        <p class="text-indent indent">
+            1.您理解并同意,我们基于经营策略的调整,可能会对服务内容进行变更,也可能会终端、终止或终止服务。
+        </p>
+        <p class="text-indent indent">
+            2.您有下列情形之一的,您同意我们有权在履行通知义务后可以终止本协议,终止服务:
+        </p>
+        <p class="text-indent indent">
+            (1)您未遵守我们平台的相关规则,或违反法律法规的规定,或发生侵害用户人身、财产安全的行为或未按约定提供符合质量标准的服务的;
+        </p>
+        <p class="text-indent indent">
+            (2)您超过30日未利用我们的信息技术为用户提供服务;
+        </p>
+        <p class="text-indent indent">
+            (3)根据法律法规规定您应提交真实信息,而您提供的个人资料不真实、或与注册信息不一致又未提供合理证明;
+        </p>
+        <p class="text-indent indent">
+            (4)您未按照本协议第四条约定向我们支付服务费,且经我们通知后仍未支付的;
+        </p>
+        <p class="text-indent indent">
+            (5)按照法律法规规定,司法机关或主管部门的要求;
+        </p>
+        <p class="text-indent indent">
+            (6)出于安全原因或其他必要情形。
+        </p>
+        <p class="indent">
+           <b>第十四条:违约责任</b>
+        </p>
+        <p class="text-indent indent">
+            1.若您出现“收款未支付”(指您线下收取用户支付的款项,未在1个自然日内代用户支付到第三方的情况),则视为您违约,我们将按应支付而未支付金额的10%向您收取违约金,单笔订单违约金金额最高不超过500元。
+        </p>
+        <p class="text-indent indent">
+            2.双方应严格履行本协议,按约定履行义务,若任一方违约给对方造成损失的,违约方应向守约方赔偿由此造成的所有损失。
+        </p>
+        <p class="text-indent indent">
+            3.您如违反本协议之约定,或未按我们要求的程序完成解约或账号注销的,我们除有权按照相关规则追究您的违约责任外,可以视情形冻结或扣除您的服务质量保证金,同时按平台规则可以要求您承担5倍于服务质量保证金的违约金责任。
+        </p>
+        <p class="text-indent indent">
+            4.您同意,若您出现违约行为,我们将通过平台通知您,若有异议,您应在1个工作日内向平台书面提出异议,若您未在前述时间内提出书面异议,则视为您对违约事实及通知内容的确认。
+        </p>
+        <p class="indent">
+            <b>第十五条:保密条款</b>
+        </p>
+        <p class="text-indent indent">
+            1.本协议双方均有义务对本协议的相关内容保守秘密,本协议因任何原因终止或者解除的,本保密条款继续有效,双方仍应遵守本协议项下的保密义务。
+        </p>
+        <p class="text-indent indent">
+            2.您有义务保守我们的交易信息秘密,包括但不限于潜在、开发、已有用户名单、用户电话等客户信息,商务谈判内容,信息服务费用/费率等。
+        </p>
+        <p class="text-indent indent">
+            3.您有义务保守我们的经营秘密,包括但不限于产销策略、经营计划,市场分析,广告策略,产品的定价策略,产品的价格表,产品的营销成本和利润核算的财务信息、经营模式等。
+        </p>
+        <p class="indent">
+            <b>第十六条:通知条款</b>
+        </p>
+        <p class="text-indent indent">
+            1.您确认协议首部联系信息为您在本协议中履行合同义务、解决合同争议时接收其他方文件信函或司法机关(法院、仲裁机构)诉讼、仲裁文书的唯一送达地址及联系方式。
+        </p>
+        <p class="text-indent indent">
+            2.任何文件按照上述地址送达相关文件的,即视为您已签收;您拒收的,不影响送达的效力。如您需变更上述送达地址的,应在变更后三个工作日内以书面形式将变更后的送达地址通知我们;否则上述送达地址仍为有效送达地址。
+        </p>
+        <p class="indent">
+            <b>第十七条:管辖与法律适用</b>
+        </p>
+        <p class="text-indent indent">
+            1.本协议的成立、生效、履行、解释及纠纷解决等相关事宜,均适用中华人民共和国大陆地区法律(不包括冲突法)。
+        </p>
+        <p class="text-indent indent">
+            2.本协议签订地为中华人民共和国湖北省武汉市东湖新技术开发区。
+        </p>
+        <p class="text-indent indent">
+            3.如您和平台之间发生任何纠纷或争议,首先应友好协商解决;协商不成的,您同意将纠纷或争议提交本协议签订地(武汉市东湖新技术开发区)有管辖权的人民法院管辖。
+        </p>
+        <p class="text-indent indent">
+            4.本协议所有条款的标题仅为阅读方便,本身并无实际涵义,不能作为本协议涵义解释的依据。
+        </p>
+        <p class="text-indent indent">
+            5.本协议条款无论因何种原因无效或不可执行,其余条款仍有效,对双方具有约束力。
+        </p>
+        <p class="indent">
+            <b>第十八条:特别声明</b>
+        </p>
+        <p class="text-indent indent">
+            1.本协议未尽事宜由双方签订书面补充协议的方式进行补充或变更,非经以补充协议方式对本协议进行的任何修改或变更均不具有法律效力。
+        </p>
+        <p class="text-indent indent">
+            2.本协议一经签署,即代替以往我们与您签署的《团队合作协议》或《居间协议》,我们以往就本协议合作内容与您签署的所有协议立即失效。
+        </p>
+        <p class="text-indent indent">
+            3.您已仔细阅读本协议内容,且已完全知悉、理解并特别确认:您与我们之间的所有权利义务关系均以本协议约定及平台相关规则为准,其他任何个人对您的承诺均与我们无关,对我们无约束力。您与我们、关联方之间均无任何订立劳动合同的意思表示,亦不构成任何直接或间接的劳动/劳务关系,仅适用《民法典》,不适用《劳动法》、《劳动合同法》、《社会保险法》等法律、行政法规、地方性法规、规章、规范性文件。
+        </p>
+        <p class="indent">
+            <b>第十九条:附件</b>
+        </p>
+        <p class="text-indent indent">
+            1.附件1:服务质量保证金规则。
+        </p>
+        <p class="text-indent indent">
+            2.附件2:平台订单服务规范标准。
+        </p>
+        <p class="text-indent indent">
+            3.附件3:团队安全责任主体承诺书。
+        </p>
+
+
+        <p class="text-indent indent">
+            (本页以下无正文,为签署栏)
+        </p>
+        <br>
+        <div class="bottom-sign">
+            <div class="sign-content">
+                <p>签约主体(团队):</p>
+                <p>
+                    签名:<img class="sign-img" src="{$agree.sign}" />
+                </p>
+            </div>
+            <div class="company-sign-container">
+                <p class="sign-name">签约主体(平台方):</p>
+                <p class="company-name">武汉开源节流科技有限公司</p>
+                <img class="sign-img" src="/assets/img/kaiyuanjieliu.png" />
+            </div>
+        </div>
+    </div>
+
+    <div style="page-break-after: always;"></div>
+
+    <div class="text-content">
+        <p class="indent">
+            附件1:服务质量保证金规则
+        </p>
+        <h3 class="title">
+            服务质量保证金规则<br>
+        </h3>
+        <p class="indent">
+            一、服务质量保证金定义与用途
+        </p>
+        <p class="text-indent indent">
+            1.服务质量保证金,指平台合作团队向平台缴存的,用以保证其向平台用户提供优质的家庭维保服务,以及严格按照《团队合作协议》(以下简称“合作协议”)及各项平台规则合法合规提供服务的资金,并在团队出现违约违规违法情形时,用于向平台用户进行赔付、赔偿平台的损失或承担其他违约责任,以下称“质保金”。
+        </p>
+        <p class="indent">
+            二、服务质量保证金缴纳标准
+        </p>
+        <p class="text-indent indent">
+            1.团队按其提供的家庭维保服务类目为准,以“一类目一质保金“原则向平台缴存质保金,具体如下表一所列示:
+        </p>
+        <table>
+            <thead>
+            <th>一级服务类目</th>
+            <th>二级服务类目</th>
+            <th>质保金/元</th>
+            <th>质保金锁定期</th>
+            <th>功能限制</th>
+            </thead>
+            <tbody>
+            <tr>
+                <td>家电维修服务</td>
+                <td>-</td>
+                <td>5000.00</td>
+                <td>自合作之日起至团队解约成功后满180日止</td>
+                <td>-</td>
+            </tr>
+            <tr>
+                <td>家居维修服务</td>
+                <td>-</td>
+                <td>5000.00</td>
+                <td>自合作之日起至团队解约成功后满180日止。</td>
+                <td>-</td>
+            </tr>
+            <tr>
+                <td>家电清洗服务</td>
+                <td>-</td>
+                <td>3000.00</td>
+                <td>自合作之日起至团队解约成功后满90日止。</td>
+                <td>-</td>
+            </tr>
+            <tr>
+                <td>其他服务</td>
+                <td>-</td>
+                <td>3000.00</td>
+                <td>自合作之日起至团队解约成功后满180日止。</td>
+                <td>-</td>
+            </tr>
+            <tr>
+                <td colspan="5">
+                    说明:1.团队应缴纳的服务质量保证金标准最终以我们系统展示金额为准。2.同一团队在平台开展两项以上的服务类目时,只需按照金额最高的服务类目缴纳质保金。例如:甲团队在平台内除提供家电维修服务外还提供家电清洗服务的,则甲团队只需缴纳5,000.00元质保金。3.平台其他规则对质保金另有规定的,从其规定。4.解约成功是指平台在与团队合作关系解除且处理完双方合作期限的全部事项后在维修很忙团队平台上公布的团队成功解约的时间。
+                </td>
+            </tr>
+            </tbody>
+        </table>
+        <p class="indent">
+            三、服务质量保证金缴纳
+        </p>
+        <p class="text-indent indent">
+            服务质量保证金由团队根据自身情况按如下方式之一进行缴纳,具体缴纳方式,以系统最终记录为准。
+        </p>
+        <p class="text-indent indent">
+            1.小程序充值缴存
+        </p>
+        <p class="text-indent indent">
+            团队通过“维修很忙团队小程序-我的-质保金账户-质保金充值”进行充值缴存。
+        </p>
+        <p class="text-indent indent">
+            2.家庭维保服务费划扣缴存
+        </p>
+        <p class="text-indent indent">
+            平台在每次结算时,通过向清分账户发送指令的方式按一定的比例从当期团队家庭维保服务费中直接划扣缴存,直至质保金足额。具体划扣比例如下表二所示:
+        </p>
+        <table>
+            <thead>
+            <th>一级服务类目</th>
+            <th>二级服务类目</th>
+            <th>划扣缴存比例</th>
+            </thead>
+            <tbody>
+            <tr>
+                <td>家电维修</td>
+                <td>-</td>
+                <td rowspan="2">质保金≤3,000.00元,按15%/期划扣;质保金>3,000.00元,按10%/期划扣。</td>
+            </tr>
+            <tr>
+                <td>家居维修服务</td>
+                <td>-</td>
+            </tr>
+            <tr>
+                <td>家电清洗服务</td>
+                <td>-</td>
+                <td rowspan="2">15%/期</td>
+            </tr>
+            <tr>
+                <td>其他服务</td>
+                <td>-</td>
+            </tr>
+            </tbody>
+        </table>
+        <p class="text-indent indent">
+            3.小程序充值缴存+家庭维保服务费划扣缴存
+        </p>
+        <p class="text-indent indent">
+            团队通过小程序充值缴存方式交付部分质保金,剩余部分质保金按家庭维保服务费划扣缴存方式执行。
+        </p>
+        <p class="text-indent indent">
+            4.团队签约后未按小程序充值缴存方式存满质保金的,平台实为按团队同意以家庭维保服务费划扣缴存方式缴存质保金。
+        </p>
+        <p class="text-indent indent">
+            四、服务质量保证金调整、划扣及赔付
+        </p>
+        <p class="text-indent indent">
+            1.平台有权根据市场环境、自身运营状况等诸多因素的影响对质保金缴存标准、缴存方式进行调整。如平台调整质保金相关规则的,将会在平台、官网或者其他渠道进行公告。
+        </p>
+        <p class="text-indent indent">
+            2.团队在合作期间发生违规情形,平台有权根据《团队合作协议》、《订单服务行为规范》及平台规则的规定扣划其部分或全部质保金,用于对平台用户进行赔付、赔偿平台损失或支付其他应由团队承担的款项或费用。
+        </p>
+        <p class="text-indent indent">
+            3.平台在收到任何第三方对团队发起的投诉、举报成立的,平台有权扣划该团队的部分或全部质保金,用于对第三方进行赔付、赔偿平台损失或支付其他应由团队承担的款项或费用。
+        </p>
+        <p class="text-indent indent">
+            4.平台因团队自身原因受到任何第三方发起的投诉、举报、索赔、诉讼或仲裁等,而遭受任何损失或指出任何费用或款项的,平台有权扣划该团队的部分或全部质保金,用于对第三方进行赔付、赔偿平台损失或支付其他应由团队承担的款项或费用。
+        </p>
+        <p class="text-indent indent">
+            五、服务质量保证金的补缴
+        </p>
+        <p class="text-indent indent">
+            平台可以依据相关规定调整、划扣质保金,因此导致质保金余额低于其应缴存的质保金标准的,平台有权作出如下处理:
+        </p>
+        <p class="text-indent indent">
+            (1)书面催告团队在出现该情况后3日内补缴足额的质保金,补缴方式按质保金缴存方式规定为准。
+        </p>
+        <p class="text-indent indent">
+            (2)自清分账户中划扣家庭维保服务费中划转相应金额予以补足。
+        </p>
+        <p class="text-indent indent">
+            (3)团队未在规定期限内补足质保金,且经平台书面催告后仍未补足的,平台有权中止或终止合作协议,停止服务。如平台以此中止或终止合作协议的,则将通过平台或者其他书面方式通知团队。
+        </p>
+        <p class="text-indent indent">
+            六、质保金提现与退回
+        </p>
+        <p class="text-indent indent">
+            1.团队缴存质保金同时符合以下情形的,平台将质保金余额无息支付/退还至团队第三方清分账户或者提现账户或者按照原支付方式退回。
+        </p>
+        <p class="text-indent indent">
+            (1)质保金锁定期届满;
+        </p>
+        <p class="text-indent indent">
+            (2)团队通过“维修很忙团队小程序端-我的-质保金账户”申请质保金提现。
+        </p>
+        <p class="text-indent indent">
+            2.平台应如下表三规定的时间及时办理质保金退还事宜:
+        </p>
+        <table>
+            <thead>
+            <th>序号</th>
+            <th>质保金退回申请时间</th>
+            <th>备注</th>
+            <th></th>
+            </thead>
+            <tbody>
+            <tr>
+                <td>1</td>
+                <td>团队在每月1日至15日(含当日)发起的质保金退回申请的</td>
+                <td>平台审核无误后,在每月的26日前退还至团队账户</td>
+                <td rowspan="2">平台在收到团队质保金申请后,审核有异议的,应及时联系团队反馈异议事项。</td>
+            </tr>
+            <tr>
+                <td>2</td>
+                <td>团队在每月16日(含当日)发起的质保金退回申请的</td>
+                <td>平台审核无误后,在次月的26日前退还至团队账户。</td>
+            </tr>
+            </tbody>
+        </table>
+        <p class="text-indent indent">
+            3.特此提醒,如团队存在如下情形,我们有权全额扣除服务质量保证金,并按本协议约定要求您承担对应的违约责任:
+        </p>
+        <p class="text-indent indent">
+            (1)私自收取家庭维保服务款项拒不交还代收第三方的,或存在其他违反《违约赔偿标准》的行为的;
+        </p>
+        <p class="text-indent indent">
+            (2)未经任何告知/申请,或未按本协议约定征得我们书面同意,擅自与我们解除本协议的;
+        </p>
+        <p class="text-indent indent">
+            (3)平台规则和双方达成一致而约定的其他情形。
+        </p>
+        <p class="text-indent indent">
+            七、本规则受市场环境、自身运营状况等诸多因素的影响,故我们将不定时进行更新,届时将会在系统/官网,或其他渠道进行公告。您同意该等更新自公告之日起生效,并将遵守和严格执行更新后的规则。
+        </p>
+        <p class="text-indent indent">
+            (以下无正文)
+        </p>
+        <div class="bottom-sign">
+            <div class="sign-content">
+                <p>签约主体(团队):</p>
+                <p>
+                    签名:<img class="sign-img" src="{$agree.sign}" />
+                </p>
+            </div>
+        </div>
+    </div>
+
+    <div style="page-break-after: always;"></div>
+
+    <div class="text-content">
+        <p class="indent">
+            附件2:平台订单服务规范标准
+        </p>
+        <h3 class="title">
+            平台订单服务规范标准<br>
+        </h3>
+        <p class="indent">
+            一、名词解释
+        </p>
+        <p class="text-indent indent">
+            1.“停单重新考核接单资格”
+        </p>
+        <p class="text-indent indent">
+            鉴于团队与平台的合作关系,团队提供的良好的服务质量是双方合作的基础。因此,团队服务质量等不符合平台相关规则时,则视为达不到合作条件,平台有权予以停单,待团队重新学习平台相关规则,直至能达到合作条件时,再予恢复接单。
+        </p>
+        <p class="text-indent indent">
+            2.“培训考试”
+        </p>
+        <p class="text-indent indent">
+            尚未进行合作的团队或停单团队自行学习平台相关规则,直至通过平台考察,达到合作条件。
+        </p>
+        <p class="text-indent indent">
+            二、团队订单行为奖励标准
+        </p>
+        <p class="text-indent indent">
+            团队在订单服务过程中,因服务表现优异得到用户的好评和认可,为平台赢得声誉将按照对应标准予以奖励。
+        </p>
+        <table>
+            <thead>
+            <th>类别</th>
+            <th>奖励定义</th>
+            <th>奖励现金(元/次)/实物</th>
+            </thead>
+            <tbody>
+            <tr>
+                <td>媒体表扬</td>
+                <td>团队的良好服务行为,得到报刊、电视、广播、抖音大V(5W粉丝以上)、微博大V(5w粉丝以上)方式的表扬,并引起较大正面传播</td>
+                <td>500-2000</td>
+            </tr>
+            <tr>
+                <td>用户表扬</td>
+                <td>团队的良好服务行为,真实感动用户,有正面影响力,得到终端用户信件、锦旗、短视频等方式的表扬</td>
+                <td>50-500</td>
+            </tr>
+            <tr>
+                <td>协助事项</td>
+                <td>积极有效的配合平台处理用户投诉、敏感事件,降低事件不良影响程度,控制事态发展</td>
+                <td>50-500</td>
+            </tr>
+            <tr>
+                <td>建议采纳</td>
+                <td>团队向平台提出的技术建议、服务建议、运营建议,在提升服务品质、降低运营费用、防范或消除业务风险方面,起到重要作用,最终被平台采纳</td>
+                <td>200-500</td>
+            </tr>
+            <tr>
+                <td>其他奖励</td>
+                <td>如上门准时、春节服务、夜间上门服务、高峰上门服务等行为参照系统现行规则执行</td>
+                <td>按系统规则执行</td>
+            </tr>
+            </tbody>
+        </table>
+        <div style="page-break-after: always;"></div>
+        <p class="text-indent indent">
+            三、团队违约行为及违约扣罚标准
+        </p>
+        <table>
+            <thead>
+            <th>行为类别</th>
+            <th>违约内容</th>
+            <th>违约定义</th>
+            <th>违约扣罚标准</th>
+            </thead>
+            <tbody>
+            <tr>
+                <td rowspan="5">订单服务行为</td>
+                <td>联系超时</td>
+                <td>团队领单后,10分钟内未及时有效联系用户</td>
+                <td>每发生1次,系统警告;订单自动改派,违规当日派发新单减少1单</td>
+            </tr>
+            <tr>
+                <td>挑单、拒单</td>
+                <td>1、团队主观原因拒绝接单的行为;2、团队服务范围内以订单价格低,距离远等理由拒绝接单;3、拒绝接单原因不属实或无任何正当理由直接拒单</td>
+                <td>每发生1次,系统警告提醒,支付违约金100元/次;第3次起,支付违约金200元/次,并停单重新考核接单资格,考核通过后恢复接单</td>
+            </tr>
+            <tr>
+                <td>收款未支付</td>
+                <td>1、团队未通过APP收费或未在维修现场进行支付;2、团队收取用户现金但未支付至平台</td>
+                <td>每次发生系统警告提醒,停单补缴/补扣订单实际收费金额;并按照订单收费总额10%-30%支付违约金,违约金支付后恢复接单。10%-30%违约金由平台-订单运营部执行</td>
+            </tr>
+            <tr>
+                <td>未上门电话报价</td>
+                <td>团队未上门检测,电话向用户报价,致使订单失败,清洗、空调拆装等平台标准定价产品除外</td>
+                <td>月度发生前3次,系统警告提醒;第4次起,支付违约金20元/次,并停单重新考核接单资格,考核通过后恢复接单</td>
+            </tr>
+            <tr>
+                <td>未按规范上传形象照</td>
+                <td>团队未上传形像照,或形象照上传不规范</td>
+                <td>每次发生系统警告提醒并支付违约金5元/次</td>
+            </tr>
+            </tbody>
+        </table>
+        <div style="page-break-after: always;"></div>
+        <table>
+            <thead>
+            <th>行为类别</th>
+            <th>违约内容</th>
+            <th>违约定义</th>
+            <th>违约扣罚标准</th>
+            </thead>
+            <tbody>
+            <tr>
+                <td rowspan="4">订单服务行为</td>
+                <td>异常跟单</td>
+                <td>团队未按照标准发起跟单,如:改派、改约、取消、挂起等</td>
+                <td>月度发生前3次,系统警告提醒;第4次起,扣除派单分5分,并停单重新考核接单资格,考核通过后恢复接单</td>
+            </tr>
+            <tr>
+                <td>虚假行为</td>
+                <td>1、利用平台用户信息(含连带业务、团队私下与用户形成的业务)获取订单并完成服务后,未按约定(逾期七天未交或少交)将收取的所有费用(含定金、维修费、材料、红包等所有费用)交还平台;2、虚报费用,包括但不限于材料费、搬运费、打孔费、小费、红包、回扣、连带、退款等;3、订单完结/取消后,存在未交或少交其它私自收取的费用;4、小病大修、虚报故障、多收取用户费用等损害用户利益的虚假行为。</td>
+                <td>首次发生,系统警告提醒,停单3天并支付相应订单差异金额10倍作为违约金;第2次发生,支付违约金相应订单差异金额10倍,并停止合作</td>
+            </tr>
+            <tr>
+                <td>团队沟通培训迟到</td>
+                <td>团队未按照约定时间参加沟通培训</td>
+                <td>支付违约金20元/次</td>
+            </tr>
+            <tr>
+                <td>团队沟通培训缺席</td>
+                <td>团队无故缺席既定的沟通培训</td>
+                <td>支付违约金50元/次</td>
+            </tr>
+            </tbody>
+        </table>
+
+        <div style="page-break-after: always;"></div>
+        <table>
+            <thead>
+            <th>行为类别</th>
+            <th>违约内容</th>
+            <th>违约定义</th>
+            <th>违约扣罚标准</th>
+            </thead>
+            <tbody>
+            <tr>
+                <td rowspan="2">订单服务行为</td>
+                <td>出卖或私自外传平台订单信息</td>
+                <td>出卖或私自外传平台订单信息;团队对客户其他电器需要维修的信息,不转回平台或私下找人帮客户维修,视为出卖平台订单信息</td>
+                <td>封停账号,停止合作,且团队需支付违约金1000元</td>
+            </tr>
+            <tr>
+                <td>散播不实言论诋毁平台</td>
+                <td>团队在任何渠道发布不属实言论,恶意诋毁平台,误导舆论</td>
+                <td>封停账号,停止合作,且团队需支付违约金1000元</td>
+            </tr>
+            </tbody>
+        </table>
+        <p class="text-indent indent">
+            (以下无正文)
+        </p>
+        <div class="bottom-sign">
+            <div class="sign-content">
+                <p>签约主体(团队):</p>
+                <p>
+                    签名:<img class="sign-img" src="{$agree.sign}" />
+                </p>
+            </div>
+        </div>
+    </div>
+
+    <div style="page-break-after: always;"></div>
+
+    <div class="text-content">
+        <p class="indent">
+            附件3:团队安全责任主体承诺书
+        </p>
+        <h3 class="title">
+            团队安全责任主体承诺书<br>
+        </h3>
+        <p class="text-indent indent">
+            致:【武汉开源节流科技有限公司】
+        </p>
+        <p class="text-indent indent">
+            鉴于家庭维保作业的实际情况,为 了本人的安全与健康,为 了家庭的幸福美满, 为 了更好的为自 己创收,本人在此郑重承诺:
+        </p>
+        <p class="text-indent indent">
+            1、本人确认,在本人作业过程中发生的所有安全问题均由本人自行负责。本人是 每次作业过程中的安全责任主体。
+        </p>
+        <p class="text-indent indent">
+            2、在进行作业前,本人将做好安全作业准备,包括但不限于检查安全装备、注意 出行安全。
+        </p>
+        <p class="text-indent indent">
+            3、在作业过程中,本人将严格遵守《安全操作规程》及《安全带及安全绳使用规 范》等平台规则,及平台相关安全操作守则,切实保障安全作业,保证自身或他人的人身或财产安全。
+        </p>
+        <p class="text-indent indent">
+            4、高空作业时,本人将务必采取必要措施(包括但不限于 “地面高空警示”、“佩戴安全绳/带”等)保证高空作业的安全性。
+        </p>
+        <p class="text-indent indent">
+            5、风险作业时,本人将做好一切防范措施,严格恪守操作规范,避免给本人,贵司,及任何第三方造成损失。
+        </p>
+        <p class="text-indent indent">
+            上述承诺,均为本人之真实意思表示,且本人将严格按照上述承诺进行安全作业。如本人在作业过程中,违反上述承诺,本人自愿承担一切经济责任和法律责任。
+        </p>
+        <p class="text-indent indent">
+            (以下无正文)
+        </p>
+        <div class="bottom-sign">
+            <div class="sign-content">
+                <p>签约主体(团队):</p>
+                <p>
+                    签名:<img class="sign-img" src="{$agree.sign}" />
+                </p>
+            </div>
+        </div>
+    </div>
+</div>
+</body>
+
+</html>

+ 31 - 0
app/workerapi/controller/TenantController.php

@@ -3,7 +3,9 @@ namespace app\workerapi\controller;
 
 
 use app\adminapi\validate\tenant\TenantRegisterValidate;
+use app\workerapi\logic\TenantAgreeLogic;
 use app\workerapi\logic\TenantRegisterLogic;
+use app\workerapi\validate\MasterWorkerAgreeValidate;
 
 /**
  * 门店H5注册
@@ -33,4 +35,33 @@ class TenantController extends BaseApiController
     }
 
 
+    /**
+     * 协议详情
+     * @return \think\response\Json
+     */
+    public function agreement_detail()
+    {
+        $type = $this->request->get('type/s', '');
+        $result = TenantAgreeLogic::getAgreeByType($type,$this->userId);
+        return $this->data($result);
+    }
+
+    /**
+     * 协议签名
+     * @return \think\response\Json
+     */
+    public function agreeSign()
+    {
+        $params = (new MasterWorkerAgreeValidate())->post()->goCheck('sign', [
+            'user_id' => $this->userId,
+            'user_info' => $this->userInfo
+        ]);
+        $result = TenantAgreeLogic::sign($params);
+        if (false === $result) {
+            return $this->fail(TenantAgreeLogic::getError());
+        }
+        return $this->success('签名成功', [], 1, 1);
+    }
+
+
 }

+ 76 - 0
app/workerapi/logic/TenantAgreeLogic.php

@@ -0,0 +1,76 @@
+<?php
+namespace app\workerapi\logic;
+
+use app\common\command\AddAgreementPdf;
+use app\common\logic\BaseLogic;
+use app\common\model\master_worker\MasterWorker;
+use app\common\model\master_worker_register\MasterWorkerRegister;
+use app\common\model\tenant\Tenant;
+use app\common\model\tenant\TenantAgree;
+use app\common\model\tenant\TenantRegister;
+use app\common\service\ConfigService;
+use app\common\service\UploadService;
+use think\facade\Db;
+
+
+/**
+ * TenantAgreeLogic逻辑
+ * Class TenantAgreeLogic
+ * @package app\workerapi\logic\
+ */
+class TenantAgreeLogic extends BaseLogic
+{
+    public static function getAgreeByType($type,$userId)
+    {
+
+        //合作协议是否存在pdf
+        if($type=='tenant_cooperate'){
+            $pdf = TenantAgree::where(['agree_type'=>'tenant_cooperate','worker_id'=>$userId])->value('pdf_url');
+        }
+
+        return [
+            'title' => ConfigService::get('tenant_agreement', $type . '_title', ''),
+            'content' => ConfigService::get('tenant_agreement', $type . '_content', ''),
+            'pdf'=>!empty($pdf)?'https://'.$_SERVER['SERVER_NAME'].'/'.$pdf:''
+        ];
+    }
+    /**
+     *
+     * @param $params
+     * @return bool|void
+     */
+    public static function sign($params)
+    {
+        try {
+            //查询协议
+            $agree = TenantAgree::where(['worker_id'=>$params['user_id'],'agree_type'=>'tenant_cooperate'])->findOrEmpty();
+            //保存签名
+            if($agree->isEmpty()){
+                $agree->code = generate_sn(TenantAgree::class, 'code');
+                $agree->agree_type = 'tenant_cooperate';
+                $agree->worker_id = $params['user_id'];
+            }
+            $result = UploadService::base64Image(4, $params['sign']);
+            $sign = $result['url'];
+            $agree->sign = $sign;
+            $agree->audit_state = 0;
+            $agree->save();
+
+            \think\facade\Log::write('团队签署协议'.$agree->code);
+            AddAgreementPdf::addTenantAgreePdf(['code'=>$agree->code,'url'=>'https://'.$_SERVER['SERVER_NAME'].'/index/tenant_agreement/index?code='.$agree->code]);
+            return true;
+        } catch (\Exception $e) {
+            self::setError($e->getMessage());
+            return false;
+        }
+    }
+    /**
+     * 获取详情
+     */
+    public static function detail($params): array
+    {
+        return TenantRegister::findOrEmpty($params['id'])->toArray();
+    }
+
+
+}

+ 7 - 0
app/workerapi/logic/TrainingLogic.php

@@ -12,6 +12,8 @@ use app\common\model\master_worker\MasterWorkerInfo;
 use app\common\model\master_worker\MasterWorkerTeam;
 use app\common\model\shops\ShopOrderGoods;
 use app\common\model\shops\ShopOrders;
+use app\common\model\tenant\TenantAgree;
+use app\common\model\tenant\TenantRegister;
 use app\common\model\training\TrainingCourse;
 use app\common\model\training\TrainingQuestions;
 use app\common\model\training\TrainingWorkerCourse;
@@ -45,6 +47,11 @@ class TrainingLogic extends  BaseLogic
                 $masterWorker = MasterWorker::where('id',$masterWorkerId)->find();
                 $task_info['category_status'] = empty($masterWorker['category_ids'])?0:1;
                 $task_info['service_status'] = (empty($masterWorker['lon']) || empty($masterWorker['lat']))?0:1;
+                // 团队入驻状态 审核状态 0待审核 1审核通过 2审核拒绝
+                $task_info['tenant_register_status'] = TenantRegister::where('mobile',$masterWorker['mobile'])->value('status')??0;
+                // 团队协议状态 审核状态 0待审核 1审核通过 2审核拒绝 3待提交
+                $task_info['tenant_agree_status'] = TenantAgree::where('worker_id',$masterWorker['id'])->value('audit_state')??0;
+                $task_info['tenant_agree_info'] = TenantAgreeLogic::getAgreeByType('tenant_cooperate',$masterWorker['id']);
             }
             //$task_info['free_videos'] = TrainingCourse::where('course_lock',1)->select()->toArray();
             return $task_info;