提交 8161e2e3 authored 作者: luojie's avatar luojie

修改财务管理,订单列表,订单状态修改

上级 230d7e7c
package com.platform.dao;
import com.platform.entity.TbCfItemDetailEntity;
import com.platform.entity.TbCfItemOrderREntity;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Set;
/**
* 订单商品对应表Dao
......@@ -20,7 +18,7 @@ public interface TbCfItemOrderRDao extends BaseDao<TbCfItemOrderREntity> {
int updateDeliveryTime( TbCfItemOrderREntity tbCfItemOrderREntity2);
int updateExpressStatusDelivery(String[] sids);
int updateExpressStatusDelivery(String time, String[] sids);
int updateExpressStatuss(String[] sids);
......@@ -32,10 +30,11 @@ public interface TbCfItemOrderRDao extends BaseDao<TbCfItemOrderREntity> {
int getOrderStatus(String ordersId);
Set<Integer> findOrderStatus(String orderId);
Integer findOrderStatus(String ordersId);
TbCfItemOrderREntity findDeliveryStatus(String[] sids);
int updateIsSend(String ordersId);
List<TbCfItemOrderREntity> getOrderItemsId(String orderId);
}
......@@ -63,4 +63,7 @@ public interface TbCfOrderDao extends BaseDao<TbCfOrderEntity> {
int updateDeliveryStatus(String ordersId);
void updates(TbCfOrderEntity tbCfOrderEntity);
List<TbCfItemDetailEntity> getOrderItemLists(String orderId);
}
......@@ -24,7 +24,7 @@ public interface TbCfPlatformOrderDao extends BaseDao<PlatformOrderVo> {
int updates( PlatformOrderVo tbCfPlatformOrder);
int getOrderId(String sid);
String getOrderId(String sid);
TbCfItemOrderREntity getOrdersId(String sid);
......
......@@ -28,6 +28,8 @@ public class TbCfFinanceEntity implements Serializable {
* 用户id
*/
private String userId;
private String userInfo;
/**
* 支付款项
*/
......@@ -161,4 +163,12 @@ public class TbCfFinanceEntity implements Serializable {
public void setOrderNo(String orderNo) {
this.orderNo = orderNo;
}
public String getUserInfo() {
return userInfo;
}
public void setUserInfo(String userInfo) {
this.userInfo = userInfo;
}
}
......@@ -41,6 +41,10 @@ public class TbCfOrderListEntity implements Serializable {
* 金额
*/
private BigDecimal itemPrice;
/**
* 金额
*/
private BigDecimal realityPay;
/**
* 商品
*/
......@@ -53,6 +57,9 @@ public class TbCfOrderListEntity implements Serializable {
* 收货地址
*/
private String deliveryAddress;
private String deliveryName;
private String deliveryPhone;
/**
* 快递单号
*/
......@@ -232,4 +239,29 @@ public class TbCfOrderListEntity implements Serializable {
public void setUserName(String userName) {
this.userName = userName;
}
public BigDecimal getRealityPay() {
return realityPay;
}
public void setRealityPay(BigDecimal realityPay) {
this.realityPay = realityPay;
}
public String getDeliveryName() {
return deliveryName;
}
public void setDeliveryName(String deliveryName) {
this.deliveryName = deliveryName;
}
public String getDeliveryPhone() {
return deliveryPhone;
}
public void setDeliveryPhone(String deliveryPhone) {
this.deliveryPhone = deliveryPhone;
}
}
......@@ -4,7 +4,6 @@ import com.platform.entity.TbCfItemOrderREntity;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
* 订单商品对应表Service接口
......@@ -88,13 +87,18 @@ public interface TbCfItemOrderRService {
* 修改物流状态为已签收
* @return
*/
int updateExpressStatusDelivery(String[] sids);
int updateExpressStatusDelivery(String time, String[] sids);
Integer getItemNum(String ordersId);
int getOrderStatus(String ordersId);
Set<Integer> findOrderStatus(String orderId);
Integer findOrderStatus(String ordersId);
int updateIsSend(String ordersId);
List<TbCfItemOrderREntity> getOrderItemsId(String orderId);
}
......@@ -70,7 +70,7 @@ public interface TbCfPlatformOrderService {
int deleteBatch(String[] relativeIds);
int getOrderId(String sid);
String getOrderId(String sid);
TbCfItemOrderREntity getOrdersId(String sid);
......
......@@ -9,7 +9,6 @@ import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
* 订单商品对应表Service实现类
......@@ -73,13 +72,6 @@ public class TbCfItemOrderRServiceImpl implements TbCfItemOrderRService {
return tbCfItemOrderRDao.updateExpressStatuss(sids);
}
@Override
public int updateExpressStatusDelivery(String[] sids) {
return tbCfItemOrderRDao.updateExpressStatusDelivery(sids);
}
@Override
public Integer getItemNum(String ordersId) {
return tbCfItemOrderRDao.getItemNum(ordersId);
......@@ -91,8 +83,8 @@ public class TbCfItemOrderRServiceImpl implements TbCfItemOrderRService {
}
@Override
public Set<Integer> findOrderStatus(String orderId) {
return tbCfItemOrderRDao.findOrderStatus(orderId);
public Integer findOrderStatus(String ordersId) {
return tbCfItemOrderRDao.findOrderStatus(ordersId);
}
@Override
......@@ -100,4 +92,14 @@ public class TbCfItemOrderRServiceImpl implements TbCfItemOrderRService {
return tbCfItemOrderRDao.updateIsSend(ordersId);
}
@Override
public List<TbCfItemOrderREntity> getOrderItemsId(String orderId) {
return tbCfItemOrderRDao.getOrderItemsId(orderId);
}
@Override
public int updateExpressStatusDelivery(String time, String[] sids) {
return tbCfItemOrderRDao.updateExpressStatusDelivery(time,sids);
}
}
......@@ -90,6 +90,7 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
int res = 0;
if (StringUtils.isNotEmpty(tbCfPlatformOrder.getRelativeId())) {
tbCfPlatformOrder.setRelativeId(tbCfPlatformOrder.getRelativeId());
tbCfPlatformOrder.setOrderId(tbCfItemOrderRDao.getOrderId(tbCfPlatformOrder.getOrdersId()));
String userId = ShiroUtils.getUserId();
tbCfPlatformOrder.setUserId(userId);
tbCfPlatformOrder.setUserName(sysUserDao.queryById(userId));
......@@ -110,25 +111,19 @@ public class TbCfOrderServiceImpl implements TbCfOrderService {
tbCfItemOrderREntity2.setDeliveryFlag(DeliveryStatusEnum.PURCHASE.getValue());
tbCfItemOrderREntity2.setOrderStatus(OrderStatusEnum.SHIPPED.getValue());
tbCfItemOrderRDao.update(tbCfItemOrderREntity2);
List<TbCfItemDetailEntity> orderItemList = tbCfOrderDao.getOrderItemList(tbCfPlatformOrder.getOrderId());
boolean flag = false;
List<Integer> statusList = new ArrayList<>();
List<TbCfItemDetailEntity> orderItemList = tbCfOrderDao.getOrderItemLists(tbCfPlatformOrder.getOrderId());
Set<Integer> statusList = new HashSet<>();
for (TbCfItemDetailEntity itemList : orderItemList) {
TbCfItemOrderREntity tbCfItemOrder = tbCfItemOrderRDao.getOrderItemId(tbCfPlatformOrder.getOrderId(), itemList.getItemId());
Integer orderStatus = tbCfItemOrder.getOrderStatus();
statusList.add(orderStatus);
}
if (!statusList.contains("20")) {
flag = true;
}
if (flag) {
if(statusList.contains(20)||statusList.size()==0){}else {
TbCfOrderEntity tbCfOrderEntity = new TbCfOrderEntity();
tbCfOrderEntity.setOrderId(tbCfPlatformOrder.getOrderId());
tbCfOrderEntity.setOrderStatus(OrderStatusEnum.SHIPPED.getValue());
tbCfOrderDao.update(tbCfOrderEntity);
tbCfOrderDao.updates(tbCfOrderEntity);
}
//更新发货时间,如果原值为空就更新,否则保留原值
TbCfItemOrderREntity tbCfItemOrderREntity3 = new TbCfItemOrderREntity();
tbCfItemOrderREntity3.setOrderItemId(tbCfPlatformOrder.getOrdersId());
......
......@@ -69,7 +69,7 @@ public class TbCfPlatformOrderServiceImpl implements TbCfPlatformOrderService {
@Override
public int getOrderId(String sid) {
public String getOrderId(String sid) {
return tbCfPlatformOrderDao.getOrderId(sid);
}
......
......@@ -10,10 +10,12 @@ import com.platform.service.TbCfItemOrderRService;
import com.platform.service.TbCfOrderService;
import com.platform.service.TbCfPlatformOrderService;
import com.platform.utils.SMSUtils;
import com.platform.utils.StringUtils;
import com.platform.utils.util.HttpUtils;
import io.swagger.models.auth.In;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
......@@ -67,7 +69,7 @@ public class ExpressStatusTask {
}
@Scheduled(cron = "0 0/10 * * * ? ")
public void expressStatusTaskForStorageA() {
public void expressStatusTaskForStorageA() {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String startime = sdf.format(getStartTime());
String endtime = sdf.format(getEndTime());
......@@ -100,9 +102,9 @@ public void expressStatusTaskForStorageA() {
System.out.println("消耗时间:" + (endTime - startTime) + "ms");
}
@Scheduled(cron = "0 0/10 * * * ? ")
public void expressStatusTaskForDelivery() {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
@Scheduled(cron = "0/50 * * * * ? ")
public void expressStatusTaskForDelivery() {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String startime = sdf.format(getStartTime());
String endtime = sdf.format(getEndTime());
// String startime = "2019-09-29 00:00:00";
......@@ -123,11 +125,17 @@ public void expressStatusTaskForStorageA() {
sids[i] = object.getString("sid");
}
if (sids.length != 0) {
tbCfItemOrderRService.updateExpressStatusDelivery(sids);
String time = sdf.format(new Date());
int result = tbCfItemOrderRService.updateExpressStatusDelivery(time,sids);
System.out.println(result+"数量:");
for (int i = 0; i < sids.length; i++) {
TbCfItemOrderREntity tbCfItemOrderREntity = tbCfPlatformOrderService.getOrdersId(sids[i]);
Set<Integer> statusSet = tbCfItemOrderRService.findOrderStatus(tbCfItemOrderREntity.getOrderId());
if (statusSet.size() == 1 && statusSet.contains("50")) {
Set<Integer> statusSet = new HashSet<>();
List<TbCfItemOrderREntity> orderItemList = tbCfItemOrderRService.getOrderItemsId(tbCfPlatformOrderService.getOrderId(sids[i]));
for (TbCfItemOrderREntity order: orderItemList) {
statusSet.add(tbCfItemOrderRService.findOrderStatus(order.getOrderItemId()));
}
if(statusSet.size()==1&&statusSet.contains(50)){
TbCfItemOrderREntity tbCfItemOrderREntity = tbCfPlatformOrderService.getOrdersId(sids[i]);
TbCfOrderEntity tbCfOrderEntity = new TbCfOrderEntity();
tbCfOrderEntity.setOrderId(tbCfItemOrderREntity.getOrderId());
tbCfOrderEntity.setOrderStatus(OrderStatusEnum.SUCCESS.getValue());
......@@ -135,14 +143,30 @@ public void expressStatusTaskForStorageA() {
tbCfOrderService.updateStatus(tbCfOrderEntity);
}
}
System.out.println("修改了:" + sids.length + "条数据");
}
long endTime = System.currentTimeMillis();
String s2 = sdf.format(System.currentTimeMillis());
System.out.println("签收查询时间:" + s2);
System.out.println("消耗时间:" + (endTime - startTime) + "ms");
}
/* Set<Integer> statusSet = new HashSet<>();
for (int i = 0; i < sids.length; i++) {
TbCfItemOrderREntity tbCfItemOrderREntity = tbCfPlatformOrderService.getOrdersId(sids[i]);
statusSet.add(tbCfItemOrderREntity.getOrderStatus());
}
if (statusSet.size() == 1 && statusSet.contains(50)) {
for (int y = 0; y < sids.length; y++) {
TbCfOrderEntity tbCfOrderEntity = new TbCfOrderEntity();
tbCfOrderEntity.setOrderId(tbCfItemOrderREntity.getOrderId());
tbCfOrderEntity.setOrderStatus(OrderStatusEnum.SUCCESS.getValue());
tbCfOrderEntity.setCloseTime(new Date());
tbCfOrderService.updateStatus(tbCfOrderEntity);
}
}
}
/*
long endTime = System.currentTimeMillis();
String s2 = sdf.format(System.currentTimeMillis());
System.out.println("签收查询时间:"+s2);
System.out.println("消耗时间:"+(endTime -startTime)+"ms");*/
private static Date getStartTime() {
Calendar todayStart = Calendar.getInstance();
todayStart.set(Calendar.HOUR_OF_DAY, 0);
......@@ -178,7 +202,6 @@ public void expressStatusTaskForStorageA() {
String s = HttpUtils.sendPostJson(url, parameters);
JSONObject jsonObject = JSONObject.fromObject(s).getJSONObject("content");
JSONArray data = jsonObject.getJSONArray("data");
long startTime = System.currentTimeMillis();
String[] sids = new String[data.size()];
for (int i = 0; i < sids.length; i++) {
JSONObject object = JSONObject.fromObject(data.getString(i));
......
......@@ -107,9 +107,13 @@
</select>
<select id="queryTotal" resultType="int">
select count(*) from tb_cf_finance
WHERE 1=1
<if test="name != null and name.trim() != ''">
select count(*) from
tb_cf_finance f
left join tb_cf_order r on r.order_id=f.order_id
left join tb_cf_user_info u on f.user_id=u.user_id
left join tb_cf_item_order_r i on i.order_id = r.order_id
WHERE 1=1 and i.enable_flag=1
<if test="name != null and name.trim() != ''">
AND name LIKE concat('%',#{name},'%')
</if>
</select>
......
......@@ -149,8 +149,8 @@
select order_status from tb_cf_item_order_r where order_item_id=#{ordersId}
</select>
<select id="findOrderStatus" >
select order_status from tb_cf_item_order_r where order_id=#{orderId}
<select id="findOrderStatus" resultType="int">
select order_status from tb_cf_item_order_r where order_item_id=#{ordersId}
</select>
<update id="updateIsSend" parameterType="com.platform.entity.TbCfItemOrderREntity">
......@@ -158,12 +158,27 @@
set r.is_send = 1
where r.order_item_id = #{ordersId}
</update>
<select id="getOrderItemsId" resultType="com.platform.entity.TbCfItemOrderREntity">
select
`order_item_id`,
`item_id`,
`order_id`,
`enable_flag`,
`order_status`,
`delivery_flag`,
`delivery_time`,
`close_time`,
`is_send`,
`update_time`
from tb_cf_item_order_r
WHERE 1=1 and order_id=#{orderId}
</select>
<!--根据快递单号id,修改物流状态为已入中国仓库 -->
<update id="updateExpressStatus">
UPDATE tb_cf_order o,tb_cf_platform_order p,tb_cf_item_order_r i
SET i.delivery_flag = 20
WHERE o.order_id=p.order_id and i.order_id=o.order_id and i.delivery_flag=10 and p.p_express_number in
WHERE i.order_item_id=p.relative_id and i.order_id=o.order_id and i.delivery_flag=10 and p.p_express_number in
<foreach collection="array" item="sids" open="(" separator="," close=")">
#{sids}
</foreach>
......@@ -173,7 +188,7 @@
<update id="updateExpressStatuss">
UPDATE tb_cf_order o,tb_cf_platform_order p,tb_cf_item_order_r i
SET i.delivery_flag = 40
WHERE o.order_id=p.order_id and i.order_id=o.order_id and i.delivery_flag=20 and i.is_send=0 and p.p_express_number in
WHERE i.order_item_id=p.relative_id and i.order_id=o.order_id and i.delivery_flag=20 and i.is_send=0 and p.p_express_number in
<foreach collection="array" item="sids" open="(" separator="," close=")">
#{sids}
</foreach>
......@@ -182,8 +197,8 @@
<!--根据快递单号id,修改物流状态为已签收 -->
<update id="updateExpressStatusDelivery">
UPDATE tb_cf_order o,tb_cf_platform_order p,tb_cf_item_order_r i
SET i.delivery_flag = 50,i.order_status=50
WHERE o.order_id=p.order_id and i.order_id=o.order_id and i.delivery_flag=40 and p.p_express_number in
SET i.delivery_flag = 50,i.order_status=50,o.colose_time=#{time}
WHERE i.order_item_id=p.relative_id and i.order_id=o.order_id and i.delivery_flag=40 and p.p_express_number in
<foreach collection="array" item="sids" open="(" separator="," close=")">
#{sids}
</foreach>
......
......@@ -96,7 +96,7 @@
o.order_time,
i.update_time updateTime,
o.deal_time,
i.close_time closeTime,
o.close_time,
i.order_status orderStatus,
o.user_id,
o.user_name,
......@@ -276,6 +276,13 @@
</set>
where r.order_item_id = #{ordersId}
</update>
<update id="updates" parameterType="com.platform.entity.TbCfOrderEntity">
update tb_cf_order
<set>
<if test="orderStatus != null">order_status = #{orderStatus} </if>
</set>
where order_id =#{orderId}
</update>
<update id="updateDescripitionName" parameterType="com.platform.entity.TbCfOrderEntity">
update tb_cf_order
set `descripition_name` = #{descripitionName}
......@@ -296,7 +303,7 @@
update tb_cf_order
<set>
<if test="orderStatus != null">order_status = #{orderStatus},</if>
<if test="closeTime != null">o.close_time = #{closeTime} </if>
<if test="closeTime != null">close_time = #{closeTime} </if>
</set>
where order_id = #{orderId}
</update>
......@@ -310,6 +317,10 @@
select t2.* from tb_cf_item_order_r t1,tb_cf_item_detail t2 where t1.order_id =#{orderId}
and t1.enable_flag=1 and t2.item_id=t1.item_id
</select>
<select id="getOrderItemLists" resultType="com.platform.entity.TbCfItemDetailEntity">
select t2.*
from tb_cf_item_order_r t1 left join tb_cf_item_detail t2 on t2.item_id=t1.item_id where t1.order_id =#{orderId} and t1.enable_flag=1
</select>
<update id="updateDeliveryTime" parameterType="com.platform.entity.TbCfOrderEntity">
update tb_cf_order o left join tb_cf_item_order_r r on r.order_id=o.order_id
......
......@@ -181,9 +181,14 @@
</select>
<select id="getOrdersId" resultType="com.platform.entity.TbCfItemOrderREntity">
select relative_id from tb_cf_platform_order where p_express_number=#{sid}
select
r.order_item_id,
r.order_id,
r.order_status
from tb_cf_platform_order p left join tb_cf_item_order_r r on r.order_item_id=p.relative_id
where 1=1 and p.p_express_number=#{sid}
</select>
<select id="getOrderId" resultType="com.platform.vo.PlatformOrderVo">
<select id="getOrderId" resultType="String">
select order_id from tb_cf_platform_order where p_express_number=#{sid}
</select>
......
......@@ -50,14 +50,14 @@
value-format="yyyy-MM-dd"
:picker-options="pickerOptions">
</el-date-picker>
<el-select v-model="deliveryFlag" placeholder="物流状态">
<!-- <el-select v-model="deliveryFlag" placeholder="物流状态">
<el-option
v-for="item in deliveryFlagOptions"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-select>-->
<el-select v-model="payWayCode" placeholder="支付方式">
<el-option
......
......@@ -37,7 +37,7 @@ $(function () {
{label: '税费', name: 'tax', index: 'tax', width: 80,hidden:true},
{label: '手续费', name: 'fee', index: 'fee', width: 80,hidden:true},
{label: '交易号', name: 'payId', index: 'pay_id', width: 120,hidden:true},
{label: '交易关闭时间', name: 'closeTime', index: 'closeTime', width: 100}]
{label: '交易关闭时间', name: 'closeTime', index: 'close_time', width: 100}]
});
$.get('../tbcfexpresstemplate/queryAll',function (res) {
vm.descripition=JSON.parse(res).list;
......@@ -66,6 +66,8 @@ let vm = new Vue({
ordersId:'',
//代购人
userName: '',
//订单号
orderId: '',
//快递单号
pExpressNumber: '',
//商品品名
......@@ -304,6 +306,8 @@ let vm = new Vue({
descripitionId: '',
//快递单号
pExpressNumber: '',
//订单号
orderId: '',
//实际付款
realityPay: '',
//原网站订单号
......
......@@ -11,15 +11,15 @@ $(function () {
{label: '订单号', name: 'orderNo', index: 'order_no', width: 80},
{label: '用户', name: 'userInfo', index: 'userInfo', width: 120},
{label: '下单时间', name: 'orderTime', index: 'order_time', width: 70},
{label: '下单金额',name: 'realityPay', index: 'reality_pay', width: 45},
{label: '下单金额',name: 'realityPay', index: 'reality_pay', width: 45,formatter: "currency",formatoptions: { prefix:"$"}},
// formatter: "currency",formatoptions: {thousandsSeparator:",",decimalSeparator:".",decimalPlaces:"2", prefix:"$"}}, //在金额前加上$,加上后,页合计无法正常显示。
{label: '收货人', name: 'deliveryName', index: 'delivery_name', width: 100},
{label: '收货地址', name: 'deliveryPhone', index: 'delivery_phone', width: 100},
{label: '收货人手机', name: 'deliveryPhone', index: 'delivery_phone', width: 100},
{label: '收货地址', name: 'deliveryAddress', index: 'delivery_address', width: 100},
{label: '快递单号', name: 'pExpressNumber', index: 'p_express_number', width: 80,sortable:false},
{label: '快递单号', name: 'pExpressNumber', index: 'p_express_number', width: 80,sortable:false ,hidden:true},
{label: '支付方式', name: 'payWayCode', index: 'pay_way_code', width: 45},
{label: '物流状态', name: 'deliveryFlag', index: 'delivery_flag', width: 40,formatter:deliveryFlagFormat},
{label: '代购人', name: 'userName', index: 'user_name', width: 40},
{label: '物流状态', name: 'deliveryFlag', index: 'delivery_flag', width: 40,formatter:deliveryFlagFormat,hidden:true},
{label: '代购人', name: 'userName', index: 'user_name', width: 40,hidden:true},
{label: '总金额', name: 'totalPay', index: 'totalPay', width: 40,hidden:true}
/* , editable:true,edittype:'select',editoptions:{value:{
0:'等待处理', 10:'已经代购', 20:'正在配送', 30:'已到达中国仓', 40:'正运往非洲',50:'买家已签收'}*/
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论