Explorar o código

客户模块搭建 by 'zengjun'

ajun %!s(int64=5) %!d(string=hai) anos
pai
achega
21e71c0b0f
Modificáronse 38 ficheiros con 1177 adicións e 2 borrados
  1. 109 0
      app/Http/Controllers/OrderIssueController.php
  2. 85 0
      app/Http/Controllers/OrderIssueTypeController.php
  3. 85 0
      app/Http/Controllers/OrderItemsController.php
  4. 85 0
      app/Http/Controllers/OrderItmesController.php
  5. 85 0
      app/Http/Controllers/OrderOnTopController.php
  6. 85 0
      app/Http/Controllers/ShopController.php
  7. 31 0
      app/Order.php
  8. 37 0
      app/OrderIssue.php
  9. 19 0
      app/OrderIssueType.php
  10. 22 0
      app/OrderItems.php
  11. 16 0
      app/OrderOnTop.php
  12. 14 0
      app/Shop.php
  13. 12 0
      database/factories/OrderFactory.php
  14. 12 0
      database/factories/OrderIssueFactory.php
  15. 12 0
      database/factories/OrderIssueTypeFactory.php
  16. 12 0
      database/factories/OrderItemsFactory.php
  17. 12 0
      database/factories/OrderOnTopFactory.php
  18. 12 0
      database/factories/ShopFactory.php
  19. 49 0
      database/migrations/2020_07_29_155624_create_orders_table.php
  20. 34 0
      database/migrations/2020_07_29_160219_create_order_items_table.php
  21. 33 0
      database/migrations/2020_07_29_160704_create_shops_table.php
  22. 47 0
      database/migrations/2020_07_29_160826_create_order_issues_table.php
  23. 34 0
      database/migrations/2020_07_29_164031_create_order_on_tops_table.php
  24. 32 0
      database/migrations/2020_07_29_164130_create_order_issue_types_table.php
  25. 48 0
      database/migrations/2020_07_29_164829_add_data_authorities_issue.php
  26. 16 0
      database/seeds/OrderIssueSeeder.php
  27. 16 0
      database/seeds/OrderIssueTypeSeeder.php
  28. 16 0
      database/seeds/OrderItemsSeeder.php
  29. 16 0
      database/seeds/OrderOnTopSeeder.php
  30. 16 0
      database/seeds/OrderSeeder.php
  31. 16 0
      database/seeds/ShopSeeder.php
  32. 2 2
      public/js/app.js
  33. 22 0
      resources/views/order/issue/menu.blade.php
  34. 1 0
      resources/views/order/issue/performance.blade.php
  35. 15 0
      resources/views/order/issue/search.blade.php
  36. 1 0
      resources/views/order/issue/workload.blade.php
  37. 5 0
      resources/views/order/menu.blade.php
  38. 13 0
      routes/web.php

+ 109 - 0
app/Http/Controllers/OrderIssueController.php

@@ -0,0 +1,109 @@
+<?php
+
+namespace App\Http\Controllers;
+
+use App\OrderIssue;
+use Illuminate\Http\Request;
+
+class OrderIssueController extends Controller
+{
+    /**
+     * search orderissue
+     *
+     * @return \Illuminate\Http\Response
+     */
+    public function index()
+    {
+        //
+    }
+
+    /**
+     * 绩效
+     */
+    public function performance(Request $request){
+
+    }
+
+    /**
+     * 工作量
+     * @param Request $request
+     */
+    public function workLoad(Request $request){
+
+    }
+
+    /**
+     * 标记问题订单
+     * @param Request $request
+     */
+    public function orderIssueTag(Request $request){
+
+    }
+
+
+    /**
+     * Show the form for creating a new resource.
+     *
+     * @return \Illuminate\Http\Response
+     */
+    public function create()
+    {
+        //
+    }
+
+    /**
+     * Store a newly created resource in storage.
+     *
+     * @param  \Illuminate\Http\Request  $request
+     * @return \Illuminate\Http\Response
+     */
+    public function store(Request $request)
+    {
+        //
+    }
+
+    /**
+     * Display the specified resource.
+     *
+     * @param  \App\OrderIssue  $orderIssue
+     * @return \Illuminate\Http\Response
+     */
+    public function show(OrderIssue $orderIssue)
+    {
+        //
+    }
+
+    /**
+     * Show the form for editing the specified resource.
+     *
+     * @param  \App\OrderIssue  $orderIssue
+     * @return \Illuminate\Http\Response
+     */
+    public function edit(OrderIssue $orderIssue)
+    {
+        //
+    }
+
+    /**
+     * Update the specified resource in storage.
+     *
+     * @param  \Illuminate\Http\Request  $request
+     * @param  \App\OrderIssue  $orderIssue
+     * @return \Illuminate\Http\Response
+     */
+    public function update(Request $request, OrderIssue $orderIssue)
+    {
+        //
+    }
+
+    /**
+     * Remove the specified resource from storage.
+     *
+     * @param  \App\OrderIssue  $orderIssue
+     * @return \Illuminate\Http\Response
+     */
+    public function destroy(OrderIssue $orderIssue)
+    {
+        //
+    }
+}

