wenningning 6 months ago
parent
commit
5e26523cc9

+ 3 - 0
manager-admin/src/views/dashboard/index.vue

@@ -11,6 +11,9 @@
     <el-divider></el-divider>
     <el-divider></el-divider>
     <el-card>
     <el-card>
       <div>
       <div>
+        <b>20250102-wnn</b>
+        <p>- 订单明细中增加发货地址,同时增加搜索</p>
+        <p>- 增加订单状态多选筛选</p>
         <b>20241227-wnn</b>
         <b>20241227-wnn</b>
         <p>- 生产备注可以叠加</p>
         <p>- 生产备注可以叠加</p>
         <p>- 去除基础产品必选相关逻辑;</p>
         <p>- 去除基础产品必选相关逻辑;</p>

+ 1 - 1
manager-admin/src/views/pjDraft/Edit.vue

@@ -28,7 +28,7 @@
                 <el-form-item label="项目规模" prop="scale">
                 <el-form-item label="项目规模" prop="scale">
                   <el-select v-model="modelForm.scale" placeholder="请选择" clearable>
                   <el-select v-model="modelForm.scale" placeholder="请选择" clearable>
                     <el-option label="一千设备以上" value="一千设备以上"/>
                     <el-option label="一千设备以上" value="一千设备以上"/>
-                    <el-option label="500-100设备" value="500-100设备"/>
+                    <el-option label="500-1000设备" value="500-1000设备"/>
                     <el-option label="200-500设备" value="200-500设备"/>
                     <el-option label="200-500设备" value="200-500设备"/>
                     <el-option label="一百设备以下" value="一百设备以下"/>
                     <el-option label="一百设备以下" value="一百设备以下"/>
                   </el-select>
                   </el-select>

+ 15 - 0
manager-admin/src/views/pjOrder/ItemDetail.vue

@@ -70,6 +70,12 @@
             <el-form-item label="发货量">
             <el-form-item label="发货量">
               <el-input v-model="modelForm.shipped_qty"></el-input>
               <el-input v-model="modelForm.shipped_qty"></el-input>
             </el-form-item>
             </el-form-item>
+            <el-form-item label="发货地址">
+              <el-select placeholder="请选择" v-model="modelForm.shipped_add">
+                <el-option value="深圳"></el-option>
+                <el-option value="长沙"></el-option>
+              </el-select>
+            </el-form-item>
             <el-form-item label="备注">
             <el-form-item label="备注">
               <el-input type="textarea" rows="3" placeholder="备注,最大150字" maxlength="150" show-word-limit v-model="modelForm.produced_remark"></el-input>
               <el-input type="textarea" rows="3" placeholder="备注,最大150字" maxlength="150" show-word-limit v-model="modelForm.produced_remark"></el-input>
             </el-form-item>
             </el-form-item>
@@ -102,6 +108,15 @@
             </el-descriptions-item>
             </el-descriptions-item>
 
 
             <el-descriptions-item>
             <el-descriptions-item>
+              <template slot="label">发货数量</template>
+              <span>{{modelForm.shipped_qty}}</span>
+            </el-descriptions-item>
+            <el-descriptions-item>
+              <template slot="label">发货地址</template>
+              <span>{{modelForm.shipped_add}}</span>
+            </el-descriptions-item>
+
+            <el-descriptions-item>
               <template slot="label">备注</template>
               <template slot="label">备注</template>
               <span>{{modelForm.produced_remark}}</span>
               <span>{{modelForm.produced_remark}}</span>
             </el-descriptions-item>
             </el-descriptions-item>

+ 8 - 1
manager-admin/src/views/pjOrder/Items.vue

@@ -25,8 +25,11 @@
               <el-input v-model="params.keyword" placeholder="输入产品名搜索" size="" clearable />
               <el-input v-model="params.keyword" placeholder="输入产品名搜索" size="" clearable />
             </div>
             </div>
             <div style="float: left">
             <div style="float: left">
