CRMEB 常用代码

根据某列进行排序

$sorts = array_column($item['attrInfo'], 'sort');
array_multisort($sorts, SORT_ASC, $item['attrInfo']);

模拟延迟

sleep(5);

按钮权限

<Button v-auth="['product-product-rule-delete']" @click="del(null,'批量删除规格')">批量删除</Button>

记录日志,序列化

use think\facade\Log;

$d = $this->withSearchSelect(array_keys($where), $where);

Log::record(serialize($where),'error');
Log::record($this->getModel()::getLastSql(),'error');


$res = $this->getModel()::where($where)->delete();
Log::record($this->getModel()::getLastSql(),'error');

事务保存

$this->transaction(function () use ($id, $data $storeProductCateServices) {});   

查找一个元素

var item = arr_allInputList.find(c => c.value == value);

下来清空 clearable

<Select v-model="artFrom.is_show" placeholder="请选择" clearable @on-change="userSearchs">
    <Option value="1">显示</Option>
    <Option value="0">隐藏</Option>
</Select>

数组相加 = 数组合并

        $sumNumber = $this->dao->search($where + $whereData)->field([
            'sum(total_num) as sum_total_num'
        ])->find();

读取配置
$reason = sys_config('stor_reason') ?: [];// 退款理由

关联查询

model层

    /**
     * 门店一对一关联
     * @return \think\model\relation\HasOne
     */
    public function store()
    {
        // store_name 相当于 别名
        return $this->hasOne(SystemStore::class, 'id', 'store_id')->field(['id', 'name'])->bind([
            'store_name' => 'name'
        ]);
    }

dal层

        return $this->search($where)
            ->with('store')
            ->when($page && $limit, function ($query) use ($page, $limit) {
                $query->page($page, $limit);
            })
            ->order('id DESC')
            ->field('id,store_id')// 这里必须包含外键
            ->select()->toArray();

自定义列

{
    title: '#',
    align: 'center',
     50,
    render: (h, params) => {
        return h('div', {
            domProps: {
                innerHTML: "" + (params.index+1)
            }
        });
    }
}
{
    title: '商品名称',
    minWidth: 120,
    render: (h, params) => {
        return h('div', {
            domProps: {
                innerHTML: params.row.productInfo.store_name
            }
        });
    }
}

数组转字符串
implode() 函数返回一个由数组元素组合成的字符串。

$data['day_time'] = implode(' - ', $data['day_time']);

后端校验

validate(\app\adminapi\validate\merchant\SystemStoreValidate::class)->scene('save')->check($data);
原文地址:https://www.cnblogs.com/guxingy/p/15791306.html