问题7,8

This commit is contained in:
Lenovo 2024-07-16 14:00:44 +08:00
parent 3a902627ac
commit fd1d8ef925
9 changed files with 171 additions and 75 deletions

View File

@ -41,10 +41,32 @@ public class BusReturnVisitInfo extends BaseEntity
@Excel(name = "回访时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") @Excel(name = "回访时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date returnVisitTime; private Date returnVisitTime;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "订单完成时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date orderCompleteTime;
/** 完成时间 */ /** 完成时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "完成时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") @Excel(name = "回访完成时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date finishTime; private Date finishTime;
private String beginTime;
private String endTime;
public String getBeginTime() {
return beginTime;
}
public void setBeginTime(String beginTime) {
this.beginTime = beginTime;
}
public String getEndTime() {
return endTime;
}
public void setEndTime(String endTime) {
this.endTime = endTime;
}
public void setId(Long id) public void setId(Long id)
{ {
@ -60,6 +82,14 @@ public class BusReturnVisitInfo extends BaseEntity
this.storeCode = storeCode; this.storeCode = storeCode;
} }
public Date getOrderCompleteTime() {
return orderCompleteTime;
}
public void setOrderCompleteTime(Date orderCompleteTime) {
this.orderCompleteTime = orderCompleteTime;
}
public String getStoreCode() public String getStoreCode()
{ {
return storeCode; return storeCode;

View File

@ -47,6 +47,24 @@ public class BusStoreInfo extends BaseEntity
/** 店铺归属 */ /** 店铺归属 */
@Excel(name = "店铺归属") @Excel(name = "店铺归属")
private String storeBelong; private String storeBelong;
private String beginTime;
private String endTime;
public String getBeginTime() {
return beginTime;
}
public void setBeginTime(String beginTime) {
this.beginTime = beginTime;
}
public String getEndTime() {
return endTime;
}
public void setEndTime(String endTime) {
this.endTime = endTime;
}
/** 授权状态 */ /** 授权状态 */
@Excel(name = "授权状态") @Excel(name = "授权状态")

View File

@ -55,6 +55,14 @@ public class BusReturnVisitInfoServiceImpl implements IBusReturnVisitInfoService
busReturnVisitInfo.setStoreCode(storeCode); busReturnVisitInfo.setStoreCode(storeCode);
} }
PageUtils.startPage(); PageUtils.startPage();
String beginTime = null;
String endTime = null;
if (busReturnVisitInfo.getParams().size() > 0){
beginTime = busReturnVisitInfo.getParams().get("beginTime").toString()+" 00:00:00";
endTime = busReturnVisitInfo.getParams().get("endTime").toString()+" 23:59:59";
}
busReturnVisitInfo.setBeginTime(beginTime);
busReturnVisitInfo.setEndTime(endTime);
return busReturnVisitInfoMapper.selectBusReturnVisitInfoList(busReturnVisitInfo); return busReturnVisitInfoMapper.selectBusReturnVisitInfoList(busReturnVisitInfo);
} }

View File

@ -60,6 +60,14 @@ public class BusStoreInfoServiceImpl implements IBusStoreInfoService
@Override @Override
public List<BusStoreInfo> selectBusStoreInfoList(BusStoreInfo busStoreInfo) public List<BusStoreInfo> selectBusStoreInfoList(BusStoreInfo busStoreInfo)
{ {
String beginTime = null;
String endTime = null;
if (busStoreInfo.getParams().size() > 0){
beginTime = busStoreInfo.getParams().get("beginTime").toString()+" 00:00:00";
endTime = busStoreInfo.getParams().get("endTime").toString()+" 23:59:59";
}
busStoreInfo.setBeginTime(beginTime);
busStoreInfo.setEndTime(endTime);
return busStoreInfoMapper.selectBusStoreInfoList(busStoreInfo); return busStoreInfoMapper.selectBusStoreInfoList(busStoreInfo);
} }

View File

