Commit 8296c6df authored by hangjun83's avatar hangjun83

1、修复bug,2、新增编辑任务

parent 6297b295
...@@ -76,6 +76,7 @@ class BhOrdersController extends Controller ...@@ -76,6 +76,7 @@ class BhOrdersController extends Controller
'name.required' => "任务名称必填", 'name.required' => "任务名称必填",
'orderNo.required' => "订单号必填", 'orderNo.required' => "订单号必填",
'itemId.required' => "订单购买项必填", 'itemId.required' => "订单购买项必填",
'pId.required' => "订单产品必选",
'refundNums.required' => "退货数量必填", 'refundNums.required' => "退货数量必填",
'handleFee.required' => "手续费费用必填", 'handleFee.required' => "手续费费用必填",
'transferPre.required' => "是否转预存必选", 'transferPre.required' => "是否转预存必选",
...@@ -91,6 +92,29 @@ class BhOrdersController extends Controller ...@@ -91,6 +92,29 @@ class BhOrdersController extends Controller
} }
} }
public function editSorderRefundTask(Request $request)
{
$message = [
'taskId.required' => "任务id必填",
'name.required' => "任务名称必填",
'orderNo.required' => "订单号必填",
'itemId.required' => "订单购买项必填",
'pId.required' => "订单产品必选",
'refundNums.required' => "退货数量必填",
'handleFee.required' => "手续费费用必填",
'transferPre.required' => "是否转预存必选",
'cancelPorder.required' => "是否取消采购订单必选",
];
$this->validateRequest($request, $message);
try{
$order = $this->bhOrdersService->addSordersRefundTask($request);
return Response::success($order, '编辑成功');
}catch(\Exception $exception){
return Response::fail($exception->getMessage(),500);
}
}
/** /**
* 获取订单退货任务列表 * 获取订单退货任务列表
* @param Request $request * @param Request $request
...@@ -165,4 +189,19 @@ class BhOrdersController extends Controller ...@@ -165,4 +189,19 @@ class BhOrdersController extends Controller
return Response::fail($exception->getMessage(),500); return Response::fail($exception->getMessage(),500);
} }
} }
public function getSorderDetailByTaskId(Request $request)
{
$message = [
'taskId.required' => "任务id必填",
];
$this->validateRequest($request, $message);
try{
$logs = $this->bhOrdersService->getBhSorderDetailByTaskId($request);
return Response::success($this->formatKeysfromArray($logs), '操作成功');
}catch(\Exception $exception){
return Response::fail($exception->getMessage(),500);
}
}
} }
...@@ -22,4 +22,10 @@ class BhSorderRefundCriteria extends Criteria ...@@ -22,4 +22,10 @@ class BhSorderRefundCriteria extends Criteria
$query->where('type', '=', $this->request->get('type')); $query->where('type', '=', $this->request->get('type'));
} }
} }
protected function after($model)
{
$model->orderbyDesc('id');
return $model;
}
} }
...@@ -60,6 +60,23 @@ class BhSoitemsRepositoryEloquent extends BaseRepository implements BhSoitemsRep ...@@ -60,6 +60,23 @@ class BhSoitemsRepositoryEloquent extends BaseRepository implements BhSoitemsRep
return $soItems; return $soItems;
} }
public function getSorderItemsDetailFromItemId($itemId,$pid=null)
{
//查询订单的详情
$soItems = BhSoitems::query()
->join('sorders','sorders.so_id','soitems.so_id')
->join('products','soitems.p_id','products.p_id')
->join('chemicals','products.c_id','chemicals.c_id')
->join('brands','products.b_id','brands.b_id')
->where('soitems.si_id',$itemId);
if(!is_null($pid)){
$soItems = $soItems->where('soitems.p_id',$pid);
}
$soItems = $soItems->get();
return $soItems;
}
/** /**
* 根据si_id获取订单明细项 * 根据si_id获取订单明细项
* @param $si_id * @param $si_id
......
...@@ -56,6 +56,11 @@ class BhSorderRefundRepositoryEloquent extends BaseRepository implements BhSorde ...@@ -56,6 +56,11 @@ class BhSorderRefundRepositoryEloquent extends BaseRepository implements BhSorde
$task['status'] = 'notexec'; $task['status'] = 'notexec';
$task['type'] = 'sorder_refund'; $task['type'] = 'sorder_refund';
return $this->create($task); if(isset($params['task_id']) && !empty($params['task_id'])){
$id = $params['task_id'];
return $this->update($task,$id);
}else{
return $this->create($task);
}
} }
} }
...@@ -25,7 +25,6 @@ use App\Repositories\Enums\ResponseCodeEnum; ...@@ -25,7 +25,6 @@ use App\Repositories\Enums\ResponseCodeEnum;
use App\Repositories\Models\AdminUsers; use App\Repositories\Models\AdminUsers;
use App\Repositories\Models\BhPorders; use App\Repositories\Models\BhPorders;
use App\Support\Traits\Helpers; use App\Support\Traits\Helpers;
use http\Exception\BadQueryStringException;
use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\DB;
...@@ -132,6 +131,12 @@ class BhOrdersService ...@@ -132,6 +131,12 @@ class BhOrdersService
throw new \LogicException('该订单编号不存在!',500); throw new \LogicException('该订单编号不存在!',500);
} }
if(isset($params['task_id']) && !empty($params['task_id'])){
if(!app(BhSorderRefundRepository::class)->find($params['task_id'])){
throw new \LogicException('该任务不存在!',500);
}
}
if($params['transfer_pre'] == true){ if($params['transfer_pre'] == true){
$params['transfer_pre'] = 1; $params['transfer_pre'] = 1;
}else{ }else{
...@@ -144,6 +149,10 @@ class BhOrdersService ...@@ -144,6 +149,10 @@ class BhOrdersService
$params['cancel_porder'] = 0; $params['cancel_porder'] = 0;
} }
if($params['refund_nums'] == 'null'){
throw new \LogicException('请填写正确的退货数量',500);
}
return app(BhSorderRefundRepository::class)->addRefundTask($params); return app(BhSorderRefundRepository::class)->addRefundTask($params);
} }
...@@ -197,6 +206,32 @@ class BhOrdersService ...@@ -197,6 +206,32 @@ class BhOrdersService
return $tasks; return $tasks;
} }
public function getBhSorderDetailByTaskId($request)
{
$params = $this->formatKeysfromArray($request->all(),'toUnderScore');
$task = app(BhSorderRefundRepository::class)->find($params['task_id']);
if(!$task){
throw new \LogicException('任务不存在!',500);
}
$task = $task->toArray();
$content = json_decode($task['exec_content'],true);
//获取销售订单item数据
$dbConnect = DB::connection('bh_mysql');
$soItems = app(BhSoitemsRepository::class)->getSorderItemsDetailFromItemId($content['item_id'],$content['p_id']);
$soItems = $soItems->toArray();
$returnItem = [];
if($soItems){
foreach($soItems as $item){
if($item['si_if_cancel'] == 0){
$returnItem[] = $item;
}
}
}
return $returnItem;
}
/** /**
* 手动执行脚本 * 手动执行脚本
* @param $request * @param $request
......
...@@ -21,10 +21,12 @@ $api->version('v1', function($api) { ...@@ -21,10 +21,12 @@ $api->version('v1', function($api) {
// 百化销售订单 // 百化销售订单
$api->post('/adminapi/tools/bh/addSorderRefundTask', ['permission' => 'tools.bh.order.add', 'uses'=>'BhOrdersController@addSorderRefundTask']); $api->post('/adminapi/tools/bh/addSorderRefundTask', ['permission' => 'tools.bh.order.add', 'uses'=>'BhOrdersController@addSorderRefundTask']);
$api->post('/adminapi/tools/bh/editSorderRefundTask', ['permission' => 'tools.bh.order.add', 'uses'=>'BhOrdersController@editSorderRefundTask']);
$api->post('/adminapi/tools/bh/getBhSordersDetail', ['permission' => 'tools.bh.order.search', 'uses'=>'BhOrdersController@getBhSordersDetail']); $api->post('/adminapi/tools/bh/getBhSordersDetail', ['permission' => 'tools.bh.order.search', 'uses'=>'BhOrdersController@getBhSordersDetail']);
$api->get('/adminapi/tools/bh/getBhSorderRefundTask', ['permission' => 'tools.bh.order.search', 'uses'=>'BhOrdersController@getBhSorderRefundTaskToPage']); $api->get('/adminapi/tools/bh/getBhSorderRefundTask', ['permission' => 'tools.bh.order.search', 'uses'=>'BhOrdersController@getBhSorderRefundTaskToPage']);
$api->post('/adminapi/tools/bh/execBhSorderRefundTask', ['permission' => 'tools.bh.order.search', 'uses'=>'BhOrdersController@execBhSorderRefundTask']); $api->post('/adminapi/tools/bh/execBhSorderRefundTask', ['permission' => 'tools.bh.order.search', 'uses'=>'BhOrdersController@execBhSorderRefundTask']);
$api->post('/adminapi/tools/bh/getSorderRefundTaskLogs', ['permission' => 'tools.bh.order.search', 'uses'=>'BhOrdersController@getSorderRefundTaskLogsToPage']); $api->get('/adminapi/tools/bh/getSorderRefundTaskLogs', ['permission' => 'tools.bh.order.search', 'uses'=>'BhOrdersController@getSorderRefundTaskLogsToPage']);
$api->post('/adminapi/tools/bh/getSorderDetailByTaskId', ['permission' => 'tools.bh.order.search', 'uses'=>'BhOrdersController@getSorderDetailByTaskId']);
}); });
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment