问题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

@ -9,7 +9,7 @@ import com.ruoyi.common.core.domain.BaseEntity;
/**
* 回访数据对象 bus_return_visit_info
*
*
* @author ruoyi
* @date 2024-07-05
*/
@ -41,71 +41,101 @@ public class BusReturnVisitInfo extends BaseEntity
@Excel(name = "回访时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
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")
@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 String beginTime;
private String endTime;
public void setId(Long id)
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)
{
this.id = id;
}
public Long getId()
public Long getId()
{
return id;
}
public void setStoreCode(String storeCode)
public void setStoreCode(String storeCode)
{
this.storeCode = storeCode;
}
public String getStoreCode()
public Date getOrderCompleteTime() {
return orderCompleteTime;
}
public void setOrderCompleteTime(Date orderCompleteTime) {
this.orderCompleteTime = orderCompleteTime;
}
public String getStoreCode()
{
return storeCode;
}
public void setStoreName(String storeName)
public void setStoreName(String storeName)
{
this.storeName = storeName;
}
public String getStoreName()
public String getStoreName()
{
return storeName;
}
public void setPhoneNumber(String phoneNumber)
public void setPhoneNumber(String phoneNumber)
{
this.phoneNumber = phoneNumber;
}
public String getPhoneNumber()
public String getPhoneNumber()
{
return phoneNumber;
}
public void setPhoneEndNumber(String phoneEndNumber)
public void setPhoneEndNumber(String phoneEndNumber)
{
this.phoneEndNumber = phoneEndNumber;
}
public String getPhoneEndNumber()
public String getPhoneEndNumber()
{
return phoneEndNumber;
}
public void setReturnVisitTime(Date returnVisitTime)
public void setReturnVisitTime(Date returnVisitTime)
{
this.returnVisitTime = returnVisitTime;
}
public Date getReturnVisitTime()
public Date getReturnVisitTime()
{
return returnVisitTime;
}
public void setFinishTime(Date finishTime)
public void setFinishTime(Date finishTime)
{
this.finishTime = finishTime;
}
public Date getFinishTime()
public Date getFinishTime()
{
return finishTime;
}

View File

@ -9,7 +9,7 @@ import com.ruoyi.common.core.domain.BaseEntity;
/**
* 店铺信息对象 bus_store_info
*
*
* @author ruoyi
* @date 2024-07-03
*/
@ -47,6 +47,24 @@ public class BusStoreInfo extends BaseEntity
/** 店铺归属 */
@Excel(name = "店铺归属")
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 = "授权状态")
@ -97,129 +115,129 @@ public class BusStoreInfo extends BaseEntity
@Excel(name = "归属销售绑定时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date saleBindTime;
public void setId(Long id)
public void setId(Long id)
{
this.id = id;
}
public Long getId()
public Long getId()
{
return id;
}
public void setPlatformType(String platformType)
public void setPlatformType(String platformType)
{
this.platformType = platformType;
}
public String getPlatformType()
public String getPlatformType()
{
return platformType;
}
public void setStoreCode(String storeCode)
public void setStoreCode(String storeCode)
{
this.storeCode = storeCode;
}
public String getStoreCode()
public String getStoreCode()
{
return storeCode;
}
public void setStoreName(String storeName)
public void setStoreName(String storeName)
{
this.storeName = storeName;
}
public String getStoreName()
public String getStoreName()
{
return storeName;
}
public void setStoreAccount(String storeAccount)
public void setStoreAccount(String storeAccount)
{
this.storeAccount = storeAccount;
}
public String getStoreAccount()
public String getStoreAccount()
{
return storeAccount;
}
public void setStorePassword(String storePassword)
public void setStorePassword(String storePassword)
{
this.storePassword = storePassword;
}
public String getStorePassword()
public String getStorePassword()
{
return storePassword;
}
public void setStoreCookie(String storeCookie)
public void setStoreCookie(String storeCookie)
{
this.storeCookie = storeCookie;
}
public String getStoreCookie()
public String getStoreCookie()
{
return storeCookie;
}
public void setStoreBelong(String storeBelong)
public void setStoreBelong(String storeBelong)
{
this.storeBelong = storeBelong;
}
public String getStoreBelong()
public String getStoreBelong()
{
return storeBelong;
}
public void setGrantStatus(String grantStatus)
public void setGrantStatus(String grantStatus)
{
this.grantStatus = grantStatus;
}
public String getGrantStatus()
public String getGrantStatus()
{
return grantStatus;
}
public void setReturnVisitStatus(String returnVisitStatus)
public void setReturnVisitStatus(String returnVisitStatus)
{
this.returnVisitStatus = returnVisitStatus;
}
public String getReturnVisitStatus()
public String getReturnVisitStatus()
{
return returnVisitStatus;
}
public void setBindId(Long bindId)
public void setBindId(Long bindId)
{
this.bindId = bindId;
}
public Long getBindId()
public Long getBindId()
{
return bindId;
}
public void setBindUser(String bindUser)
public void setBindUser(String bindUser)
{
this.bindUser = bindUser;
}
public String getBindUser()
public String getBindUser()
{
return bindUser;
}
public void setBindTime(Date bindTime)
public void setBindTime(Date bindTime)
{
this.bindTime = bindTime;
}
public Date getBindTime()
public Date getBindTime()
{
return bindTime;
}
public void setUpdateId(Long updateId)
public void setUpdateId(Long updateId)
{
this.updateId = updateId;
}
public Long getUpdateId()
public Long getUpdateId()
{
return updateId;
}
@ -232,48 +250,48 @@ public class BusStoreInfo extends BaseEntity
{
return updateUser;
}
public void setSelfDeliveryStatus(String selfDeliveryStatus)
public void setSelfDeliveryStatus(String selfDeliveryStatus)
{
this.selfDeliveryStatus = selfDeliveryStatus;
}
public String getSelfDeliveryStatus()
public String getSelfDeliveryStatus()
{
return selfDeliveryStatus;
}
public void setReturnVisitUserRange(String returnVisitUserRange)
public void setReturnVisitUserRange(String returnVisitUserRange)
{
this.returnVisitUserRange = returnVisitUserRange;
}
public String getReturnVisitUserRange()
public String getReturnVisitUserRange()
{
return returnVisitUserRange;
}
public void setSaleBindId(Long saleBindId)
public void setSaleBindId(Long saleBindId)
{
this.saleBindId = saleBindId;
}
public Long getSaleBindId()
public Long getSaleBindId()
{
return saleBindId;
}
public void setSaleBindName(String saleBindName)
public void setSaleBindName(String saleBindName)
{
this.saleBindName = saleBindName;
}
public String getSaleBindName()
public String getSaleBindName()
{
return saleBindName;
}
public void setSaleBindTime(Date saleBindTime)
public void setSaleBindTime(Date saleBindTime)
{
this.saleBindTime = saleBindTime;
}
public Date getSaleBindTime()
public Date getSaleBindTime()
{
return saleBindTime;
}

View File

@ -55,6 +55,14 @@ public class BusReturnVisitInfoServiceImpl implements IBusReturnVisitInfoService
busReturnVisitInfo.setStoreCode(storeCode);
}
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);
}

