wang..123
2022-03-25 f4f3c04ba37cec6739370c4aa0b9622493de8a23
Merge branch 'master' of http://47.97.1.152:5880/r/wms_saas
1个文件已添加
14个文件已修改
437 ■■■■■ 已修改文件
src/main/java/zy/cloud/wms/manager/controller/PickoutController.java 95 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/controller/WaveController.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/controller/WorkController.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/entity/Pickout.java 33 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/entity/PickoutDetl.java 46 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/entity/dto/PickOutPrintDTO.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/mapper/OrderDetlMapper.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/service/OrderDetlService.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/service/PickoutService.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/service/impl/OrderDetlServiceImpl.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/service/impl/PickoutServiceImpl.java 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/OrderDetlMapper.xml 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/PickoutMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/static/js/pickout/pickout.js 76 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/webapp/views/pickout/pickout.html 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/zy/cloud/wms/manager/controller/PickoutController.java
@@ -6,10 +6,8 @@
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.core.common.DateUtils;
import zy.cloud.wms.manager.entity.Pickout;
import zy.cloud.wms.manager.entity.PickoutDetl;
import zy.cloud.wms.manager.service.PickoutDetlService;
import zy.cloud.wms.manager.service.PickoutService;
import zy.cloud.wms.manager.entity.*;
import zy.cloud.wms.manager.service.*;
import com.core.annotations.ManagerAuth;
import com.core.common.BaseRes;
import com.core.common.Cools;
@@ -27,6 +25,14 @@
    private PickoutService pickoutService;
    @Autowired
    private PickoutDetlService pickoutDetlService;
    @Autowired
    private WaveService waveService;
    @Autowired
    private OrderService orderService;
    @Autowired
    private WaveDetlService waveDetlService;
    @Autowired
    private OrderDetlService orderDetlService;
    @RequestMapping(value = "/pickout/{id}/auth")
    @ManagerAuth
@@ -44,7 +50,8 @@
        EntityWrapper<Pickout> wrapper = new EntityWrapper<>();
        excludeTrash(param);
        convert(param, wrapper);
        if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));}
//        if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));}
        wrapper.orderBy("wrk_sts",true);
        Page<Pickout> pickoutPage = pickoutService.selectPage(new Page<>(curr, limit), wrapper);
        return R.ok(pickoutPage);
@@ -131,4 +138,82 @@
        return R.ok();
    }
    /**
     * 打印完成之后,将'未打印'状态替换为'拣货中'
     * @param pickout
     * @return
     */
    @RequestMapping("/pickout/print/auth")
    @ManagerAuth
    public R printed(@RequestBody Pickout pickout){
        /**
         * 打印完成,向后台更新数据
         */
        Date now = new Date();
        pickout.setPrintTimes(pickout.getPrintTimes() + 1);
        pickout.setUpdateTime(now);
        pickout.setUpdateBy(getUserId().intValue());
        pickout.setPickStaff(getUserId());
        pickout.setPickStart(now);
        pickout.setWrkSts(2L);
        pickoutService.update(pickout,new EntityWrapper<Pickout>()
                .eq("id",pickout.getId()));
        return R.ok();
    }
    /**
     * 点击完成按钮时,将状态从'拣货中'调整至'已完成'
     */
    @RequestMapping("/pickout/done/auth")
    @ManagerAuth
    public R donePickOut(@RequestBody Pickout pickout){
        HashSet<String> orderNos = new HashSet<>();
        /**
         * 反写拣货单
         */
        pickout.setWrkSts(3L);
        pickout.setPickEnd(new Date());
        pickoutService.update(pickout,new EntityWrapper<Pickout>()
                .eq("id",pickout.getId()));
        List<PickoutDetl> pickoutDetls = pickoutDetlService.selectList(new EntityWrapper<PickoutDetl>()
                .eq("head_id", pickout.getId()));
        if (Cools.isEmpty(pickoutDetls)) {
            return R.error("找不到拣货单明细");
        }
        /**
         * 反写波次
         */
        Wave wave = waveService.selectOne(new EntityWrapper<Wave>()
                .eq("wave_no", pickout.getWaveNo()));
        if (Cools.isEmpty(wave)) {
            return R.error("找不到对应波次");
        }
        wave.setStatus((short) 2);
        waveService.update(wave,new EntityWrapper<Wave>()
                .eq("id",wave.getId()));
        List<WaveDetl> waveDetls = waveDetlService.selectList(new EntityWrapper<WaveDetl>()
                .eq("wave_id", wave.getId()));
        if (Cools.isEmpty(waveDetls)) {
            return R.error("找不到对应波次明细");
        }
        /**
         * 反写出库订单
         */
        for (WaveDetl waveDetl : waveDetls) {
            String[] split = waveDetl.getOrderNos().split(",");
            for (String s : split) {
                orderNos.add(s);
            }
        }
        for (PickoutDetl pickoutDetl : pickoutDetls) {
            Double anfme = pickoutDetl.getAnfme();
            String matnr = pickoutDetl.getMatnr();
            List<OrderDetl> orderDetls = orderDetlService.selectOutList(matnr,new ArrayList<String>(orderNos));
        }
        return R.ok();
    }
}
src/main/java/zy/cloud/wms/manager/controller/WaveController.java
@@ -54,7 +54,8 @@
        EntityWrapper<Wave> wrapper = new EntityWrapper<>();
        excludeTrash(param);
        convert(param, wrapper);
        if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));}
