Merge commit 'ed96e0f8589042fb8e9d6cfee713c5150612bb34'

This commit is contained in:
mzl
2025-08-22 18:16:13 +08:00
parent d715708728
commit 11165fcfb9
23 changed files with 1465 additions and 32 deletions
+38 -10
View File
@@ -4,6 +4,7 @@ namespace app\crmAdmin\controller;
use app\common\model\Corp;
use app\crm\model\Customer;
use app\crm\utils\Util;
use app\crmAdmin\service\CustomerService;
use support\Request;
@@ -148,19 +149,18 @@ class CustomerController extends BaseController
}
$customer_id = explode(',', $param['customer_id']);
$customer = Customer::whereIn('id',$customer_id)->withTrashed()->first();
if(empty($customer)){
$query = Customer::whereIn('id',$customer_id)->withTrashed();
if(!$query->exists()){
return $this->error( trans('fail'));
}
if($param['scene'] == 'list'){ //管理端客户列表移除
$customer->status = 4;
}else{ //公海软删除
$customer->status = 3;
$scene = $param['scene'] ?? '';
if ($scene === 'list') { //管理端客户列表移除
$res = $query->update(['status' => 4, 'deleted_at' => time()]);
} elseif ($scene === 'force') { //强删除
$res = $query->forceDelete();
} else { //公海软删除
$res = $query->update(['status' => 3, 'deleted_at' => time()]);
}
$res = $customer->save();
$customer->delete();
return $this->success($res);
} catch (\Throwable $th) {
@@ -168,6 +168,34 @@ class CustomerController extends BaseController
}
}
/**
* 客户恢复
* @param Request $request
* @return \support\Response
*/
public function restore(Request $request)
{
try {
$id = $request->input('id', '');
if (Util::isEmpty($id)) {
return $this->error(trans('id_empty'));
}
$ids = explode(',', $id);
$query = Customer::withTrashed()->whereIn('id', $ids);
if (!$query->exists()) {
return $this->error(trans('fail'));
}
// 恢复软删除(清空 deleted_at)
$query->restore();
// 恢复为在库状态,放入公海
$res = Customer::whereIn('id', $ids)->update(['status' => 1, 'user_id' => 0]);
return $this->success($res, trans('success'));
} catch (\Throwable $th) {
return $this->error($th->getMessage());
}
}
/**
* 客户详情
* @param Request $request