935090232@qq.com
2021-03-05 b4da2725da57633daff22eed89f09d6e33f18560
修改数据库
9 files modified
138 ■■■■ changed files
zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java 29 ●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/hive/bean/SysOrder.java 27 ●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java 9 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/config/db/increment/美度业绩升级.sql 12 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml 19 ●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/readme-jyy 4 ●●● patch | view | raw | blame | history
zq-erp/src/main/resources/templates/views/admin/hive-erp/order/orderXq-form.html 5 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/order-form.html 16 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form.html 17 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java
@@ -56,6 +56,11 @@
public class OrderController extends BaseController {
    @Resource
    private SysOrderService orderService;
    @Autowired
    ShoppingGoodsDao shoppingGoodsDao;
    @Autowired
    private CodeService codeService;
    @Autowired
    private SysOrderItemDao orderItemDao;
@@ -125,6 +130,7 @@
    AjaxResult payOrder(@RequestBody SysOrder sysOrder) {
        SysUsers user = getMe();
        sysOrder.setShopId(user.getShopId());
        sysOrder.setOrderType(SysOrder.ORDER_TYPE_SEAL);
        //校验订单是否满足结算调价,新订单则保存订单,已有订单则删除后更新
        sysOrder = orderService.checkAndSaveOrder(sysOrder);
        orderService.updateReceiptMoney(sysOrder);
@@ -159,17 +165,30 @@
                }
            }
        }
        SysUsers user = getMe();
        sysOrder.setStaffId(user.getSuId());
        sysOrder.setCompanyId(user.getCompanyId());
        sysOrder.setShopId(user.getShopId());
        sysOrder.setStatu(Dictionary.ORDER_STATU_TK);
        sysOrder.setOrderTime(new Date());
        sysOrder.setOrderNo(codeService.getRefundOrderNo());
        //新增订单
        sysOrderDao.insert(sysOrder);
        //插入明细
        for (SysOrderItem item : sysOrder.getItems()) {
            SysOrderItem oldItem=orderItemDao.selectById(item.getId());
            item.setType(oldItem.getType());
            // 取负数
            item.setStatus(Dictionary.ORDER_STATU_TK);
            item.setCount(-item.getCount());
            item.setOrderId(sysOrder.getId());
            item.setId(null);
            orderItemDao.insert(item);
        }
        //校验订单是否满足结算调价,新订单则保存订单,已有订单则删除后更新
        sysOrder = orderService.checkAndSaveOrder(sysOrder);
        orderService.refundOrderMoney(sysOrder);
        //处理用户购买的产品
        return AjaxResult.buildSuccessInstance(Arrays.asList(sysOrder), "订单退款成功");
zq-erp/src/main/java/com/matrix/system/hive/bean/SysOrder.java
@@ -1,6 +1,5 @@
package com.matrix.system.hive.bean;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.matrix.core.tools.DateUtil;
import org.springframework.format.annotation.DateTimeFormat;
@@ -16,7 +15,15 @@
 */
public class SysOrder implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 订单类型-销售订单
     */
    public static final int ORDER_TYPE_SEAL= 1;
    /**
     * 订单类型-退款订单
     */
    public static final int ORDER_TYPE_REFUND= 2;
    /**
     * 序号
@@ -126,7 +133,12 @@
     * 会员姓名
     */
    private String vipNo;
    /**
     * 订单类型1,销售订单,2退款订单
     */
    private Integer orderType;
    /* 会员手机号
     */
    private String vipPhone;
