10 use Psr\Log\LoggerInterface as LogWriter;
13 use \Magento\Sales\Model\ResourceModel\EntityAbstract;
14 use \Magento\Framework\Model\ResourceModel\Db\VersionControl\Snapshot;
44 $this->
_init(
'sales_order_status',
'status');
45 $this->_isPkAutoIncrement =
false;
46 $this->labelsTable = $this->
getTable(
'sales_order_status_label');
47 $this->stateTable = $this->
getTable(
'sales_order_status_state');
60 if ($field ==
'default_state') {
65 [
'state_table' => $this->stateTable],
69 'state_table.state = ?',
72 'state_table.is_default DESC' 91 ->from([
'ssl' => $this->labelsTable], [])
92 ->where(
'status = ?',
$status->getStatus())
108 if ($object->hasStoreLabels()) {
109 $labels = $object->getStoreLabels();
110 $this->
getConnection()->delete($this->labelsTable, [
'status = ?' => $object->getStatus()]);
122 return parent::_afterSave($object);
140 [
'state = ?' => $state]
148 'is_default' => (
int)$isDefault,
149 'visible_on_front' => (
int)$visibleOnFront
171 'state = ?' => $state,
175 if ($isStateDefault) {
177 if ($newDefaultStatus) {
182 'state = ?' => $state,
183 'status = ?' => $newDefaultStatus
189 }
catch (\Exception $e) {
207 ->from([
'sss' => $this->stateTable], [])
208 ->where(
'state = ?', $state)
223 ->from([
'sfo' => $this->
getTable(
'sales_order')], [])
241 ->from([
'sss' => $this->stateTable], [])
242 ->where(
'state = ?', $state)
245 ->columns([
'is_default'])
260 ->from([
'sss' => $this->stateTable, []])
261 ->where(
'state = ?', $state)
263 ->columns([
'status'])
getStoreLabels(\Magento\Sales\Model\Order\Status $status)
_getLoadSelect($field, $value, $object)
_init($mainTable, $idFieldName)
checkIsStateDefault($state, $status)
unassignState($status, $state)
checkIsStatusUsed($status)
assignState($status, $state, $isDefault, $visibleOnFront=false)
_afterSave(\Magento\Framework\Model\AbstractModel $object)