Commit db9fe50bcc8f6a521013316a07f8fd84d0c6825f

Authored by lichao
1 parent 111dae4c

用户需求调整

trash-ui/src/views/ask/ask/index.vue
@@ -173,7 +173,7 @@ @@ -173,7 +173,7 @@
173 </td> 173 </td>
174 </tr> 174 </tr>
175 <tr> 175 <tr>
176 - <td style="width:20%;">投放名称</td> 176 + <td style="width:20%;">投放名称</td>
177 <td style="width:30%;">{{ form.garOrderName || '-' }}</td> 177 <td style="width:30%;">{{ form.garOrderName || '-' }}</td>
178 <td style="width:20%;">订单时间</td> 178 <td style="width:20%;">订单时间</td>
179 <td style="width:30%;">{{ form.garOrderTime || '-' }}</td> 179 <td style="width:30%;">{{ form.garOrderTime || '-' }}</td>
trash-ui/src/views/gar/order/index.vue
@@ -40,22 +40,22 @@ @@ -40,22 +40,22 @@
40 <el-table-column label="订单地址" width="200px" align="center" prop="garOrderAddress" /> 40 <el-table-column label="订单地址" width="200px" align="center" prop="garOrderAddress" />
41 <el-table-column label="订单详细地址" width="200px" align="center" prop="garOrderAddressDetails" /> 41 <el-table-column label="订单详细地址" width="200px" align="center" prop="garOrderAddressDetails" />
42 <el-table-column label="垃圾类型" align="center" prop="garOrderTrashType" /> 42 <el-table-column label="垃圾类型" align="center" prop="garOrderTrashType" />
43 - <el-table-column label="订单人电话" width="200px" align="center" prop="garOrderContactTel" />  
44 - <el-table-column label="经营单位" width="200px" align="center" prop="garOrderCompanyName" /> 43 + <el-table-column label="联系电话" width="200px" align="center" prop="garOrderContactTel" />
  44 + <el-table-column label="清运公司" width="200px" align="center" prop="garOrderCompanyName" />