+ 85 - 0
app/Http/Controllers/OrderIssueTypeController.php

@@ -0,0 +1,85 @@
+<?php
+
+namespace App\Http\Controllers;
+
+use App\OrderIssueType;
+use Illuminate\Http\Request;
+
+class OrderIssueTypeController extends Controller
+{
+    /**
+     * Display a listing of the resource.
+     *
+     * @return \Illuminate\Http\Response
+     */
+    public function index()
+    {
+        //
+    }
+
+    /**
+     * Show the form for creating a new resource.
+     *
+     * @return \Illuminate\Http\Response
+     */
+    public function create()
+    {
+        //
+    }
+
+    /**
+     * Store a newly created resource in storage.
+     *
+     * @param  \Illuminate\Http\Request  $request
+     * @return \Illuminate\Http\Response
+     */
+    public function store(Request $request)
+    {
+        //
+    }
+
+    /**
+     * Display the specified resource.
+     *
+     * @param  \App\OrderIssueType  $orderIssueType
+     * @return \Illuminate\Http\Response
+     */
+    public function show(OrderIssueType $orderIssueType)
+    {
+        //
+    }
+
+    /**
+     * Show the form for editing the specified resource.
+     *
+     * @param  \App\OrderIssueType  $orderIssueType
+     * @return \Illuminate\Http\Response
+     */
+    public function edit(OrderIssueType $orderIssueType)
+    {
+        //
+    }
+
+    /**
+     * Update the specified resource in storage.
+     *
+     * @param  \Illuminate\Http\Request  $request
+     * @param  \App\OrderIssueType  $orderIssueType
+     * @return \Illuminate\Http\Response
+     */
+    public function update(Request $request, OrderIssueType $orderIssueType)
+    {
+        //
+    }
+
+    /**
+     * Remove the specified resource from storage.
+     *
+     * @param  \App\OrderIssueType  $orderIssueType
+     * @return \Illuminate\Http\Response
+     */
+    public function destroy(OrderIssueType $orderIssueType)
+    {
+        //
+    }
+}

+ 85 - 0
app/Http/Controllers/OrderItemsController.php

@@ -0,0 +1,85 @@
+<?php
+
+namespace App\Http\Controllers;
+
+use App\OrderItems;
+use Illuminate\Http\Request;
+
+class OrderItemsController extends Controller
+{
+    /**
+     * Display a listing of the resource.
+     *
+     * @return \Illuminate\Http\Response
+     */
+    public function index()
+    {
+        //
+    }
+
+    /**
+     * Show the form for creating a new resource.
+     *
+     * @return \Illuminate\Http\Response
+     */
+    public function create()
+    {
+        //
+    }
+
+    /**
+     * Store a newly created resource in storage.
+     *
+     * @param  \Illuminate\Http\Request  $request
+     * @return \Illuminate\Http\Response
+     */
+    public function store(Request $request)
+    {
+        //
+    }
+
+    /**
+     * Display the specified resource.
+     *
+     * @param  \App\OrderItems  $orderItems
+     * @return \Illuminate\Http\Response
+     */
+    public function show(OrderItems $orderItems)
+    {
+        //
+    }
+
+    /**
+     * Show the form for editing the specified resource.
+     *
+     * @param  \App\OrderItems  $orderItems
+     * @return \Illuminate\Http\Response
+     */
+    public function edit(OrderItems $orderItems)
+    {
+        //
+    }
+
+    /**
+     * Update the specified resource in storage.
+     *
+     * @param  \Illuminate\Http\Request  $request
+     * @param  \App\OrderItems  $orderItems
+     * @return \Illuminate\Http\Response
+     */
+    public function update(Request $request, OrderItems $orderItems)
+    {
+        //
+    }
+
+    /**
+     * Remove the specified resource from storage.
+     *
+     * @param  \App\OrderItems  $orderItems
+     * @return \Illuminate\Http\Response
+     */
+    public function destroy(OrderItems $orderItems)
+    {
+        //
+    }
+}