+              <el-input v-model="params.remark" placeholder="输入备注、发货地搜索" size="" clearable />
+            </div>
+            <div style="float: left">
               <el-select v-model="params.good_type" clearable filterable allow-create
               <el-select v-model="params.good_type" clearable filterable allow-create
-                         placeholder="选择产品类型">
+                         placeholder="选择产品类型" @change="changeProduceType">
                 <el-option value="外购"></el-option>
                 <el-option value="外购"></el-option>
                 <el-option value="自产"></el-option>
                 <el-option value="自产"></el-option>
               </el-select>
               </el-select>
@@ -90,6 +93,7 @@
           </el-table-column>
           </el-table-column>
           <el-table-column v-if="params.type !== '2'" prop="shipped_qty" label="已发数量"></el-table-column>
           <el-table-column v-if="params.type !== '2'" prop="shipped_qty" label="已发数量"></el-table-column>
           <el-table-column v-if="params.type !== '2'" label="要求发货日期" :formatter="MixinUnixToDay" prop="ship_date_required" sortable width="160"></el-table-column>
           <el-table-column v-if="params.type !== '2'" label="要求发货日期" :formatter="MixinUnixToDay" prop="ship_date_required" sortable width="160"></el-table-column>
+          <el-table-column v-if="params.type !== '2'" label="发货地" prop="shipped_add" width="80"></el-table-column>
           <el-table-column v-if="params.type !== '2'" label="生产状态" prop="produce_status"></el-table-column>
           <el-table-column v-if="params.type !== '2'" label="生产状态" prop="produce_status"></el-table-column>
           <el-table-column v-if="params.type !== '2'" label="生产备注" prop="produced_remark" show-overflow-tooltip></el-table-column>
           <el-table-column v-if="params.type !== '2'" label="生产备注" prop="produced_remark" show-overflow-tooltip></el-table-column>
           <el-table-column label="操作" width="100" fixed="right">
           <el-table-column label="操作" width="100" fixed="right">
@@ -331,6 +335,9 @@ export default {
       this.GET_List2()
       this.GET_List2()
       this.drawerShow = true
       this.drawerShow = true
     },
     },
