内勤备货单查询

This commit is contained in:
2025-12-08 15:01:02 +08:00
parent 4bcc6c53f7
commit a33b109ddb
2 changed files with 45 additions and 4 deletions
+22 -1
View File
@@ -2,6 +2,8 @@
namespace app\common\service; namespace app\common\service;
use app\common\model\User;
use app\common\model\UserGroupMembers;
use app\common\validate\ApprovalRecordsValidate; use app\common\validate\ApprovalRecordsValidate;
use app\common\traits\crud\CrudServiceTrait; use app\common\traits\crud\CrudServiceTrait;
use app\common\model\ApprovalRecords; use app\common\model\ApprovalRecords;
@@ -61,7 +63,26 @@ class ApprovalRecordsService
// } // }
$roles_id = array_intersect([1,5,6], $request->user->role_ids); $roles_id = array_intersect([1,5,6], $request->user->role_ids);
if(count($roles_id) == 0){ if(count($roles_id) == 0){
$config['where']['approver_id'] = $request->user->uid; if(in_array(4, $request->user->role_ids)){
$report = User::where('report_to',$request->user->uid)->pluck('id')->toArray();
$report = array_merge($report, [$request->user->uid]);
$config['where']['approver_id'] = ['in',$report];
} elseif (in_array(5, $request->user->role_ids)){ //内勤
$userGroupMember = UserGroupMembers::where('user_id',$request->user->uid)
->where('is_leader',1)
->first();
if($userGroupMember){
$report = UserGroupMembers::where('user_id',$request->user->uid)
->pluck('id')
->toArray();
$report = array_merge($report, [$request->user->uid]);
$config['where']['salesperson_id'] = ['in',$report];
}else{ //内勤没有负责的组时
$config['where']['salesperson_id'] = $request->user->uid;
}
} else {
$config['where']['approver_id'] = $request->user->uid;
}
} }
$config['where']['status'] = 'pending'; $config['where']['status'] = 'pending';
$config['where']['instance.status'] = 'processing'; $config['where']['instance.status'] = 'processing';
+23 -3
View File
@@ -3,6 +3,7 @@
namespace app\crm\service; namespace app\crm\service;
use app\common\model\User; use app\common\model\User;
use app\common\model\UserGroupMembers;
use support\Request; use support\Request;
use support\exception\BusinessException; use support\exception\BusinessException;
@@ -35,9 +36,28 @@ class StockOrdersService extends \app\common\service\StockOrdersService
$config['order']['id'] = 'desc'; $config['order']['id'] = 'desc';
$roles_id = array_intersect([1,5,6], $request->user->role_ids); $roles_id = array_intersect([1,6], $request->user->role_ids);
if(count($roles_id) == 0){ if (count($roles_id) == 0){
$config['where']['salesperson_id'] = $request->user->uid; if(in_array(4, $request->user->role_ids)){ //业务主管
$report = User::where('report_to',$request->user->uid)->pluck('id')->toArray();
$report = array_merge($report, [$request->user->uid]);
$config['where']['salesperson_id'] = ['in',$report];
} elseif (in_array(5, $request->user->role_ids)){ //内勤
$userGroupMember = UserGroupMembers::where('user_id',$request->user->uid)
->where('is_leader',1)
->first();
if($userGroupMember){
$report = UserGroupMembers::where('user_id',$request->user->uid)
->pluck('id')
->toArray();
$report = array_merge($report, [$request->user->uid]);
$config['where']['salesperson_id'] = ['in',$report];
}else{ //内勤没有负责的组时
$config['where']['salesperson_id'] = $request->user->uid;
}
} else {
$config['where']['salesperson_id'] = $request->user->uid;
}
} }
break; break;
case 'print': case 'print':