+ 85 - 0
app/Http/Controllers/OrderItmesController.php

@@ -0,0 +1,85 @@
+<?php
+
+namespace App\Http\Controllers;
+
+use App\OrderItmes;
+use Illuminate\Http\Request;
+
+class OrderItmesController extends Controller
+{
+    /**
+     * Display a listing of the resource.
+     *
+     * @return \Illuminate\Http\Response
+     */
+    public function index()
+    {
+        //
+    }
+
+    /**
+     * Show the form for creating a new resource.
+     *
+     * @return \Illuminate\Http\Response
+     */
+    public function create()
+    {
+        //
+    }
+
+    /**
+     * Store a newly created resource in storage.
+     *
+     * @param  \Illuminate\Http\Request  $request
+     * @return \Illuminate\Http\Response
+     */
+    public function store(Request $request)
+    {
+        //
+    }
+
+    /**
+     * Display the specified resource.
+     *
+     * @param  \App\OrderItmes  $orderItmes
+     * @return \Illuminate\Http\Response
+     */
+    public function show(OrderItmes $orderItmes)
+    {
+        //
+    }
+
+    /**
+     * Show the form for editing the specified resource.
+     *
+     * @param  \App\OrderItmes  $orderItmes
+     * @return \Illuminate\Http\Response
+     */
+    public function edit(OrderItmes $orderItmes)
+    {
+        //
+    }
+
+    /**
+     * Update the specified resource in storage.
+     *
+     * @param  \Illuminate\Http\Request  $request
+     * @param  \App\OrderItmes  $orderItmes
+     * @return \Illuminate\Http\Response
+     */
+    public function update(Request $request, OrderItmes $orderItmes)
+    {
+        //
+    }
+
+    /**
+     * Remove the specified resource from storage.
+     *
+     * @param  \App\OrderItmes  $orderItmes
+     * @return \Illuminate\Http\Response
+     */
+    public function destroy(OrderItmes $orderItmes)
+    {
+        //
+    }
+}

+ 85 - 0
app/Http/Controllers/OrderOnTopController.php

@@ -0,0 +1,85 @@
+<?php
+
+namespace App\Http\Controllers;
+
+use App\OrderOnTop;
+use Illuminate\Http\Request;
+
+class OrderOnTopController extends Controller
+{
+    /**
+     * Display a listing of the resource.
+     *
+     * @return \Illuminate\Http\Response
+     */
+    public function index()
+    {
+        //
+    }
+
+    /**
+     * Show the form for creating a new resource.
+     *
+     * @return \Illuminate\Http\Response
+     */
+    public function create()
+    {
+        //
+    }
+
+    /**
+     * Store a newly created resource in storage.
+     *
+     * @param  \Illuminate\Http\Request  $request
+     * @return \Illuminate\Http\Response
+     */
+    public function store(Request $request)
+    {
+        //
+    }
+
+    /**
+     * Display the specified resource.
+     *
+     * @param  \App\OrderOnTop  $orderOnTop
+     * @return \Illuminate\Http\Response
+     */
+    public function show(OrderOnTop $orderOnTop)
+    {
+        //
+    }
+
+    /**
+     * Show the form for editing the specified resource.
+     *
+     * @param  \App\OrderOnTop  $orderOnTop
+     * @return \Illuminate\Http\Response
+     */
+    public function edit(OrderOnTop $orderOnTop)
+    {
+        //
+    }
+
+    /**
+     * Update the specified resource in storage.
+     *
+     * @param  \Illuminate\Http\Request  $request
+     * @param  \App\OrderOnTop  $orderOnTop
+     * @return \Illuminate\Http\Response
+     */
+    public function update(Request $request, OrderOnTop $orderOnTop)
+    {
+        //
+    }
+
+    /**
+     * Remove the specified resource from storage.
+     *
+     * @param  \App\OrderOnTop  $orderOnTop
+     * @return \Illuminate\Http\Response
+     */
+    public function destroy(OrderOnTop $orderOnTop)
+    {
+        //
+    }
+}

+ 85 - 0
app/Http/Controllers/ShopController.php