//        if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));}
        wrapper.orderBy("create_time",false);
        return R.ok(waveService.selectPage(new Page<>(curr, limit), wrapper));
    }
src/main/java/zy/cloud/wms/manager/controller/WorkController.java
@@ -40,6 +40,8 @@
    private SnowflakeIdWorker snowflakeIdWorker;
    @Autowired
    private OrderService orderService;
    @Autowired
    private PickoutService pickoutService;
    @Autowired
    private ReceiveService receiveService;
@@ -85,6 +87,12 @@
        return workService.stockOutPrint(stockOutParam, getUserId(), getHostId());
    }
    @RequestMapping("/pick/out/print")
    @ManagerAuth(memo = "PickOut打印拣货单")
    public R pickOutPrint(@RequestBody Pickout pickout){
        return pickoutService.stockOutPrint(pickout,getUserId(), getHostId());
    }
    @RequestMapping("/stock/allot")
    @ManagerAuth(memo = "库存调拨")
    public R stockAllot() {
src/main/java/zy/cloud/wms/manager/entity/Pickout.java
@@ -101,6 +101,18 @@
    @TableField("wave_no")
    private String waveNo;
    @TableField("print_times")
    private Integer printTimes;
    @TableField("pick_staff")
    private Long pickStaff;
    @TableField("pick_start")
    private Date pickStart;
    @TableField("pick_end")
    private Date pickEnd;
    public Pickout() {}
@@ -122,14 +134,12 @@
            return "未打印";
        }
        if (this.wrkSts == 2) {
            return "未拣货";
            return "拣货中";
        }
        if (this.wrkSts == 3) {
            return "开始拣货";
            return "已完成";
        }
        if (this.wrkSts == 4) {
            return "拣货完成";
        }
        return "";
    }
    public Long getId() {
@@ -191,6 +201,7 @@
        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime);
    }
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
@@ -234,5 +245,17 @@
        this.memo = memo;
    }
    public String getPickStart$() {
        if (Cools.isEmpty(this.pickStart)){
            return "";
        }
        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.pickStart);
    }
    public String getPickEnd$() {
        if (Cools.isEmpty(this.pickEnd)){
            return "";
        }
        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.pickEnd);
    }
}
src/main/java/zy/cloud/wms/manager/entity/PickoutDetl.java
@@ -2,7 +2,10 @@
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.enums.IdType;
import com.core.common.Cools;import io.swagger.annotations.ApiModelProperty;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Cools;
import com.core.common.SpringUtils;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.annotations.ApiModelProperty;
import com.baomidou.mybatisplus.annotations.TableField;
import io.swagger.annotations.ApiModelProperty;
@@ -43,6 +46,11 @@
import io.swagger.annotations.ApiModelProperty;
import com.baomidou.mybatisplus.annotations.TableName;
import zy.cloud.wms.manager.service.PickoutService;
import zy.cloud.wms.manager.service.impl.PickoutServiceImpl;
import zy.cloud.wms.system.entity.User;
import zy.cloud.wms.system.service.UserService;
import java.io.Serializable;
@Data
@@ -228,6 +236,7 @@
    @TableField("wrk_no")
    private String wrkNo;
    public PickoutDetl() {}