45 <el-table-column label="公司负责人电话" width="200px" align="center" prop="garOrderCompanyTel" /> 45 <el-table-column label="公司负责人电话" width="200px" align="center" prop="garOrderCompanyTel" />
46 <el-table-column label="处理状态" align="center" prop="garOrderHandlerStatus"> 46 <el-table-column label="处理状态" align="center" prop="garOrderHandlerStatus">
47 <template slot-scope="scope"> 47 <template slot-scope="scope">
48 {{ computedHandleStatusString(scope.row.garOrderHandlerStatus).toString() }} 48 {{ computedHandleStatusString(scope.row.garOrderHandlerStatus).toString() }}
49 </template> 49 </template>
50 </el-table-column> 50 </el-table-column>
51 - <el-table-column label="约定时间" width="180" align="center" prop="garOrderAgreementTime" /> 51 + <el-table-column label="预约时间" width="180" align="center" prop="garOrderAgreementTime" />
52 <el-table-column label="备注" align="center" prop="garRemark" /> 52 <el-table-column label="备注" align="center" prop="garRemark" />
53 <el-table-column label="是否取消" align="center" prop="garCancelFlag"> 53 <el-table-column label="是否取消" align="center" prop="garCancelFlag">
54 <template slot-scope="scope"> 54 <template slot-scope="scope">
55 {{ computedCancelFlagString(scope.row.garCancelFlag).toString() }} 55 {{ computedCancelFlagString(scope.row.garCancelFlag).toString() }}
56 </template> 56 </template>
57 </el-table-column> 57 </el-table-column>
58 - <el-table-column label="车数量" align="center" prop="garRealCarCount" /> 58 + <el-table-column label="车数量" align="center" prop="garRealCarCount" />
59 <!-- <el-table-column label="车子类型" width="200px" align="center" prop="garOrderCarType" />--> 59 <!-- <el-table-column label="车子类型" width="200px" align="center" prop="garOrderCarType" />-->
60 <el-table-column fixed="right" label="操作" width="200px" align="center" class-name="small-padding fixed-width"> 60 <el-table-column fixed="right" label="操作" width="200px" align="center" class-name="small-padding fixed-width">
61 <template slot-scope="scope"> 61 <template slot-scope="scope">
@@ -75,110 +75,209 @@ @@ -75,110 +75,209 @@
75 </div> 75 </div>
76 <div class="handle-box-title-text" style="color: #409EFF; font-size: 25px;">派单基本信息</div> 76 <div class="handle-box-title-text" style="color: #409EFF; font-size: 25px;">派单基本信息</div>
77 </div> 77 </div>
78 - <el-form ref="form" :model="form" :inline="true">  
79 - <el-form-item label="处理状态">  
80 - {{ computedHandleStatusString(form.garOrderHandlerStatus).toString() }}  
81 - </el-form-item>  
82 - <el-form-item label="是否取消" prop="garCancelFlag">  
83 - {{ computedCancelFlagString(form.garCancelFlag).toString() }}  
84 - </el-form-item>  
85 - <el-form-item v-if="form.garCancelFlag === 1" label="原因" prop="garReason">  
86 - <div class="text" style="color: red;">{{ form.garReason }}</div>  
87 - </el-form-item>  
88 - <el-form-item label="订单姓名" prop="garOrderContactName">  
89 - <el-input :disabled="true" v-model="form.garOrderContactName" placeholder="请输入订单姓名" />  
90 - </el-form-item>  
91 - <el-form-item label="垃圾类型" prop="garOrderTrashType">  
92 - <el-input :disabled="true" v-model="form.garOrderTrashType" placeholder="请输入垃圾类型" />  
93 - </el-form-item>  
94 - <el-form-item label="订单人电话" prop="garOrderContactTel">  
95 - <el-input :disabled="true" v-model="form.garOrderContactTel" placeholder="请输入订单人电话" />  
96 - </el-form-item>  
97 - <el-form-item label="经营单位" prop="garOrderCompanyName">  
98 - <el-input :disabled="true" v-model="form.garOrderCompanyName" placeholder="请输入公司名称" />  
99 - </el-form-item>  
100 - <el-form-item label="公司负责人电话" prop="garOrderCompanyTel">  
101 - <el-input :disabled="true" v-model="form.garOrderCompanyTel" placeholder="请输入公司负责人电话" />  
102 - </el-form-item>  
103 - <el-form-item label="约定时间" prop="garOrderAgreementTime">  
104 - <el-input :disabled="true" v-model="form.garOrderAgreementTime" placeholder="请输入约定时间" />  
105 - </el-form-item>  
106 - <el-form-item label="订单创建时间" prop="garCreateTime">  
107 - <el-date-picker :disabled="true" clearable size="small" style="width: 200px" v-model="form.garCreateTime"  
108 - type="date" value-format="yyyy-MM-dd" placeholder="选择订单创建时间">  
109 - </el-date-picker>  
110 - </el-form-item> 78 +
  79 + <el-form ref="form" :model="form" label-width="120px">
  80 + <el-row :gutter="20">
  81 + <el-col :span="12">
  82 + <el-form-item label="处理状态">
  83 + {{ computedHandleStatusString(form.garOrderHandlerStatus).toString() }}
  84 + </el-form-item>
  85 + </el-col>
  86 + <el-col :span="12">
  87 + <el-form-item label="是否取消" prop="garCancelFlag">
  88 + {{ computedCancelFlagString(form.garCancelFlag).toString() }}
  89 + </el-form-item>
  90 + </el-col>
  91 + </el-row>
  92 +
  93 + <el-row :gutter="20" v-if="form.garCancelFlag === 1">
  94 + <el-col :span="24">
  95 + <el-form-item label="原因" prop="garReason">
  96 + <div class="text" style="color: red;">{{ form.garReason }}</div>
  97 + </el-form-item>
  98 + </el-col>
  99 + </el-row>
  100 +
  101 + <el-row :gutter="20">
  102 + <el-col :span="12">
  103 + <el-form-item label="订单姓名" prop="garOrderContactName">
  104 + <el-input :disabled="true" v-model="form.garOrderContactName" placeholder="请输入订单姓名" />
  105 + </el-form-item>
  106 + </el-col>
  107 + <el-col :span="12">
  108 + <el-form-item label="垃圾类型" prop="garOrderTrashType">
  109 + <el-input :disabled="true" v-model="form.garOrderTrashType" placeholder="请输入垃圾类型" />
  110 + </el-form-item>
  111 + </el-col>
  112 + </el-row>
  113 +
  114 + <el-row :gutter="20">
  115 + <el-col :span="12">
  116 + <el-form-item label="联系电话" prop="garOrderContactTel">
  117 + <el-input :disabled="true" v-model="form.garOrderContactTel" placeholder="请输入订单人电话" />
  118 + </el-form-item>
  119 + </el-col>
  120 + <el-col :span="12">
  121 + <el-form-item label="清运公司" prop="garOrderCompanyName">
  122 + <el-input :disabled="true" v-model="form.garOrderCompanyName" placeholder="请输入公司名称" />
  123 + </el-form-item>
  124 + </el-col>
  125 + </el-row>
  126 +
  127 + <el-row :gutter="20">
  128 + <el-col :span="12">
  129 + <el-form-item label="公司负责人电话" prop="garOrderCompanyTel">
  130 + <el-input :disabled="true" v-model="form.garOrderCompanyTel" placeholder="请输入公司负责人电话" />
  131 + </el-form-item>
  132 + </el-col>
  133 + <el-col :span="12">
  134 + <el-form-item label="预约时间" prop="garOrderAgreementTime">
  135 + <el-input :disabled="true" v-model="form.garOrderAgreementTime" placeholder="请输入约定时间" />
  136 + </el-form-item>
  137 + </el-col>
  138 + </el-row>
  139 +
  140 + <el-row :gutter="20">
  141 + <el-col :span="12">
  142 + <el-form-item label="订单创建时间" prop="garCreateTime">
  143 + <el-date-picker :disabled="true" clearable size="small" style="width: 100%" v-model="form.garCreateTime"
  144 + type="date" value-format="yyyy-MM-dd" placeholder="选择订单创建时间">
  145 + </el-date-picker>
  146 + </el-form-item>
  147 + </el-col>
  148 + </el-row>
  149 +