@@ -0,0 +1,85 @@
+<?php
+
+namespace App\Http\Controllers;
+
+use App\Shop;
+use Illuminate\Http\Request;
+
+class ShopController extends Controller
+{
+    /**
+     * Display a listing of the resource.
+     *
+     * @return \Illuminate\Http\Response
+     */
+    public function index()
+    {
+        //
+    }
+
+    /**
+     * Show the form for creating a new resource.
+     *
+     * @return \Illuminate\Http\Response
+     */
+    public function create()
+    {
+        //
+    }
+
+    /**
+     * Store a newly created resource in storage.
+     *
+     * @param  \Illuminate\Http\Request  $request
+     * @return \Illuminate\Http\Response
+     */
+    public function store(Request $request)
+    {
+        //
+    }
+
+    /**
+     * Display the specified resource.
+     *
+     * @param  \App\Shop  $shop
+     * @return \Illuminate\Http\Response
+     */
+    public function show(Shop $shop)
+    {
+        //
+    }
+
+    /**
+     * Show the form for editing the specified resource.
+     *
+     * @param  \App\Shop  $shop
+     * @return \Illuminate\Http\Response
+     */
+    public function edit(Shop $shop)
+    {
+        //
+    }
+
+    /**
+     * Update the specified resource in storage.
+     *
+     * @param  \Illuminate\Http\Request  $request
+     * @param  \App\Shop  $shop
+     * @return \Illuminate\Http\Response
+     */
+    public function update(Request $request, Shop $shop)
+    {
+        //
+    }
+
+    /**
+     * Remove the specified resource from storage.
+     *
+     * @param  \App\Shop  $shop
+     * @return \Illuminate\Http\Response
+     */
+    public function destroy(Shop $shop)
+    {
+        //
+    }
+}

+ 31 - 0
app/Order.php

@@ -0,0 +1,31 @@
+<?php
+
+namespace App;
+
+use App\Traits\ModelTimeFormat;
+use Illuminate\Database\Eloquent\Model;
+
+class Order extends Model
+{
+    //
+    use ModelTimeFormat;
+
+    protected $fillable = ['create_at','shop_id','logistic_number','logistic_id','consignee_name','consignee_phone','province','city','district','address'];
+
+    public function logistic(){
+        return $this->belongsTo('App/logistic','logistic_id','id');
+    }
+
+    public function orderIssue(){
+        return $this->hasOne('App/OrderIssue','order_id','id');
+    }
+
+    public function shop(){
+        return $this->belongsTo('App/Shop','shop_id','id');
+    }
+
+    public function orderOnTop(){
+        return $this->hasOne('App/OrderOnTop','order_id','id');
+    }
+
+}

+ 37 - 0
app/OrderIssue.php

@@ -0,0 +1,37 @@
+<?php
+
+namespace App;
+
+use App\Traits\ModelTimeFormat;
+use Illuminate\Database\Eloquent\Model;
+
+class OrderIssue extends Model
+{
+    //
+    use ModelTimeFormat;
+
+    protected $fillable = ['order_id','handle_status','create_at','rejected_bill_id','rejecting_status',
+        'situation_explain', 'order_issue_type_id','result_explain','second_order_id','second_logistic_number',
+        'final_status','logistic_indemnity_money','logistic_express_remission','baoshi_indemnity_money','baoshi_express_remission','user_workgroup_id'];
+
+    public function order(){
+        return $this->belongsTo('App/Order','order_id','id');
+    }
+
+    public function rejectedBill(){
+        return $this->belongsTo('App/RejectedBill','rejected_bill_id','id');
+    }
+
+    public function orderIssueType(){
+        return $this->belongsTo('App/OrderIssueType','order_issue_type_id','id');
+    }
+
+    public function workgroup(){
+        return $this->belongsTo('App/UserWorkgroup','UserWorkgroup','id');
+    }
+
+    public function secondOrder(){
+        return $this->belongsTo('App/Order','second_order_id','id');
+    }
+
+}

+ 19 - 0
app/OrderIssueType.php

@@ -0,0 +1,19 @@
+<?php
+
+namespace App;
+
+use App\Traits\ModelTimeFormat;
+use Illuminate\Database\Eloquent\Model;
+
+class OrderIssueType extends Model
+{
+    //
+    use ModelTimeFormat;
+
+    protected $fillable = ['name'];
+
+    public function orderIssue(){
+        return $this->hasMany('App/OrderIssue','order_issue_type_id','id');
+    }
+
+}

+ 22 - 0
app/OrderItems.php

@@ -0,0 +1,22 @@
+<?php
+
+namespace App;
+
+use App\Traits\ModelTimeFormat;
+use Illuminate\Database\Eloquent\Model;
+
+class OrderItems extends Model
+{
+    //
+    use ModelTimeFormat;
+
+    protected $fillable = ['order_id','commodity_id','amount'];
+
+    public function order(){
+        return $this->hasOne('App/Order','order_id','id');
+    }
+
+    public function commodity(){
+        return $this->hasOne('App/Com');
+    }
+}