@@ -402,6 +411,21 @@
        return pickStaff;
    }
    public String getPickStaff$(){
        PickoutService pickoutService = SpringUtils.getBean(PickoutService.class);
        Pickout pickout = pickoutService.selectOne(new EntityWrapper<Pickout>()
                .eq("id", this.headId));
        if (!Cools.isEmpty(pickout)) {
            UserService service = SpringUtils.getBean(UserService.class);
            User user = service.selectOne(new EntityWrapper<User>()
                    .eq("id", pickout.getPickStaff()));
            if (!Cools.isEmpty(user)) {
                return user.getNickname();
            }
        }
        return "";
    }
    public void setPickStaff(Long pickStaff) {
        this.pickStaff = pickStaff;
    }
@@ -411,11 +435,16 @@
    }
    public String getPickStart$(){
        if (Cools.isEmpty(this.pickStart)){
            return "";
        PickoutService service = SpringUtils.getBean(PickoutService.class);
        Pickout pickout = service.selectOne(new EntityWrapper<Pickout>()
                .eq("id", this.headId));
        if (!Cools.isEmpty(pickout)) {
            return pickout.getPickStart$();
        }
        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.pickStart);
        return "";
    }
    public void setPickStart(Date pickStart) {
        this.pickStart = pickStart;
@@ -426,10 +455,13 @@
    }
    public String getPickEnd$(){
        if (Cools.isEmpty(this.pickEnd)){
            return "";
        PickoutService service = SpringUtils.getBean(PickoutService.class);
        Pickout pickout = service.selectOne(new EntityWrapper<Pickout>()
                .eq("id", this.headId));
        if (!Cools.isEmpty(pickout)) {
            return pickout.getPickEnd$();
        }
        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.pickEnd);
        return "";
    }
    public void setPickEnd(Date pickEnd) {
src/main/java/zy/cloud/wms/manager/entity/dto/PickOutPrintDTO.java
New file
@@ -0,0 +1,18 @@
package zy.cloud.wms.manager.entity.dto;
import lombok.Data;
import lombok.NoArgsConstructor;
import zy.cloud.wms.manager.entity.Pickout;
import zy.cloud.wms.manager.entity.PickoutDetl;
import java.util.List;
@Data
@NoArgsConstructor
public class PickOutPrintDTO {
    private Pickout pickout;
    private List<PickoutDetl> pickoutDetls;
    private Double total;
    private String workerName;
    private String custName;
}
src/main/java/zy/cloud/wms/manager/mapper/OrderDetlMapper.java
@@ -7,6 +7,7 @@
import zy.cloud.wms.manager.entity.Order;
import zy.cloud.wms.manager.entity.OrderDetl;
import java.util.ArrayList;
import java.util.List;
@Mapper
@@ -16,4 +17,6 @@
    List<OrderDetl> selectByOrderNo(@Param("orderNo") String orderNo, @Param("hostId") Long hostId);
    List<OrderDetl> selectBatchByOrderNo(List<Order> orders);
    List<OrderDetl> selectOutList(@Param("matnr") String matnr, @Param("list") ArrayList<String> list);
}
src/main/java/zy/cloud/wms/manager/service/OrderDetlService.java
@@ -4,6 +4,7 @@
import zy.cloud.wms.manager.entity.Order;
import zy.cloud.wms.manager.entity.OrderDetl;
import java.util.ArrayList;
import java.util.List;
public interface OrderDetlService extends IService<OrderDetl> {
@@ -11,4 +12,6 @@
    List<OrderDetl> selectByOrderNo(String orderNo, Long hostId);
    List<OrderDetl> selectBatchByOrderNo(List<Order> orders);
    List<OrderDetl> selectOutList(String matnr, ArrayList<String> strings);
}
src/main/java/zy/cloud/wms/manager/service/PickoutService.java
@@ -1,9 +1,12 @@
package zy.cloud.wms.manager.service;
import com.core.common.R;
import zy.cloud.wms.manager.entity.Pickout;
import com.baomidou.mybatisplus.service.IService;
public interface PickoutService extends IService<Pickout> {
    void updateWaveStatus(String waveNo);
    R stockOutPrint(Pickout pickout, Long userId, Long hostId);
}
src/main/java/zy/cloud/wms/manager/service/impl/OrderDetlServiceImpl.java
@@ -7,6 +7,7 @@
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
@Service("orderDetlService")
@@ -21,4 +22,9 @@
    public List<OrderDetl> selectBatchByOrderNo(List<Order> orders) {
        return this.baseMapper.selectBatchByOrderNo(orders);
    }
    @Override
    public List<OrderDetl> selectOutList(String matnr, ArrayList<String> strings) {
        return this.baseMapper.selectOutList(matnr,strings);
    }
}
src/main/java/zy/cloud/wms/manager/service/impl/PickoutServiceImpl.java
@@ -1,16 +1,91 @@
package zy.cloud.wms.manager.service.impl;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.core.common.Cools;
import com.core.common.R;
import org.springframework.beans.factory.annotation.Autowired;
import zy.cloud.wms.manager.entity.PickoutDetl;
import zy.cloud.wms.manager.entity.dto.PickOutPrintDTO;
import zy.cloud.wms.manager.mapper.PickoutMapper;
import zy.cloud.wms.manager.entity.Pickout;
import zy.cloud.wms.manager.service.PickoutDetlService;
import zy.cloud.wms.manager.service.PickoutService;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import zy.cloud.wms.system.entity.Host;
import zy.cloud.wms.system.entity.User;
import zy.cloud.wms.system.service.HostService;
import zy.cloud.wms.system.service.UserService;
import java.util.List;
@Service("pickoutService")
public class PickoutServiceImpl extends ServiceImpl<PickoutMapper, Pickout> implements PickoutService {
    @Autowired
    private PickoutService pickoutService;
    @Autowired
    private PickoutDetlService pickoutDetlService;
    @Autowired
    private UserService userService;
    @Autowired
    private HostService hostService;
    @Override
    public void updateWaveStatus(String waveNo) {
        this.baseMapper.updateWaveStatus(waveNo);
    }
    /**
     * 打印拣货单
     * @param pickout
     * @param userId
     * @param hostId
     * @return
     */
    @Override
    public R stockOutPrint(Pickout pickout, Long userId, Long hostId) {
        /**
         * 初始化与控管
         */
        PickOutPrintDTO printDTO = new PickOutPrintDTO();
        Double total = 0.0;
        List<PickoutDetl> pickoutDetls = pickoutDetlService.selectList(new EntityWrapper<PickoutDetl>()
                .eq("head_id", pickout.getId()));
        if (Cools.isEmpty(pickoutDetls)) {
            return R.error("无法找到该单据明细");
        }
        for (PickoutDetl pickoutDetl : pickoutDetls) {
            total = total + pickoutDetl.getAnfme();
        }
        if (Cools.isEmpty(userId)) {
            User user = userService.selectOne(new EntityWrapper<User>()
                    .eq("id", userId));
            if (Cools.isEmpty(user)) {
                printDTO.setWorkerName("默认拣货员");
            }
            else {
                printDTO.setWorkerName(user.getNickname());
            }
        }else {
            printDTO.setWorkerName("默认拣货员");
        }
        if (Cools.isEmpty(hostId)) {
            Host host = hostService.selectOne(new EntityWrapper<Host>()
                    .eq("id", hostId));
            if (Cools.isEmpty(host)) {
                printDTO.setCustName("默认商户");
            }else {
                printDTO.setCustName(host.getName());
            }
        }else {
            printDTO.setCustName("默认商户");
        }
        printDTO.setPickoutDetls(pickoutDetls);
        printDTO.setPickout(pickout);
        printDTO.setTotal(total);
        return R.ok().add(printDTO);
    }
}
src/main/resources/mapper/OrderDetlMapper.xml
@@ -46,5 +46,13 @@
            order_no = #{orders.orderNo}
        </foreach>
    </select>
    <select id="selectOutList" resultMap="BaseResultMap">
        SELECT * FROM man_order_detl WHERE 1 = 1
                                       AND matnr = #{matnr}
        AND
        <foreach collection="list" open="(" close=")" separator="or" index="index" item="item">
            order_no = #{item}
        </foreach>
    </select>
