Merge branch 'master' of http://47.97.1.152:5880/r/wms_saas
| | |
| | | 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; |
| | |
| | | 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 |
| | |
| | | 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); |
| | |
| | | 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(); |
| | | } |
| | | |
| | | } |
| | |
| | | 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)); |
| | | } |
| | | |
| | |
| | | private SnowflakeIdWorker snowflakeIdWorker; |
| | | @Autowired |
| | | private OrderService orderService; |
| | | @Autowired |
| | | private PickoutService pickoutService; |
| | | |
| | | @Autowired |
| | | private ReceiveService receiveService; |
| | |
| | | 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() { |
| | |
| | | @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() {} |
| | | |
| | | |
| | |
| | | return "未打印"; |
| | | } |
| | | if (this.wrkSts == 2) { |
| | | return "未拣货"; |
| | | return "拣货中"; |
| | | } |
| | | if (this.wrkSts == 3) { |
| | | return "开始拣货"; |
| | | return "已完成"; |
| | | } |
| | | if (this.wrkSts == 4) { |
| | | return "拣货完成"; |
| | | } |
| | | |
| | | return ""; |
| | | } |
| | | public Long getId() { |
| | |
| | | return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime); |
| | | } |
| | | |
| | | |
| | | public void setCreateTime(Date createTime) { |
| | | this.createTime = createTime; |
| | | } |
| | |
| | | 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); |
| | | } |
| | | } |
| | |
| | | |
| | | 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; |
| | |
| | | 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 |
| | |
| | | @TableField("wrk_no") |
| | | private String wrkNo; |
| | | |
| | | |
| | | public PickoutDetl() {} |
| | | |
| | | |
| | |
| | | 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; |
| | | } |
| | |
| | | } |
| | | |
| | | 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; |
| | |
| | | } |
| | | |
| | | 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) { |
New file |
| | |
| | | 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; |
| | | } |
| | |
| | | import zy.cloud.wms.manager.entity.Order; |
| | | import zy.cloud.wms.manager.entity.OrderDetl; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | |
| | | @Mapper |
| | |
| | | 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); |
| | | } |
| | |
| | | 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> { |
| | |
| | | List<OrderDetl> selectByOrderNo(String orderNo, Long hostId); |
| | | |
| | | List<OrderDetl> selectBatchByOrderNo(List<Order> orders); |
| | | |
| | | List<OrderDetl> selectOutList(String matnr, ArrayList<String> strings); |
| | | } |
| | |
| | | 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); |
| | | } |
| | |
| | | import com.baomidou.mybatisplus.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | |
| | | @Service("orderDetlService") |
| | |
| | | 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); |
| | | } |
| | | } |
| | |
| | | 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); |
| | | } |
| | | } |
| | |
| | | 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> |
| | |
| | | <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"> |
| | |
| | | ,{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} |
| | |
| | | // 监听行工具事件 |
| | | table.on('tool(leftTable)', function(obj){ |
| | | var data = obj.data; |
| | | |
| | | |
| | | |
| | | switch (obj.event) { |
| | | case 'printOrder': |
| | | printPick(data); |
| | |
| | | case "del": |
| | | var ids = [data.id]; |
| | | del(ids); |
| | | break; |
| | | case "complete": |
| | | donePickOut(data); |
| | | break; |
| | | } |
| | | }); |
| | |
| | | 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¶m="+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}) |
| | | } |
| | | |
| | | } |
| | | |
| | | }) |
| | | } |
| | | |
| | | |
| | |
| | | ,{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} |
| | |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- 打印容器 --> |
| | | <div id="pakoutPrintBox" style="display: none"></div> |
| | | <!--<!– 搜索栏 –>--> |
| | | <!--<div id="search-box" class="layui-form layui-card-header">--> |
| | | <!-- <div class="layui-inline">--> |
| | |
| | | </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> |
| | | {{# } }} |
| | |
| | | |
| | | |
| | | <!-- <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>--> |
| | | |
| | |
| | | <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> |
| | | <!-- 表单弹窗 --> |
| | |
| | | </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> |
| | | |