+ 16 - 0
app/OrderOnTop.php

@@ -0,0 +1,16 @@
+<?php
+
+namespace App;
+
+use App\Traits\ModelTimeFormat;
+use Illuminate\Database\Eloquent\Model;
+
+class OrderOnTop extends Model
+{
+    //
+    use ModelTimeFormat;
+
+    protected $fillable = ['remarks','order_id'];
+
+
+}

+ 14 - 0
app/Shop.php

@@ -0,0 +1,14 @@
+<?php
+
+namespace App;
+
+use App\Traits\ModelTimeFormat;
+use Illuminate\Database\Eloquent\Model;
+
+class Shop extends Model
+{
+    //
+    use ModelTimeFormat;
+
+    protected $fillable = ['name','code'];
+}

+ 12 - 0
database/factories/OrderFactory.php

@@ -0,0 +1,12 @@
+<?php
+
+/** @var \Illuminate\Database\Eloquent\Factory $factory */
+
+use App\Order;
+use Faker\Generator as Faker;
+
+$factory->define(Order::class, function (Faker $faker) {
+    return [
+        //
+    ];
+});

+ 12 - 0
database/factories/OrderIssueFactory.php

@@ -0,0 +1,12 @@
+<?php
+
+/** @var \Illuminate\Database\Eloquent\Factory $factory */
+
+use App\OrderIssue;
+use Faker\Generator as Faker;
+
+$factory->define(OrderIssue::class, function (Faker $faker) {
+    return [
+        //
+    ];
+});

+ 12 - 0
database/factories/OrderIssueTypeFactory.php

@@ -0,0 +1,12 @@
+<?php
+
+/** @var \Illuminate\Database\Eloquent\Factory $factory */
+
+use App\OrderIssueType;
+use Faker\Generator as Faker;
+
+$factory->define(OrderIssueType::class, function (Faker $faker) {
+    return [
+        //
+    ];
+});

+ 12 - 0
database/factories/OrderItemsFactory.php

@@ -0,0 +1,12 @@
+<?php
+
+/** @var \Illuminate\Database\Eloquent\Factory $factory */
+
+use App\OrderItems;
+use Faker\Generator as Faker;
+
+$factory->define(OrderItems::class, function (Faker $faker) {
+    return [
+        //
+    ];
+});

+ 12 - 0
database/factories/OrderOnTopFactory.php

@@ -0,0 +1,12 @@
+<?php
+
+/** @var \Illuminate\Database\Eloquent\Factory $factory */
+
+use App\OrderOnTop;
+use Faker\Generator as Faker;
+
+$factory->define(OrderOnTop::class, function (Faker $faker) {
+    return [
+        //
+    ];
+});

+ 12 - 0
database/factories/ShopFactory.php

@@ -0,0 +1,12 @@
+<?php
+
+/** @var \Illuminate\Database\Eloquent\Factory $factory */
+
+use App\Shop;
+use Faker\Generator as Faker;
+
+$factory->define(Shop::class, function (Faker $faker) {
+    return [
+        //
+    ];
+});

+ 49 - 0
database/migrations/2020_07_29_155624_create_orders_table.php

@@ -0,0 +1,49 @@
+<?php
+
+use Illuminate\Database\Migrations\Migration;
+use Illuminate\Database\Schema\Blueprint;
+use Illuminate\Support\Facades\Schema;
+
+class CreateOrdersTable extends Migration
+{
+    /**
+     * Run the migrations.
+     *
+     * @return void
+     */
+    public function up()
+    {
+        Schema::create('orders', function (Blueprint $table) {
+            $table->bigIncrements('id');
+            $table->string("batch_id")->index()->nullable();
+            $table->string("code")->index();
+            $table->integer("owner_id")->nullable();
+            $table->enum("status",['处理中','未处理','已处理','取消','异常'])->default('未处理');
+            $table->string("wms_status");
+
+            $table->integer('shop_id')->index()->nullable()->comment('商铺');
+            $table->string("logistic_number")->index()->nullable()->comment('承运单号');
+            $table->integer("logistic_id")->index()->nullable()->comment('承运商');
+            $table->string("consignee_name")->index()->nullable()->comment('收件人');
+            $table->string("consignee_phone")->index()->nullable()->comment('收件人电话');
+
+            $table->String("province")->nullable()->comment('省');
+            $table->String("city")->nullable()->comment('市');
+            $table->String("district")->nullable()->comment('区');
+
+            $table->string("address")->nullable()->comment('地址');
+            $table->timestamp('create_at')->index();
+//            $table->timestamps();
+        });
+    }
+
+    /**
+     * Reverse the migrations.
+     *
+     * @return void
+     */
+    public function down()
+    {
+        Schema::dropIfExists('orders');
+    }
+}

