提交 b0ec332b authored 作者: 窦斌's avatar 窦斌

edit

上级 7ad03528
......@@ -83,6 +83,20 @@ class ExceloutController extends Controller
$admin = DB::table('admin')
->whereIn('adm_id', $orcl_sales_adm_id)
->pluck('adm_name', 'adm_id');
if(in_array('ord_service', $group)) {
$ord_id = array_column($db, 'ord_id');
$order_good = DB::table('order_goods')
->whereIn('orgo_ord_id', $ord_id)->select('orgo_ord_id', 'orgo_goo_name')->get();
$order_good = CommonService::dataToArray($order_good);
$order_good = CommonService::jointArrayKey($order_good, 'orgo_ord_id', 2);
}
if(in_array('ord_repair', $group)) {
$ord_repair_id = array_column($db, 'ord_repair_id');
$ord_repair = DB::table('admin')
->whereIn('adm_id', $ord_repair_id)->select('adm_id', 'adm_name')->get();
$ord_repair = CommonService::dataToArray($ord_repair);
$ord_repair = CommonService::jointArrayKey($ord_repair, 'adm_id');
}
$num1 = count($db);
foreach( $db as $k => $v ){
$v = ExceloutService::replaceData($v);
......@@ -226,6 +240,15 @@ class ExceloutController extends Controller
$rs[$k][$kg] = $ord_address_name;
} elseif($vg=='ord_openbill'){//是否开票1未开票2已开票
$rs[$k][$kg] = ($v['ord_openbill'] == 1)?'未开票':'已开票';
} elseif($vg=='ord_service'){//包含服务
$ord_service = array_column($order_good[$v['ord_id']], 'orgo_goo_name');
$rs[$k][$kg] = implode(',', $ord_service);
} elseif($vg=='ord_repair'){//部分施工技师
if($v['ord_repair_id']>0) {
$rs[$k][$kg] = $ord_repair[$v['ord_repair_id']]['adm_name'] ?? '';
}else{
$rs[$k][$kg] = '';
}
} else{
$rs[$k][$kg] = "\t".$v[$vg];
}
......
......@@ -1119,7 +1119,7 @@ class WashOrderController extends Controller
}
}
})
->select('ord_id', 'ord_order_number', 'ord_actual_price', 'ord_type', 'ord_order_state', 'ord_state', 'ord_wor_state', 'ord_wor_quantity', 'ord_delete', 'ord_create_time', 'orcl_name', 'orcl_phone', 'orcl_car_num', 'ord_order_price', 'orcl_client_id', 'orcl_appoint_time', 'orcl_car_brand_series', 'orcl_car_vin', 'orcl_sales_adm_id', 'ord_address', 'orcl_carowner_name', 'orcl_carowner_phone', 'orcl_business_name', 'ord_shop_id', 'ord_address_type', 'ord_address_id', 'ord_service_type', 'ord_settlement_time', 'ord_settlement_adm_id', 'ord_payment_way', 'orcl_mem_source', 'orcl_carbrse_type', 'ord_explain', 'ord_create_id', 'ord_ware_id','ord_pay_state','ord_zero_price','ord_source', 'ord_other_order_num','ord_other_system_number','orcl_province','orcl_city','orcl_county','orcl_address', 'ord_add_type', 'ord_customer_state', 'ord_client_id','ord_new_type', 'ord_suspended', 'ord_suspended_time', 'ord_openbill', 'ord_openbill_number', 'ord_openbill_image', 'wor_state', 'orcl_buac_name','orcl_buac_phone', 'orcl_4sname', 'wor_id')
->select('ord_id', 'ord_order_number', 'ord_actual_price', 'ord_type', 'ord_order_state', 'ord_state', 'ord_wor_state', 'ord_wor_quantity', 'ord_delete', 'ord_create_time', 'orcl_name', 'orcl_phone', 'orcl_car_num', 'ord_order_price', 'orcl_client_id', 'orcl_appoint_time', 'orcl_car_brand_series', 'orcl_car_vin', 'orcl_sales_adm_id', 'ord_address', 'orcl_carowner_name', 'orcl_carowner_phone', 'orcl_business_name', 'ord_shop_id', 'ord_address_type', 'ord_address_id', 'ord_service_type', 'ord_settlement_time', 'ord_settlement_adm_id', 'ord_payment_way', 'orcl_mem_source', 'orcl_carbrse_type', 'ord_explain', 'ord_create_id', 'ord_ware_id','ord_pay_state','ord_zero_price','ord_source', 'ord_other_order_num','ord_other_system_number','orcl_province','orcl_city','orcl_county','orcl_address', 'ord_add_type', 'ord_customer_state', 'ord_client_id','ord_new_type', 'ord_suspended', 'ord_suspended_time', 'ord_openbill', 'ord_openbill_number', 'ord_openbill_image', 'wor_state', 'orcl_buac_name','orcl_buac_phone', 'orcl_4sname', 'wor_id', 'ord_repair_id')
->orderBy('ord_id', $orderby_type)
->get()->toArray();
// $data = DB::table('order as ord')
......
......@@ -1840,7 +1840,26 @@ class WashWorkController extends Controller
$return_data = WashWorkService::completionInfo($user_info, $request->all());
return response()->json($return_data);
}
/**|---------------------------------------------------------------------------------
* @name 部分施工
* @param string wor_id 工单id
* @retrun \Illuminate\Http\JsonResponse
* @author dou 2026/6/4 18:13
* |---------------------------------------------------------------------------------
*/
public function sectionRepair( Request $request ){
// 验证参数
$error_message = $this->dataService->mainValidator->sectionRepairValidator($request->all());
if (!empty($error_message)) {
return $this->error($error_message, ErrorInc::INVALID_PARAM);
}
// 获取用户信息
request()->offsetSet('rt', 'wechat');
request()->offsetSet('ip', getRealIp($request));
$user_info = LoginUserService::getUser();
$return_data = WashWorkService::sectionRepair($user_info, $request->all());
return response()->json($return_data);
}
/**
* 质检数据查询
* @authors ldj
......
......@@ -8921,7 +8921,7 @@ class WashOrderService extends Service
->leftJoin('order_client', 'orcl_ord_id', '=', 'ord_id')
->leftJoin('shop', 'shop_id', '=', 'ord_shop_id')
->where('ord_id', $request['ord_id'])
->select('ord_client_id', 'orcl_name', 'orcl_phone', 'orcl_car_num', 'orcl_car_brand_series', 'orcl_carowner_name', 'orcl_carowner_phone', 'orcl_sales_adm_id', 'ord_type', 'orcl_mem_source', 'ord_address_type', 'ord_address_id', 'ord_address', 'orcl_business_id', 'orcl_business_name')
->select('ord_client_id', 'orcl_name', 'orcl_phone', 'orcl_car_num', 'orcl_car_brand_series', 'orcl_carowner_name', 'orcl_carowner_phone', 'orcl_sales_adm_id', 'ord_type', 'orcl_mem_source', 'ord_address_type', 'ord_address_id', 'ord_address', 'orcl_business_id', 'orcl_business_name','orcl_4sname','orcl_buac_id','orcl_buac_name','orcl_buac_phone')
->first();
if (empty($find_order_data)) {
return ["code"=>4000, 'msg'=>'未查询到订单信息', 'data'=>'未查询到订单信息'];
......
......@@ -7019,6 +7019,22 @@ class WashWorkService extends Service
$wor_service_adm_id = DB::table('work_order')
->where('wor_id', $request['wor_id'])
->value('wor_service_adm_id');
//获取订单id
$wor_order_id = DB::table('work_order')
->where('wor_id', $request['wor_id'])
->value('wor_order_id');
//获取部分施工id
$ord_repair_id = DB::table('order')
->where('ord_id', $wor_order_id)
->value('ord_repair_id');
$data['ord_repair_id'] = $ord_repair_id;
$data['ord_repair_name'] = '';
if($ord_repair_id>0){
$data['ord_repair_name'] = DB::table('admin')
->where("adm_id",$ord_repair_id)
->value('adm_name');
}
if (empty($request['adm_id'])) {
foreach ($find_worker as $key => $value) {
$label = [];
......@@ -7892,7 +7908,7 @@ class WashWorkService extends Service
if($wor_edit_res) {
$wor_order_id = WashWork::where('wor_id', $request['wor_id'])->value('wor_order_id');
orderLog($user_info, $wor_order_id, $request['wor_id'], $content);
OperationLog::addLog($user_info, getRealIp($request), '工单列表', '施工审核', $content);
OperationLog::addLog($user_info, $request['ip'], '工单列表', '施工审核', $content);
return ['code' => 200, 'msg' => '审核成功', 'data' => '审核成功'];
}else{
return ['code' => 500, 'msg' => '审核操作失败', 'data' => '审核操作失败'];
......@@ -8438,4 +8454,50 @@ class WashWorkService extends Service
$data['now_time'] = date('Y-m-d H:i:s'); //当前时间
return $data;
}
/**|---------------------------------------------------------------------------------
* @name 部分施工
* @retrun /multitype:array
* @author dou 2026/6/4 18:21
* |---------------------------------------------------------------------------------
*/
public static function sectionRepair ( $user_info, $request ){
//获取订单id
$wor_order_id = DB::table('work_order')
->where('wor_id', $request['wor_id'])
->value('wor_order_id');
//获取部分施工id
$ord_repair_id = DB::table('order')
->where('ord_id', $wor_order_id)
->value('ord_repair_id');
$wotp_service_adm_id = DB::table('wash_work_technician_part')
->where('wotp_wor_id', $request['wor_id'])
->where('wotp_work_type', 2)
->value('wotp_service_adm_id');
if($user_info->adm_id!=$wotp_service_adm_id){
return ['code'=>201, 'msg'=>'查无数据', 'data'=>''];
}
if($ord_repair_id>0 && $user_info->adm_id!=$ord_repair_id){
return ['code'=>201, 'msg'=>'其他技师施工禁止操作', 'data'=>''];
}
$content = '';
if($request['type']==1){
$content = '开启部分施工';
$rea = DB::table('order')
->where('ord_id', $wor_order_id)
->update(['ord_repair_id'=>$user_info->adm_id,'ord_update_time'=>date("Y-m-d H:i:s")]);
}else{
$content = '关闭部分施工';
$rea = DB::table('order')
->where('ord_id', $wor_order_id)
->update(['ord_repair_id'=>0,'ord_update_time'=>date("Y-m-d H:i:s")]);
}
if($rea){
orderLog($user_info, $wor_order_id, $request['wor_id'], $content);
OperationLog::addLog($user_info, $request['ip'], '工单列表', '施工审核', $content);
return ['code'=>200, 'msg'=>'操作成功', 'data'=>''];
}else{
return ['code'=>202, 'msg'=>'操作失败', 'data'=>''];
}
}
}
......@@ -1529,6 +1529,7 @@ Route::namespace('WeChatApplet')->group(function () {
Route::post('w1/WashWork/auditWork', 'Technician\WashWorkController@auditWork'); //工单列表-审核工单
Route::post('w1/WashWork/returnItemInfo', 'Technician\WashWorkController@returnItemInfo'); //工单列表-还件信息
Route::post('w1/WashWork/editServiceStandard', 'Technician\WashWorkController@editServiceStandard'); //派单-生成工单
Route::post('w1/WashWork/sectionRepair', 'Technician\WashWorkController@sectionRepair'); //部分施工
// 合作商服务列表
Route::post('w1/WashService/index', 'Technician\WashServiceController@index'); //服务查询
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论