111 <div v-for="(carItem,index) in form.orderCarStatistics" :key="index"> 150 <div v-for="(carItem,index) in form.orderCarStatistics" :key="index">
112 - <el-form-item label="车子类型" prop="garOrderCarType" >  
113 - <el-input :disabled="true" v-model="carItem.carType" placeholder="请输入车子类型" />  
114 - </el-form-item>  
115 - <el-form-item label="车子数量" prop="garOrderCarNumber">  
116 - <el-input :disabled="true" v-model="carItem.number" placeholder="请输入车子数量" />  
117 - </el-form-item>  
118 - </div>  
119 - <el-form-item label="备注" prop="garRemark">  
120 - <el-input :disabled="true" v-model="form.garRemark" type="textarea" placeholder="请输入内容" />  
121 - </el-form-item>  
122 - <el-form-item v-if="form.currentImages" label="现场图片" prop="currentImages">  
123 - <el-image style="width: 100px; height: 100px" :src="form.currentImages[0]"  
124 - :preview-src-list="form.currentImages">  
125 - </el-image>  
126 - </el-form-item> 151 + <el-row :gutter="20">
  152 + <el-col :span="12">
  153 + <el-form-item label="车辆类型" prop="garOrderCarType">
  154 + <el-input :disabled="true" v-model="carItem.carType" placeholder="请输入车辆类型" />
  155 + </el-form-item>
  156 + </el-col>
  157 + <el-col :span="12">
  158 + <el-form-item label="车辆数量" prop="garOrderCarNumber">
  159 + <el-input :disabled="true" v-model="carItem.number" placeholder="请输入车辆数量" />
  160 + </el-form-item>
  161 + </el-col>
  162 + </el-row>
  163 + <!-- 在所有车次信息后显示汇总的未发车次数 -->
  164 + <el-row v-if="getUnsentCarCount() > 0" :gutter="20">
  165 + <el-col :span="24">
  166 + <div style="color: red; margin-left: 120px; margin-bottom: 10px;">
  167 + 还差{{ getUnsentCarCount() }}车次未发车
  168 + </div>
  169 + </el-col>
  170 + </el-row>
  171 + </div>
  172 +
  173 + <el-row :gutter="20">
  174 + <el-col :span="24">
  175 + <el-form-item label="备注" prop="garRemark">
  176 + <el-input :disabled="true" v-model="form.garRemark" type="textarea" placeholder="请输入内容" />
  177 + </el-form-item>
  178 + </el-col>
  179 + </el-row>
  180 +
  181 + <el-row :gutter="20" v-if="form.currentImages">
  182 + <el-col :span="24">
  183 + <el-form-item label="现场图片" prop="currentImages">
  184 + <el-image style="width: 100px; height: 100px" :src="form.currentImages[0]"
  185 + :preview-src-list="form.currentImages">
  186 + </el-image>
  187 + </el-form-item>
  188 + </el-col>
  189 + </el-row>
127 </el-form> 190 </el-form>
  191 +