@ -468,6 +468,7 @@ public class MeituanServiceImpl implements IMeituanService {
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void priPhoneInfo(List<BusOrderInfo> ls, String cookie) { public void priPhoneInfo(List<BusOrderInfo> ls, String cookie) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
for (BusOrderInfo orderInfo : ls) { for (BusOrderInfo orderInfo : ls) {
String url = "https://e.waimai.meituan.com/v2/order/history/r/search/ajax"; String url = "https://e.waimai.meituan.com/v2/order/history/r/search/ajax";
String regionId = valueFromCookie("region_id", cookie); String regionId = valueFromCookie("region_id", cookie);
@ -536,6 +537,12 @@ public class MeituanServiceImpl implements IMeituanService {
returnVisitInfo.setStoreName(busOrderInfo.getStoreName()); returnVisitInfo.setStoreName(busOrderInfo.getStoreName());
returnVisitInfo.setPhoneEndNumber(busOrderInfo.getRecipientPhone()); returnVisitInfo.setPhoneEndNumber(busOrderInfo.getRecipientPhone());
returnVisitInfo.setPhoneNumber(busOrderInfo.getPrivcyPhone()); returnVisitInfo.setPhoneNumber(busOrderInfo.getPrivcyPhone());
try {
returnVisitInfo.setOrderCompleteTime(sdf.parse(busOrderInfo.getCompleteTime()));
} catch (ParseException e) {
throw new RuntimeException(e);
}
//returnVisitInfo.setFinishTime(busOrderInfo.getCompleteTime()); todo //returnVisitInfo.setFinishTime(busOrderInfo.getCompleteTime()); todo
// returnVisitInfo.setReturnVisitTime(new Date()); // returnVisitInfo.setReturnVisitTime(new Date());
// busReturnVisitInfoMapper.insertBusReturnVisitInfo(returnVisitInfo); // busReturnVisitInfoMapper.insertBusReturnVisitInfo(returnVisitInfo);

View File

@ -12,10 +12,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="phoneEndNumber" column="phone_end_number" /> <result property="phoneEndNumber" column="phone_end_number" />
<result property="returnVisitTime" column="return_visit_time" /> <result property="returnVisitTime" column="return_visit_time" />
<result property="finishTime" column="finish_time" /> <result property="finishTime" column="finish_time" />
<result property="orderCompleteTime" column="order_complete_time" />
</resultMap> </resultMap>
<sql id="selectBusReturnVisitInfoVo"> <sql id="selectBusReturnVisitInfoVo">
select id, store_code, store_name, phone_number, phone_end_number, return_visit_time, finish_time from bus_return_visit_info select id, store_code, store_name, phone_number, phone_end_number, return_visit_time, finish_time,order_complete_time from bus_return_visit_info
</sql> </sql>
<select id="selectBusReturnVisitInfoList" parameterType="BusReturnVisitInfo" resultMap="BusReturnVisitInfoResult"> <select id="selectBusReturnVisitInfoList" parameterType="BusReturnVisitInfo" resultMap="BusReturnVisitInfoResult">
@ -27,6 +28,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="phoneEndNumber != null and phoneEndNumber != ''"> and phone_end_number = #{phoneEndNumber}</if> <if test="phoneEndNumber != null and phoneEndNumber != ''"> and phone_end_number = #{phoneEndNumber}</if>
<if test="returnVisitTime != null "> and return_visit_time = #{returnVisitTime}</if> <if test="returnVisitTime != null "> and return_visit_time = #{returnVisitTime}</if>
<if test="finishTime != null "> and finish_time = #{finishTime}</if> <if test="finishTime != null "> and finish_time = #{finishTime}</if>
<if test="beginTime != null and endTime != null"> and order_complete_time between #{beginTime} and #{endTime}</if>
and phone_number is not null and phone_number is not null
</where> </where>
</select> </select>
@ -49,9 +51,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</select> </select>
<insert id="batchInsertVisit"> <insert id="batchInsertVisit">
insert into bus_return_visit_info (store_code,store_name,phone_number,phone_end_number,return_visit_time) values insert into bus_return_visit_info (store_code,store_name,phone_number,phone_end_number,return_visit_time,order_complete_time) values
<foreach collection="ls" separator="," item="item"> <foreach collection="ls" separator="," item="item">
(#{item.storeCode},#{item.storeName},#{item.phoneNumber},#{item.phoneEndNumber},#{item.returnVisitTime}) (#{item.storeCode},#{item.storeName},#{item.phoneNumber},#{item.phoneEndNumber},#{item.returnVisitTime},#{item.orderCompleteTime})
</foreach> </foreach>
</insert> </insert>
@ -84,6 +86,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="phoneEndNumber != null">phone_end_number = #{phoneEndNumber},</if> <if test="phoneEndNumber != null">phone_end_number = #{phoneEndNumber},</if>
<if test="returnVisitTime != null">return_visit_time = #{returnVisitTime},</if> <if test="returnVisitTime != null">return_visit_time = #{returnVisitTime},</if>
<if test="finishTime != null">finish_time = #{finishTime},</if> <if test="finishTime != null">finish_time = #{finishTime},</if>
<if test="orderCompleteTime != null">order_complete_time = #{orderCompleteTime},</if>
</trim> </trim>
where id = #{id} where id = #{id}
</update> </update>

View File

@ -60,6 +60,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="saleBindId != null "> and sale_bind_id = #{saleBindId}</if> <if test="saleBindId != null "> and sale_bind_id = #{saleBindId}</if>
<if test="saleBindName != null and saleBindName != ''"> and sale_bind_name like concat('%', #{saleBindName}, '%')</if> <if test="saleBindName != null and saleBindName != ''"> and sale_bind_name like concat('%', #{saleBindName}, '%')</if>
<if test="saleBindTime != null "> and sale_bind_time = #{saleBindTime}</if> <if test="saleBindTime != null "> and sale_bind_time = #{saleBindTime}</if>
<if test="beginTime != null and endTime != null"> and bind_time between #{beginTime} and #{endTime}</if>
</where> </where>
</select> </select>

View File

@ -97,16 +97,32 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="5">
<el-form-item></el-form-item>
</el-col> <el-col :span="8">
<el-col :span="5"> <el-form-item label="创建时间">
<el-date-picker
v-model="dateRange"
value-format="yyyy-MM-dd"
type="daterange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期">
</el-date-picker>
</el-form-item>
<!-- </el-col>-->
<!-- <el-col>-->
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="4">
<el-col :span="6">
<el-form-item label="开启数量" ><span>{{map.openCount}}</span></el-form-item> <el-form-item label="开启数量" ><span>{{map.openCount}}</span></el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -172,16 +188,16 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="营销用户下单" prop="returnVisitUserRange" align="center" width="110" /> <el-table-column label="营销用户下单" prop="returnVisitUserRange" align="center" width="110" />
<el-table-column label="是否开启" prop="returnVisitStatus" align="center" width="85" > <!-- <el-table-column label="是否开启" prop="returnVisitStatus" align="center" width="85" >-->
<template slot-scope="scope"> <!-- <template slot-scope="scope">-->
<el-switch <!-- <el-switch-->
v-model="scope.row.returnVisitStatus" <!-- v-model="scope.row.returnVisitStatus"-->
active-value="1" <!-- active-value="1"-->
inactive-value="2" <!-- inactive-value="2"-->
@change="handleStatusChange(scope.row)" <!-- @change="handleStatusChange(scope.row)"-->
></el-switch> <!-- ></el-switch>-->
</template> <!-- </template>-->
</el-table-column> <!-- </el-table-column>-->
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" width =120> <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width =120>
<template slot-scope="scope"> <template slot-scope="scope">
@ -385,6 +401,7 @@ export default {
loading: true, loading: true,
// //
ids: [], ids: [],
dateRange: [],
// //
single: true, single: true,
// //
@ -492,7 +509,7 @@ export default {
/** 查询角色列表 */ /** 查询角色列表 */
getList() { getList() {
this.loading = true; this.loading = true;
listStore(this.queryParams).then(response => { listStore(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
this.storeList = response.rows; this.storeList = response.rows;
this.total = response.total; this.total = response.total;
this.loading = false; this.loading = false;
@ -591,6 +608,7 @@ export default {
}, },
/** 重置按钮操作 */ /** 重置按钮操作 */
resetQuery() { resetQuery() {
this.dateRange = [];
this.resetForm("queryForm"); this.resetForm("queryForm");
this.handleQuery(); this.handleQuery();
}, },

View File

@ -35,9 +35,11 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item>
<el-form-item label="订单完成时间" prop="time">
<el-date-picker <el-date-picker
v-model="dateRange" v-model="dateRange"
value-format="yyyy-MM-dd"
type="daterange" type="daterange"
range-separator="至" range-separator="至"
start-placeholder="开始日期" start-placeholder="开始日期"
@ -58,6 +60,7 @@
<el-table-column label="标识" prop="storeCode" /> <el-table-column label="标识" prop="storeCode" />
<el-table-column label="发送号码" prop="phoneNumber" align="center" width=""/> <el-table-column label="发送号码" prop="phoneNumber" align="center" width=""/>
<el-table-column label="四位尾号" prop="phoneEndNumber" align="center" width=""/> <el-table-column label="四位尾号" prop="phoneEndNumber" align="center" width=""/>
<el-table-column label="订单完成时间" prop="orderCompleteTime" align="center" width=""/>
<el-table-column label="营销时间" prop="returnVisitTime" align="center" width=""/> <el-table-column label="营销时间" prop="returnVisitTime" align="center" width=""/>
<el-table-column label="营销完成时间" prop="finishTime" align="center" width=""/> <el-table-column label="营销完成时间" prop="finishTime" align="center" width=""/>