123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188 |
- <?php
- /**
- * OaMchModel.php UTF-8
- * 公众号关联支付表
- *
- * @date : 2018/9/14 20:31
- *
- * @license 这不是一个自由软件,未经授权不许任何使用和传播。
- * @author : wuyonghong <wyh@huosdk.com>
- * @version : HuoMp 1.0
- */
- namespace huomp\model\weixin;
- use huolib\constant\MpConfConst;
- use huomp\model\common\CommonModel;
- class OaMchModel extends CommonModel {
- protected $table = 'mp_oa_mch';
- /**
- * 关联账号表
- *
- * @return mixed
- */
- public function mc() {
- return $this->hasone(MpConfModel::className(), 'mp_id', 'oa_id')->field('mp_id,wx_name,wx_logo,qr_code');
- }
- /**
- * 添加数据
- *
- * @param $data
- *
- * @return bool
- */
- public function addData($data) {
- if (empty($data)) {
- return false;
- }
- $_rs = $this->where($data)->find();
- if (!empty($_rs)) {
- return $_rs['id'];
- }
- $_data = $data;
- $_obj = self::create($_data, true);
- if ($_obj) {
- if (!empty($_data['is_default']) && MpConfConst::MP_OA_MCH_DEFAULT_2 == $_data['is_default']) {
- $_map = [
- 'mch_id' => $_data['mch_id'],
- 'id' => ['neq', $_obj->id],
- ];
- /* 先将全部设置为非默认 */
- $this->update(['is_default' => MpConfConst::MP_OA_MCH_DEFAULT_1], $_map);
- }
- return $_obj->id;
- }
- return false;
- }
- /**
- * 获取数据
- *
- * @param $mch_id
- *
- * @return array|bool|false|\PDOStatement|string|\think\Model
- */
- public function getInfoByMchId($mch_id) {
- $_map['mch_id'] = $mch_id;
- $_info = self::where($_map)->find();
- if (false === $_info) {
- return false;
- }
- if (is_object($_info)) {
- return $_info->toArray();
- } else {
- return $_info;
- }
- }
- /**
- * 删除记录
- *
- * @param $id
- *
- * @return int
- */
- public function deleteData($id) {
- $_map = ['id' => $id];
- return self::where($_map)->delete();
- }
- /**
- * 删除记录
- *
- * @param $oa_id
- *
- * @return int
- */
- public function deleteDataByOaId($oa_id) {
- $_map = ['oa_id' => $oa_id];
- return self::where($_map)->delete();
- }
- /**
- * 删除记录
- *
- * @param $mch_id
- *
- * @return int
- */
- public function deleteDataByMchId($mch_id) {
- $_map = ['mch_id' => $mch_id];
- return self::where($_map)->delete();
- }
- /**
- * 修改默认状态
- *
- * @param $id
- * @param int $is_default
- *
- * @return bool
- */
- public function setDefault($id, $is_default = MpConfConst::MP_OA_MCH_DEFAULT_2) {
- $_data = $this->getInfoById($id);
- $_map = ['mch_id' => $_data['mch_id']];
- /* 先将全部设置为非默认 */
- $this->update(['is_default' => MpConfConst::MP_OA_MCH_DEFAULT_1], $_map);
- $_map = ['id' => $id];
- $_data = ['is_default' => $is_default];
- $_rs = $this->update($_data, $_map);
- if (false == $_rs) {
- return false;
- }
- return true;
- }
- /**
- * 获取公众号绑定商户信息配置信息
- *
- * @param $oa_id
- *
- * @return array
- */
- public function getPayConfByOaId($oa_id, $order = '-is_default') {
- $_rdata = [];
- $_map = ['oa_id' => $oa_id];
- $order = $this->orderFilter($order);
- $_data = $this->where($_map)->order($order)->find();
- if (is_object($_data)) {
- $_data = $_data->toArray();
- }
- if (empty($_data)) {
- return $_rdata;
- }
- $_map = ['mp_id' => $oa_id];
- $_oa_data = (new MpConfModel())->where($_map)->find();
- if (is_object($_oa_data)) {
- $_oa_data = $_oa_data->toArray();
- }
- if (empty($_oa_data)) {
- return $_rdata;
- }
- $_map = ['mp_id' => $_data['mch_id']];
- $_mch_data = (new MpConfModel())->where($_map)->find();
- if (is_object($_mch_data)) {
- $_mch_data = $_mch_data->toArray();
- }
- if (empty($_mch_data)) {
- return $_rdata;
- }
- $_rdata = [
- 'app_id' => $oa_id,
- 'mch_id' => $_mch_data['mp_id'],
- 'key' => $_mch_data['app_secret'],
- 'app_secret' => $_oa_data['app_secret'],
- ];
- return $_rdata;
- }
- }
|