/** * (null) getColumnInfoByTablename : 通过表名返回 数组[英文字段名=>中文字段名] * @static * @param $tablename: 表名 eg:personal * @return array */ public static function getColumnInfoByTablename($tablename) { //拼接SQL语句 self::$_sql = "SELECT CONCAT(pbc_tnam , '.', pbc_cnam) pbc_cnam, " . " CONCAT(CASE pbc_tnam WHEN 'personal' THEN '员工本人-' WHEN 'marry' THEN '配偶情况-' WHEN 'child' THEN '子女情况-'" . " WHEN 'jedt' THEN '避孕情况-' WHEN 'ycdt' THEN '孕产动态-' WHEN 'check1' THEN '妇检情况-' WHEN 'letter' THEN '联系函-'" . " WHEN 'holidays_data' THEN '休假情况-' WHEN 'xsb' THEN '亲属情况-' WHEN 'unit' THEN '单位情况-'" . " ELSE '' END,pbc_labl) pbc_labl FROM `col_table`" . " where status=:status and pbc_tnam=:pbc_tnam order by sort_no asc"; self::$_tablename = $tablename; self::$_data = Data::cache(self::CACHE_KEY . self::$_tablename . '_ARRAYDATA', 3600, function () { $result = []; try { $result[self::$_tablename] = ArrayHelper::map(parent::getDb()->createCommand(self::$_sql)->bindValues([':status' => self::STATUS_ACTIVE, ':pbc_tnam' => self::$_tablename])->queryAll(), 'pbc_cnam', 'pbc_labl'); } catch (\yii\db\Exception $e) { } return $result; }); return isset(self::$_data[$tablename]) ? self::$_data[$tablename] : null; }