128 <div class="handle-box" v-if="form.garOrderHandlerStatus == 3"> 192 <div class="handle-box" v-if="form.garOrderHandlerStatus == 3">
129 <div class="handle-box-title" style="display: flex; align-items: center;margin: 10px 0;"> 193 <div class="handle-box-title" style="display: flex; align-items: center;margin: 10px 0;">
130 - <div class="handle-box-title-ui"  
131 - style="height: 30px; width: 10px; background-color: #409EFF;margin-right: 15px;"></div> 194 + <div class="handle-box-title-ui" style="height: 30px; width: 10px; background-color: #409EFF;margin-right: 15px;"></div>
132 <div class="handle-box-title-text" style="color: #409EFF; font-size: 25px;">派单处理信息</div> 195 <div class="handle-box-title-text" style="color: #409EFF; font-size: 25px;">派单处理信息</div>
133 </div> 196 </div>
134 - <el-form :inline="true" :model="form"> 197 +
  198 + <el-form :model="form" label-width="120px">
135 <div v-for="(orderDriver,index) in form.orderDrivers" :key="index"> 199 <div v-for="(orderDriver,index) in form.orderDrivers" :key="index">
136 - <el-form-item label="派单负责人" prop="garOrderHandler">  
137 - <el-input v-model="orderDriver.driverName" placeholder="派单负责人" :disabled="true"/>  
138 - </el-form-item>  
139 - <el-form-item label="派单负责人电话" prop="garOrderHandlerTel">  
140 - <el-input v-model="orderDriver.driverPhone" placeholder="派单负责人电话" :disabled="true"/>  
141 - </el-form-item> 200 + <el-row :gutter="20">
  201 + <el-col :span="12">
  202 + <el-form-item label="派单负责人" prop="garOrderHandler">
  203 + <el-input v-model="orderDriver.driverName" placeholder="派单负责人" :disabled="true"/>
  204 + </el-form-item>
  205 + </el-col>
  206 + <el-col :span="12">
  207 + <el-form-item label="派单负责人电话" prop="garOrderHandlerTel">
  208 + <el-input v-model="orderDriver.driverPhone" placeholder="派单负责人电话" :disabled="true"/>
  209 + </el-form-item>
  210 + </el-col>
  211 + </el-row>
142 </div> 212 </div>
143 213
144 - <el-form-item v-if="form.putOnImages" label="现场图片" prop="putOnImages">  
145 - <el-image style="width: 100px; height: 100px" :src="form.putOnImages[0]" :preview-src-list="form.putOnImages">  
146 - </el-image>  
147 - </el-form-item>  
148 - <el-form-item v-if="form.putDownImages" label="现场图片" prop="putDownImages">  
149 - <el-image style="width: 100px; height: 100px" :src="form.putDownImages[0]"  
150 - :preview-src-list="form.putDownImages">  
151 - </el-image>  
152 - </el-form-item> 214 + <el-row :gutter="20">
  215 + <el-col :span="12" v-if="form.putOnImages">
  216 + <el-form-item label="现场图片" prop="putOnImages">
  217 + <el-image style="width: 100px; height: 100px" :src="form.putOnImages[0]" :preview-src-list="form.putOnImages">
  218 + </el-image>
  219 + </el-form-item>
  220 + </el-col>
  221 + <el-col :span="12" v-if="form.putDownImages">
  222 + <el-form-item label="现场图片" prop="putDownImages">
  223 + <el-image style="width: 100px; height: 100px" :src="form.putDownImages[0]"
  224 + :preview-src-list="form.putDownImages">
  225 + </el-image>
  226 + </el-form-item>
  227 + </el-col>
  228 + </el-row>
153 </el-form> 229 </el-form>
154 </div> 230 </div>
155 231
156 <div class="handle-box" v-if="form.garOrderHandlerStatus == 3"> 232 <div class="handle-box" v-if="form.garOrderHandlerStatus == 3">
157 <div class="handle-box-title" style="display: flex; align-items: center;margin: 10px 0;"> 233 <div class="handle-box-title" style="display: flex; align-items: center;margin: 10px 0;">
158 - <div class="handle-box-title-ui"  
159 - style="height: 30px; width: 10px; background-color: #409EFF;margin-right: 15px;"></div> 234 + <div class="handle-box-title-ui" style="height: 30px; width: 10px; background-color: #409EFF;margin-right: 15px;"></div>
160 <div class="handle-box-title-text" style="color: #409EFF; font-size: 25px;">处置场所</div> 235 <div class="handle-box-title-text" style="color: #409EFF; font-size: 25px;">处置场所</div>
161 </div> 236 </div>
162 - <el-form :inline="true" :model="form"> 237 +
  238 + <el-form :model="form" label-width="120px">