+    changeProduceType() {
+      this.GET_List()
+    },
     changeProduceStatus(e) {
     changeProduceStatus(e) {
       if (e) {
       if (e) {
         let list = e.join(',')
         let list = e.join(',')

+ 31 - 15
manager-admin/src/views/pjOrder/List.vue

@@ -5,16 +5,25 @@
   >
   >
     <div slot="toolbar" class="inner-toolbar">
     <div slot="toolbar" class="inner-toolbar">
       <div class="toolbar-btns">
       <div class="toolbar-btns">
-        <el-button-group>
-          <el-button type="primary" @click="filterStatus(-1)">全部</el-button>
-          <el-button @click="filterStatus(0)">默认</el-button>
-          <el-button @click="filterStatus(1)" type="warning">技术跟进</el-button>
-          <el-button @click="filterStatus(2)" type="warning">生产跟进</el-button>
-          <el-button @click="filterStatus(3)" type="warning">收到款</el-button>
-          <el-button @click="filterStatus(4)">已发货</el-button>
-          <el-button @click="filterStatus(5)" type="success">已完成</el-button>
-          <el-button @click="filterStatus(6)" type="danger">作废</el-button>
-        </el-button-group>
+        <el-select v-model="orderType" placeholder="请选择状态" style="width: 350px" multiple size="medium" clearable @change="filterStatus">
+          <el-option label="默认" value="0"/>
+          <el-option label="技术跟进" value="1"/>
+          <el-option label="生产跟进" value="2"/>
+          <el-option label="收到款" value="3"/>
+          <el-option label="已发货" value="4"/>
+          <el-option label="已完成" value="5"/>
+          <el-option label="作废" value="6"/>
+        </el-select>
+<!--        <el-button-group>-->
+<!--          <el-button type="primary" @click="filterStatus(-1)">全部</el-button>-->
+<!--          <el-button @click="filterStatus(0)">默认</el-button>-->
+<!--          <el-button @click="filterStatus(1)" type="warning">技术跟进</el-button>-->
+<!--          <el-button @click="filterStatus(2)" type="warning">生产跟进</el-button>-->
+<!--          <el-button @click="filterStatus(3)" type="warning">收到款</el-button>-->
+<!--          <el-button @click="filterStatus(4)">已发货</el-button>-->
+<!--          <el-button @click="filterStatus(5)" type="success">已完成</el-button>-->
+<!--          <el-button @click="filterStatus(6)" type="danger">作废</el-button>-->
+<!--        </el-button-group>-->
       </div>
       </div>
       <div class="toolbar-search">
       <div class="toolbar-search">
         <en-table-search
         <en-table-search
@@ -106,7 +115,8 @@ export default {
 
 
       /** 高级搜索数据 */
       /** 高级搜索数据 */
       advancedForm: {
       advancedForm: {
-      }
+      },
+      orderType: []
     }
     }
   },
   },
   mounted() {
   mounted() {
@@ -166,12 +176,18 @@ export default {
       console.log(id)
       console.log(id)
       this.$router.push({ name: 'pjOrderEdit', params: { id: id, callback: this.GET_List }})
       this.$router.push({ name: 'pjOrderEdit', params: { id: id, callback: this.GET_List }})
     },
     },
-    filterStatus(status) {
-      if (status === -1) {
-        delete this.params.fixedCondition
+    filterStatus(e) {
+      if (e && e.length > 0) {
+        let list = e.join(',')
+        this.params.fixedCondition = " FIND_IN_SET(`status`, '" + list + "')"
       } else {
       } else {
-        this.params.fixedCondition = 'status=' + status
+        delete this.params.fixedCondition
       }
       }
+      // if (status === -1) {
+      //   delete this.params.fixedCondition
+      // } else {
+      //   this.params.fixedCondition = 'status=' + status
+      // }
       this.GET_List()
       this.GET_List()
     }
     }
   }
   }

+ 25 - 6
manager-admin/src/views/pjOrder/OrderItems.vue

@@ -110,7 +110,12 @@
                           </el-tooltip>
                           </el-tooltip>
                         </div>
                         </div>
                         <div>已产量:<el-input v-model="item.produced_qty"><template slot="append">共{{item.qty}}</template></el-input></div>
                         <div>已产量:<el-input v-model="item.produced_qty"><template slot="append">共{{item.qty}}</template></el-input></div>
-                        <div>发货量:<el-input v-model="item.shipped_qty" /></div>
+                        <div>发货量:<el-input v-model="item.shipped_qty" class="input-with-select">
+                          <el-select v-model="item.shipped_add" slot="suffix" placeholder="发货地">
+                            <el-option label="深圳" value="深圳"></el-option>
+                            <el-option label="长沙" value="长沙"></el-option>
+                          </el-select>
+                        </el-input></div>
                         <div>备注:
                         <div>备注:
                           <el-input type="textarea" rows="3" placeholder="备注,最大150字" maxlength="150" show-word-limit v-model="item.produced_remark"></el-input>
                           <el-input type="textarea" rows="3" placeholder="备注,最大150字" maxlength="150" show-word-limit v-model="item.produced_remark"></el-input>
                         </div>
                         </div>
@@ -146,7 +151,7 @@
                           <span style="font-size: 11px">{{ item.produced_qty }}</span>
                           <span style="font-size: 11px">{{ item.produced_qty }}</span>
                         </el-tooltip>件</div>
                         </el-tooltip>件</div>
                         <div>发货量:<el-tooltip class="item" effect="dark" :content="item.shipped_qty" placement="top">
                         <div>发货量:<el-tooltip class="item" effect="dark" :content="item.shipped_qty" placement="top">
