86 lines
2.1 KiB
PHP
86 lines
2.1 KiB
PHP
<?php
|
|
|
|
namespace models;
|
|
|
|
require_once('mt/Item.php');
|
|
|
|
use mt;
|
|
use phpcommon\SqlHelper;
|
|
|
|
class Mission extends BaseModel {
|
|
|
|
const RECEIVEABLE_STATE = 0;
|
|
const RECEIVED_STATE = 1;
|
|
const NOT_FINISHED_STATE = 2;
|
|
|
|
public static function find($missionId)
|
|
{
|
|
$row = SqlHelper::ormSelectOne(
|
|
myself()->_getSelfMysql(),
|
|
't_mission',
|
|
array(
|
|
'account_id' => myself()->_getAccountId(),
|
|
'mission_id' => $missionId,
|
|
)
|
|
);
|
|
return $row;
|
|
}
|
|
|
|
public static function toDto($row)
|
|
{
|
|
return array(
|
|
'mission_id' => $row['mission_id'],
|
|
'createtime' => $row['createtime'],
|
|
'modifytime' => $row['modifytime'],
|
|
);
|
|
}
|
|
|
|
public static function all()
|
|
{
|
|
$rows = SqlHelper::ormSelect(
|
|
myself()->_getSelfMysql(),
|
|
't_mission',
|
|
array(
|
|
'account_id' => myself()->_getAccountId(),
|
|
)
|
|
);
|
|
return array_map(function($row) {
|
|
$nowDaySeconds = myself()->_getNowDaySeconds();
|
|
$mondaySeconds = myself()->_getMondaySeconds();
|
|
return $row;
|
|
}, $rows);
|
|
}
|
|
|
|
public static function allToHash()
|
|
{
|
|
$rows = self::all();
|
|
$missionHash = array();
|
|
array_walk($rows, function ($row) use(&$missionHash) {
|
|
$missionHash[$row['mission_id']] = $row;
|
|
});
|
|
return $missionHash;
|
|
}
|
|
|
|
public static function add($missionId)
|
|
{
|
|
SqlHelper::upsert(
|
|
myself()->_getSelfMysql(),
|
|
't_mission',
|
|
array(
|
|
'account_id' => myself()->_getAccountId(),
|
|
'mission_id' => $missionId
|
|
),
|
|
array(
|
|
'modifytime' => myself()->_getNowTime()
|
|
),
|
|
array(
|
|
'account_id' => myself()->_getAccountId(),
|
|
'mission_id' => $missionId,
|
|
'createtime' => myself()->_getNowTime(),
|
|
'modifytime' => myself()->_getNowTime()
|
|
)
|
|
);
|
|
}
|
|
|
|
}
|