|
- <?php
-
- namespace common\models;
-
- use yii\db\ActiveRecord;
-
- /**
- * This is the model class for table "base_supplier_sale".
- *
- * @property integer $ID
- * @property integer $CREATE_USER_ID
- * @property string $CREATE_TIME
- * @property integer $UPDATE_USER_ID
- * @property string $UPDATE_TIME
- * @property integer $CANCEL_FLAG
- * @property integer $SUPPLIER_ID
- * @property integer $PROD_SUPPLIER_ID
- * @property integer $PRODUCT_TYPE
- * @property integer $PARENT_TYPE
- * @property integer $SALE_TYPE
- * @property integer $COMMISION_FLAG
- * @property integer $COMMISION_TYPE
- * @property integer $BACK_COMMISION_TYPE
- * @property integer $BACK_COMMISION_METHOD
- * @property string $BACK_PERCENT
- * @property string $BACK_VALUE
- */
- class BaseSupplierSale extends ActiveRecord
- {
- const SALE_HOTEL = 25; //酒店
- const TYPE_CHANNEL = 303; //佣金类型 渠道定义
- const TYPE_PRODUCT = 304; //产品定义
- const METHOD_PRICE = 308; //按销售金额
- const METHOD_COST = 309; //按结算金额
-
- const SALE_TYPE_AGENT = 277; //代理
- const SALE_TYPE_DIRECT = 312; //直营
- const SALE_TYPE_CHANNEL = 177; //分销
-
- /**
- * @inheritdoc
- */
- public static function tableName()
- {
- return 'base_supplier_sale';
- }
-
- /**
- * @inheritdoc
- */
- public function rules()
- {
- return [
- [['CREATE_USER_ID', 'UPDATE_USER_ID', 'CANCEL_FLAG', 'SUPPLIER_ID', 'PROD_SUPPLIER_ID', 'PRODUCT_TYPE', 'PARENT_TYPE', 'SALE_TYPE', 'COMMISION_FLAG', 'COMMISION_TYPE', 'BACK_COMMISION_TYPE', 'BACK_COMMISION_METHOD'], 'integer'],
- [['CREATE_TIME'], 'required'],
- [['UPDATE_TIME'], 'safe'],
- [['BACK_PERCENT', 'BACK_VALUE'], 'number'],
- [['CREATE_TIME'], 'string', 'max' => 20],
- ];
- }
-
- /**
- * @inheritdoc
- */
- public function attributeLabels()
- {
- return [
- 'ID' => 'ID',
- 'CREATE_USER_ID' => '记录创建用户ID',
- 'CREATE_TIME' => '记录创建时间',
- 'UPDATE_USER_ID' => '记录最后更新用户ID',
- 'UPDATE_TIME' => '记录最后更新时间',
- 'CANCEL_FLAG' => '记录有效性标记,CANCEL_FLAG=0记录有效;CANCEL_FLAG=1,记录已删除',
- 'SUPPLIER_ID' => '供应商或渠道商ID,对应BASE_SUPPLIER.ID',
- 'PROD_SUPPLIER_ID' => '供应商ID,对应BASE_SUPPLIER.ID',
- 'PRODUCT_TYPE' => '产品子类',
- 'PARENT_TYPE' => '产品父类',
- 'SALE_TYPE' => '销售方式',
- 'COMMISION_FLAG' => '是否有佣金规则,1:有,0:无',
- 'COMMISION_TYPE' => '佣金类别,渠道定义或产品定义,对应DICT_TYPE.ID',
- 'BACK_COMMISION_TYPE' => '返佣类别,固定返佣,对应DICT_TYPE.ID',
- 'BACK_COMMISION_METHOD' => '返佣方式,按销售或按结算,对应DICT_TYPE.ID',
- 'BACK_PERCENT' => '返佣比例',
- 'BACK_VALUE' => '返佣固定金额',
- ];
- }
-
- /**
- * User: wangxj
- *
- * 获取渠道商的价格字段
- *
- * @param $type
- * @return string
- */
- public static function getSaleField($type)
- {
- switch ($type) {
- case BaseSupplierSale::SALE_TYPE_AGENT:
- $field = 'CUS_PRICE';
- break;
- case BaseSupplierSale::SALE_TYPE_DIRECT:
- $field = 'CUS_PRICE';
- break;
- case BaseSupplierSale::SALE_TYPE_CHANNEL:
- $field = 'PROD_PRICE';
- break;
- default:
- $field = 'CUS_PRICE';
- }
- return $field;
- }
-
- /**
- * Function Description:根据传入的渠道id获取酒店的销售方式
- * Function Name: getSaleType
- * @param $supplier_id
- *
- * @return string
- *
- * @author 娄梦宁
- */
- public static function getSaleType($supplier_id)
- {
- $sale_type=self::find()
- ->select('sale_type')
- ->from(self::tableName())
- ->where(['and',['=','cancel_flag',0],['=','parent_type',25],['=','supplier_id',$supplier_id]])
- ->asArray()
- ->one();
- if(!empty($sale_type)){
- $field=self::getSaleField($sale_type);
- }else{
- $field='';
- }
- return $field;
- }
- }
|