</mapper>
src/main/resources/mapper/PickoutMapper.xml
@@ -18,6 +18,10 @@
        <result column="order_qty" property="orderQty" />
        <result column="order_nos" property="orderNos" />
        <result column="wave_no" property="waveNo" />
        <result column="print_times" property="printTimes" />
        <result column="pick_staff" property="pickStaff" />
        <result column="pick_start" property="pickStart" />
        <result column="pick_end" property="pickEnd" />
    </resultMap>
    <update id="updateWaveStatus">
src/main/webapp/static/js/pickout/pickout.js
@@ -41,6 +41,7 @@
            ,{field: 'userId', align: 'center',title: '用户ID', hide: true}
            ,{field: 'wrkSts$', align: 'center',title: '工作状态' ,templet: '#wrkStsTpl' , width: 100}
            ,{field: 'printTimes', align: 'center', title: '打印次数',width: 90}
            ,{field: 'zpallet', align: 'center',title: '条形码' , hide:true}
            ,{field: 'createTime$', align: 'center',title: '', hide:true}
            ,{field: 'createBy', align: 'center',title: '', hide:true}
@@ -57,6 +58,9 @@
    // 监听行工具事件
    table.on('tool(leftTable)', function(obj){
        var data = obj.data;
        switch (obj.event) {
            case 'printOrder':
                printPick(data);
@@ -64,6 +68,9 @@
            case "del":
                var ids = [data.id];
                del(ids);
                break;
            case "complete":
                donePickOut(data);
                break;
        }
    });
