Code Duplication    Length = 33-35 lines in 3 locations

src/OroCRM/Bundle/ActivityContactBundle/Migrations/Schema/v1_0/OroCRMActivityContactBundle.php 1 location

@@ 53-85 (lines=33) @@
50
     *
51
     * @return ParametrizedSqlMigrationQuery
52
     */
53
    public static function getDropEntityConfigFieldQuery($className, $fieldName)
54
    {
55
        $dropFieldIndexSql = 'DELETE FROM oro_entity_config_index_value'
56
            . ' WHERE entity_id IS NULL AND field_id IN ('
57
            . ' SELECT oecf.id FROM oro_entity_config_field AS oecf'
58
            . ' WHERE oecf.field_name = :field'
59
            . ' AND oecf.entity_id IN ('
60
            . ' SELECT oec.id'
61
            . ' FROM oro_entity_config AS oec'
62
            . ' WHERE oec.class_name = :class'
63
            . ' ))';
64
        $dropFieldSql      = 'DELETE FROM oro_entity_config_field'
65
            . ' WHERE field_name = :field'
66
            . ' AND entity_id IN ('
67
            . ' SELECT id'
68
            . ' FROM oro_entity_config'
69
            . ' WHERE class_name = :class'
70
            . ' )';
71
72
        $query = new ParametrizedSqlMigrationQuery();
73
        $query->addSql(
74
            $dropFieldIndexSql,
75
            ['field' => $fieldName, 'class' => $className],
76
            ['field' => 'string', 'class' => 'string']
77
        );
78
        $query->addSql(
79
            $dropFieldSql,
80
            ['field' => $fieldName, 'class' => $className],
81
            ['field' => 'string', 'class' => 'string']
82
        );
83
84
        return $query;
85
    }
86
}
87

src/OroCRM/Bundle/CallBundle/Migrations/Schema/v1_3/OroCRMCallBundle.php 1 location

@@ 163-197 (lines=35) @@
160
     *
161
     * @return ParametrizedSqlMigrationQuery
162
     */
163
    protected function getDropEntityConfigManyToOneRelationQuery($fieldName)
164
    {
165
        $dropFieldIndexSql = 'DELETE FROM oro_entity_config_index_value'
166
            . ' WHERE entity_id IS NULL AND field_id IN ('
167
            . ' SELECT oecf.id FROM oro_entity_config_field AS oecf'
168
            . ' WHERE oecf.field_name = :field'
169
            . ' AND oecf.entity_id IN ('
170
            . ' SELECT oec.id'
171
            . ' FROM oro_entity_config AS oec'
172
            . ' WHERE oec.class_name = :class'
173
            . ' ))';
174
        $dropFieldSql = 'DELETE FROM oro_entity_config_field'
175
            . ' WHERE field_name = :field'
176
            . ' AND entity_id IN ('
177
            . ' SELECT id'
178
            . ' FROM oro_entity_config'
179
            . ' WHERE class_name = :class'
180
            . ' )';
181
182
        $callClassName = $this->extendExtension->getEntityClassByTableName('orocrm_call');
183
184
        $query = new ParametrizedSqlMigrationQuery();
185
        $query->addSql(
186
            $dropFieldIndexSql,
187
            ['field' => $fieldName, 'class' => $callClassName],
188
            ['field' => 'string', 'class' => 'string']
189
        );
190
        $query->addSql(
191
            $dropFieldSql,
192
            ['field' => $fieldName, 'class' => $callClassName],
193
            ['field' => 'string', 'class' => 'string']
194
        );
195
196
        return $query;
197
    }
198
}
199

src/OroCRM/Bundle/TaskBundle/Migrations/Schema/v1_2/OroCRMTaskBundle.php 1 location

@@ 183-217 (lines=35) @@
180
     *
181
     * @return ParametrizedSqlMigrationQuery
182
     */
183
    protected function getDropEntityConfigManyToOneRelationQuery($fieldName)
184
    {
185
        $dropFieldIndexSql = 'DELETE FROM oro_entity_config_index_value'
186
            . ' WHERE entity_id IS NULL AND field_id IN ('
187
            . ' SELECT oecf.id FROM oro_entity_config_field AS oecf'
188
            . ' WHERE oecf.field_name = :field'
189
            . ' AND oecf.entity_id IN ('
190
            . ' SELECT oec.id'
191
            . ' FROM oro_entity_config AS oec'
192
            . ' WHERE oec.class_name = :class'
193
            . ' ))';
194
        $dropFieldSql      = 'DELETE FROM oro_entity_config_field'
195
            . ' WHERE field_name = :field'
196
            . ' AND entity_id IN ('
197
            . ' SELECT id'
198
            . ' FROM oro_entity_config'
199
            . ' WHERE class_name = :class'
200
            . ' )';
201
202
        $taskClassName = $this->extendExtension->getEntityClassByTableName('orocrm_task');
203
204
        $query = new ParametrizedSqlMigrationQuery();
205
        $query->addSql(
206
            $dropFieldIndexSql,
207
            ['field' => $fieldName, 'class' => $taskClassName],
208
            ['field' => 'string', 'class' => 'string']
209
        );
210
        $query->addSql(
211
            $dropFieldSql,
212
            ['field' => $fieldName, 'class' => $taskClassName],
213
            ['field' => 'string', 'class' => 'string']
214
        );
215
216
        return $query;
217
    }
218
}
219