163 <div v-for="(carReport,index) in form.carReports" :key="index"> 239 <div v-for="(carReport,index) in form.carReports" :key="index">
164 - <el-form-item label=" 车 牌 " prop="garOrderHandler">  
165 - <el-input v-model="carReport.carNo" placeholder="车牌" :disabled="true"/>  
166 - </el-form-item>  
167 - <el-form-item label=" 载重(单位:t) " prop="garOrderHandlerTel">  
168 - <el-input v-model="carReport.carWeight" placeholder="载重" :disabled="true"/>  
169 - </el-form-item> 240 + <el-row :gutter="20">
  241 + <el-col :span="12">
  242 + <el-form-item label=" 车 牌 " prop="garOrderHandler">
  243 + <el-input v-model="carReport.carNo" placeholder="车牌" :disabled="true"/>
  244 + </el-form-item>
  245 + </el-col>
  246 + <el-col :span="12">
  247 + <el-form-item label=" 载重(单位:吨) " prop="garOrderHandlerTel">
  248 + <el-input v-model="carReport.carWeight" placeholder="载重" :disabled="true"/>
  249 + </el-form-item>
  250 + </el-col>
  251 + </el-row>
170 </div> 252 </div>
171 253
  254 + <!-- 在所有车次信息后显示汇总的未发车次数 -->
  255 + <el-row v-if="getUnsentCarCount() > 0" :gutter="20">
  256 + <el-col :span="24">
  257 + <div style="color: red; margin-left: 120px; margin-bottom: 10px;">
  258 + 还差{{ getUnsentCarCount() }}车次未发车
  259 + </div>
  260 + </el-col>
  261 + </el-row>
  262 +
172 <div v-for="(disposalCompanyReport,index) in form.orderDisposalCompanyReports" :key="index"> 263 <div v-for="(disposalCompanyReport,index) in form.orderDisposalCompanyReports" :key="index">
173 - <el-form-item label="处置场所" prop="garOrderHandler" :span="2">  
174 - <el-input v-model="disposalCompanyReport.disposalCompanyName" placeholder="处置场所" style="width: 446px;" :disabled="true"/>  
175 - </el-form-item> 264 + <el-row :gutter="20">
  265 + <el-col :span="24">
  266 + <el-form-item label="处置场所" prop="garOrderHandler">
  267 + <el-input v-model="disposalCompanyReport.disposalCompanyName" placeholder="处置场所" :disabled="true"/>
  268 + </el-form-item>
  269 + </el-col>
  270 + </el-row>
176 </div> 271 </div>
177 272
178 - <el-form-item v-if="form.panoramas" label="现场图片" prop="putOnImages">  
179 - <el-image style="width: 100px; height: 100px" :src="form.panoramas[0]" :preview-src-list="form.panoramas">  
180 - </el-image>  
181 - </el-form-item> 273 + <el-row :gutter="20" v-if="form.panoramas">
  274 + <el-col :span="24">
  275 + <el-form-item label="现场图片" prop="putOnImages">
  276 + <el-image style="width: 100px; height: 100px" :src="form.panoramas[0]" :preview-src-list="form.panoramas">
  277 + </el-image>
  278 + </el-form-item>
  279 + </el-col>
  280 + </el-row>
182 </el-form> 281 </el-form>
183 </div> 282 </div>
184 283
@@ -255,6 +354,24 @@ export default { @@ -255,6 +354,24 @@ export default {
255 this.getList(); 354 this.getList();
256 }, 355 },
257 methods: { 356 methods: {
  357 + /**
  358 + * 计算未发车的车次数量
  359 + */
  360 + getUnsentCarCount() {
  361 + if (!this.form.carReports || this.form.carReports.length === 0) {
  362 + return 0;
  363 + }
  364 +
  365 + let unsentCount = 0;
  366 + this.form.carReports.forEach(carReport => {
  367 + // 如果车牌号或载重为空,则认为未发车
  368 + if (!carReport.carNo || !carReport.carWeight) {
  369 + unsentCount++;
  370 + }
  371 + });
  372 +
  373 + return unsentCount;
  374 + },
258 computedCancelFlagString(val) { 375 computedCancelFlagString(val) {
259 if (val === 0) { 376 if (val === 0) {
260 return '未取消' 377 return '未取消'