+ 34 - 0
database/migrations/2020_07_29_160219_create_order_items_table.php

@@ -0,0 +1,34 @@
+<?php
+
+use Illuminate\Database\Migrations\Migration;
+use Illuminate\Database\Schema\Blueprint;
+use Illuminate\Support\Facades\Schema;
+
+class CreateOrderItemsTable extends Migration
+{
+    /**
+     * Run the migrations.
+     *
+     * @return void
+     */
+    public function up()
+    {
+        Schema::create('order_items', function (Blueprint $table) {
+            $table->id();
+            $table->timestamps();
+            $table->integer('order_id')->index();
+            $table->integer('commodity_id')->index();
+            $table->integer('amount');
+        });
+    }
+
+    /**
+     * Reverse the migrations.
+     *
+     * @return void
+     */
+    public function down()
+    {
+        Schema::dropIfExists('order_items');
+    }
+}

+ 33 - 0
database/migrations/2020_07_29_160704_create_shops_table.php

@@ -0,0 +1,33 @@
+<?php
+
+use Illuminate\Database\Migrations\Migration;
+use Illuminate\Database\Schema\Blueprint;
+use Illuminate\Support\Facades\Schema;
+
+class CreateShopsTable extends Migration
+{
+    /**
+     * Run the migrations.
+     *
+     * @return void
+     */
+    public function up()
+    {
+        Schema::create('shops', function (Blueprint $table) {
+            $table->id();
+            $table->timestamps();
+            $table->string('name')->unique();
+            $table->string('code')->unique();
+        });
+    }
+
+    /**
+     * Reverse the migrations.
+     *
+     * @return void
+     */
+    public function down()
+    {
+        Schema::dropIfExists('shops');
+    }
+}

+ 47 - 0
database/migrations/2020_07_29_160826_create_order_issues_table.php

@@ -0,0 +1,47 @@
+<?php
+
+use Illuminate\Database\Migrations\Migration;
+use Illuminate\Database\Schema\Blueprint;
+use Illuminate\Support\Facades\Schema;
+
+class CreateOrderIssuesTable extends Migration
+{
+    /**
+     * Run the migrations.
+     *
+     * @return void
+     */
+    public function up()
+    {
+        Schema::create('order_issues', function (Blueprint $table) {
+            $table->id();
+            $table->timestamp('created_at')->index();
+            $table->integer('order_id')->index()->comment('订单');
+            $table->enum('handle_status',['处理中','已完结'])->default('处理中')->comment('处理状态');
+            $table->integer('rejected_bill_id')->index()->nullable()->comment('退回单');
+            $table->enum('rejecting_status',['无','未退回','全部退回','部分退回','差异退回','超量退回','全部退回'])->default('无')->index()->comment('退回状态');
+            $table->string('situation_explain')->nullable()->comment('情况说明');
+            $table->string('order_issue_type_id')->nullable()->comment('问题类别');
+            $table->string('result_explain')->nullable()->comment('处理结果说明');
+            $table->integer('second_order_id')->nullable()->comment('二次订单号');
+            //$table->integer('second_logistic_id')->nullable()->comment('二次承运商');
+            $table->String('second_logistic_number')->nullable()->comment('二次运单号');
+            $table->enum('final_status',['已解决','待退回','退回中'])->index()->nullable()->comment('最终转态');
+            $table->decimal('logistic_indemnity_money)')->index()->nullable()->comment('承运商赔偿金额');
+            $table->enum('logistic_express_remission',['原单减免','部分减免','全部减免'])->index()->nullable()->comment('承运商快递减免');
+            $table->decimal('baoshi_indemnity_money')->index()->nullable()->comment('宝时赔偿金额');
+            $table->enum('baoshi_express_remission',['原单减免','部分减免','全部减免'])->index()->nullable()->comment('宝时快递减免');
+            $table->integer('user_workgroup_id')->index()->nullable()->comment('事故责任方');
+        });
+    }
+
+    /**
+     * Reverse the migrations.
+     *
+     * @return void
+     */
+    public function down()
+    {
+        Schema::dropIfExists('order_issues');
+    }
+}

+ 34 - 0
database/migrations/2020_07_29_164031_create_order_on_tops_table.php

