Code Duplication    Length = 117-118 lines in 2 locations

src/Models/Note.php 1 location

@@ 8-125 (lines=118) @@
5
use Codexshaper\WooCommerce\Facades\Query;
6
use Codexshaper\WooCommerce\Traits\QueryBuilderTrait;
7
8
class Note extends BaseModel
9
{
10
    use QueryBuilderTrait;
11
12
    protected $endpoint;
13
14
    /**
15
     * Retrieve all Items.
16
     *
17
     * @param int   $order_id
18
     * @param array $options
19
     *
20
     * @return array
21
     */
22
    protected function all($order_id, $options = [])
23
    {
24
        return Query::init()
25
            ->setEndpoint("orders/{$order_id}/notes")
26
            ->all($options);
27
    }
28
29
    /**
30
     * Retrieve single Item.
31
     *
32
     * @param int   $order_id
33
     * @param int   $note_id
34
     * @param array $options
35
     *
36
     * @return object
37
     */
38
    protected function find($order_id, $note_id, $options = [])
39
    {
40
        return Query::init()
41
            ->setEndpoint("orders/{$order_id}/notes")
42
            ->find($note_id, $options);
43
    }
44
45
    /**
46
     * Create new Item.
47
     *
48
     * @param int   $order_id
49
     * @param array $data
50
     *
51
     * @return object
52
     */
53
    protected function create($order_id, $data)
54
    {
55
        return Query::init()
56
            ->setEndpoint("orders/{$order_id}/notes")
57
            ->create($data);
58
    }
59
60
    /**
61
     * Destroy Item.
62
     *
63
     * @param int   $order_id
64
     * @param int   $note_id
65
     * @param array $options
66
     *
67
     * @return object
68
     */
69
    protected function delete($order_id, $note_id, $options = [])
70
    {
71
        return Query::init()
72
            ->setEndpoint("orders/{$order_id}/notes")
73
            ->delete($note_id, $options);
74
    }
75
76
    /**
77
     * Paginate results.
78
     *
79
     *
80
     * @param int   $order_id
81
     * @param int   $per_page
82
     * @param int   $current_page
83
     * @param array $options
84
     *
85
     * @return array
86
     */
87
    protected function paginate(
88
        $order_id,
89
        $per_page = 10,
90
        $current_page = 1,
91
        $options = []
92
    ) {
93
        return Query::init()
94
            ->setEndpoint("orders/{$order_id}/notes")
95
            ->paginate($per_page, $current_page, $options);
96
    }
97
98
    /**
99
     * Count all results.
100
     *
101
     * @param int $order_id
102
     *
103
     * @return int
104
     */
105
    protected function count($order_id)
106
    {
107
        return Query::init()
108
            ->setEndpoint("orders/{$order_id}/notes")
109
            ->count();
110
    }
111
112
    /**
113
     * Store data.
114
     *
115
     * @param int $order_id
116
     *
117
     * @return array
118
     */
119
    public function save($order_id)
120
    {
121
        return Query::init()
122
            ->setEndpoint("orders/{$order_id}/notes")
123
            ->save();
124
    }
125
}
126

src/Models/Refund.php 1 location

@@ 8-124 (lines=117) @@
5
use Codexshaper\WooCommerce\Facades\Query;
6
use Codexshaper\WooCommerce\Traits\QueryBuilderTrait;
7
8
class Refund extends BaseModel
9
{
10
    use QueryBuilderTrait;
11
12
    protected $endpoint;
13
14
    /**
15
     * Retrieve all Items.
16
     *
17
     * @param int   $order_id
18
     * @param array $options
19
     *
20
     * @return array
21
     */
22
    protected function all($order_id, $options = [])
23
    {
24
        return Query::init()
25
            ->setEndpoint("orders/{$order_id}/refunds")
26
            ->all($options);
27
    }
28
29
    /**
30
     * Retrieve single Item.
31
     *
32
     * @param int   $order_id
33
     * @param int   $refund_id
34
     * @param array $options
35
     *
36
     * @return object
37
     */
38
    protected function find($order_id, $refund_id, $options = [])
39
    {
40
        return Query::init()
41
            ->setEndpoint("orders/{$order_id}/refunds")
42
            ->find($refund_id, $options);
43
    }
44
45
    /**
46
     * Create new Item.
47
     *
48
     * @param int   $order_id
49
     * @param array $data
50
     *
51
     * @return object
52
     */
53
    protected function create($order_id, $data)
54
    {
55
        return Query::init()
56
            ->setEndpoint("orders/{$order_id}/refunds")
57
            ->create($data);
58
    }
59
60
    /**
61
     * Destroy Item.
62
     *
63
     * @param int   $order_id
64
     * @param int   $refund_id
65
     * @param array $options
66
     *
67
     * @return object
68
     */
69
    protected function delete($order_id, $refund_id, $options = [])
70
    {
71
        return Query::init()
72
            ->setEndpoint("orders/{$order_id}/refunds")
73
            ->delete($refund_id, $options);
74
    }
75
76
    /**
77
     * Paginate results.
78
     *
79
     * @param int   $order_id
80
     * @param int   $per_page
81
     * @param int   $current_page
82
     * @param array $options
83
     *
84
     * @return array
85
     */
86
    protected function paginate(
87
        $order_id,
88
        $per_page = 10,
89
        $current_page = 1,
90
        $options = []
91
    ) {
92
        return Query::init()
93
            ->setEndpoint("orders/{$order_id}/refunds")
94
            ->paginate($per_page, $current_page, $options);
95
    }
96
97
    /**
98
     * Count all results.
99
     *
100
     * @param int $order_id
101
     *
102
     * @return int
103
     */
104
    protected function count($order_id)
105
    {
106
        return Query::init()
107
            ->setEndpoint("orders/{$order_id}/refunds")
108
            ->count();
109
    }
110
111
    /**
112
     * Store data.
113
     *
114
     * @param int $order_id
115
     *
116
     * @return array
117
     */
118
    public function save($order_id)
119
    {
120
        return Query::init()
121
            ->setEndpoint("orders/{$order_id}/refunds")
122
            ->save();
123
    }
124
}
125