|
|
@@ -10,39 +10,14 @@
|
|
|
width="1500px"
|
|
|
>
|
|
|
<div class="user-panel" v-loading="loading">
|
|
|
- <el-form
|
|
|
- ref="form"
|
|
|
- :model="formModel"
|
|
|
- :rules="ruleValidate"
|
|
|
- :label-width="'100px'"
|
|
|
- :inline="true"
|
|
|
- >
|
|
|
- <el-form-item label="工单号" prop="number">
|
|
|
- <el-input v-model="formModel.number" placeholder="请输入真实姓名" style="width: 300px"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="标题" prop="title">
|
|
|
- <el-input v-model="formModel.title" placeholder="请输入联系电话" style="width: 300px"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="地址" prop="address">
|
|
|
- <el-input v-model="formModel.address" placeholder="请输入身份证号" style="width: 300px"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="日期" prop="date">
|
|
|
- <el-input v-model="formModel.date" placeholder="请输入所在地区" style="width: 300px"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="报价" prop="price">
|
|
|
- <el-input v-model="formModel.price" placeholder="请输入报价" style="width: 300px"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="支付状态" prop="payStatus">
|
|
|
- <el-select v-model="formModel.payStatus" placeholder="请选择" style="width: 300px">
|
|
|
- <el-option
|
|
|
- v-for="item in paystatusList"
|
|
|
- :key="item.value"
|
|
|
- :label="item.name"
|
|
|
- :value="item.value">
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
+ <el-descriptions title="基本信息">
|
|
|
+ <el-descriptions-item label="工单号">{{formModel.number}}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="标题">{{formModel.title}}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="地址">{{formModel.address}}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="日期">{{formModel.date}}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="报价">{{formModel.price}}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="支付状态">{{formModel.payStatusN}}</el-descriptions-item>
|
|
|
+ </el-descriptions>
|
|
|
</div>
|
|
|
<div>
|
|
|
<el-tabs v-model="activeName" type="card">
|
|
|
@@ -52,102 +27,43 @@
|
|
|
<span>工单信息</span>
|
|
|
</div>
|
|
|
<div>
|
|
|
- <el-form
|
|
|
- ref="form"
|
|
|
- :model="formModel2"
|
|
|
- :rules="ruleValidate"
|
|
|
- :label-width="'150px'"
|
|
|
- :inline="true"
|
|
|
- >
|
|
|
- <el-form-item label="所在地" prop="address">
|
|
|
- <el-input v-model="formModel2.address" placeholder="请输入所在地" style="width: 300px"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="施工位置" prop="location">
|
|
|
- <el-select v-model="formModel2.location" placeholder="请选择" style="width: 300px">
|
|
|
- <el-option
|
|
|
- v-for="item in locationList"
|
|
|
- :key="item.value"
|
|
|
- :label="item.name"
|
|
|
- :value="item.value">
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="施工环境" prop="environment">
|
|
|
- <el-select v-model="formModel2.environment" placeholder="请选择" style="width: 300px">
|
|
|
- <el-option
|
|
|
- v-for="item in environmentList"
|
|
|
- :key="item.value"
|
|
|
- :label="item.name"
|
|
|
- :value="item.value">
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="水箱材质" prop="material">
|
|
|
- <el-select v-model="formModel2.material" placeholder="请选择" style="width: 300px">
|
|
|
- <el-option
|
|
|
- v-for="item in materialList"
|
|
|
- :key="item.value"
|
|
|
- :label="item.name"
|
|
|
- :value="item.value">
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="水箱体积" prop="volume">
|
|
|
- <el-input v-model="formModel2.volume" placeholder="请输入所在地" style="width: 300px">
|
|
|
- <template slot="append">m³</template>
|
|
|
- </el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="异型水箱补贴" prop="amount">
|
|
|
- <el-input v-model="formModel2.amount" placeholder="请输入所在地" style="width: 300px">
|
|
|
- <template slot="append">元</template>
|
|
|
- </el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="施工难度" prop="difficulty">
|
|
|
- <el-select v-model="formModel2.difficulty" placeholder="请选择" style="width: 300px">
|
|
|
- <el-option
|
|
|
- v-for="item in difficultyList"
|
|
|
- :key="item.value"
|
|
|
- :label="item.name"
|
|
|
- :value="item.value">
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="额外补助" prop="subsidyType">
|
|
|
- <el-input v-model="formModel2.subsidyType" placeholder="请输入所在地" style="width: 300px"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="补贴金额" prop="subsidyAmount">
|
|
|
- <el-input v-model="formModel2.subsidyAmount" placeholder="请输入所在地" style="width: 300px">
|
|
|
- <template slot="append">元</template>
|
|
|
- </el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="工程总预算" prop="budget">
|
|
|
- <el-input v-model="formModel2.budget" placeholder="请输入所在地" style="width: 300px">
|
|
|
- <template slot="append">元</template>
|
|
|
- </el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="工期要求" prop="period">
|
|
|
- <el-input v-model="formModel2.period" placeholder="请输入所在地" style="width: 300px">
|
|
|
- <template slot="append">月</template>
|
|
|
- </el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="通过后打款比例" prop="completionPayProp">
|
|
|
- <el-input v-model="formModel2.completionPayProp" placeholder="请输入所在地" style="width: 300px">
|
|
|
- <template slot="append">%</template>
|
|
|
- </el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="驻地条件要求" prop="requirement">
|
|
|
- <el-input v-model="formModel2.requirement" placeholder="请输入所在地" style="width: 300px"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="施工阶段要求" prop="stageRequirements">
|
|
|
- <el-input v-model="formModel2.stageRequirements" placeholder="请输入所在地" style="width: 300px"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="验收标准" prop="acceptanceCriteria">
|
|
|
- <el-input v-model="formModel2.acceptanceCriteria" placeholder="请输入所在地" style="width: 300px"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="售后要求" prop="salesRequirement">
|
|
|
- <el-input v-model="formModel2.salesRequirement" placeholder="请输入所在地" style="width: 300px"></el-input>
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
+ <el-descriptions>
|
|
|
+ <el-descriptions-item label="所在地">
|
|
|
+ <div class="box">{{formModel2.location}}</div>
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item label="施工位置">
|
|
|
+ {{formModel2.constructionLocationName}}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item label="施工环境">{{formModel2.environmentName}}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="水箱材质">{{formModel2.materialN}}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="水箱体积">{{formModel2.size}}{{formModel2.sizeUnitN}}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="施工难度">{{formModel2.difficultyName}}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="逾期入场补偿金">{{formModel2.amount}}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="工程总预算">{{formModel2.budget}}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="工期要求">{{formModel2.period}}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="通过后打款比例">{{formModel2.completionPayProp}}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="驻地条件要求">
|
|
|
+ <div class="box">
|
|
|
+ {{formModel2.requirement}}
|
|
|
+ </div>
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item label="施工阶段要求">
|
|
|
+ <div class="box">
|
|
|
+ {{formModel2.stageRequirements}}
|
|
|
+ </div>
|
|
|
+ </el-descriptions-item>
|
|
|
+
|
|
|
+ <el-descriptions-item label="验收标准">
|
|
|
+ <div class="box">
|
|
|
+ {{formModel2.acceptanceCriteria}}
|
|
|
+ </div>
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item label="售后要求">
|
|
|
+ <div class="box">
|
|
|
+ {{formModel2.salesRequirement}}
|
|
|
+ </div>
|
|
|
+ </el-descriptions-item>
|
|
|
+ </el-descriptions>
|
|
|
</div>
|
|
|
</el-card>
|
|
|
<el-card class="box-card">
|
|
|
@@ -155,47 +71,23 @@
|
|
|
<span>接单要求</span>
|
|
|
</div>
|
|
|
<div>
|
|
|
- <el-form
|
|
|
- ref="form"
|
|
|
- :model="formModel3"
|
|
|
- :rules="ruleValidate"
|
|
|
- :label-width="'250px'"
|
|
|
- :inline="true"
|
|
|
- >
|
|
|
- <el-form-item label="保证金" prop="amount">
|
|
|
- <el-input v-model="formModel3.amount" placeholder="请输入所在地" style="width: 300px">
|
|
|
- <template slot="append">元</template>
|
|
|
- </el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="师傅完成工单量" prop="completedNum">
|
|
|
- <el-input v-model="formModel3.completedNum" style="width: 300px">
|
|
|
- <template slot="append">单</template>
|
|
|
- </el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="订单发布模式" prop="orderModel">
|
|
|
- <el-select v-model="formModel3.orderModel" placeholder="请选择" style="width: 300px">
|
|
|
- <el-option
|
|
|
- v-for="item in orderModelList"
|
|
|
- :key="item.value"
|
|
|
- :label="item.name"
|
|
|
- :value="item.value">
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="是否要求师傅具有施工资质" prop="isQualification">
|
|
|
- <el-switch
|
|
|
- style="width: 300px"
|
|
|
- v-model="formModel3.isQualification">
|
|
|
- </el-switch>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="是否要求师傅上传购买保险凭证" prop="isInsuranceCertificate">
|
|
|
- <el-switch
|
|
|
- style="width: 300px"
|
|
|
- v-model="formModel3.isInsuranceCertificate">
|
|
|
- </el-switch>
|
|
|
- </el-form-item>
|
|
|
-
|
|
|
- </el-form>
|
|
|
+ <el-descriptions>
|
|
|
+ <el-descriptions-item label="保证金">{{formModel3.amount}}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="师傅完成工单量">{{formModel3.completedNum}}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="订单发布模式">{{formModel3.orderModelN}}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="是否要求师傅具有施工资质">
|
|
|
+ <template>
|
|
|
+ <span v-if="formModel3.isQualification">是</span>
|
|
|
+ <span v-else>否</span>
|
|
|
+ </template>
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item label="是否要求师傅上传购买保险凭证">
|
|
|
+ <template>
|
|
|
+ <span v-if="formModel3.isInsuranceCertificate">是</span>
|
|
|
+ <span v-else>否</span>
|
|
|
+ </template>
|
|
|
+ </el-descriptions-item>
|
|
|
+ </el-descriptions>
|
|
|
</div>
|
|
|
</el-card>
|
|
|
<el-card class="box-card">
|
|
|
@@ -203,20 +95,10 @@
|
|
|
<span>客户信息</span>
|
|
|
</div>
|
|
|
<div>
|
|
|
- <el-form
|
|
|
- ref="form"
|
|
|
- :model="formModel4"
|
|
|
- :rules="ruleValidate"
|
|
|
- :label-width="'150px'"
|
|
|
- :inline="true"
|
|
|
- >
|
|
|
- <el-form-item label="客户名称">
|
|
|
- <el-input v-model="formModel4.customerName" placeholder="请输入所在地" style="width: 300px"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="联系方式" prop="phone">
|
|
|
- <el-input v-model="formModel4.customerPhone" placeholder="请输入所在地" style="width: 300px"></el-input>
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
+ <el-descriptions>
|
|
|
+ <el-descriptions-item label="客户名称">{{formModel4.customerName}}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="联系方式">{{formModel4.customerPhone}}</el-descriptions-item>
|
|
|
+ </el-descriptions>
|
|
|
</div>
|
|
|
</el-card>
|
|
|
<el-card class="box-card">
|
|
|
@@ -224,30 +106,11 @@
|
|
|
<span>订单信息</span>
|
|
|
</div>
|
|
|
<div>
|
|
|
- <el-form
|
|
|
- ref="form"
|
|
|
- :model="formModel5"
|
|
|
- :rules="ruleValidate"
|
|
|
- :label-width="'150px'"
|
|
|
- :inline="true"
|
|
|
- >
|
|
|
- <el-form-item label="订单状态" prop="status">
|
|
|
- <el-select v-model="formModel.status" placeholder="请选择订单状态" style="width: 300px">
|
|
|
- <el-option
|
|
|
- v-for="item in orderStatusList"
|
|
|
- :key="item.value"
|
|
|
- :label="item.name"
|
|
|
- :value="item.value">
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="订单编号" prop="number">
|
|
|
- <el-input v-model="formModel.number" placeholder="请输入订单编号" style="width: 300px"></el-input>
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="发布时间" prop="createTime">
|
|
|
- <el-input v-model="formModel.createTime" placeholder="请输入发布时间" style="width: 300px"></el-input>
|
|
|
- </el-form-item>
|
|
|
- </el-form>
|
|
|
+ <el-descriptions>
|
|
|
+ <el-descriptions-item label="订单状态">{{formModel.statusN}}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="订单编号">{{formModel.number}}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="发布时间">{{formModel.createTime}}</el-descriptions-item>
|
|
|
+ </el-descriptions>
|
|
|
</div>
|
|
|
</el-card>
|
|
|
</el-tab-pane>
|
|
|
@@ -261,14 +124,14 @@
|
|
|
</el-tab-pane>
|
|
|
<el-tab-pane label="师傅信息" name="third">
|
|
|
<div style="margin:30px">
|
|
|
- <el-descriptions>
|
|
|
+ <el-descriptions v-if="technicianInfo!=null">
|
|
|
<el-descriptions-item label="姓名">{{technicianInfo.realName}}</el-descriptions-item>
|
|
|
- <el-descriptions-item label="星级">4.6分</el-descriptions-item>
|
|
|
- <el-descriptions-item label="已完成单数">50单</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="手机号码">{{technicianInfo.phone}}</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="会员等级">{{technicianInfo.level}}</el-descriptions-item>
|
|
|
<el-descriptions-item label="好评率">80%</el-descriptions-item>
|
|
|
<el-descriptions-item label="擅长类目">家具灯具厨卫健身器材</el-descriptions-item>
|
|
|
<el-descriptions-item label="师傅来源">4.6分</el-descriptions-item>
|
|
|
- <el-descriptions-item label="所在地区">50单</el-descriptions-item>
|
|
|
+ <el-descriptions-item label="所在地区">{{technicianInfo.region}}</el-descriptions-item>
|
|
|
<el-descriptions-item label="公司性质">80%</el-descriptions-item>
|
|
|
<el-descriptions-item label="公司地址">家具灯具厨卫健身器材</el-descriptions-item>
|
|
|
<el-descriptions-item label="联系电话">4.6分</el-descriptions-item>
|
|
|
@@ -278,7 +141,7 @@
|
|
|
</el-tab-pane>
|
|
|
<el-tab-pane label="施工进度" name="fourth">
|
|
|
<div style="margin:50px">
|
|
|
- <el-timeline>
|
|
|
+ <el-timeline >
|
|
|
<el-timeline-item :timestamp="item.submitDate" placement="top" v-for="(item,index) in constructionProgressList" :key="index">
|
|
|
<h4>{{item.submitByN}} {{item.title}}</h4>
|
|
|
<div>
|
|
|
@@ -456,6 +319,7 @@
|
|
|
});
|
|
|
},
|
|
|
methods: {
|
|
|
+
|
|
|
closeDialog() {
|
|
|
this.$emit("close", false);
|
|
|
},
|
|
|
@@ -521,6 +385,7 @@
|
|
|
}
|
|
|
})()
|
|
|
.then((response) => {
|
|
|
+ self.showModal = true;
|
|
|
var jsonData = response.data;
|
|
|
|
|
|
if (jsonData.result) {
|
|
|
@@ -539,7 +404,7 @@
|
|
|
self.fileUrl = image
|
|
|
}
|
|
|
|
|
|
- self.showModal = true;
|
|
|
+
|
|
|
} else {
|
|
|
self.$message.error(jsonData.message + "");
|
|
|
}
|
|
|
@@ -590,5 +455,22 @@
|
|
|
height: 100px;
|
|
|
margin:10px
|
|
|
}
|
|
|
+ .box {
|
|
|
+ width: 300px;
|
|
|
+ white-space: nowrap;
|
|
|
+ overflow: hidden;
|
|
|
+ text-overflow: ellipsis;
|
|
|
+ }
|
|
|
+ .box:hover {
|
|
|
+ position: absolute;
|
|
|
+ z-index: 1000;
|
|
|
+ overflow: visible;
|
|
|
+ white-space: normal;
|
|
|
+ background-color: white;
|
|
|
+ border: 1px solid #ccc;
|
|
|
+ padding: 5px;
|
|
|
+ max-width: none; /* 允许宽度自适应 */
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
</style>
|