| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144 | <?php/** * AgentMan.php UTF-8 * 渠道账户管理 * * @date    : 2018/5/10 17:44 * * @license 这不是一个自由软件,未经授权不许任何使用和传播。 * @author  : wuyonghong <wyh@huosdk.com> * @version : HUOSDK 8.0 */namespace huo\controller\agent;use huo\controller\common\Base;use huo\model\agent\AgentManModel;use huolib\constant\SettleConst;use huolib\status\CommonStatus;use huolib\status\MemberStatus;use huolib\status\SettleStatus;class AgentMan extends Base {    /**     * @param $agent_id     * @param $type     *     * @return mixed     */    public function getInfoByAgentAndType($agent_id, $type) {        return (new AgentManModel())->getInfoByAgentAndType($agent_id, $type);    }    /**     * @param $agent_id     *     * @return array     */    public function getList($agent_id) {        $_am_model = new AgentManModel();        $_types = [SettleConst::SETTLE_TYPE_BANK, SettleConst::SETTLE_TYPE_ALIPAY, SettleConst::SETTLE_TYPE_WXPAY];        $_rdatas = $_am_model->getInfoByAgent($agent_id);        if (empty($_rdatas)) {            foreach ($_types as $_type) {                $_data['type'] = $_type;                $_data['agent_id'] = $agent_id;                $_am_model->addData($_data);            }            $_rdatas = $_am_model->getInfoByAgent($agent_id);        }        if (empty($_rdatas)) {            $_code = CommonStatus::INVALID_PARAMS;            return $this->huoError($_code, CommonStatus::getMsg($_code));        }        $_code = CommonStatus::NO_ERROR;        $_data['count'] = 3;        $_data['list'] = $_rdatas;        return $this->huoSuccess($_code, CommonStatus::getMsg($_code), $_data);    }    public function edit($param, $agent_id) {        if (empty($agent_id)) {            $_code = MemberStatus::UID_NOT_EXISTS;            return $this->huoError($_code, MemberStatus::getMsg($_code));        }        $_chk_rs = $this->checkSettleParam($param);        if (SettleStatus::NO_ERROR != $_chk_rs) {            return $this->huoError($_chk_rs, SettleStatus::getMsg($_chk_rs));        }        $_am_model = new AgentManModel();        $_data = $_am_model->getInfoByAgentAndType($agent_id, $param['type']);        if (empty($_data)) {            $_data = $param;            $_data['agent_id'] = $agent_id;            $_rs = $_am_model->addData($_data);        } else {            $_data = array_merge($_data, $param);            $_rs = $_am_model->updateData($_data, $_data['id']);        }        if (false === $_rs) {            $_rs = SettleStatus::INNER_ERROR;            return $this->huoError($_rs, SettleStatus::getMsg($_rs));        }        $_code = SettleStatus::NO_ERROR;        return $this->huoError($_code, SettleStatus::getMsg($_code));    }    /**     * @param $param     *     * @return int     */    public function checkSettleParam($param) {        if (empty($param)) {            return SettleStatus::INVALID_PARAMS;        }        if (empty($param['type'])) {            return SettleStatus::TYPE_EMPTY;        }        if (empty($param['cardholder'])) {            return SettleStatus::CARDHOLDER_EMPTY;        }        switch ($param['type']) {            case SettleConst::SETTLE_TYPE_BANK:                {                    if (empty($param['banknum'])) {                        return SettleStatus::BANKNUM_EMPTY;                    }                    if (empty($param['bankname'])) {                        return SettleStatus::BANKNAME_EMPTY;                    }                    if (empty($param['branchname'])) {                        return SettleStatus::BRANCHNAME_EMPTY;                    }                    break;                }            case SettleConst::SETTLE_TYPE_ALIPAY:                {                    if (empty($param['banknum'])) {                        return SettleStatus::ALIPAY_EMPTY;                    }                    break;                }            case SettleConst::SETTLE_TYPE_WXPAY:            case SettleConst::SETTLE_TYPE_MP:                {                    if (empty($param['banknum'])) {                        return SettleStatus::WXPAY_EMPTY;                    }                    break;                }            default:                {                    return SettleStatus::TYPE_EMPTY;                }        }        return SettleStatus::NO_ERROR;    }}
 |