Merge branch 'master' of gitee.com:darlk/ShengTangManage into develop

This commit is contained in:
huangdeliang 2021-07-31 15:30:58 +08:00
commit 84e5ef340d
14 changed files with 571 additions and 335 deletions

BIN
running/pdf/contract_14.pdf Normal file

Binary file not shown.

View File

@ -101,6 +101,8 @@ public class SysOrderServiceImpl implements ISysOrderService {
sysOrder.setMainOrderId(0L); sysOrder.setMainOrderId(0L);
sysOrder.setAfterSaleCommissOrder(0); sysOrder.setAfterSaleCommissOrder(0);
sysOrder.setOnSaleId(null); sysOrder.setOnSaleId(null);
sysOrder.setPushPreSaleId(null);
sysOrder.setBusinessAffairId(null);
//二开单 //二开单
if("1".equals(sysOrder.getOrderCountType())){ if("1".equals(sysOrder.getOrderCountType())){
row = sysOrderMapper.insertSysOrder(sysOrder); row = sysOrderMapper.insertSysOrder(sysOrder);
@ -116,6 +118,8 @@ public class SysOrderServiceImpl implements ISysOrderService {
else if("1".equals(sysOrder.getOrderType())){ else if("1".equals(sysOrder.getOrderType())){
sysOrder.setAfterSaleCommissOrder(0); sysOrder.setAfterSaleCommissOrder(0);
sysOrder.setOnSaleId(null); sysOrder.setOnSaleId(null);
sysOrder.setBusinessAffairId(null);
sysOrder.setPushPreSaleId(null);
String rate = sysOrder.getNutritionistRate(); String rate = sysOrder.getNutritionistRate();
if(StringUtils.isEmpty(rate) || rate.indexOf(",") == -1 || "0,10".equals(rate) || sysOrder.getNutritionistIdList().length != 2){ if(StringUtils.isEmpty(rate) || rate.indexOf(",") == -1 || "0,10".equals(rate) || sysOrder.getNutritionistIdList().length != 2){
return 0; return 0;
@ -151,7 +155,9 @@ public class SysOrderServiceImpl implements ISysOrderService {
else if("2".equals(sysOrder.getOrderType())){ else if("2".equals(sysOrder.getOrderType())){
sysOrder.setMainOrderId(0L); sysOrder.setMainOrderId(0L);
sysOrder.setAfterSaleCommissOrder(0); sysOrder.setAfterSaleCommissOrder(0);
sysOrder.setPushPreSaleId(null);
sysOrder.setAfterSaleId(null); sysOrder.setAfterSaleId(null);
sysOrder.setBusinessAffairId(null);
sysOrder.setNutritionistId(null); sysOrder.setNutritionistId(null);
sysOrder.setNutriAssisId(null); sysOrder.setNutriAssisId(null);
row = sysOrderMapper.insertSysOrder(sysOrder); row = sysOrderMapper.insertSysOrder(sysOrder);
@ -159,6 +165,7 @@ public class SysOrderServiceImpl implements ISysOrderService {
//售中单 //售中单
else if("3".equals(sysOrder.getOrderType())){ else if("3".equals(sysOrder.getOrderType())){
sysOrder.setPreSaleId(null); sysOrder.setPreSaleId(null);
sysOrder.setBusinessAffairId(null);
//一开二开 //一开二开
if("0".equals(sysOrder.getOrderCountType()) || "1".equals(sysOrder.getOrderCountType())){ if("0".equals(sysOrder.getOrderCountType()) || "1".equals(sysOrder.getOrderCountType())){
sysOrder.setNutritionistId((sysOrder.getNutritionistIdList() != null && sysOrder.getNutritionistIdList().length > 0) ? sysOrder.getNutritionistIdList()[0] : null); sysOrder.setNutritionistId((sysOrder.getNutritionistIdList() != null && sysOrder.getNutritionistIdList().length > 0) ? sysOrder.getNutritionistIdList()[0] : null);
@ -227,6 +234,29 @@ public class SysOrderServiceImpl implements ISysOrderService {
sysOrder.setOperatorId(null); sysOrder.setOperatorId(null);
sysOrder.setOperatorAssisId(null); sysOrder.setOperatorAssisId(null);
row = sysOrderMapper.insertSysOrder(sysOrder); row = sysOrderMapper.insertSysOrder(sysOrder);
//二开单
if(row > 0 && "1".equals(sysOrder.getOrderCountType()) && sysOrder.getSecondAfterSaleFlag() != null && sysOrder.getSecondAfterSaleFlag().intValue() == 1){
//需要自动创建售后二开提成单
row = autoCreateSecondAfterSaleOrder(sysOrder);
}
}
//基因订单
else if("5".equals(sysOrder.getOrderType())){
sysOrder.setServeTimeId(null);
sysOrder.setGiveServeDay(0);
sysOrder.setOnSaleId(null);
sysOrder.setPushPreSaleId(null);
sysOrder.setBusinessAffairId(null);
sysOrder.setAfterSaleId(null);
sysOrder.setNutritionistId(null);
sysOrder.setNutriAssisId(null);
sysOrder.setPlannerId(null);
sysOrder.setPlannerAssisId(null);
sysOrder.setOperatorId(null);
sysOrder.setOperatorAssisId(null);
sysOrder.setStartTime(sysOrder.getOrderTime());
sysOrder.setServerEndTime(sysOrder.getOrderTime());
row = sysOrderMapper.insertSysOrder(sysOrder);
} }
return row; return row;
} }
@ -251,6 +281,7 @@ public class SysOrderServiceImpl implements ISysOrderService {
sysOrder.setMainOrderId(0L); sysOrder.setMainOrderId(0L);
sysOrder.setAfterSaleCommissOrder(1); sysOrder.setAfterSaleCommissOrder(1);
sysOrder.setOrderId(sysOrder.getOrderId()+1); sysOrder.setOrderId(sysOrder.getOrderId()+1);
sysOrder.setBusinessAffairId(null);
return sysOrderMapper.insertSysOrder(sysOrder); return sysOrderMapper.insertSysOrder(sysOrder);
} }
return 0; return 0;
@ -273,6 +304,7 @@ public class SysOrderServiceImpl implements ISysOrderService {
sysOrder.setAfterSaleId(null); sysOrder.setAfterSaleId(null);
sysOrder.setNutritionistId(null); sysOrder.setNutritionistId(null);
sysOrder.setNutriAssisId(null); sysOrder.setNutriAssisId(null);
sysOrder.setBusinessAffairId(null);
} }
//提成单 //提成单
if(sysOrder.getAfterSaleCommissOrder().intValue() == 1){ if(sysOrder.getAfterSaleCommissOrder().intValue() == 1){
@ -283,11 +315,17 @@ public class SysOrderServiceImpl implements ISysOrderService {
sysOrder.setPlannerAssisId(null); sysOrder.setPlannerAssisId(null);
sysOrder.setOperatorId(null); sysOrder.setOperatorId(null);
sysOrder.setOperatorAssisId(null); sysOrder.setOperatorAssisId(null);
sysOrder.setBusinessAffairId(null);
sysOrder.setOnSaleId(null);
sysOrder.setPushPreSaleId(null);
} }
if("3".equals(sysOrder.getOrderType())){ if("3".equals(sysOrder.getOrderType())){
sysOrder.setPreSaleId(null); sysOrder.setPreSaleId(null);
sysOrder.setBusinessAffairId(null);
} }
if("4".equals(sysOrder.getOrderType())){ if("4".equals(sysOrder.getOrderType())){
sysOrder.setMainOrderId(0L);
sysOrder.setAfterSaleCommissOrder(0);
sysOrder.setPreSaleId(null); sysOrder.setPreSaleId(null);
sysOrder.setOnSaleId(null); sysOrder.setOnSaleId(null);
sysOrder.setPushPreSaleId(null); sysOrder.setPushPreSaleId(null);
@ -296,6 +334,22 @@ public class SysOrderServiceImpl implements ISysOrderService {
sysOrder.setOperatorId(null); sysOrder.setOperatorId(null);
sysOrder.setOperatorAssisId(null); sysOrder.setOperatorAssisId(null);
} }
if("5".equals(sysOrder.getOrderType())){
sysOrder.setServeTimeId(null);
sysOrder.setGiveServeDay(0);
sysOrder.setOnSaleId(null);
sysOrder.setPushPreSaleId(null);
sysOrder.setBusinessAffairId(null);
sysOrder.setAfterSaleId(null);
sysOrder.setNutritionistId(null);
sysOrder.setNutriAssisId(null);
sysOrder.setPlannerId(null);
sysOrder.setPlannerAssisId(null);
sysOrder.setOperatorId(null);
sysOrder.setOperatorAssisId(null);
sysOrder.setStartTime(sysOrder.getOrderTime());
sysOrder.setServerEndTime(sysOrder.getOrderTime());
}
if(oldSysOrder.getStartTime() == null){//确保提成计算时间不为空 if(oldSysOrder.getStartTime() == null){//确保提成计算时间不为空
sysOrder.setCommissStartTime(sysOrder.getOrderTime()); sysOrder.setCommissStartTime(sysOrder.getOrderTime());
} }
@ -407,7 +461,7 @@ public class SysOrderServiceImpl implements ISysOrderService {
LocalDate newStartTime = null; LocalDate newStartTime = null;
//判断是否提成单拆分单中的副单体验单,定金单 //判断是否提成单拆分单中的副单体验单,定金单
if(sysOrder.getStartTime() == null || sysOrder.getAfterSaleCommissOrder().intValue() == 1 || sysOrder.getMainOrderId().intValue() != 0 || if(sysOrder.getStartTime() == null || sysOrder.getAfterSaleCommissOrder().intValue() == 1 || sysOrder.getMainOrderId().intValue() != 0 ||
"2".equals(sysOrder.getOrderType()) || !isNeedByOrderMoneyType(sysOrder)){ "2".equals(sysOrder.getOrderType()) || !isNeedByOrderMoneyType(sysOrder) || "5".equals(sysOrder.getOrderType())){
//设置服务到期时间 //设置服务到期时间
setOrderServerEndDate(sysOrder); setOrderServerEndDate(sysOrder);
sysOrder.setUpdateTime(new Date()); sysOrder.setUpdateTime(new Date());

View File

@ -176,7 +176,7 @@ public class SysRecipesPlanServiceImpl implements ISysRecipesPlanService {
//判断是否提成单拆分单中的副单体验单,定金单 //判断是否提成单拆分单中的副单体验单,定金单
if (sysOrder.getAfterSaleCommissOrder().intValue() == 1 || sysOrder.getMainOrderId().intValue() != 0 || if (sysOrder.getAfterSaleCommissOrder().intValue() == 1 || sysOrder.getMainOrderId().intValue() != 0 ||
// "2".equals(sysOrder.getOrderType()) || // 体验单也需要生成计划 2021.05.29 // "2".equals(sysOrder.getOrderType()) || // 体验单也需要生成计划 2021.05.29
!isNeedByOrderMoneyType(sysOrder) || sysOrder.getCounted() == 1) { !isNeedByOrderMoneyType(sysOrder) || sysOrder.getCounted() == 1 || "5".equals(sysOrder.getOrderType())) {
System.out.println("---------------------" + sysOrder.getOrderId() + "不生成食谱------------------------"); System.out.println("---------------------" + sysOrder.getOrderId() + "不生成食谱------------------------");
continue; continue;
} }

View File

@ -4,7 +4,7 @@ import com.stdiet.custom.domain.SysOrder;
public class OrderUtils { public class OrderUtils {
private static final String[] orderTypeArray = {"普通单","比例拆分单","体验单","售中单","商务单"}; private static final String[] orderTypeArray = {"普通单","比例拆分单","体验单","售中单","商务单","基因单"};
private static final String[] orderCountTypeArray = {"一开单","二开单","一开单(拆分)","二开单(拆分)"}; private static final String[] orderCountTypeArray = {"一开单","二开单","一开单(拆分)","二开单(拆分)"};

View File

@ -27,7 +27,7 @@
<el-form-item <el-form-item
label="服务承诺" label="服务承诺"
prop="servePromise" prop="servePromise"
v-show="form.projectId == 0" v-show="form.projectId == 0 || form.projectId == 14"
> >
<el-input <el-input
style="width: 200px" style="width: 200px"
@ -193,7 +193,7 @@ export default {
this.nutritionistIdOptions, this.nutritionistIdOptions,
this.form.nutritionistId this.form.nutritionistId
); );
if (this.form.projectId != 0) { if (this.form.projectId != 0 && this.form.projectId != 14) {
this.form.servePromise = null; this.form.servePromise = null;
} }
addContract(this.form).then((response) => { addContract(this.form).then((response) => {

View File

@ -9,7 +9,7 @@
> >
<el-row :gutter="15"> <el-row :gutter="15">
<el-form ref="form" :model="form" :rules="rules" label-width="100px"> <el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-col :span="12"> <el-col :span="12" v-show="orderModuleshow.orderTypeShow">
<el-form-item label="订单类型" prop="orderTypeList"> <el-form-item label="订单类型" prop="orderTypeList">
<el-cascader <el-cascader
v-model="form.orderTypeList" v-model="form.orderTypeList"
@ -19,7 +19,7 @@
</el-cascader> </el-cascader>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="secondAfterSaleFlagShow"> <el-col :span="8" v-show="orderModuleshow.secondAfterSaleFlagShow">
<el-form-item <el-form-item
label="自动创建售后提成订单" label="自动创建售后提成订单"
prop="secondAfterSaleFlag" prop="secondAfterSaleFlag"
@ -35,12 +35,12 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8" v-show="orderModuleshow.amountShow">
<el-form-item label="成交金额" prop="amount"> <el-form-item label="成交金额" prop="amount" >
<el-input v-model.trim="form.amount" placeholder="请输入金额" /> <el-input v-model.trim="form.amount" placeholder="请输入金额" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8" v-show="orderModuleshow.payTypeShow">
<el-form-item label="收款方式" prop="payTypeId"> <el-form-item label="收款方式" prop="payTypeId">
<el-select v-model="form.payTypeId" placeholder="请选择"> <el-select v-model="form.payTypeId" placeholder="请选择">
<el-option <el-option
@ -52,7 +52,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8" v-show="orderModuleshow.accountShow">
<el-form-item label="进粉渠道" prop="accountId"> <el-form-item label="进粉渠道" prop="accountId">
<el-select <el-select
v-model="form.accountId" v-model="form.accountId"
@ -70,7 +70,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8" v-show="orderModuleshow.serveTimeShow">
<el-form-item label="服务时长" prop="serveTime"> <el-form-item label="服务时长" prop="serveTime">
<el-select v-model="form.serveTimeId" placeholder="请选服"> <el-select v-model="form.serveTimeId" placeholder="请选服">
<el-option <el-option
@ -82,8 +82,8 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8" v-show="orderModuleshow.giveServeDayShow">
<el-form-item label="赠送时长" prop="serveTime"> <el-form-item label="赠送时长" prop="giveServeDay">
<el-select v-model="form.giveServeDay" placeholder="请选择"> <el-select v-model="form.giveServeDay" placeholder="请选择">
<el-option <el-option
v-for="dict in giveTimeIdOption" v-for="dict in giveTimeIdOption"
@ -94,7 +94,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8" v-show="orderModuleshow.conditioningProjectShow">
<el-form-item label="调理项目" prop="conditioningProjectId"> <el-form-item label="调理项目" prop="conditioningProjectId">
<el-select <el-select
v-model="form.conditioningProjectId" v-model="form.conditioningProjectId"
@ -111,7 +111,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="preSaleShow && !businessAffairShow"> <el-col :span="8" v-show="orderModuleshow.preSaleShow">
<el-form-item label="售前" prop="preSaleId" > <el-form-item label="售前" prop="preSaleId" >
<el-select v-model="form.preSaleId" placeholder="请选择" filterable <el-select v-model="form.preSaleId" placeholder="请选择" filterable
clearable> clearable>
@ -124,7 +124,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="businessAffairShow"> <el-col :span="8" v-show="orderModuleshow.businessAffairShow">
<el-form-item label="商务" prop="businessAffairId" > <el-form-item label="商务" prop="businessAffairId" >
<el-select v-model="form.businessAffairId" placeholder="请选择" filterable clearable> <el-select v-model="form.businessAffairId" placeholder="请选择" filterable clearable>
<el-option <el-option
@ -136,7 +136,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="pushPreSaleShow"> <el-col :span="8" v-show="orderModuleshow.pushPreSaleShow">
<el-form-item label="售前推送" prop="preSaleId" title="售前推送人就是该客户体验单的销售,只有售中一开单需要选择"> <el-form-item label="售前推送" prop="preSaleId" title="售前推送人就是该客户体验单的销售,只有售中一开单需要选择">
<el-select v-model="form.pushPreSaleId" placeholder="请选择" filterable <el-select v-model="form.pushPreSaleId" placeholder="请选择" filterable
clearable> clearable>
@ -149,7 +149,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="onSaleShow"> <el-col :span="8" v-show="orderModuleshow.onSaleShow">
<el-form-item label="售中" prop="onSaleId"> <el-form-item label="售中" prop="onSaleId">
<el-select v-model="form.onSaleId" placeholder="请选择"> <el-select v-model="form.onSaleId" placeholder="请选择">
<el-option <el-option
@ -161,7 +161,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="afterNutiShow"> <el-col :span="8" v-show="orderModuleshow.afterSaleShow">
<el-form-item label="售后" prop="afterSaleId"> <el-form-item label="售后" prop="afterSaleId">
<el-select v-model="form.afterSaleId" placeholder="请选择" filterable <el-select v-model="form.afterSaleId" placeholder="请选择" filterable
clearable> clearable>
@ -174,7 +174,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="afterNutiShow"> <el-col :span="8" v-show="orderModuleshow.nutritionistShow">
<el-form-item label="主营养师" prop="nutritionistIdList"> <el-form-item label="主营养师" prop="nutritionistIdList">
<el-select <el-select
v-model="form.nutritionistIdList" v-model="form.nutritionistIdList"
@ -191,7 +191,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="orderRateOptionsShow"> <el-col :span="8" v-show="orderModuleshow.nutritionistRateShow">
<el-form-item label="拆分比例" prop="nutritionistRate"> <el-form-item label="拆分比例" prop="nutritionistRate">
<el-select v-model="form.nutritionistRate" placeholder="请选择"> <el-select v-model="form.nutritionistRate" placeholder="请选择">
<el-option <el-option
@ -203,7 +203,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="afterNutiShow"> <el-col :span="8" v-show="orderModuleshow.nutriAssisShow">
<el-form-item label="助理营养师" prop="nutriAssisId"> <el-form-item label="助理营养师" prop="nutriAssisId">
<el-select v-model="form.nutriAssisId" placeholder="请选择" filterable <el-select v-model="form.nutriAssisId" placeholder="请选择" filterable
clearable> clearable>
@ -216,7 +216,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="!businessAffairShow"> <el-col :span="8" v-show="orderModuleshow.plannerShow">
<el-form-item label="策划" prop="plannerId"> <el-form-item label="策划" prop="plannerId">
<el-select v-model="form.plannerId" placeholder="请选择" filterable <el-select v-model="form.plannerId" placeholder="请选择" filterable
clearable> clearable>
@ -229,7 +229,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="!businessAffairShow"> <el-col :span="8" v-show="orderModuleshow.plannerAssisShow">
<el-form-item label="策划助理" prop="plannerAssisId"> <el-form-item label="策划助理" prop="plannerAssisId">
<el-select v-model="form.plannerAssisId" placeholder="请选择" filterable <el-select v-model="form.plannerAssisId" placeholder="请选择" filterable
clearable> clearable>
@ -242,7 +242,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="!businessAffairShow"> <el-col :span="8" v-show="orderModuleshow.operatorShow">
<el-form-item label="运营" prop="operatorId"> <el-form-item label="运营" prop="operatorId">
<el-select v-model="form.operatorId" placeholder="请选择" filterable <el-select v-model="form.operatorId" placeholder="请选择" filterable
clearable> clearable>
@ -255,7 +255,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="!businessAffairShow"> <el-col :span="8" v-show="orderModuleshow.operatorAssisShow">
<el-form-item label="运营助理" prop="operatorAssisId"> <el-form-item label="运营助理" prop="operatorAssisId">
<el-select v-model="form.operatorAssisId" placeholder="请选择" filterable <el-select v-model="form.operatorAssisId" placeholder="请选择" filterable
clearable> clearable>
@ -273,7 +273,7 @@
<el-input v-model="form.recommender" placeholder="请输入推荐人" /> <el-input v-model="form.recommender" placeholder="请输入推荐人" />
</el-form-item> </el-form-item>
</el-col>--> </el-col>-->
<el-col :span="10"> <el-col :span="10" v-show="orderModuleshow.orderTimeShow">
<el-form-item label="成交时间" prop="orderTime"> <el-form-item label="成交时间" prop="orderTime">
<el-date-picker <el-date-picker
style="width: 182.5px" style="width: 182.5px"
@ -295,7 +295,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col>--> </el-col>-->
<el-col :span="10"> <el-col :span="10" v-show="orderModuleshow.startTimeShow">
<el-form-item label="服务开始时间" prop="startTime" label-width="180"> <el-form-item label="服务开始时间" prop="startTime" label-width="180">
<el-date-picker <el-date-picker
style="width: 182.5px" style="width: 182.5px"
@ -310,7 +310,7 @@
</el-col> </el-col>
<!-- 添加时默认未审核不能改 --> <!-- 添加时默认未审核不能改 -->
<el-col :span="10" v-hasPermi="['custom:order:review']" v-show="false"> <el-col :span="10" v-hasPermi="['custom:order:review']" v-show="false && orderModuleshow.reviewStatusShow">
<el-form-item label="审核状态" prop="reviewStatus"> <el-form-item label="审核状态" prop="reviewStatus">
<el-select v-model="form.reviewStatus" placeholder="请选择审核状态"> <el-select v-model="form.reviewStatus" placeholder="请选择审核状态">
<el-option <el-option
@ -322,7 +322,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col> <el-col v-show="orderModuleshow.remarkShow">
<el-form-item label="备注" prop="remark"> <el-form-item label="备注" prop="remark">
<el-input <el-input
v-model="form.remark" v-model="form.remark"
@ -483,19 +483,11 @@ export default {
secondAfterSaleFlagShow: false, secondAfterSaleFlagShow: false,
// //
orderRateOptions: orderTypeData["orderRateArray"], orderRateOptions: orderTypeData["orderRateArray"],
//
orderRateOptionsShow: false,
// //
preSaleShow: true, orderModuleshow: Object.assign({}, orderTypeData.orderModuleshow)
// }
onSaleShow: false,
//()
pushPreSaleShow: false,
//
afterNutiShow: true,
//
businessAffairShow: false
};
}, },
created() { created() {
this.getDicts("cus_pay_type").then((response) => { this.getDicts("cus_pay_type").then((response) => {
@ -850,61 +842,10 @@ export default {
// this.initPlanningAndOperation(); // this.initPlanningAndOperation();
// }, // },
"form.orderTypeList": function (newVal, oldVal) { "form.orderTypeList": function (newVal, oldVal) {
// let resultArray = orderTypeData.dealOrderModuleshowByOrderType(newVal, this.orderModuleshow, this.form);
if ((newVal[1] == 1 || newVal[1] == 3) && newVal[0] != 4) { this.orderModuleshow = resultArray[0];
this.form.secondAfterSaleFlag = 1; this.form = resultArray[1];
this.secondAfterSaleFlagShow = true;
} else {
this.form.secondAfterSaleFlag = 0;
this.secondAfterSaleFlagShow = false;
}
//
if (newVal[0] == 1 || newVal[1] == 2 || newVal[1] == 3) {
this.orderRateOptionsShow = true;
this.form.nutritionistRate = "2,8";
} else {
this.orderRateOptionsShow = false;
this.form.nutritionistRate = "0,10";
}
//
if (newVal[0] == 2) {
this.form.serveTimeId = 7;
this.form.conditioningProjectId = 12;
this.onSaleShow = true;
this.afterNutiShow = false;
} else {
this.form.onSaleId = null;
this.form.serveTimeId = 90;
this.form.conditioningProjectId = 0;
this.onSaleShow = false;
this.afterNutiShow = true;
}
//
if(newVal[0] == 3){
//,
this.form.preSaleId = null;
this.onSaleShow = true;
this.preSaleShow = false;
//
if(newVal[1] == 0 || newVal[1] == 2){
this.form.pushPreSaleId = (this.data && this.data.preSaleId != null) ? this.data.preSaleId : null;
this.pushPreSaleShow = true;
}else{
this.pushPreSaleShow = false;
this.form.pushPreSaleId = null;
}
}else{
this.form.pushPreSaleId = null;
this.pushPreSaleShow = false;
this.preSaleShow = true;
//
if (newVal[0] != 2) {
this.form.onSaleId = null;
this.onSaleShow = false;
}
}
//
this.businessAffairShow = newVal[0] == 4;
}, },
}, },
}; };

View File

@ -113,7 +113,7 @@ export default {
response.data.weight = response.data.weight != null ? response.data.weight + "斤" : ""; response.data.weight = response.data.weight != null ? response.data.weight + "斤" : "";
response.data.giveServeDay = response.data.giveServeDay != null ? response.data.giveServeDay + "天" : ""; response.data.giveServeDay = response.data.giveServeDay != null ? response.data.giveServeDay + "天" : "";
if(response.data.orderType == 4){ if(response.data.orderType == 4){
response.data.preSale = response.data.businessAffair; response.data.preSale = response.data.preSale != null ? response.data.preSale : response.data.businessAffair;
} }
for (let i = 0; i < this.orderTitleData.length; i++) { for (let i = 0; i < this.orderTitleData.length; i++) {
this.orderDetailList.push({ this.orderDetailList.push({

View File

@ -110,6 +110,7 @@
>删除</el-button >删除</el-button
> >
<el-button <el-button
v-show="scope.row.type === 'main' && scope.row.orderType != 2 && scope.row.orderType != 5"
size="mini" size="mini"
type="text" type="text"
icon="el-icon-edit" icon="el-icon-edit"

View File

@ -9,7 +9,7 @@
> >
<el-row :gutter="15"> <el-row :gutter="15">
<el-form ref="form" :model="form" :rules="rules" label-width="90px"> <el-form ref="form" :model="form" :rules="rules" label-width="90px">
<el-col :span="16"> <el-col :span="16" v-show="orderModuleshow.orderTypeShow">
<el-form-item label="订单类型" prop="orderTypeName"> <el-form-item label="订单类型" prop="orderTypeName">
<el-input <el-input
v-model="form.orderTypeName" v-model="form.orderTypeName"
@ -18,12 +18,12 @@
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8" v-show="orderModuleshow.amountShow">
<el-form-item label="成交金额" prop="amount"> <el-form-item label="成交金额" prop="amount">
<el-input v-model.trim="form.amount" placeholder="请输入金额" /> <el-input v-model.trim="form.amount" placeholder="请输入金额" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8" v-show="orderModuleshow.payTypeShow">
<el-form-item label="收款方式" prop="payTypeId"> <el-form-item label="收款方式" prop="payTypeId">
<el-select v-model="form.payTypeId" placeholder="请选择"> <el-select v-model="form.payTypeId" placeholder="请选择">
<el-option <el-option
@ -35,7 +35,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8" v-show="orderModuleshow.accountShow">
<el-form-item label="进粉渠道" prop="accountId"> <el-form-item label="进粉渠道" prop="accountId">
<el-select <el-select
v-model="form.accountId" v-model="form.accountId"
@ -51,7 +51,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8" v-show="orderModuleshow.serveTimeShow">
<el-form-item label="服务时长" prop="serveTime"> <el-form-item label="服务时长" prop="serveTime">
<el-select v-model="form.serveTimeId" placeholder="请选服"> <el-select v-model="form.serveTimeId" placeholder="请选服">
<el-option <el-option
@ -63,8 +63,8 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8" v-show="orderModuleshow.giveServeDayShow">
<el-form-item label="赠送时长" prop="serveTime"> <el-form-item label="赠送时长" prop="giveServeDay">
<el-select v-model="form.giveServeDay" placeholder="请选择"> <el-select v-model="form.giveServeDay" placeholder="请选择">
<el-option <el-option
v-for="dict in giveTimeIdOption" v-for="dict in giveTimeIdOption"
@ -75,7 +75,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8" v-show="orderModuleshow.conditioningProjectShow">
<el-form-item label="调理项目" prop="conditioningProjectId"> <el-form-item label="调理项目" prop="conditioningProjectId">
<el-select <el-select
v-model="form.conditioningProjectId" v-model="form.conditioningProjectId"
@ -90,7 +90,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="preSaleShow && !businessAffairShow"> <el-col :span="8" v-show="orderModuleshow.preSaleShow">
<el-form-item label="售前" prop="preSaleId"> <el-form-item label="售前" prop="preSaleId">
<el-select v-model="form.preSaleId" placeholder="请选择"> <el-select v-model="form.preSaleId" placeholder="请选择">
<el-option <el-option
@ -102,7 +102,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="businessAffairShow"> <el-col :span="8" v-show="orderModuleshow.businessAffairShow">
<el-form-item label="商务" prop="businessAffairId" > <el-form-item label="商务" prop="businessAffairId" >
<el-select v-model="form.businessAffairId" placeholder="请选择" filterable clearable> <el-select v-model="form.businessAffairId" placeholder="请选择" filterable clearable>
<el-option <el-option
@ -114,7 +114,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="pushPreSaleShow"> <el-col :span="8" v-show="orderModuleshow.pushPreSaleShow">
<el-form-item label="售前推送" prop="preSaleId"> <el-form-item label="售前推送" prop="preSaleId">
<el-select v-model="form.pushPreSaleId" placeholder="请选择"> <el-select v-model="form.pushPreSaleId" placeholder="请选择">
<el-option <el-option
@ -126,7 +126,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="onSaleShow"> <el-col :span="8" v-show="orderModuleshow.onSaleShow">
<el-form-item label="售中" prop="onSaleId"> <el-form-item label="售中" prop="onSaleId">
<el-select v-model="form.onSaleId" placeholder="请选择"> <el-select v-model="form.onSaleId" placeholder="请选择">
<el-option <el-option
@ -138,7 +138,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="afterSaleNutriAssShow"> <el-col :span="8" v-show="orderModuleshow.afterSaleShow">
<el-form-item label="售后" prop="afterSaleId"> <el-form-item label="售后" prop="afterSaleId">
<el-select v-model="form.afterSaleId" placeholder="请选择"> <el-select v-model="form.afterSaleId" placeholder="请选择">
<el-option <el-option
@ -150,7 +150,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="afterSaleNutriAssShow"> <el-col :span="8" v-show="orderModuleshow.nutritionistShow">
<el-form-item label="主营养师" prop="nutritionistId"> <el-form-item label="主营养师" prop="nutritionistId">
<el-select v-model="form.nutritionistId" placeholder="请选择"> <el-select v-model="form.nutritionistId" placeholder="请选择">
<el-option <el-option
@ -162,7 +162,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="afterSaleNutriAssShow"> <el-col :span="8" v-show="orderModuleshow.nutriAssisShow">
<el-form-item label="助理营养师" prop="nutriAssisId"> <el-form-item label="助理营养师" prop="nutriAssisId">
<el-select v-model="form.nutriAssisId" placeholder="请选择"> <el-select v-model="form.nutriAssisId" placeholder="请选择">
<el-option <el-option
@ -174,7 +174,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="planOperatorShow && !businessAffairShow"> <el-col :span="8" v-show="orderModuleshow.plannerShow">
<el-form-item label="策划" prop="plannerId"> <el-form-item label="策划" prop="plannerId">
<el-select v-model="form.plannerId" placeholder="请选择"> <el-select v-model="form.plannerId" placeholder="请选择">
<el-option <el-option
@ -186,7 +186,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="planOperatorShow && !businessAffairShow"> <el-col :span="8" v-show="orderModuleshow.plannerAssisShow">
<el-form-item label="策划助理" prop="plannerAssisId"> <el-form-item label="策划助理" prop="plannerAssisId">
<el-select v-model="form.plannerAssisId" placeholder="请选择"> <el-select v-model="form.plannerAssisId" placeholder="请选择">
<el-option <el-option
@ -198,7 +198,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="planOperatorShow && !businessAffairShow"> <el-col :span="8" v-show="orderModuleshow.operatorShow">
<el-form-item label="运营" prop="operatorId"> <el-form-item label="运营" prop="operatorId">
<el-select v-model="form.operatorId" placeholder="请选择"> <el-select v-model="form.operatorId" placeholder="请选择">
<el-option <el-option
@ -210,7 +210,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8" v-show="planOperatorShow && !businessAffairShow"> <el-col :span="8" v-show="orderModuleshow.operatorAssisShow">
<el-form-item label="运营助理" prop="operatorAssisId"> <el-form-item label="运营助理" prop="operatorAssisId">
<el-select v-model="form.operatorAssisId" placeholder="请选择"> <el-select v-model="form.operatorAssisId" placeholder="请选择">
<el-option <el-option
@ -227,7 +227,7 @@
<el-input v-model="form.recommender" placeholder="请输入推荐人" /> <el-input v-model="form.recommender" placeholder="请输入推荐人" />
</el-form-item> </el-form-item>
</el-col>--> </el-col>-->
<el-col :span="10"> <el-col :span="10" v-show="orderModuleshow.orderTimeShow">
<el-form-item label="成交时间" prop="orderTime"> <el-form-item label="成交时间" prop="orderTime">
<el-date-picker <el-date-picker
style="width: 182.5px" style="width: 182.5px"
@ -241,7 +241,7 @@
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12" v-show="orderModuleshow.startTimeShow">
<el-form-item label="服务开始时间" prop="startTime" label-width="160"> <el-form-item label="服务开始时间" prop="startTime" label-width="160">
<el-date-picker <el-date-picker
style="width: 182.5px" style="width: 182.5px"
@ -254,7 +254,7 @@
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col v-hasPermi="['custom:order:review']"> <el-col v-hasPermi="['custom:order:review']" v-show="orderModuleshow.reviewStatusShow">
<el-form-item label="审核状态" prop="reviewStatus"> <el-form-item label="审核状态" prop="reviewStatus">
<el-select v-model="form.reviewStatus" placeholder="请选择审核状态"> <el-select v-model="form.reviewStatus" placeholder="请选择审核状态">
<el-option <el-option
@ -266,7 +266,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col> <el-col v-show="orderModuleshow.remarkShow">
<el-form-item label="备注" prop="remark"> <el-form-item label="备注" prop="remark">
<el-input <el-input
v-model="form.remark" v-model="form.remark"
@ -287,6 +287,7 @@
import { addOrder, updateOrder } from "@/api/custom/order"; import { addOrder, updateOrder } from "@/api/custom/order";
import dayjs from "dayjs"; import dayjs from "dayjs";
import { mapGetters } from "vuex"; import { mapGetters } from "vuex";
import * as orderTypeData from "@/utils/orderType";
export default { export default {
name: "OrderEdit", name: "OrderEdit",
@ -416,18 +417,9 @@ export default {
reviewStatusOptions: [], reviewStatusOptions: [],
//() //()
orderDropdownCorrespondingOptions: [], orderDropdownCorrespondingOptions: [],
//
preSaleShow: true, //
// orderModuleshow: Object.assign({}, orderTypeData.orderModuleshow)
onSaleShow: false,
//()
pushPreSaleShow: false,
//
afterSaleNutriAssShow: true,
//
planOperatorShow: true,
//
businessAffairShow: false
}; };
}, },
created() { created() {
@ -612,43 +604,12 @@ export default {
}; };
this.resetForm("form"); this.resetForm("form");
// let orderTypeList = [parseInt(this.form.orderType), parseInt(this.form.orderCountType), parseInt(this.form.orderMoneyType)];
this.preSaleShow = true;
//
this.onSaleShow = false;
//()
this.pushPreSaleShow= false;
//
this.afterSaleNutriAssShow= true;
//
this.planOperatorShow = true;
if(this.form.orderType == "3"){ let resultArray = orderTypeData.dealOrderModuleshowByOrderType(orderTypeList, this.orderModuleshow, this.form);
// this.orderModuleshow = resultArray[0];
if(this.form.afterSaleCommissOrder == null || this.form.afterSaleCommissOrder == 0){
this.preSaleShow = false;
}
if(this.form.orderCountType == 0 || this.form.orderCountType == 2){
this.pushPreSaleShow = true;
}
}
if(this.form.orderType == "2" || (this.form.orderType == "3" && (this.form.afterSaleCommissOrder == null || this.form.afterSaleCommissOrder == 0))){
this.onSaleShow = true;
}
if((this.form.afterSaleCommissOrder != null && this.form.afterSaleCommissOrder != 0) || this.form.orderType == "2"){
this.afterSaleNutriAssShow = false;
}
if(this.form.afterSaleCommissOrder != null && this.form.afterSaleCommissOrder != 0){
this.planOperatorShow = false;
}
//
this.businessAffairShow = this.form.orderType == "4";
//console.log(this.preSaleShow + " | " + this.pushPreSaleShow + " | " + this.onSaleShow + " | " + this.afterSaleNutriAssShow + "|" + this.planOperatorShow);
}, },
handleOnClosed() { handleOnClosed() {
this.reset(); this.reset();

View File

@ -4,13 +4,15 @@
:title="title" :title="title"
append-to-body append-to-body
@closed="onClosed" @closed="onClosed"
width="1000px" :width="dialogWidth"
> >
<div style="margin-top: -20px;"> <div style="margin-top: -20px">
<div style="display: flex; flex-direction: row">
<!-- 打卡信息详情 -->
<div <div
style="float: right; margin-bottom:10px" :style="'float: left; width: ' + (commentVisible ? '900px' : '950px')"
> >
<div style="float: right; margin-bottom: 10px">
<el-button <el-button
v-hasPermi="['custom:wxUserLog:query']" v-hasPermi="['custom:wxUserLog:query']"
type="primary" type="primary"
@ -18,95 +20,104 @@
@click="clickComment()" @click="clickComment()"
>打卡点评</el-button >打卡点评</el-button
> >
</div> </div>
<!-- 打卡信息详情 -->
<div>
<h3>基础信息</h3> <h3>基础信息</h3>
<TableDetailMessage :data="punchLogDetail"></TableDetailMessage> <TableDetailMessage :data="punchLogDetail"></TableDetailMessage>
<h3>食物以及对比照信息</h3> <h3>食物以及对比照信息</h3>
<div style="height: 370px; overflow: auto"> <div style="height: 370px; overflow: auto">
<div v-if="punchLog != null && punchLog.ingredientDesc != null && punchLog.ingredientDesc != ''"> <div v-if="punchLog != null && punchLog.ingredientDesc">
<h4>食物描述</h4> <h4>食物描述</h4>
<div> <div>
{{punchLog.ingredientDesc}} {{ punchLog.ingredientDesc }}
</div> </div>
</div> </div>
<div v-if="punchLog != null && (punchLog.imagesUrl.breakfastImages.length > 0 || punchLog.imagesUrl.lunchImages.length > 0 || punchLog.imagesUrl.dinnerImages.length > 0 <div v-if="punchLog != null">
|| punchLog.imagesUrl.extraMealImages.length > 0)"> <div v-if="punchLog.imagesUrl.breakfastImages.length > 0">
<h4>食物照片</h4> <h4>早餐照片</h4>
<div> <div>
<el-image v-for="(item, index) in punchLog.imagesUrl.breakfastImages" title="点击大图预览" :key="index" <el-image
v-for="(item, index) in punchLog.imagesUrl.breakfastImages"
title="点击大图预览"
:key="'breakfast' + index"
class="food_image_first" class="food_image_first"
:src="item" :src="item"
:preview-src-list="imageUrl"> :preview-src-list="imageUrl"
>
</el-image> </el-image>
<el-image v-for="(item, index) in punchLog.imagesUrl.lunchImages" title="点击大图预览" :key="index" </div>
</div>
<div v-if="punchLog.imagesUrl.lunchImages.length > 0">
<h4>午餐照片</h4>
<div>
<el-image
v-for="(item, index) in punchLog.imagesUrl.lunchImages"
title="点击大图预览"
:key="'lunch' + index"
class="food_image" class="food_image"
:src="item" :src="item"
:preview-src-list="imageUrl"> :preview-src-list="imageUrl"
>
</el-image> </el-image>
<el-image v-for="(item, index) in punchLog.imagesUrl.dinnerImages" title="点击大图预览" :key="index" </div>
</div>
<div v-if="punchLog.imagesUrl.dinnerImages.length > 0">
<h4>晚餐照片</h4>
<div>
<el-image
v-for="(item, index) in punchLog.imagesUrl.dinnerImages"
title="点击大图预览"
:key="'dinner' + index"
class="food_image" class="food_image"
:src="item" :src="item"
:preview-src-list="imageUrl"> :preview-src-list="imageUrl"
>
</el-image> </el-image>
<el-image v-for="(item, index) in punchLog.imagesUrl.extraMealImages" title="点击大图预览" :key="index" </div>
</div>
<div v-if="punchLog.imagesUrl.extraMealImages.length > 0">
<h4>加餐照片</h4>
<div>
<el-image
v-for="(item, index) in punchLog.imagesUrl.extraMealImages"
title="点击大图预览"
:key="'extraMeal' + index"
class="food_image" class="food_image"
:src="item" :src="item"
:preview-src-list="imageUrl"> :preview-src-list="imageUrl"
>
</el-image> </el-image>
</div> </div>
</div> </div>
<!--<div v-if="punchLog != null && punchLog.imagesUrl.lunchImages.length > 0"> <div v-if="punchLog.imagesUrl.bodyImages.length > 0">
<h4>午餐</h4>
<div>
<el-image v-for="(item, index) in punchLog.imagesUrl.lunchImages" title="点击大图预览" :key="index"
style="width: 300px; height: 300px"
:src="item"
:preview-src-list="imageUrl">
</el-image>
</div>
</div>
<div v-if="punchLog != null && punchLog.imagesUrl.dinnerImages.length > 0">
<h4>晚餐</h4>
<div>
<el-image v-for="(item, index) in punchLog.imagesUrl.dinnerImages" title="点击大图预览" :key="index"
style="width: 300px; height: 300px"
:src="item"
:preview-src-list="imageUrl">
</el-image>
</div>
</div>
<div v-if="punchLog != null && punchLog.imagesUrl.extraMealImages.length > 0">
<h4>加餐</h4>
<div>
<el-image v-for="(item, index) in punchLog.imagesUrl.extraMealImages" title="点击大图预览" :key="index"
style="width: 300px; height: 300px"
:src="item"
:preview-src-list="imageUrl">
</el-image>
</div>
</div>-->
<div v-if="punchLog != null && punchLog.imagesUrl.bodyImages.length > 0">
<h4>体型对比照</h4> <h4>体型对比照</h4>
<div> <div>
<el-image v-for="(item, index) in punchLog.imagesUrl.bodyImages" title="点击大图预览" :key="index" <el-image
v-for="(item, index) in punchLog.imagesUrl.bodyImages"
title="点击大图预览"
:key="index"
style="width: 300px; height: 300px" style="width: 300px; height: 300px"
:src="item" :src="item"
:preview-src-list="imageUrl"> :preview-src-list="imageUrl"
>
</el-image> </el-image>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div
<el-dialog :visible.sync="commentVisible" :title="commentTitle" width="500px" append-to-body @closed="commentClosed"> style="width: 200px; margin-left: 40px; margin-top: 50px"
<el-form ref="form" :model="commentForm" :rules="commentRules" label-position="top" label-width="100px"> v-show="commentVisible"
<el-form-item label="打卡评分" prop="executionScore" > >
<h3 style="width: 200px">{{ commentTitle }}</h3>
<el-form
ref="form"
:model="commentForm"
:rules="commentRules"
label-position="top"
label-width="100px"
>
<el-form-item label="打卡评分" prop="executionScore">
<el-rate <el-rate
v-model="commentForm.executionScore" v-model="commentForm.executionScore"
show-score show-score
@ -115,38 +126,35 @@
> >
</el-rate> </el-rate>
</el-form-item> </el-form-item>
<el-form-item label="点评内容" prop="comment">
<el-form-item label="点评内容" prop="comment" >
<el-input <el-input
type="textarea" type="textarea"
:rows="4" :rows="20"
maxlength="200" maxlength="200"
show-word-limit show-word-limit
placeholder="请输入点评内容" placeholder="请输入点评内容"
v-model="commentForm.comment"> v-model="commentForm.comment"
>
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer" > <div slot="footer" class="dialog-footer" style="text-align: center">
<el-button type="primary" @click="commentSubmit()"> </el-button> <el-button type="primary" @click="commentSubmit()"> </el-button>
<el-button @click="commentClosed()"> </el-button> <el-button @click="commentClosed()"> </el-button>
</div> </div>
</div>
</div>
</div>
</el-dialog> </el-dialog>
</el-dialog>
</template> </template>
<script> <script>
import { import { getPunchLogDetail, commentPunchContent } from "@/api/custom/wxUserLog";
getPunchLogDetail,commentPunchContent
} from "@/api/custom/wxUserLog";
import TableDetailMessage from "@/components/TableDetailMessage"; import TableDetailMessage from "@/components/TableDetailMessage";
export default { export default {
name: "PunchLogDetail", name: "PunchLogDetail",
components: { components: {
TableDetailMessage TableDetailMessage,
}, },
data() { data() {
return { return {
@ -159,33 +167,31 @@ export default {
punchLogDetail: [], punchLogDetail: [],
// //
punchTitleData: [ punchTitleData: [
["姓名", "体重(斤)","饮水量(ml)"], ["姓名", "体重(斤)", "饮水量(ml)"],
["睡觉时间", "起床时间","运动锻炼"], ["睡觉时间", "起床时间", "运动锻炼"],
["情绪","按食谱进食","其他食物"], ["情绪", "按食谱进食", "其他食物"],
["熬夜失眠", "起床排便","是否便秘"], ["熬夜失眠", "起床排便", "是否便秘"],
["服务建议", "评分","点评内容"] ["服务建议", "评分", "点评内容"],
], ],
// //
punchValueData: [ punchValueData: [
["customerName","weight","water"], ["customerName", "weight", "water"],
["sleepTime", "wakeupTime","sport"], ["sleepTime", "wakeupTime", "sport"],
["emotion", "diet","slyEatFood"], ["emotion", "diet", "slyEatFood"],
["insomnia","defecation", "constipation"], ["insomnia", "defecation", "constipation"],
["remark","executionScore","comment"], ["remark", "executionScore", "comment"],
], ],
commentVisible: false, commentVisible: false,
commentTitle: "", commentTitle: "",
commentForm:{ commentForm: {},
commentRules: {},
}, scoreArray: [0.5, 1, 1.5, 2, 2.5, 3, 3.5, 4, 4.5, 5],
commentRules:{}, commentFlag: false, //,
scoreArray:[0.5,1,1.5,2,2.5,3,3.5,4,4.5,5], dialogWidth: "1000px",
commentFlag: false, //
}; };
}, },
methods: { methods: {
// //
columnStyle({ row, column, rowIndex, columnIndex }) { columnStyle({ row, column, rowIndex, columnIndex }) {
if (columnIndex % 2 === 0) { if (columnIndex % 2 === 0) {
@ -208,7 +214,7 @@ export default {
this.data = data; this.data = data;
this.callback = callback; this.callback = callback;
this.commentFlag = false; this.commentFlag = false;
this.title = `${data.customerName}`+" "+`${data.logTime}」打卡记录`; this.title = `${data.customerName}` + " " + `${data.logTime}」打卡记录`;
this.getPunchLogById(); this.getPunchLogById();
}, },
getPunchLogById() { getPunchLogById() {
@ -245,57 +251,62 @@ export default {
}, },
onClosed() { onClosed() {
this.data = null; this.data = null;
this.callback = null; //this.callback = null;
this.punchLog = null; this.punchLog = null;
this.imageUrl = []; this.imageUrl = [];
this.punchLogDetail = []; this.punchLogDetail = [];
if (this.commentFlag) {
console.log("cbhdsjcsnjcsdc");
this.callback && this.callback();
}
}, },
clickComment(){ clickComment() {
//console.log(this.punchLog.executionScore); //console.log(this.punchLog.executionScore);
this.commentForm = { this.commentForm = {
id: this.punchLog.id, id: this.punchLog.id,
comment: this.punchLog.comment, comment: this.punchLog.comment,
executionScore: this.punchLog.executionScore == null ? 0 : this.punchLog.executionScore, executionScore:
} this.punchLog.executionScore == null
this.commentTitle = "点评「"+this.punchLog.customerName+" "+ this.punchLog.logTime +"」打卡"; ? 0
: this.punchLog.executionScore,
};
this.commentTitle = "点评「" + this.punchLog.logTime + "」打卡";
this.commentVisible = true; this.commentVisible = true;
this.dialogWidth = "1200px";
}, },
commentClosed(){ commentClosed() {
this.commentVisible = false; this.commentVisible = false;
this.dialogWidth = "1000px";
}, },
commentSubmit(){ commentSubmit() {
/*if(this.commentForm.executionScore == null || this.commentForm.executionScore == 0){ /*if(this.commentForm.executionScore == null || this.commentForm.executionScore == 0){
this.msgError("评分不能为0"); this.msgError("评分不能为0");
return; return;
}*/ }*/
commentPunchContent(this.commentForm).then((res) => { commentPunchContent(this.commentForm).then((res) => {
if(res.code == 200){ if (res.code == 200) {
this.msgSuccess("点评成功"); this.msgSuccess("点评成功");
this.commentVisible = false; this.commentClosed();
this.getPunchLogById(); this.getPunchLogById();
this.commentFlag = true; this.commentFlag = true;
this.callback && this.callback(); } else {
}else{
this.msgSuccess("点评失败"); this.msgSuccess("点评失败");
} }
}); });
} },
}, },
}; };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.food_image_first {
.food_image_first{ width: 280px;
width: 300px;
height: 300px; height: 300px;
} }
.food_image{ .food_image {
width: 300px; width: 280px;
height: 300px; height: 300px;
margin-left:10px //margin-left:10px
} }
</style> </style>

View File

@ -823,12 +823,12 @@ export function dealHealthy(customerHealthy) {
return customerHealthy; return customerHealthy;
} }
export const extendHealthyTitle = {"0":"减脂","5":"降血压","6":"降血糖","3": "备孕营养", "1": "月经不调", "2": "多囊调理", "11":"心脑血管调理","13":"胃肠肿瘤调理","4":"产后调理","7":"高血脂","10":"消化系统管理"}; export const extendHealthyTitle = {"0":"减脂","5":"降血压","6":"降血糖","3": "备孕营养", "1": "月经不调", "2": "多囊调理", "11":"心脑血管调理","13":"胃肠肿瘤调理","4":"产后调理","7":"高血脂","10":"消化系统管理","14":"增重"};
export const projectName = {"0":"减脂","5":"高血压","6":"高血糖","3": "备孕营养", "1":"月经不调", "2":"多囊卵巢综合症", "13":"胃肠肿瘤","4":"产后调理","7":"高血脂","10":"消化系统管理"}; export const projectName = {"0":"减脂","5":"高血压","6":"高血糖","3": "备孕营养", "1":"月经不调", "2":"多囊卵巢综合症", "13":"胃肠肿瘤","4":"产后调理","7":"高血脂","10":"消化系统管理","14":"增重"};
//需要填写慢病调查问卷的项目 //需要填写慢病调查问卷的项目
export const extendHealthyIndex = [5, 6, 1, 2, 13,4,7]; export const extendHealthyIndex = [5, 6, 1, 2, 13,4,7];
//跳过减脂经历问卷的项目 //跳过减脂经历问卷的项目
export const notExperienceIndex = [3,1,2,13,4,7,10]; export const notExperienceIndex = [3,1,2,13,4,7,10,14];
export function getTitleKey(projectId){ export function getTitleKey(projectId){
return extendHealthyTitle[projectId+""] != null ? extendHealthyTitle[projectId+""] : extendHealthyTitle["0"]; return extendHealthyTitle[projectId+""] != null ? extendHealthyTitle[projectId+""] : extendHealthyTitle["0"];

View File

@ -80,6 +80,18 @@ export const orderTypeArray = [
value: 4, value: 4,
label: "商务单", label: "商务单",
children: orderCountTypeArray children: orderCountTypeArray
},
{
value: 5,
label: "基因单",
children:[{
value: 0,
label: "一开单",
children: [{
value: 0,
label: "全款单"
}]
}]
} }
] ]
@ -115,3 +127,186 @@ export const orderRateArray = [
remark: "" remark: ""
} }
] ]
//订单模块控制标识,默认为普通单、一开单、全款单
export const orderModuleshow = {
orderTypeShow: true,
secondAfterSaleFlagShow: false,
amountShow: true,
payTypeShow: true,
accountShow: true,
serveTimeShow: true,
giveServeDayShow: true,
conditioningProjectShow: true,
preSaleShow: true,
businessAffairShow: false,
pushPreSaleShow: false,
onSaleShow: false,
afterSaleShow: true,
nutritionistShow: true,
nutritionistRateShow: false,
nutriAssisShow: true,
plannerShow: true,
plannerAssisShow: true,
operatorShow: true,
operatorAssisShow: true,
orderTimeShow: true,
startTimeShow: true,
reviewStatusShow: true,
remarkShow: true
}
/**
* 根据订单类型处理订单模块的显示与隐藏
*
* @param {*} orderType 订单类型
* @param {*} moduleshow 订单模块控制标识对象
* @param {*} form 订单模块控制标识对象
*/
export function dealOrderModuleshowByOrderType(orderType, moduleshow, form){
let addFlag = form.orderId == undefined || form.orderId == null;
if(addFlag){
//还原
moduleshow = {
...orderModuleshow
};
form.serveTimeId = 90;
form.conditioningProjectId = 0;
form.nutritionistRate = "0,10";
form.pushPreSaleId = null;
form.onSaleId = null;
form.businessAffairId = null;
form.secondAfterSaleFlag = 0;
form.payTypeId = 3;
}
switch(orderType[0]){
//普通单
case 0:
break;
//拆分单
case 1:
moduleshow.nutritionistRateShow = true;
if(addFlag){
form.nutritionistRate = "2,8";
}
break;
//体验单
case 2:
if(addFlag){
form.serveTimeId = 7;
form.conditioningProjectId = 12;
}
moduleshow.onSaleShow = true;
moduleshow.afterSaleShow = false;
moduleshow.nutritionistShow = false;
moduleshow.nutriAssisShow = false;
break;
//售中单
case 3:
if(addFlag){
form.preSaleId = null;
}
moduleshow.onSaleShow = true;
moduleshow.preSaleShow = false;
if(orderType[1] == 2 || orderType[1] == 3){
moduleshow.nutritionistRateShow = true;
if(addFlag){
form.nutritionistRate = "2,8";
}
}
//一开单
if(orderType[1] == 0 || orderType[1] == 2){
moduleshow.pushPreSaleShow = true;
}
break;
//商务单
case 4:
if(addFlag){
form.preSaleId = null;
form.plannerId = null;
form.plannerAssisId = null;
form.operatorId = null;
form.operatorAssisId = null;
}
moduleshow.preSaleShow = false;
moduleshow.plannerShow = false;
moduleshow.plannerAssisShow = false;
moduleshow.operatorShow = false;
moduleshow.operatorAssisShow = false;
moduleshow.businessAffairShow = true;
break;
//基因单
case 5:
if(addFlag){
form.payTypeId = 9;
form.conditioningProjectId = 15;
}
moduleshow.serveTimeShow = false;
//moduleshow.accountShow = false;
moduleshow.giveServeDayShow = false;
moduleshow.afterSaleShow = false;
moduleshow.nutritionistShow = false;
moduleshow.nutriAssisShow = false;
moduleshow.plannerShow = false;
moduleshow.plannerAssisShow = false;
moduleshow.operatorShow = false;
moduleshow.operatorAssisShow = false;
moduleshow.startTimeShow = false;
break;
default:
break;
}
if(addFlag){
if(orderType[1] == 1 || orderType[1] == 3){
form.secondAfterSaleFlag = 1;
moduleshow.secondAfterSaleFlagShow = true;
}
}
if(!addFlag){
if(form.afterSaleCommissOrder != null && form.afterSaleCommissOrder != 0){
let afterSaleCommissShow = {
orderTypeShow: true,
secondAfterSaleFlagShow: false,
amountShow: true,
payTypeShow: true,
accountShow: true,
serveTimeShow: true,
giveServeDayShow: true,
conditioningProjectShow: true,
preSaleShow: true,
businessAffairShow: false,
pushPreSaleShow: false,
onSaleShow: false,
afterSaleShow: false,
nutritionistShow: false,
nutritionistRateShow: false,
nutriAssisShow: false,
plannerShow: false,
plannerAssisShow: false,
operatorShow: false,
operatorAssisShow: false,
orderTimeShow: true,
startTimeShow: true,
reviewStatusShow: true,
remarkShow: true
}
moduleshow = {
...afterSaleCommissShow
};
}
}
return [moduleshow, form];
//console.log(moduleshow);
//console.log(orderModuleshow);
}

View File

@ -274,7 +274,7 @@
<el-form-item <el-form-item
label="服务承诺" label="服务承诺"
prop="servePromise" prop="servePromise"
v-show="form.projectId == 0" v-show="form.projectId == 0 || form.projectId == 14"
> >
<el-input <el-input
style="width: 193px; margin-right: 12px" style="width: 193px; margin-right: 12px"

View File

@ -17,8 +17,8 @@
<el-form-item label="服务时长" style="margin: 0"> <el-form-item label="服务时长" style="margin: 0">
<span>{{form.serveTimeStr}}</span> <span>{{form.serveTimeStr}}</span>
</el-form-item> </el-form-item>
<el-form-item label="服务承诺" style="margin: 0"> <el-form-item label="服务承诺" style="margin: 0" v-if="form.projectId == 14 || form.projectId == 0">
<span>健康吃瘦{{form.servePromise}}</span> <span>健康{{form.projectId == 0 ? '吃瘦' : '增重'}}{{form.servePromise}}</span>
</el-form-item> </el-form-item>
<el-form-item v-if="form.remark" label="备注" style="margin: 0"> <el-form-item v-if="form.remark" label="备注" style="margin: 0">
<span>{{form.remark}}</span> <span>{{form.remark}}</span>
@ -124,7 +124,76 @@
</p> </p>
</div> </div>
<div v-show="this.form.projectId != 0"> <div v-show="form.projectId == 14">
<p>
<div>甲方胜唐体控深圳市胜唐科技有限公司</div>
<div>公司地址深圳市宝安区西乡街道宝民二路缤纷时代广场3楼318</div>
<div>联系电话0755-23213903</div>
</p>
<p>
<div>乙方<b>{{form.signName}}</b></div>
<div>身份证号<b>{{form.cusId}}</b></div>
<div>联系电话<b>{{form.phone}}</b></div>
</p>
<p>
<div>甲乙双方本着诚信合作互惠互利的原则依据中华人民共和国有相关法律经友好协商现就胜唐体控增重咨询指导服务合作相关事宣达成一致协议以兹共同遵守</div>
<div>若乙方为未成年由应由乙方法定监护人代签本合同乙方享受同等法律权益</div>
</p>
<p>
第一条 甲方资质与服务保证
<div class="line-rule">1甲方系经由工商部门注册合法经营的正规公司具备提供相关咨询服务的法定资质</div>
<div class="line-rule">2甲方在合约期内为乙方安排营养师团队提供营养增重服务</div>
<div class="line-rule">3甲方按与乙方约定事项及服务内容通过定制营养增重饮食方案为乙方提供增重服务服务中不使用任何仪器针药不使用医疗类药物等</div>
<div class="line-rule">4甲方为乙方提供专业营养指导咨询服务</div>
<div class="line-rule">5服务标准</div>
<div style="margin-left: 24px">5.1甲方为乙方每周提供一对一有效咨询时间6日每日咨询服务时间为早10:00晚19:00每日服务9小时法定节假日除外</div>
<div style="margin-left: 24px">5.2乙方可享受营养学基础知识学习过瘦与生活习惯知识学习享受营养师亲自培训初级自我体重管理知识</div>
<div style="margin-left: 24px">5.3甲方为乙方定制营养增重饮食方案7天为一期每期结束前12更新发送下一期饮食增重方案</div>
<div style="margin-left: 24px">5.4甲方对乙方所做出的承诺不得超出力所能及的范围不得夸大吹嘘作假服务效果双方明确甲方只提供咨询服务不含任何医疗行为</div>
<div style="margin-left: 24px">5.5甲方需保证提供服务的导师具备相关的服务资质证书</div>
<div style="margin-left: 24px">5.6甲方为乙方提供的服务方式主要为网络线上进行指导服务不涉及线下服务内容</div>
<div style="margin-left: 24px">5.7乙方不能在家佐餐需要进行外食指导甲方有责任及义务为乙方提供对应的指导</div>
<div style="margin-left: 24px">5.8乙方自订购服务日起享有单一营养师的指导及咨询服务如需中途更换指导老师需在当期方案执行结束至少3日内告知以便于更换指导</div>
<div style="margin-left: 24px">5.9甲方每日会敦促乙方进行服务效果反馈一日三餐需进行打卡</div>
<!--<div style="margin-left: 24px">5.10甲方在接收到乙方发送咨询需求3.5小时内需及时为乙方解答周日及法定节假日除外</div>-->
</p>
<p>第二条 合作内容及费用
<div class="line-rule">经甲乙双方协商确定乙方向甲方购买 <b>{{form.serveTimeStr}}</b> 胜唐体控增重指导服务以下简称服务
经甲乙双方协商一致确定乙方向甲方支付服务费用为人民币 <b>{{form.amount}}</b>大写<b>{{form.amountUpper}}</b>
</div>
<div><b>{{form.remark ? `(备注:${form.remark}`:''}}</b></div>
</p>
<p>第三条 服务期约定
<div class="line-rule">1服务时间阶段服务指导期服务跟踪期免费咨询期具体安排由甲方根据乙方的实际情况与乙方协商确定</div>
<div class="line-rule">2因不可抗拒的因素如意外怀孕等而暂停服务指导其后续服务期限由甲乙方协商确定</div>
<div class="line-rule">3增重需要双方的配合在不是甲方技术问题的情况下乙方不执行营养师的指导导致没有达到预期效果责任由乙方承担根据个人体质不同在调理营养健康的前提下健康增重 <b>{{form.servePromise}}</b>
</div>
<div class="line-rule">
4乙方应按甲方制定的饮食方案来饮食承诺在未与甲方沟通前不得擅自吃方案之外的不利于健康和增重的饮食服务期内擅自乱吃东西导致体重没有变化或下降次数超过3次视为乙方主动放弃营养增重且甲方无需免费延长服务时间
</div>
<div class="line-rule">
5乙方在一个服务期内享有2次暂停服务的机会在暂停前应与甲方沟通确认暂停前已增重斤数累积到总增重结果中在暂停结束后自新体重开始甲方服务乙方继续完成承诺的增重斤数包增斤数 - 暂停前已成功增重数
</div>
<div class="line-rule">6乙方隐瞒病情或身体情况误导营养师的造成的后果由乙方承担并且甲方不予退款</div>
<div class="line-rule">
7乙方同意并且理解甲方定制营养方案付出的时间和智力成本乙方在第一周营养方案定制交付之前申请退款的可退款90%在第一周营养方案定制交付之后因个人原因非不可抗力因素则不予退款
</div>
<div class="line-rule">
8若乙方具有特殊病史慢病疾病特殊药物或产品使用激素药物中药及其他疗程性药物调理需在购买增重服务前告知甲方以便于合理安排减脂计划若乙方未告知甲方相关的疾病史以及药物使用情况因此造成的负面效果由乙方自行承担
</div>
<div class="line-rule">9甲方在乙方告知所有身体情况及药物服用情况甲方仍未做出合理安排对乙方的身体及心理造成影响时乙方可申请扣除已进行服务期外相应的服务款项退还未进行服务期对应款项</div>
</p>
<p>第四条 其他
<div class="line-rule">1如因本合同发生争议双方应协商解决如协商不成双方可向甲方所在地法院提起诉讼解决</div>
<div class="line-rule">2本合同经双方线上签字盖章后生效</div>
</p>
</div>
<div v-show="this.form.projectId != 0 && form.projectId != 14">
<p> <p>
<p> <p>
<div>服务公司以下简称甲方{{form.companyName}}</div> <div>服务公司以下简称甲方{{form.companyName}}</div>
@ -346,6 +415,10 @@ export default {
"营养性贫血服务合同", "营养性贫血服务合同",
"消化系统管理服务合同", "消化系统管理服务合同",
"心脑血管系统服务合同", "心脑血管系统服务合同",
"99元体验服务合同",
"胃肠肿瘤调理合同",
"营养增重服务合同",
"基因检测合同"
], ],
// //
reportcontentArray: [ reportcontentArray: [