@@ -121,8 +128,73 @@
        tableReload(false);
    });
    function printPick(data){
    function donePickOut(data) {
        $.ajax({
            url:baseUrl + "/pickout/done/auth",
            headers : {'token' : localStorage.getItem('token')},
            data: JSON.stringify(data),
            contentType:'application/json;charset=UTF-8',
            method: 'POST',
            success: function (res) {
                leftTB.reload();
            }
        })
    }
    function printPick(data){
        $.ajax({
            url:baseUrl + "/work/pick/out/print",
            headers : {'token' : localStorage.getItem('token')},
            data: JSON.stringify(data),
            contentType:'application/json;charset=UTF-8',
            method: 'POST',
            success: function (res) {
                    if (res.code === 200){
                        console.log(res);
                        res.data["barcodeUrl"]=baseUrl+"/order/code/auth?type=1&param="+res.data.pickout.wrkNo;
                        var tpl = $('#pakoutPrintTpl').html();
                        var template = Handlebars.compile(tpl);
                        var html = template(res);
                        var box = $("#pakoutPrintBox");
                        box.html(html);box.show();
                        box.print({
                            mediaPrint:true,
                            deferred: $.Deferred().done(function () {
                                layer.confirm('[重要] 打印是否成功?',  {btn: ['Yes', 'No']}, function(){
                                    $.ajax({
                                        url: baseUrl+"/pickout/print/auth",
                                        headers: {'token': localStorage.getItem('token')},
                                        data: JSON.stringify(res.data.pickout),
                                        contentType:'application/json;charset=UTF-8',
                                        method: 'POST',
                                        success: function (res) {
                                            if (res.code === 200){
                                                layer.closeAll();
                                                $(".layui-laypage-btn")[0].click();
                                                layer.msg(res.msg, {icon: 1})
                                            } else if (res.code === 403){
                                                top.location.href = baseUrl+"/";
                                            } else {
                                                layer.msg(res.msg, {icon: 2})
                                            }
                                            leftTB.reload();
                                        }
                                    })
                                });
                            })
                        });
                        box.hide();
                    }
                    else if (res.code === 403){
                        top.location.href = baseUrl+"/";
                    }else {
                        layer.msg(res.msg, {icon: 2})
                    }
            }
        })
    }
@@ -158,7 +230,7 @@
            ,{field: 'price', align: 'center',title: '价格', hide:true}
            ,{field: 'weight', align: 'center',title: '重量', hide:true}
            ,{field: 'status', align: 'center',title: '状态' , hide:true}
            ,{field: 'pickStaff', align: 'center',title: '拣货员ID'}
            ,{field: 'pickStaff$', align: 'center',title: '拣货员ID'}
            ,{field: 'pickStart$', align: 'center',title: '拣货开始时间'}
            ,{field: 'pickEnd$', align: 'center',title: '拣货结束时间'}
            ,{field: 'createTime$', align: 'center',title: '创建时间', hide:true}
src/main/webapp/views/pickout/pickout.html
@@ -112,6 +112,8 @@
    </div>
</div>
<!-- 打印容器 -->
<div id="pakoutPrintBox" style="display: none"></div>
<!--&lt;!&ndash; 搜索栏 &ndash;&gt;-->
<!--<div id="search-box" class="layui-form layui-card-header">-->
<!--    <div class="layui-inline">-->
@@ -139,9 +141,7 @@
</script>
<script type="text/html" id="operate">
    {{#if (d.wrkSts == 3){ }}
    <a class="layui-btn layui-btn-xs btn-complete" lay-event="complete">完成</a>
    {{# } }}
    {{#if (d.wrkSts == 1||d.wrkSts == 2){ }}
    <a class="layui-btn layui-btn-xs layui-btn-normal" lay-event="printOrder">打印拣货单</a>
    {{# } }}
@@ -149,8 +149,11 @@
<!--    <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">详情</a>-->
    {{#if (d.wrkSts == 1||d.wrkSts == 2){ }}
    {{#if (d.wrkSts == 1){ }}
    <a class="layui-btn layui-btn-danger layui-btn-xs btn-edit" lay-event="del">撤销</a>
    {{# } }}
    {{#if (d.wrkSts == 2){ }}
    <a class="layui-btn layui-btn-xs btn-complete" lay-event="complete">完成</a>
    {{# } }}
<!--    <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">修改</a>-->
@@ -170,7 +173,9 @@
<script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script>
<script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/jquery/jQuery.print.js"></script>
<script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
<script type="text/javascript" src="../../static/js/handlebars/handlebars-v4.5.3.js"></script>
<script type="text/javascript" src="../../static/js/pickout/pickout.js" charset="utf-8"></script>
</body>
<!-- 表单弹窗 -->
@@ -249,5 +254,48 @@
        </div>
    </form>
</script>
<script type="text/template" id="pakoutPrintTpl">
    <!-- 头 -->
    <div id="print-header" style="margin: 20px 0">
        <div style="text-align: center">
            <div style="text-align: center;margin-bottom: 10px">
                <span style="font-family: 宋体"> 拣货单 </span>
            </div>
            <img class="template-code template-qrcode" src="{{data.barcodeUrl}}" style="width: 80%">
            <p style="letter-spacing: 2px;margin-top: 5px">{{data.pickout.wrkNo}}</p>
        </div>
        <div style="font-size: xx-small; text-align: left; margin-top: 10px">
            <span style="font-family: 宋体">客户:{{data.custName}}</span>
        </div>
        <div style="margin-top: 10px">
            <div style="float: left;width: 50%; text-align: left">
                <span style="font-size: xx-small;font-family: 宋体">拣货数量:{{data.total}}</span>
            </div>
            <div style="float: left; width: 50%; text-align: right">
                <span style="font-size: xx-small;font-family: 宋体">拣货人:{{data.workerName}}</span>
            </div>
            <div style="clear:both;"></div>
        </div>
    </div>
    <!-- 主体 -->
    <div style="margin-top: 10px">
        {{#each data.pickoutDetls}}
        <div class="pakout-item" style="padding: 10px 5px 10px 5px;border-top: 1px solid #525252">
            <div class="item-header" style="margin-top: 10px;font-family: 宋体; font-size: x-small">
                {{maktx}}
            </div>
            <div class="item-content" style="margin: 10px 0 ">
                <div style="float: left;font-family: 宋体; font-size: xx-small">{{anfme}}{{unit}}</div>
                <div style="float: right;font-family: 宋体; font-size: xx-small">货位:{{nodeName}}</div>
                <div style="clear: both;"></div>
            </div>
        </div>
        {{/each}}
    </div>
</script>
</html>