@@ -0,0 +1,34 @@
+<?php
+
+use Illuminate\Database\Migrations\Migration;
+use Illuminate\Database\Schema\Blueprint;
+use Illuminate\Support\Facades\Schema;
+
+class CreateOrderOnTopsTable extends Migration
+{
+    /**
+     * Run the migrations.
+     *
+     * @return void
+     */
+    public function up()
+    {
+        Schema::create('order_on_tops', function (Blueprint $table) {
+            $table->id();
+            $table->timestamps();
+            $table->integer('order_id')->index()->comment('订单');
+            $table->string('remark')->comment('备注');
+            $table->softDeletes()->index();
+        });
+    }
+
+    /**
+     * Reverse the migrations.
+     *
+     * @return void
+     */
+    public function down()
+    {
+        Schema::dropIfExists('order_on_tops');
+    }
+}

+ 32 - 0
database/migrations/2020_07_29_164130_create_order_issue_types_table.php

@@ -0,0 +1,32 @@
+<?php
+
+use Illuminate\Database\Migrations\Migration;
+use Illuminate\Database\Schema\Blueprint;
+use Illuminate\Support\Facades\Schema;
+
+class CreateOrderIssueTypesTable extends Migration
+{
+    /**
+     * Run the migrations.
+     *
+     * @return void
+     */
+    public function up()
+    {
+        Schema::create('order_issue_types', function (Blueprint $table) {
+            $table->id();
+            $table->timestamps();
+            $table->String('name')->unique();
+        });
+    }
+
+    /**
+     * Reverse the migrations.
+     *
+     * @return void
+     */
+    public function down()
+    {
+        Schema::dropIfExists('order_issue_types');
+    }
+}

+ 48 - 0
database/migrations/2020_07_29_164829_add_data_authorities_issue.php

@@ -0,0 +1,48 @@
+<?php
+
+use Illuminate\Database\Migrations\Migration;
+use Illuminate\Database\Schema\Blueprint;
+use Illuminate\Support\Facades\Schema;
+
+class AddDataAuthoritiesIssue extends Migration
+{
+    protected $authNames = [
+        "订单管理-问题件-查询",
+        "订单管理-问题件-工作量",
+        "订单管理-问题件-绩效统计"
+    ];
+
+    protected $forbidAuthName =[
+        '客户不可见'
+    ];
+    /**
+     * Run the migrations.
+     *
+     * @return void
+     */
+    public function up()
+    {
+        //
+        foreach ($this->authNames as $authName){
+           \App\Authority::create(['name'=>$authName,'alias_name'=>$authName,'permission'=>'允许']);
+        }
+        foreach ($this->forbidAuthName as $bidAuthName){
+            \App\Authority::create(['name'=>$bidAuthName,'alias_name'=>$bidAuthName,'permission'=>'禁止']);
+        }
+    }
+
+    /**
+     * Reverse the migrations.
+     *
+     * @return void
+     */
+    public function down()
+    {
+        foreach ($this->authNames as $authName){
+            \App\Authority::where(['name'=>$authName,'alias_name'=>$authName])->delete();
+        }
+        foreach ($this->forbidAuthName as $bidAuthName){
+            \App\Authority::where(['name'=>$bidAuthName,'alias_name'=>$bidAuthName])->delete();
+        }
+    }
+}

+ 16 - 0
database/seeds/OrderIssueSeeder.php

@@ -0,0 +1,16 @@
+<?php
+
+use Illuminate\Database\Seeder;
+
+class OrderIssueSeeder extends Seeder
+{
+    /**
+     * Run the database seeds.
+     *
+     * @return void
+     */
+    public function run()
+    {
+        //
+    }
+}

+ 16 - 0
database/seeds/OrderIssueTypeSeeder.php

@@ -0,0 +1,16 @@
+<?php
+
+use Illuminate\Database\Seeder;
+
+class OrderIssueTypeSeeder extends Seeder
+{
+    /**
+     * Run the database seeds.
+     *
+     * @return void
+     */
+    public function run()
+    {
+        //
+    }
+}

+ 16 - 0
database/seeds/OrderItemsSeeder.php

@@ -0,0 +1,16 @@
+<?php
+
+use Illuminate\Database\Seeder;
+
+class OrderItemsSeeder extends Seeder
+{
+    /**
+     * Run the database seeds.
+     *
+     * @return void
+     */
+    public function run()
+    {
+        //
+    }
+}

+ 16 - 0
database/seeds/OrderOnTopSeeder.php

@@ -0,0 +1,16 @@
+<?php
+
+use Illuminate\Database\Seeder;
+
+class OrderOnTopSeeder extends Seeder
+{
+    /**
+     * Run the database seeds.
+     *
+     * @return void
+     */
+    public function run()
+    {
+        //
+    }
+}

