|
@@ -15,6 +15,8 @@
|
|
|
namespace app\adminapi\logic\jobs_rules;
|
|
namespace app\adminapi\logic\jobs_rules;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+use app\common\logic\TableDataLogic;
|
|
|
|
|
+use app\common\model\auth\Admin;
|
|
|
use app\common\model\jobs_rules\JobsRules;
|
|
use app\common\model\jobs_rules\JobsRules;
|
|
|
use app\common\logic\BaseLogic;
|
|
use app\common\logic\BaseLogic;
|
|
|
use think\facade\Db;
|
|
use think\facade\Db;
|
|
@@ -109,4 +111,112 @@ class JobsRulesLogic extends BaseLogic
|
|
|
{
|
|
{
|
|
|
return JobsRules::findOrEmpty($params['id'])->toArray();
|
|
return JobsRules::findOrEmpty($params['id'])->toArray();
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * @notes 获取规则数据
|
|
|
|
|
+ * @param $params
|
|
|
|
|
+ * @return array
|
|
|
|
|
+ * @date 2024/12/31 13:50
|
|
|
|
|
+ */
|
|
|
|
|
+ public static function ruleData($params)
|
|
|
|
|
+ {
|
|
|
|
|
+ $result = [];
|
|
|
|
|
+ /*1 省
|
|
|
|
|
+ 2 市
|
|
|
|
|
+ 3 销售组
|
|
|
|
|
+ 4 后台管理员
|
|
|
|
|
+ 5 代理人
|
|
|
|
|
+ 6 销售*/
|
|
|
|
|
+ $province_ids = array_column($params['rules_data'], 'rule_value', 'rule_id');
|
|
|
|
|
+ $province_ids = $province_ids[1]??[];
|
|
|
|
|
+ switch ($params['id']) {
|
|
|
|
|
+ case 1:
|
|
|
|
|
+ $result = TableDataLogic::provinces();
|
|
|
|
|
+ // 数组的开始位置添加一个数组
|
|
|
|
|
+ array_unshift($result, [
|
|
|
|
|
+ "id" => 'self',
|
|
|
|
|
+ "name" => "管理员所属",
|
|
|
|
|
+ "value" => "self",
|
|
|
|
|
+ "type_value" => "data_table_provinces",
|
|
|
|
|
+ ]);
|
|
|
|
|
+ break;
|
|
|
|
|
+ case 2:
|
|
|
|
|
+ $result = TableDataLogic::citys($province_ids);
|
|
|
|
|
+ // 数组的开始位置添加一个数组
|
|
|
|
|
+ array_unshift($result, [
|
|
|
|
|
+ "id" => 'self',
|
|
|
|
|
+ "name" => "管理员所属",
|
|
|
|
|
+ "value" => "self",
|
|
|
|
|
+ "type_value" => "data_table_citys",
|
|
|
|
|
+ ]);
|
|
|
|
|
+ break;
|
|
|
|
|
+ case 3:
|
|
|
|
|
+ $result = TableDataLogic::saleGroup();
|
|
|
|
|
+ break;
|
|
|
|
|
+ case 4:
|
|
|
|
|
+ $result = TableDataLogic::admins();
|
|
|
|
|
+ // 数组的开始位置添加一个数组
|
|
|
|
|
+ array_unshift($result, [
|
|
|
|
|
+ "id" => 'self',
|
|
|
|
|
+ "name" => "管理员所属",
|
|
|
|
|
+ "value" => "self",
|
|
|
|
|
+ "type_value" => "data_table_admins",
|
|
|
|
|
+ ]);
|
|
|
|
|
+ break;
|
|
|
|
|
+ case 5:
|
|
|
|
|
+ $result = TableDataLogic::propertyHead();
|
|
|
|
|
+ break;
|
|
|
|
|
+ case 6:
|
|
|
|
|
+ $result = TableDataLogic::sale();
|
|
|
|
|
+ break;
|
|
|
|
|
+ }
|
|
|
|
|
+ //provinces citys saleGroup admins propertyHead sale
|
|
|
|
|
+ return $result?:[];
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 替换规则中的self为管理员所属的值
|
|
|
|
|
+ * @param $adminId
|
|
|
|
|
+ * @param $rules
|
|
|
|
|
+ * @return array
|
|
|
|
|
+ * @throws \think\db\exception\DataNotFoundException
|
|
|
|
|
+ * @throws \think\db\exception\DbException
|
|
|
|
|
+ * @throws \think\db\exception\ModelNotFoundException
|
|
|
|
|
+ */
|
|
|
|
|
+ public static function ruleSelfValue($adminId,$rules)
|
|
|
|
|
+ {
|
|
|
|
|
+ $admin = Admin::where('admin_id', $adminId)->where('root','=',0)->find()->toArray();
|
|
|
|
|
+ function replace_value($rule,$replace_value) {
|
|
|
|
|
+ array_walk($rule,function (&$value,$key) use($replace_value) {
|
|
|
|
|
+ if ($value == 'self'){
|
|
|
|
|
+ $value = $replace_value;
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
|
|
+ return $rule;
|
|
|
|
|
+ }
|
|
|
|
|
+ //[1=>[,,,,,],2=>[,,,,,]]
|
|
|
|
|
+ //provinces citys saleGroup admins propertyHead sale
|
|
|
|
|
+ foreach ($rules as $key => &$rule) {
|
|
|
|
|
+ switch ($key) {
|
|
|
|
|
+ case 1:
|
|
|
|
|
+ $rule = replace_value($rule,$admin['province']);
|
|
|
|
|
+ break;
|
|
|
|
|
+ case 2:
|
|
|
|
|
+ $rule = replace_value($rule,$admin['city']);
|
|
|
|
|
+ break;
|
|
|
|
|
+ case 4:
|
|
|
|
|
+ $rule = replace_value($rule,$admin['id']);
|
|
|
|
|
+ break;
|
|
|
|
|
+
|
|
|
|
|
+ case 3:
|
|
|
|
|
+ case 5:
|
|
|
|
|
+ case 6:
|
|
|
|
|
+ break;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ return $rules?:[];
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
}
|
|
}
|