-                          <span style="font-size: 11px">{{ item.shipped_qty }}</span>
+                          <span style="font-size: 11px">{{ item.shipped_add }}发{{ item.shipped_qty }}</span>
                         </el-tooltip>件</div>
                         </el-tooltip>件</div>
                         <div>备注:<el-tooltip class="item" effect="dark" :content="item.produced_remark" placement="top">
                         <div>备注:<el-tooltip class="item" effect="dark" :content="item.produced_remark" placement="top">
                           <span style="font-size: 11px">{{ item.produced_remark }}</span>
                           <span style="font-size: 11px">{{ item.produced_remark }}</span>
@@ -185,8 +190,9 @@
                     <div>产品编码:{{ item.no }}</div>
                     <div>产品编码:{{ item.no }}</div>
                     <div>产品类型:{{ item.good_type }}</div>
                     <div>产品类型:{{ item.good_type }}</div>
                     <div>生产周期:{{ item.produce_day }}天</div>
                     <div>生产周期:{{ item.produce_day }}天</div>
-                    <div>数量:{{item.qty}}</div>
-                    <div>价格:{{item.price}}</div>
+                    <div v-if="boolFounder">数量:<el-input-number v-model="item.qty"/><el-button @click="handleSave(item)">保存</el-button></div>
+                    <div v-else>数量:{{item.qty}}</div>
+                    <div v-if="boolFounder || permissions.filter(p => p === 'draftEdit' || p === 'pjReceipt').length > 0">价格:{{item.price}}</div>
                   </div>
                   </div>
                 </div>
                 </div>
                 <el-tooltip class="item" effect="dark" :content="item.sales_remark" placement="top">
                 <el-tooltip class="item" effect="dark" :content="item.sales_remark" placement="top">
@@ -268,7 +274,12 @@
                           </el-tooltip>
                           </el-tooltip>
                         </div>
                         </div>
                         <div>已产量:<el-input v-model="item.produced_qty"><template slot="append">共{{item.qty}}</template></el-input></div>
                         <div>已产量:<el-input v-model="item.produced_qty"><template slot="append">共{{item.qty}}</template></el-input></div>
-                        <div>发货量:<el-input v-model="item.shipped_qty" /></div>
+                        <div>发货量:<el-input v-model="item.shipped_qty" class="input-with-select">
+                          <el-select v-model="item.shipped_add" slot="suffix" placeholder="发货地">
+                            <el-option label="深圳" value="深圳"></el-option>
+                            <el-option label="长沙" value="长沙"></el-option>
+                          </el-select>
+                        </el-input></div>
                         <div>备注:
                         <div>备注:
                           <el-input type="textarea" rows="3" placeholder="备注,最大150字" maxlength="150" show-word-limit v-model="item.produced_remark"></el-input>
                           <el-input type="textarea" rows="3" placeholder="备注,最大150字" maxlength="150" show-word-limit v-model="item.produced_remark"></el-input>
                         </div>
                         </div>
@@ -304,7 +315,7 @@
                           <span style="font-size: 11px">{{ item.produced_qty }}</span>
                           <span style="font-size: 11px">{{ item.produced_qty }}</span>
                         </el-tooltip>件</div>
                         </el-tooltip>件</div>
                         <div>发货量:<el-tooltip class="item" effect="dark" :content="item.shipped_qty" placement="top">
                         <div>发货量:<el-tooltip class="item" effect="dark" :content="item.shipped_qty" placement="top">
-                          <span style="font-size: 11px">{{ item.shipped_qty }}</span>
+                          <span style="font-size: 11px">{{ item.shipped_add }}发{{ item.shipped_qty }}</span>
                         </el-tooltip>件</div>
                         </el-tooltip>件</div>
                         <div>备注:<el-tooltip class="item" effect="dark" :content="item.produced_remark" placement="top">
                         <div>备注:<el-tooltip class="item" effect="dark" :content="item.produced_remark" placement="top">
                           <span style="font-size: 11px">{{ item.produced_remark }}</span>
                           <span style="font-size: 11px">{{ item.produced_remark }}</span>