+ 16 - 0
database/seeds/OrderSeeder.php

@@ -0,0 +1,16 @@
+<?php
+
+use Illuminate\Database\Seeder;
+
+class OrderSeeder extends Seeder
+{
+    /**
+     * Run the database seeds.
+     *
+     * @return void
+     */
+    public function run()
+    {
+        //
+    }
+}

+ 16 - 0
database/seeds/ShopSeeder.php

@@ -0,0 +1,16 @@
+<?php
+
+use Illuminate\Database\Seeder;
+
+class ShopSeeder extends Seeder
+{
+    /**
+     * Run the database seeds.
+     *
+     * @return void
+     */
+    public function run()
+    {
+        //
+    }
+}

+ 2 - 2
public/js/app.js

@@ -61945,8 +61945,8 @@ module.exports = tempTip;
 /*! no static exports found */
 /***/ (function(module, exports, __webpack_require__) {
 
-__webpack_require__(/*! D:\Demo\bswas\resources\js\app.js */"./resources/js/app.js");
-module.exports = __webpack_require__(/*! D:\Demo\bswas\resources\sass\app.scss */"./resources/sass/app.scss");
+__webpack_require__(/*! D:\phpstudy_pro\WWW\bswas\resources\js\app.js */"./resources/js/app.js");
+module.exports = __webpack_require__(/*! D:\phpstudy_pro\WWW\bswas\resources\sass\app.scss */"./resources/sass/app.scss");
 
 
 /***/ }),

+ 22 - 0
resources/views/order/issue/menu.blade.php

@@ -0,0 +1,22 @@
+<div id="nav2">
+    @component('order.menu')
+    @endcomponent
+    <div class="container-fluid nav3">
+        <div class="card menu-third">
+            <ul class="nav nav-pills">
+                @can('订单管理-问题件-查询')
+                    <li class="nav-item">
+                        <a class="nav-link" href="{{url('order/issue/index/')}}" :class="{active:isActive('issue',2)}">查询</a>
+                    </li> @endcan
+                @can('订单管理-问题件-工作量')
+                    <li class="nav-item">
+                        <a class="nav-link" href="{{url('order/issue/workload/')}}" :class="{active:isActive('workload',3)}">工作量</a>
+                    </li> @endcan
+                @can('订单管理-问题件-绩效统计')
+                    <li class="nav-item">
+                        <a class="nav-link" href="{{url('order/issue/performance/')}}" :class="{active:isActive('performance',3)}">绩效统计</a>
+                    </li> @endcan
+            </ul>
+        </div>
+    </div>
+</div>

+ 1 - 0
resources/views/order/issue/performance.blade.php

@@ -0,0 +1 @@
+<?php

+ 15 - 0
resources/views/order/issue/search.blade.php

@@ -0,0 +1,15 @@
+@extends('layouts.app')
+@section('title')问题件-查询@endsection
+
+@section('content')
+    @component("order.menu")@endcomponent
+    @component("order.issue.menu")@endcomponent
+
+@endsection
+@section('lastScript')
+
+@endsection
+
+
+
+

+ 1 - 0
resources/views/order/issue/workload.blade.php

@@ -0,0 +1 @@
+<?php

+ 5 - 0
resources/views/order/menu.blade.php

@@ -10,6 +10,11 @@
                 <li class="nav-item">
                     <a class="nav-link" href="{{url('order/wave/index/')}}" :class="{active:isActive('wave',2)}">波次</a>
             </li> @endcan
+            @can('订单管理-问题件-查询')
+                    <li class="nav-item">
+                        <a class="nav-link" href="{{url('order/issue/index/')}}" :class="{active:isActive('issue',2)}">问题件</a>
+                    </li>
+                @endcan
         </ul>
     </div>
 </div>

+ 13 - 0
routes/web.php

@@ -325,3 +325,16 @@ Route::group(['prefix'=>'order'],function(){
     // export Excel
     Route::any('wave/exportExcel','WaveController@exportExcelOnParams');
 });
+/**
+ * 问题件
+ */
+Route::group(['prefix'=>'order'],function(){
+    // 查询
+    Route::get('issue/index','OrderIssueController@index');
+    // 绩效统计
+    Route::get('issue/performance','OrderIssueController@performance');
+    // 工作量
+    Route::get('issue/workload','OrderIssueController@workLoad');
+    // 标记问题订单
+    Route::post('issue/orderIssueTag','OrderIssueController@orderIssueTag');
+});