View File

@ -60,6 +60,14 @@ public class BusStoreInfoServiceImpl implements IBusStoreInfoService
@Override
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);
}

View File

@ -468,6 +468,7 @@ public class MeituanServiceImpl implements IMeituanService {
@Override
@Transactional(rollbackFor = Exception.class)
public void priPhoneInfo(List<BusOrderInfo> ls, String cookie) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
for (BusOrderInfo orderInfo : ls) {
String url = "https://e.waimai.meituan.com/v2/order/history/r/search/ajax";
String regionId = valueFromCookie("region_id", cookie);
@ -536,6 +537,12 @@ public class MeituanServiceImpl implements IMeituanService {
returnVisitInfo.setStoreName(busOrderInfo.getStoreName());
returnVisitInfo.setPhoneEndNumber(busOrderInfo.getRecipientPhone());
returnVisitInfo.setPhoneNumber(busOrderInfo.getPrivcyPhone());
try {
returnVisitInfo.setOrderCompleteTime(sdf.parse(busOrderInfo.getCompleteTime()));
} catch (ParseException e) {
throw new RuntimeException(e);
}
//returnVisitInfo.setFinishTime(busOrderInfo.getCompleteTime()); todo
// returnVisitInfo.setReturnVisitTime(new Date());
// 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="returnVisitTime" column="return_visit_time" />
<result property="finishTime" column="finish_time" />
<result property="orderCompleteTime" column="order_complete_time" />
</resultMap>
<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>
<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="returnVisitTime != null "> and return_visit_time = #{returnVisitTime}</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
</where>
</select>
@ -49,9 +51,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</select>
<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">
(#{item.storeCode},#{item.storeName},#{item.phoneNumber},#{item.phoneEndNumber},#{item.returnVisitTime})
(#{item.storeCode},#{item.storeName},#{item.phoneNumber},#{item.phoneEndNumber},#{item.returnVisitTime},#{item.orderCompleteTime})
</foreach>
</insert>
@ -84,6 +86,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="phoneEndNumber != null">phone_end_number = #{phoneEndNumber},</if>
<if test="returnVisitTime != null">return_visit_time = #{returnVisitTime},</if>
<if test="finishTime != null">finish_time = #{finishTime},</if>
<if test="orderCompleteTime != null">order_complete_time = #{orderCompleteTime},</if>
</trim>
where id = #{id}
</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="saleBindName != null and saleBindName != ''"> and sale_bind_name like concat('%', #{saleBindName}, '%')</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>
</select>

View File

@ -97,16 +97,32 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item></el-form-item>
</el-col>
<el-col :span="5">
<el-col :span="8">
<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-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-form-item>
</el-col>
<el-col :span="4">
<el-col :span="6">
<el-form-item label="开启数量" ><span>{{map.openCount}}</span></el-form-item>
</el-col>
</el-row>
@ -172,16 +188,16 @@
</template>
</el-table-column>
<el-table-column label="营销用户下单" prop="returnVisitUserRange" align="center" width="110" />
<el-table-column label="是否开启" prop="returnVisitStatus" align="center" width="85" >
<template slot-scope="scope">
<el-switch
v-model="scope.row.returnVisitStatus"
active-value="1"
inactive-value="2"
@change="handleStatusChange(scope.row)"
></el-switch>
</template>
</el-table-column>
<!-- <el-table-column label="是否开启" prop="returnVisitStatus" align="center" width="85" >-->
<!-- <template slot-scope="scope">-->
<!-- <el-switch-->
<!-- v-model="scope.row.returnVisitStatus"-->
<!-- active-value="1"-->
<!-- inactive-value="2"-->
<!-- @change="handleStatusChange(scope.row)"-->
<!-- ></el-switch>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" width =120>
<template slot-scope="scope">
@ -385,6 +401,7 @@ export default {
loading: true,
//
ids: [],
dateRange: [],
//
single: true,
//
@ -492,7 +509,7 @@ export default {
/** 查询角色列表 */
getList() {
this.loading = true;
listStore(this.queryParams).then(response => {
listStore(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
this.storeList = response.rows;
this.total = response.total;
this.loading = false;
@ -591,6 +608,7 @@ export default {
},
/** 重置按钮操作 */
resetQuery() {
this.dateRange = [];
this.resetForm("queryForm");
this.handleQuery();
},

View File

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