@@ -165,6 +177,7 @@
     */
    private Integer times;
    private String type;
    /**
@@ -196,6 +209,14 @@
        this.shopShortName = shopShortName;
    }
    public Integer getOrderType() {
        return orderType;
    }
    public void setOrderType(Integer orderType) {
        this.orderType = orderType;
    }
    public String getType() {
        return type;
    }
zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java
@@ -176,11 +176,6 @@
    @Override
    public SysOrder checkAndSaveOrder(SysOrder sysOrder) {
        // 收款改变订单状态
        SysOrder source = null;
        if (sysOrder.getId() != null) {
            source = sysOrderDao.selectById(sysOrder.getId());
        }
        // 计算订单折扣金额,收款情况下 计算订单总额
        double zkTotal = 0.0;
@@ -217,6 +212,10 @@
        SysUsers user = (SysUsers) WebUtil.getSession().getAttribute(MatrixConstance.LOGIN_KEY);
        sysOrder.setZkTotal(zkTotal);
        sysOrder.setStatu(orderStatus);
        SysOrder source = null;
        if (sysOrder.getId() != null) {
            source = sysOrderDao.selectById(sysOrder.getId());
        }
        sysOrder.setStaffId(source != null ? source.getStaffId() : user.getSuId());
        sysOrder.setCompanyId(source != null ? source.getCompanyId() : user.getCompanyId());
zq-erp/src/main/resources/config/db/increment/美度业绩升级.sql
@@ -1,3 +1,13 @@
ALTER TABLE `achieve_new`
DROP COLUMN `achieveMoney`,
ADD COLUMN `achieveMoney` double(10, 0) NULL AFTER `company_id`;
ADD COLUMN `achieveMoney` double(10, 0) NULL AFTER `company_id`;
ALTER TABLE `sys_order`
ADD COLUMN `orderType` int(2) NULL COMMENT '订单类型1,销售订单,2退款订单' AFTER `company_id`;
ALTER TABLE `achieve_new`
CHANGE COLUMN `t3` `achieveType` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL AFTER `t2`;
zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml
@@ -23,6 +23,7 @@
        <result property="vipNo" column="VIP_NO"/>
        <result property="staffName" column="STAFF_NAME"/>
        <result property="changeId" column="CHANGE_ID"/>
        <result property="orderType" column="orderType"/>
        <result property="cashPay" column="cash_Pay"/>
        <result property="cardPay" column="card_Pay"/>
@@ -61,7 +62,8 @@
        beatuyId,
        beatuyName,
        pay_time,
        company_id
        company_id,
        orderType
        )
        VALUES (
        #{id},
@@ -83,7 +85,8 @@
        #{beatuyId},
        #{beatuyName},
        #{payTime},
        #{companyId}
        #{companyId},
        #{orderType}
        )
    </insert>
@@ -229,6 +232,9 @@
            <if test="(record.companyId!=null and record.companyId!='') ">
                and a.company_id = #{record.companyId}
            </if>
            <if test="(record.orderType!=null and record.orderType!='') ">
                and a.orderType = #{record.orderType}
            </if>
            <if test="record.beginTimeVo != null  ">
                and a.ORDER_TIME >= #{record.beginTimeVo}
            </if>
@@ -282,6 +288,9 @@
            </if>
            <if test="(record.companyId!=null and record.companyId!='') ">
                and a.company_id = #{record.companyId}
            </if>
            <if test="(record.orderType!=null and record.orderType!='') ">
                and a.orderType = #{record.orderType}
            </if>
            <if test="record.isCross != null and record.isCross !='' ">
                and a.IS_CROSS = #{record.isCross}
@@ -405,6 +414,9 @@
            <if test="(record.companyId!=null and record.companyId!='') ">
                and a.company_id = #{record.companyId}
            </if>
            <if test="(record.orderType!=null and record.orderType!='') ">
                and a.orderType = #{record.orderType}
            </if>
        </if>
    </sql>
@@ -434,6 +446,9 @@
            <if test="(record.companyId!=null and record.companyId!='') ">
                and a.company_id = #{record.companyId}
            </if>
            <if test="(record.orderType!=null and record.orderType!='') ">
                and a.orderType = #{record.orderType}
            </if>
            <if test="record.activity != null and record.activity !='' ">
                and a.ACTIVITY = #{record.activity}
            </if>
zq-erp/src/main/resources/readme-jyy
@@ -6,7 +6,5 @@
产品现金业绩和划扣业绩consume
重构订单,收款,退款等方法不要共用逻辑
修改t3为业绩类型
ALTER TABLE `achieve_new`
CHANGE COLUMN `t3` `achieveType` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL AFTER `t2`;
把所有历史订单的订单类型区分销售订单和退款订单
zq-erp/src/main/resources/templates/views/admin/hive-erp/order/orderXq-form.html
@@ -903,7 +903,8 @@
                console.log("校验业绩是否大于订单收款金额");
                let jsqMap={};
                let isOk=true;
                this.achieveItems.forEach(achieve=>{
                for(let i=0 ; i< this.achieveItems.length; i++){
                    let achieve=this.achieveItems[i];
                    if(!isNaN(achieve.goodsCash)  ){
                        key=achieve.achieveType+achieve.orderItemId;
                        if(!jsqMap[key]){
@@ -921,7 +922,7 @@
                        isOk=false;
                        return;
                    }
                });
                };
                console.log("isOk",isOk);
                return isOk;
            },
zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/order-form.html
@@ -985,7 +985,8 @@
                            let flows = []
                            var total = 0;
                            let isPayMethodOk=true;
                            _this.payMoneys.forEach(item => {
                            for(let i=0; i<_this.payMoneys.length;i++){
                                let item = _this.payMoneys[i];
                                let flow = {};
                                flow.payMethod = item.type;
                                if (!item.money) {
@@ -1000,11 +1001,7 @@
                                }
                                total += parseFloat(item.money);
                                flows.push(flow)
                            })
                            if(!isPayMethodOk){
                                return ;
                            }
                            if (total != _this.order.payMoney) {
                                this.$message.warning("输入付款总金额与应付金额不符");
                                return false;
@@ -1266,7 +1263,8 @@
                console.log("校验业绩是否大于订单收款金额");
                let jsqMap={};
                let isOk=true;
                this.achieveList.forEach(achieve=>{
                for(let i=0 ; i< this.achieveList.length; i++){
                    let achieve=this.achieveList[i];
                    if(!isNaN(achieve.goodsCash)  ){
                        key=achieve.achieveType+achieve.orderItem.uuid;
                        if(!jsqMap[key]){
@@ -1284,7 +1282,7 @@
                        isOk=false;
                        return;
                    }
                });
                };
                console.log("isOk",isOk);
                return isOk;
            },
@@ -1399,6 +1397,10 @@
                    return false;
                }
                if(!this.checkAchieveMoney()){
                    return ;
                }
                _this.dialogSettleVisible = true;
            }
        }
zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form.html
@@ -256,11 +256,15 @@
                                        label="收款">
                                </el-table-column>
                                <el-table-column
                                        prop="t3"
                                        prop="payMethod"
                                        label="支付方式">
                                </el-table-column>
                                <el-table-column
                                        prop="achieveType"
                                        label="业绩类型">
                                </el-table-column>
                                <el-table-column
                                        prop="t1"
                                        prop="goodsCash"
                                        label="原业绩">
                                </el-table-column>
                                <el-table-column
@@ -903,7 +907,8 @@
                console.log("校验业绩是否大于订单收款金额");
                let jsqMap={};
                let isOk=true;
                this.achieveItems.forEach(achieve=>{
                for(let i=0 ; i< this.achieveItems.length; i++){
                    let achieve=this.achieveItems[i];
                    if(!isNaN(achieve.goodsCash)  ){
                        key=achieve.achieveType+achieve.orderItemId;
                        if(!jsqMap[key]){
@@ -914,14 +919,14 @@
                        if(jsqMap[key]>achieve.zkTotal) {
                            this.$message.error("【"+achieve.goodsName + "】业绩分配金额大于支付金额");
                            isOk = false;
                            return;
                            break;
                        }
                    }else{
                        this.$message.error("【"+achieve.goodsName + "】业绩分配金额请填写数字");
                        isOk=false;
                        return;
                        break;
                    }
                });
                }
                console.log("isOk",isOk);
                return isOk;
            },