@@ -346,6 +357,7 @@
             </template>
             </template>
           </el-table-column>
           </el-table-column>
           <el-table-column prop="shipped_qty" label="已发数量" width="100"></el-table-column>
           <el-table-column prop="shipped_qty" label="已发数量" width="100"></el-table-column>
+          <el-table-column prop="shipped_add" label="发货地" width="80"></el-table-column>
           <el-table-column v-if="boolFounder || permissions.filter(p => p === 'draftEdit' || p === 'pjReceipt').length > 0" prop="price" label="价格" width="100"></el-table-column>
           <el-table-column v-if="boolFounder || permissions.filter(p => p === 'draftEdit' || p === 'pjReceipt').length > 0" prop="price" label="价格" width="100"></el-table-column>
           <el-table-column prop="sales_remark" show-overflow-tooltip label="销售备注"></el-table-column>
           <el-table-column prop="sales_remark" show-overflow-tooltip label="销售备注"></el-table-column>
           <el-table-column prop="produced_remark" show-overflow-tooltip label="生产备注"></el-table-column>
           <el-table-column prop="produced_remark" show-overflow-tooltip label="生产备注"></el-table-column>
@@ -498,6 +510,7 @@ export default {
           '已产数量': item.produced_qty,
           '已产数量': item.produced_qty,
           '需产数量': item.qty - item.produced_qty,
           '需产数量': item.qty - item.produced_qty,
           '已发数量': item.shipped_qty,
           '已发数量': item.shipped_qty,
+          '发货地址': item.shipped_add,
           '销售备注': item.sales_remark,
           '销售备注': item.sales_remark,
           '生产备注': item.produced_remark
           '生产备注': item.produced_remark
         }))
         }))
@@ -630,4 +643,10 @@ export default {
   white-space: nowrap;
   white-space: nowrap;
   width: 16em;  //用px单位亦可行
   width: 16em;  //用px单位亦可行
 }
 }
+.el-input .el-select {
+  width: 130px;
+}
+.input-with-select .el-input-group__prepend {
+  background-color: #fff;
+}
 </style>
 </style>

+ 11 - 0
manager-admin/src/views/pjOrder/SelfList.vue

@@ -20,6 +20,17 @@
           <el-tag>{{scope.row.order_no}}</el-tag>
           <el-tag>{{scope.row.order_no}}</el-tag>
         </template>
         </template>
       </el-table-column>
       </el-table-column>
+      <el-table-column label="状态" width="130" prop="status" sortable>
+        <template slot-scope="scope">
+          <el-tag type="info" v-if="scope.row.status === 0">默认</el-tag>
+          <el-tag type="warning" v-if="scope.row.status === 1">技术跟进</el-tag>
+          <el-tag type="warning" v-if="scope.row.status === 2">生产跟进</el-tag>
+          <el-tag type="warning" v-if="scope.row.status === 3">收到款</el-tag>
+          <el-tag v-if="scope.row.status === 4">已发货</el-tag>
+          <el-tag type="success" v-if="scope.row.status === 5">已完成</el-tag>
+          <el-tag type="danger" v-if="scope.row.status === 6">作废</el-tag>
+        </template>
+      </el-table-column>
       <el-table-column label="创建时间" :formatter="MixinUnixToDate" prop="create_time" sortable width="160"></el-table-column>
       <el-table-column label="创建时间" :formatter="MixinUnixToDate" prop="create_time" sortable width="160"></el-table-column>
       <el-table-column label="项目名称" prop="name"></el-table-column>
       <el-table-column label="项目名称" prop="name"></el-table-column>
       <el-table-column label="类型" prop="type"></el-table-column>
       <el-table-column label="类型" prop="type"></el-table-column>