| | |
| | | import com.core.common.DateUtils; |
| | | import com.core.common.R; |
| | | import com.zy.asrs.entity.LocDetl; |
| | | import com.zy.asrs.entity.ManLocDetl; |
| | | import com.zy.asrs.entity.Mat; |
| | | import com.zy.asrs.mapper.LocDetlMapper; |
| | | import com.zy.asrs.service.LocDetlService; |
| | | import com.zy.asrs.service.ManLocDetlService; |
| | | import com.zy.asrs.service.MatService; |
| | | import com.zy.common.web.BaseController; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | |
| | | @RequestParam(defaultValue = "10")Integer limit, |
| | | @RequestParam String matnr) { |
| | | EntityWrapper<LocDetl> locDetlEntityWrapper = new EntityWrapper<>(); |
| | | locDetlEntityWrapper.eq("matnr", matnr); |
| | | locDetlEntityWrapper.like("model", matnr).orderBy("manu_date",true); |
| | | Page<LocDetl> locDetlPage = locDetlService.selectPage(new Page<>(curr, limit), locDetlEntityWrapper); |
| | | return R.ok(locDetlPage); |
| | | } |
| | |
| | | import com.zy.asrs.entity.Mat; |
| | | import com.zy.asrs.entity.MatPrint; |
| | | import com.zy.asrs.entity.OrderDetl; |
| | | import com.zy.asrs.entity.param.EmptyPlateOutParam; |
| | | import com.zy.asrs.entity.result.KeyValueVo; |
| | | import com.zy.asrs.service.MatService; |
| | | import com.zy.asrs.utils.MatExcelListener; |
| | |
| | | } |
| | | |
| | | @RequestMapping(value = "/mat/split") |
| | | @ManagerAuth |
| | | @ManagerAuth(memo = "解析物料码") |
| | | public R split(@RequestParam("matnr") String matnr) { |
| | | if (Cools.isEmpty(matnr)) { |
| | | return R.error("数据为空"); |
| | |
| | | if (split.length != 8) { |
| | | return R.error("数据错误"); |
| | | } |
| | | Mat mat = matService.selectOne(new EntityWrapper<Mat>().eq("matnr", split[0])); |
| | | if (Cools.isEmpty(mat)){ |
| | | return R.error("未查询到物料信息,"+split[0]); |
| | | } |
| | | // Mat mat = matService.selectOne(new EntityWrapper<Mat>().eq("matnr", split[0])); |
| | | // if (Cools.isEmpty(mat)){ |
| | | // return R.error("未查询到物料信息,"+split[0]); |
| | | // } |
| | | Map<String, Object> map = new HashMap<>(); |
| | | map.put("matnr", split[0]); |
| | | map.put("batch", split[1]); |
| | |
| | | } |
| | | |
| | | @PostMapping("/outbound/auth") |
| | | @ManagerAuth |
| | | @ManagerAuth(memo = "pda出库") |
| | | public R pdaOutbound(@RequestBody JSONObject param){ //pda出库 |
| | | return R.ok(); |
| | | return mobileService.pdaOutbound(param,getUserId()); |
| | | } |
| | | |
| | | |
| | |
| | | @Autowired |
| | | private OpenService openService; |
| | | |
| | | @PostMapping("/agv/allowWarehousing") |
| | | @AppAuth(memo = "是否允许agv申请入库接口") |
| | | public synchronized R synCallowWarehousing(@RequestHeader(required = false) String appkey, |
| | | @RequestBody(required = false) Map<String,Object> param, |
| | | HttpServletRequest request){ |
| | | auth(appkey, param, request); |
| | | return openService.synCallowWarehousing(); |
| | | } |
| | | |
| | | @PostMapping("/agv/warehousing") |
| | | @AppAuth(memo = "agv申请入库接口") |
| | | public synchronized R syncWarehousing(@RequestHeader(required = false) String appkey, |
| | | @RequestBody CombParam param, |
| | | HttpServletRequest request){ |
| | | auth(appkey, param, request); |
| | | return openService.syncWarehousing(param); |
| | | } |
| | | |
| | | @PostMapping("/agv/agvAskOpen") |
| | | @AppAuth(memo = "agv出入库请求wms开门") |
| | | public synchronized R agvAskOpen(@RequestHeader(required = false) String appkey, |
| | | @RequestBody AgvAskOpenParam param, |
| | | HttpServletRequest request) { |
| | | auth(appkey, param, request); |
| | | if(Cools.isEmpty(param)) { |
| | | throw new CoolException("请检测入库参数:" + param); |
| | | } |
| | | return openService.agvAskOpen(param); |
| | | } |
| | | |
| | | @PostMapping("/order/matSync/default/v1") |
| | | @AppAuth(memo = "商品信息同步接口") |
| | | public synchronized R syncMatInfo(@RequestHeader(required = false) String appkey, |
| | |
| | | } |
| | | openService.syncMat(param); |
| | | return R.ok(); |
| | | } |
| | | |
| | | @PostMapping("/agv/allowWarehousing") |
| | | @AppAuth(memo = "是否允许agv申请入库接口") |
| | | public synchronized R synCallowWarehousing(@RequestHeader(required = false) String appkey, |
| | | @RequestBody(required = false) Map<String,Object> param, |
| | | HttpServletRequest request){ |
| | | auth(appkey, param, request); |
| | | if (Cools.isEmpty(param)) { |
| | | return R.parse("请求参数为空"); |
| | | } |
| | | Object flag = param.get("flag"); |
| | | if(Cools.isEmpty(flag)) { |
| | | return R.parse("参数flag不能为空"); |
| | | } |
| | | |
| | | return openService.synCallowWarehousing((String) flag); |
| | | } |
| | | |
| | | @PostMapping("/agv/warehousing") |
| | | @AppAuth(memo = "agv申请入库接口") |
| | | public synchronized R syncWarehousing(@RequestHeader(required = false) String appkey, |
| | | @RequestBody FullStoreParam param, |
| | | HttpServletRequest request){ |
| | | auth(appkey, param, request); |
| | | return openService.syncWarehousing(param); |
| | | } |
| | | |
| | | @PostMapping("/agv/getOutboundMaterials") |
| | | @AppAuth(memo = "agv获取出库物料信息") |
| | | public synchronized R syncGetOutboundMaterials(@RequestHeader(required = false) String appkey, |
| | | @RequestBody Map<String,Object> param, |
| | | HttpServletRequest request){ |
| | | auth(appkey, param, request); |
| | | if (Cools.isEmpty(param)) { |
| | | return R.parse("请求参数为空"); |
| | | } |
| | | Object flag = param.get("flag"); |
| | | if(Cools.isEmpty(flag)) { |
| | | return R.parse("参数flag不能为空"); |
| | | } |
| | | return openService.getOutboundMaterials((String) flag); |
| | | } |
| | | |
| | | /****************************************************************************/ |
| New file |
| | |
| | | package com.zy.asrs.entity.param; |
| | | |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * Created by vincent on 2022/4/9 |
| | | */ |
| | | @Data |
| | | public class AgvAskOpenParam { |
| | | // 出库请求wms开门0,入库请求wms开门1 |
| | | private int flag; |
| | | |
| | | private String matnr; // 物料编码 |
| | | |
| | | private String batch; // 批号 |
| | | |
| | | } |
| | |
| | | Double curOutQty, Integer ioType, Long userId, Date now); |
| | | |
| | | /** |
| | | * pda出库 |
| | | */ |
| | | R pdaOutbound(JSONObject param,long userId); |
| | | /** |
| | | * 人工呼叫空托盘(pda) |
| | | * @param stnNo 出库站点号 |
| | | * @param userId 操作用户 |
| | |
| | | public interface OpenService { |
| | | |
| | | /** |
| | | * 是否允许agv申请入库 |
| | | */ |
| | | R synCallowWarehousing(); |
| | | |
| | | /** |
| | | * agv申请wms生成入库任务 |
| | | */ |
| | | R syncWarehousing(CombParam param); |
| | | |
| | | |
| | | /** |
| | | * agv出入库请求wms开门 |
| | | */ |
| | | R agvAskOpen(AgvAskOpenParam param); |
| | | |
| | | /** |
| | | * 添加入库单 |
| | | */ |
| | | void pakinOrderCreate(OpenOrderPakinParam param); |
| | |
| | | */ |
| | | void syncMat(MatSyncParam param); |
| | | |
| | | /** |
| | | * 是否允许agv申请入库 |
| | | * @param flag agv标识 |
| | | * @return 200成功,其他失败 |
| | | */ |
| | | R synCallowWarehousing(String flag); |
| | | |
| | | /** |
| | | * agv申请wms生成入库任务 |
| | | * @param param 物料信息 |
| | | * @return 200成功,其他失败 |
| | | */ |
| | | R syncWarehousing(FullStoreParam param); |
| | | |
| | | /** |
| | | * agv获取出库物料信息 |
| | | * @param flag agv标识 |
| | | * @return 物料信息 |
| | | */ |
| | | R getOutboundMaterials(String flag); |
| | | } |
| | |
| | | if(station.getAutoing()==null || !station.getAutoing().equals("Y")) { |
| | | throw new CoolException(devpNo+"站点不是自动状态"); |
| | | } |
| | | if(station.getLoading()==null || !station.getLoading().equals("Y")) { |
| | | throw new CoolException(devpNo+"站点无物"); |
| | | } |
| | | // if(station.getLoading()==null || !station.getLoading().equals("Y")) { |
| | | // throw new CoolException(devpNo+"站点无物"); |
| | | // } |
| | | if(station.getWrkNo()!=null && station.getWrkNo()>0 && station.getWrkNo() < 9990) { |
| | | throw new CoolException(devpNo+"站点已有工作号"); |
| | | } |
| | |
| | | import com.core.common.*; |
| | | import com.core.exception.CoolException; |
| | | import com.zy.asrs.entity.*; |
| | | import com.zy.asrs.entity.param.CombParam; |
| | | import com.zy.asrs.entity.param.MobileAdjustParam; |
| | | import com.zy.asrs.entity.param.OffSaleParam; |
| | | import com.zy.asrs.entity.param.OpenOrderPakinParam; |
| | | import com.zy.asrs.entity.param.*; |
| | | import com.zy.asrs.mapper.ManLocDetlMapper; |
| | | import com.zy.asrs.mapper.WrkMastMapper; |
| | | import com.zy.asrs.service.*; |
| | |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.*; |
| | | |
| | | /** |
| | |
| | | } |
| | | } |
| | | |
| | | @Resource |
| | | private WorkService workService; |
| | | |
| | | @Override |
| | | public R pdaOutbound(JSONObject param,long userId) { |
| | | int sta = (int) param.get("sta"); |
| | | List<Map<String,Object>> combMats = (List<Map<String,Object>>) param.get("combMats"); |
| | | if (sta == 0 || combMats.isEmpty()) { |
| | | throw new CoolException("参数异常!"); |
| | | } |
| | | |
| | | StockOutParam stockOutParam = new StockOutParam(); |
| | | stockOutParam.setOutSite(sta); |
| | | List<StockOutParam.LocDetl> locDetls = new ArrayList<>(); |
| | | for (Map locDetl :combMats) { |
| | | StockOutParam.LocDetl detl = new StockOutParam.LocDetl(); |
| | | detl.setMatnr((String) locDetl.get("matnr")); |
| | | detl.setBatch((String) locDetl.get("batch")); |
| | | detl.setLocNo((String) locDetl.get("locNo")); |
| | | detl.setCount(1.0); |
| | | locDetls.add(detl); |
| | | } |
| | | |
| | | stockOutParam.setLocDetls(locDetls); |
| | | workService.startupFullTakeStore(stockOutParam, userId); |
| | | return R.ok("出库启动成功"); |
| | | } |
| | | |
| | | @Override |
| | | public R manualCallEmptyTray(int stnNo, Long userId) { |
| | | // 人工pda呼叫空托盘 |
| | |
| | | import com.zy.common.model.StartupDto; |
| | | import com.zy.common.service.CommonService; |
| | | import com.zy.common.utils.NodeUtils; |
| | | import com.zy.system.entity.Config; |
| | | import com.zy.system.service.ConfigService; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | | * Created by vincent on 2022/4/9 |
| | |
| | | |
| | | @Autowired |
| | | private LocMastService locMastService; |
| | | @Autowired |
| | | private ConfigService configService; |
| | | @Override |
| | | public R synCallowWarehousing() { |
| | | |
| | | Config outModel = configService.selectConfigByCode("outModel"); |
| | | if (outModel.getValue().equals("Y")) { |
| | | // 没有到305的出库任务(305的出库任务优先) |
| | | int count = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("io_type", 101) |
| | | .eq("sta_no", 305)); |
| | | if (count > 0) { |
| | | return R.parse("存在305出库任务"); |
| | | } |
| | | outModel.setValue("N"); |
| | | configService.updateById(outModel); |
| | | } |
| | | return R.ok(); |
| | | } |
| | | @Autowired |
| | | private WaitPakinService waitPakinService; |
| | | @Override |
| | | public R syncWarehousing(CombParam param) { |
| | | |
| | | Long userId = 9999L; |
| | | |
| | | // 参数非空判断 |
| | | if (Cools.isEmpty(param.getCombMats())) { |
| | | throw new CoolException("数据不完整,请检查请求参数"); |
| | | } |
| | | |
| | | Config outModel = configService.selectConfigByCode("outModel"); |
| | | if (outModel.getValue().equals("Y")) { |
| | | throw new CoolException("305不允许入库"); |
| | | } |
| | | |
| | | for (CombParam.CombMat combMat : param.getCombMats()) { |
| | | String batch = combMat.getBatch(); |
| | | int countL = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("batch", batch)); |
| | | int countW = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("batch", batch)); |
| | | if (countW > 0) { |
| | | return R.ok("存在任务"); |
| | | } |
| | | int countP = waitPakinService.selectCount(new EntityWrapper<WaitPakin>().eq("batch", batch)); |
| | | if (countL > 0 || countW > 0 || countP > 0) { |
| | | throw new CoolException("该批号已经存在===>>" + batch); |
| | | } |
| | | WaitPakin waitPakin = new WaitPakin(); |
| | | Date now = new Date(); |
| | | waitPakin.sync(combMat); |
| | | waitPakin.setBarcode(""); |
| | | waitPakin.setZpallet(""); // 托盘码 |
| | | waitPakin.setIoStatus("N"); // 入出状态 |
| | | waitPakin.setAnfme(1.0); // 数量 |
| | | waitPakin.setStatus("Y"); // 状态 |
| | | waitPakin.setAppeUser(userId); |
| | | waitPakin.setAppeTime(now); |
| | | waitPakin.setModiUser(userId); |
| | | waitPakin.setModiTime(now); |
| | | |
| | | // 源站点状态检测 |
| | | BasDevp sourceStaNo = basDevpService.checkSiteStatus(305, true); |
| | | |
| | | // 长度>3500放宽库位 |
| | | sourceStaNo.setLocType2((short) (waitPakin.getLength() > 3500 ? 2 : 1)); |
| | | LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo); |
| | | |
| | | // 寻找库位 |
| | | StartupDto dto = commonService.getLocNo(sourceStaNo, locTypeDto, 1); |
| | | |
| | | int workNo = dto.getWorkNo(); |
| | | // 生成工作档 |
| | | WrkMast wrkMast = new WrkMast(); |
| | | wrkMast.setWrkNo(workNo); |
| | | wrkMast.setWhsType(1); |
| | | wrkMast.setIoTime(new Date()); |
| | | wrkMast.setWrkSts(1L); // 工作状态:生成入库ID |
| | | wrkMast.setIoType(1); // 入出库状态:1.入库 |
| | | wrkMast.setIoPri(13D); // 优先级 |
| | | wrkMast.setCrnNo(dto.getCrnNo()); |
| | | wrkMast.setSourceStaNo(dto.getSourceStaNo()); |
| | | wrkMast.setStaNo(dto.getStaNo()); |
| | | wrkMast.setLocNo(dto.getLocNo()); |
| | | wrkMast.setBarcode(""); // 托盘码 |
| | | wrkMast.setFullPlt("Y"); // 满板:Y |
| | | wrkMast.setPicking("N"); // 拣料 |
| | | wrkMast.setExitMk("N"); // 退出 |
| | | wrkMast.setEmptyMk("N"); // 空板 |
| | | wrkMast.setLinkMis("Y"); |
| | | wrkMast.setCtnType(sourceStaNo.getCtnType()); // 容器类型 |
| | | // 操作人员数据 |
| | | wrkMast.setAppeTime(now); |
| | | wrkMast.setModiTime(now); |
| | | boolean res = wrkMastService.insert(wrkMast); |
| | | if (!res) { |
| | | throw new CoolException("保存工作档失败"); |
| | | } |
| | | |
| | | // 生成工作档明细 |
| | | WrkDetl wrkDetl = new WrkDetl(); |
| | | wrkDetl.sync(waitPakin); |
| | | wrkDetl.setWrkNo(wrkMast.getWrkNo()); |
| | | wrkDetl.setIoTime(wrkMast.getIoTime()); |
| | | wrkDetl.setAppeTime(now); |
| | | wrkDetl.setModiTime(now); |
| | | if (!wrkDetlService.insert(wrkDetl)) { |
| | | throw new CoolException("保存工作明细失败"); |
| | | } |
| | | // // 更新源站点信息 |
| | | // sourceStaNo.setWrkNo(workNo); |
| | | // sourceStaNo.setModiTime(now); |
| | | // if (!basDevpService.updateById(sourceStaNo)) { |
| | | // throw new CoolException("更新源站失败"); |
| | | // } |
| | | |
| | | // 更新目标库位状态 |
| | | LocMast locMast = locMastService.selectById(dto.getLocNo()); |
| | | if (locMast.getLocSts().equals("O")) { |
| | | locMast.setLocSts("S"); // S.入库预约 |
| | | locMast.setModiTime(now); |
| | | if (!locMastService.updateById(locMast)) { |
| | | throw new CoolException("改变库位状态失败"); |
| | | } |
| | | } else { |
| | | throw new CoolException(dto.getLocNo() + "目标库位已被占用"); |
| | | } |
| | | } |
| | | |
| | | return R.ok(); |
| | | } |
| | | |
| | | @Override |
| | | public R agvAskOpen(AgvAskOpenParam param) { |
| | | if (param.getFlag() == 0) { // 出库请求wms开门 |
| | | BasDevp basDevp = basDevpService.selectOne(new EntityWrapper<BasDevp>().eq("dev_no", 305)); |
| | | if (basDevp.getWrkNo() > 6000 && basDevp.getWrkNo() <= 9000 && basDevp.getLoading().equals("Y") && basDevp.getAutoing().equals("Y") |
| | | && basDevp.getOutEnable().equals("Y")) { // 出库工作档 |
| | | WrkMast wrkMast = wrkMastService.selectById(basDevp.getWrkNo()); |
| | | if (wrkMast.getWhsType() == null) { |
| | | throw new CoolException("没有通知agv过来取货"); |
| | | } else if (wrkMast.getWhsType() == 1) { |
| | | WrkDetl wrkDetl = wrkDetlService.selectOne(new EntityWrapper<WrkDetl>().eq("wrk_no", basDevp.getWrkNo())); |
| | | if (wrkDetl.getMatnr().equals(param.getMatnr()) && wrkDetl.getBatch().equals(param.getBatch())) { |
| | | wrkMast.setWhsType(2); |
| | | wrkMastService.updateById(wrkMast); |
| | | return R.ok("物料校验成功,马上开门"); |
| | | } else { |
| | | throw new CoolException("编码+批号校验失败:" + param.getBatch()); |
| | | } |
| | | } else if (wrkMast.getWhsType() == 2) { |
| | | return R.ok("马上开门"); |
| | | } else { |
| | | return R.error("工作档当前状态有误"); |
| | | } |
| | | } else { |
| | | return R.error("不满足出库条件"); |
| | | } |
| | | } else if(param.getFlag() == 1) { // 入库请求wms开门 |
| | | BasDevp basDevp = basDevpService.selectOne(new EntityWrapper<BasDevp>().eq("dev_no", 305)); |
| | | if (basDevp.getAutoing().equals("Y") && basDevp.getLoading().equals("Y") |
| | | && basDevp.getInEnable().equals("Y")) { // 入库底座 |
| | | WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("io_type",1) |
| | | .eq("source_sta_no",305).lt("wrk_sts",3)); |
| | | if (wrkMast.getWhsType() == null) { |
| | | throw new CoolException("没有入库任务"); |
| | | } else if (wrkMast.getWhsType() == 1) { |
| | | WrkDetl wrkDetl = wrkDetlService.selectOne(new EntityWrapper<WrkDetl>().eq("wrk_no", wrkMast.getWrkNo())); |
| | | if (wrkDetl.getMatnr().equals(param.getMatnr()) && wrkDetl.getBatch().equals(param.getBatch())) { |
| | | wrkMast.setWhsType(2); |
| | | wrkMastService.updateById(wrkMast); |
| | | return R.ok("物料校验成功,马上开门"); |
| | | } else { |
| | | throw new CoolException("编码+批号校验失败:" + param.getBatch()); |
| | | } |
| | | } else if (wrkMast.getWhsType() == 2) { |
| | | return R.ok("马上开门"); |
| | | } else { |
| | | return R.error("工作档当前状态有误"); |
| | | } |
| | | } else { |
| | | return R.error("底座还未达到"); |
| | | } |
| | | } |
| | | return R.error("出入库标识错误:" + param.getFlag()); |
| | | } |
| | | |
| | | @Override |
| | | @Transactional |
| | |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | @Override |
| | | public R synCallowWarehousing(String flag) { |
| | | List<WrkMast> wrkMasts = wrkMastMapper.queryOutLocWork(); |
| | | if (wrkMasts.isEmpty()) { |
| | | return R.ok(); |
| | | } |
| | | return R.parse("当前存在出库任务"); |
| | | } |
| | | |
| | | @Override |
| | | public R syncWarehousing(FullStoreParam param) { |
| | | |
| | | Long userId = 9999L; |
| | | |
| | | // 参数非空判断 |
| | | if (Cools.isEmpty(param.getBarcode(), param.getList())) { |
| | | throw new CoolException("数据不完整,请检查请求参数"); |
| | | } |
| | | |
| | | List<WrkMast> wrkMasts = wrkMastMapper.queryOutLocWork(); |
| | | if(!wrkMasts.isEmpty()) { |
| | | throw new CoolException("305存在出库任务"); |
| | | } |
| | | |
| | | int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet",param.getBarcode())); |
| | | int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",param.getBarcode())); |
| | | if (countLoc > 0 || countWrk > 0) { |
| | | throw new CoolException("工作档/库存条码数据已存在"); |
| | | } |
| | | |
| | | Date now = new Date(); |
| | | // 源站点状态检测 |
| | | BasDevp sourceStaNo = basDevpService.checkSiteStatus(305, true); |
| | | // 检索库位 |
| | | LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo); |
| | | List<String> matnrs = param.getList().stream().map(FullStoreParam.MatCodeStore::getMatnr).distinct().collect(Collectors.toList()); |
| | | List<String> batchs = param.getList().stream().map(FullStoreParam.MatCodeStore::getBatch).distinct().collect(Collectors.toList()); |
| | | StartupDto dto = commonService.getLocNo(sourceStaNo,locTypeDto, 1); |
| | | // 生成工作号 |
| | | int workNo = dto.getWorkNo(); |
| | | // 生成工作档 |
| | | WrkMast wrkMast = new WrkMast(); |
| | | wrkMast.setWrkNo(workNo); |
| | | wrkMast.setIoTime(now); |
| | | wrkMast.setWrkSts(2L); // 工作状态:生成入库ID |
| | | wrkMast.setIoType(1); // 入出库状态:1.入库 |
| | | wrkMast.setIoPri(13D); // 优先级:13 |
| | | wrkMast.setCrnNo(dto.getCrnNo()); |
| | | wrkMast.setSourceStaNo(dto.getSourceStaNo()); |
| | | wrkMast.setStaNo(dto.getStaNo()); |
| | | wrkMast.setLocNo(dto.getLocNo()); |
| | | wrkMast.setBarcode(param.getBarcode()); // 托盘码 |
| | | wrkMast.setFullPlt("Y"); // 满板:Y |
| | | wrkMast.setPicking("N"); // 拣料 |
| | | wrkMast.setExitMk("N"); // 退出 |
| | | wrkMast.setEmptyMk("N"); // 空板 |
| | | wrkMast.setLinkMis("N"); |
| | | wrkMast.setCtnType(sourceStaNo.getCtnType()); // 容器类型 |
| | | wrkMast.setAppeUser(userId); |
| | | wrkMast.setAppeTime(now); |
| | | wrkMast.setModiUser(userId); |
| | | wrkMast.setModiTime(now); |
| | | if (!wrkMastService.insert(wrkMast)) { |
| | | throw new CoolException("保存工作档失败"); |
| | | } |
| | | // 生成工作档明细 |
| | | List<DetlDto> detlDtos = new ArrayList<>(); |
| | | param.getList().forEach(elem -> { |
| | | DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getAnfme()); |
| | | detlDto.setMaktx(elem.getMaktx()); |
| | | detlDto.setSpecs(elem.getSpecs()); |
| | | detlDto.setTagId(elem.getTagId()); |
| | | if (DetlDto.has(detlDtos, detlDto)) { |
| | | DetlDto detlDto1 = DetlDto.find(detlDtos, detlDto.getMatnr(), detlDto.getBatch()); |
| | | assert detlDto1 != null; |
| | | detlDto1.setAnfme(detlDto1.getAnfme() + detlDto.getAnfme()); |
| | | } else { |
| | | detlDtos.add(detlDto); |
| | | } |
| | | }); |
| | | wrkDetlService.createWorkDetail(workNo, detlDtos, param.getBarcode(), userId, now); |
| | | // 更新源站点信息 |
| | | sourceStaNo.setWrkNo(workNo); |
| | | sourceStaNo.setModiUser(userId); |
| | | sourceStaNo.setModiTime(now); |
| | | if (!basDevpService.updateById(sourceStaNo)){ |
| | | throw new CoolException("更新源站失败"); |
| | | } |
| | | // 更新目标库位状态 |
| | | LocMast locMast = locMastService.selectById(dto.getLocNo()); |
| | | if (locMast.getLocSts().equals("O")){ |
| | | locMast.setLocSts("S"); // S.入库预约 |
| | | locMast.setModiUser(userId); |
| | | locMast.setModiTime(now); |
| | | if (!locMastService.updateById(locMast)){ |
| | | throw new CoolException("改变库位状态失败"); |
| | | } |
| | | } else { |
| | | throw new CoolException(dto.getLocNo()+"目标库位已被占用"); |
| | | } |
| | | |
| | | return R.ok(); |
| | | } |
| | | |
| | | @Override |
| | | public R getOutboundMaterials(String flag) { |
| | | List<WrkDetl> outboundMaterials = wrkMastMapper.getOutboundMaterials(); |
| | | if (Cools.isEmpty(outboundMaterials)) { |
| | | return R.parse("货物未到达或已取走"); |
| | | } |
| | | List<FullStoreParam.MatCodeStore> matCodeStoreList = new ArrayList<>(); |
| | | for(WrkDetl wrkDetl : outboundMaterials){ |
| | | FullStoreParam.MatCodeStore matCodeStore = new FullStoreParam.MatCodeStore(); |
| | | matCodeStore.setMatnr(wrkDetl.getMatnr()); |
| | | matCodeStore.setBatch(wrkDetl.getBatch()); |
| | | matCodeStore.setAnfme(wrkDetl.getAnfme()); |
| | | matCodeStoreList.add(matCodeStore); |
| | | } |
| | | |
| | | return R.ok(matCodeStoreList); |
| | | } |
| | | |
| | | } |
| | |
| | | |
| | | import com.zy.asrs.task.handler.GhlnHandler; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.scheduling.annotation.Scheduled; |
| | | import org.springframework.stereotype.Component; |
| | | |
| | | import javax.annotation.Resource; |
| | |
| | | @Resource |
| | | private GhlnHandler ghlnHandler; |
| | | |
| | | // 出库到达出库目标站时,调用AGV开放出库接口 |
| | | // @Scheduled(cron = "0/30 * * * * ?") |
| | | private void sendOutboundTaskToAGV(){ |
| | | ghlnHandler.sendOutboundTaskToAGV(); |
| | | // 货物到达出库口,呼叫agv |
| | | @Scheduled(cron = "0/5 * * * * ?") |
| | | private void OutboundCallAGV(){ |
| | | ghlnHandler.OutboundCallAGV(); |
| | | } |
| | | |
| | | // 调用金蝶同步物料接口,增量同步每小时产生的新物料 |
| | |
| | | import com.zy.asrs.entity.WrkMast; |
| | | import com.zy.asrs.service.*; |
| | | import com.zy.asrs.task.core.ReturnT; |
| | | |
| | | import com.zy.common.constant.MesConstant; |
| | | import com.zy.common.constant.OpenApiAddressConstant; |
| | | import com.zy.common.utils.HttpHandler; |
| | | import lombok.extern.slf4j.Slf4j; |
| | |
| | | import javax.annotation.Resource; |
| | | import java.time.LocalDateTime; |
| | | import java.time.format.DateTimeFormatter; |
| | | import java.util.*; |
| | | import java.util.Date; |
| | | import java.util.HashMap; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * @author pang.jiabao |
| | |
| | | |
| | | @Resource |
| | | private MatService matService; |
| | | |
| | | /** |
| | | * 出库到达出库目标站时,调用AGV开放出库接口 |
| | | */ |
| | | public void sendOutboundTaskToAGV() { |
| | | // 获取agv出库站点信息,并判断站点状态 |
| | | BasDevp basDevp = basDevpService.selectOne(new EntityWrapper<BasDevp>().eq("dev_no", 305)); |
| | | if (basDevp != null && basDevp.getWrkNo() != 0 && basDevp.getOutEnable().equals("Y")) { |
| | | // 判断是出库任务 |
| | | WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", basDevp.getWrkNo()) |
| | | .eq("plt_type",0)); |
| | | List<WrkDetl> wrkDetls = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", basDevp.getWrkNo())); |
| | | if (wrkMast != null && wrkMast.getIoType() == 101 && !wrkDetls.isEmpty()) { |
| | | // 推送出库信息给agv |
| | | sendTaskToAgv(wrkMast,wrkDetls); |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | private void pushStaNoToGwcs(Integer palletizingNo, Integer staNo, Integer workNo) { |
| | | |
| | | } |
| | | |
| | | /** |
| | | * 调用AGV出库接口 |
| | | * @param wrkMast 工作主档 |
| | | * @param wrkDetls 工作档明细 |
| | | */ |
| | | private void sendTaskToAgv(WrkMast wrkMast, List<WrkDetl> wrkDetls) { |
| | | |
| | | // 调用结果 |
| | | boolean success = false; |
| | | // 构造请求头 |
| | | Map<String,Object> headers = new HashMap<>(); |
| | | headers.put("Content-Type","application/json;charset=UTF-8"); |
| | | |
| | | WrkDetl wrkDetl = wrkDetls.get(0); |
| | | |
| | | // 构造请求体 |
| | | JSONObject jsonObject = new JSONObject(); |
| | | jsonObject.put("TaskNo", wrkMast.getWrkNo()); // 任务号 |
| | | jsonObject.put("Address", ""); // 出库口 |
| | | jsonObject.put("Model", wrkDetl.getModel()); // 型号 |
| | | jsonObject.put("Batch", wrkDetl.getBatch()); // 批次 |
| | | jsonObject.put("Dimension", wrkDetl.getSpecs()); // 规格 |
| | | jsonObject.put("Weight", wrkDetl.getWeight()); // 重量 |
| | | jsonObject.put("ProductionDate", wrkDetl.getManuDate()); // 生产日期 |
| | | String body = jsonObject.toJSONString(); |
| | | String response = ""; |
| | | try { |
| | | response = new HttpHandler.Builder() |
| | | .setUri(OpenApiAddressConstant.OUT_TO_AGV_IP) |
| | | .setPath(OpenApiAddressConstant.OUT_TO_AGV_URL) |
| | | .setHeaders(headers) |
| | | .setJson(body) |
| | | .build() |
| | | .doPost(); |
| | | if (!Cools.isEmpty(response)) { |
| | | JSONObject jsonObject1 = JSONObject.parseObject(response); |
| | | if ((Integer) jsonObject1.get("Code") == 200){ |
| | | success = true; |
| | | } |
| | | } else { |
| | | log.error("出库请求agv接口异常接口失败!!!url:{};request:{};response:{}", MesConstant.URL + MesConstant.PAKIN_URL, body, response); |
| | | } |
| | | } catch (Exception e) { |
| | | log.error("出库请求agv接口异常:{}", e.getMessage()); |
| | | } finally { |
| | | if (success) { |
| | | wrkMast.setPltType(1); // 是否成功给agv出库接口下发过命令,避免重复请求 |
| | | wrkMastService.updateById(wrkMast); |
| | | } |
| | | try { |
| | | // 保存接口日志 |
| | | apiLogService.save( |
| | | "出库请求agv", |
| | | MesConstant.URL + MesConstant.PAKIN_URL, |
| | | null, |
| | | "127.0.0.1", |
| | | jsonObject.toJSONString(), |
| | | response, |
| | | success |
| | | ); |
| | | } catch (Exception e) { |
| | | log.error("保存出库请求agv接口日志异常", e); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 调用金蝶同步物料接口,增量同步每小时产生的新物料 |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 到达出库口,呼叫agv |
| | | */ |
| | | public void OutboundCallAGV() { |
| | | BasDevp basDevp = basDevpService.selectOne(new EntityWrapper<BasDevp>().eq("dev_no", 305)); |
| | | if (basDevp.getWrkNo() > 6000 && basDevp.getWrkNo() <= 9000 && basDevp.getLoading().equals("Y") && basDevp.getAutoing().equals("Y") |
| | | &&basDevp.getOutEnable().equals("Y")) { // 出库工作档 |
| | | WrkMast wrkMast = wrkMastService.selectById(basDevp.getWrkNo()); |
| | | if(wrkMast.getWhsType() == null) { |
| | | WrkDetl wrkDetl = wrkDetlService.selectOne(new EntityWrapper<WrkDetl>().eq("wrk_no", basDevp.getWrkNo())); |
| | | // 调用结果 |
| | | boolean success = false; |
| | | // 构造请求头 |
| | | Map<String,Object> headers = new HashMap<>(); |
| | | headers.put("Content-Type","application/json;charset=UTF-8"); |
| | | // 构造请求体 |
| | | JSONObject jsonObject = new JSONObject(); |
| | | jsonObject.put("matnr", wrkDetl.getMatnr()); // 物料编码 |
| | | jsonObject.put("model", wrkDetl.getModel()); // 型号 |
| | | jsonObject.put("batch", wrkDetl.getBatch()); // 批次 |
| | | jsonObject.put("specs", wrkDetl.getSpecs()); // 膜类型 |
| | | jsonObject.put("manuDate", wrkDetl.getManuDate()); // 生产日期 |
| | | jsonObject.put("length", wrkDetl.getLength()+""); // 长 |
| | | jsonObject.put("weight", wrkDetl.getWeight()+""); // 宽 |
| | | jsonObject.put("volume", wrkDetl.getVolume()+""); // 面积 |
| | | String body = jsonObject.toString(); |
| | | String response = ""; |
| | | try { |
| | | response = new HttpHandler.Builder() |
| | | .setUri(OpenApiAddressConstant.AGV_IP) |
| | | .setPath(OpenApiAddressConstant.CALL_AGV_URL) |
| | | .setHeaders(headers) |
| | | .setJson(body) |
| | | .build() |
| | | .doPost(); |
| | | if (!Cools.isEmpty(response)) { |
| | | JSONObject jsonObject1 = JSONObject.parseObject(response); |
| | | if ((Integer) jsonObject1.get("code") == 200){ |
| | | success = true; |
| | | wrkMast.setWhsType(1); |
| | | wrkMastService.updateById(wrkMast); |
| | | } |
| | | } else { |
| | | log.error("出库呼叫agv接口异常接口失败!!!url:{};request:{};response:{}", OpenApiAddressConstant.AGV_IP + OpenApiAddressConstant.CALL_AGV_URL, body, response); |
| | | } |
| | | } catch (Exception e) { |
| | | log.error("出库呼叫agv接口异常:{}", e.getMessage()); |
| | | } finally { |
| | | try { |
| | | // 保存接口日志 |
| | | apiLogService.save( |
| | | "出库请求agv", |
| | | OpenApiAddressConstant.AGV_IP + OpenApiAddressConstant.CALL_AGV_URL, |
| | | null, |
| | | "127.0.0.1", |
| | | jsonObject.toJSONString(), |
| | | response, |
| | | success |
| | | ); |
| | | } catch (Exception e) { |
| | | log.error("出库呼叫agv接口日志异常", e); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | */ |
| | | public class OpenApiAddressConstant { |
| | | /** |
| | | * 出库请求AGV执行接口ip地址 |
| | | * AGV系统ip地址 |
| | | */ |
| | | public static final String OUT_TO_AGV_IP = "127.0.0.1:8080"; |
| | | public static final String AGV_IP = "http://192.168.204.44:8010"; |
| | | |
| | | /** |
| | | * 出库请求AGV执行接口后缀地址 |
| | | * 出库呼叫agv |
| | | */ |
| | | public static final String OUT_TO_AGV_URL = "/api/TaskCreat/AGVOutboundTask"; |
| | | public static final String CALL_AGV_URL = "/api/TaskCreat/AGVOutboundTask"; |
| | | } |
| | |
| | | if (Cools.isEmpty(param.getBarcode())) { |
| | | return R.error("条码不能为空"); |
| | | } |
| | | int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet",param.getBarcode())); |
| | | int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",param.getBarcode())); |
| | | if (countLoc > 0 || countWrk > 0) { |
| | | return R.error(CodeRes.EXIST_500); |
| | | } |
| | | waitPakins = waitPakinService.selectList(new EntityWrapper<WaitPakin>().eq("zpallet", param.getBarcode())); |
| | | if (Cools.isEmpty(waitPakins)) { |
| | | WrkMast wrkMast = wrkMastService.selectByBarcode(param.getBarcode()); |
| | |
| | | return R.parse(CodeRes.PICK_600); |
| | | } |
| | | return R.parse(CodeRes.NO_COMB_700); |
| | | } |
| | | int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet",param.getBarcode())); |
| | | int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet",param.getBarcode())); |
| | | if (countLoc > 0 || countWrk > 0) { |
| | | return R.error(CodeRes.EXIST_500); |
| | | } |
| | | } |
| | | if (Cools.isEmpty(param.getLocType1())){ |
| | |
| | | server: |
| | | port: 9090 |
| | | port: 8080 |
| | | servlet: |
| | | context-path: /@pom.build.finalName@ |
| | | |
| | |
| | | enabled: false |
| | | datasource: |
| | | driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver |
| | | url: jdbc:sqlserver://192.168.4.15:1433;databasename=ghlnasrs |
| | | url: jdbc:sqlserver://10.10.10.243:1433;databasename=ghlnasrs |
| | | username: sa |
| | | password: sa@123 |
| | | mvc: |
| | |
| | | <if test="loc_no!=null and loc_no!='' "> |
| | | and a.loc_no like '%' + #{loc_no} + '%' |
| | | </if> |
| | | <if test="model!=null and model!='' "> |
| | | and a.model like #{model} + '%' |
| | | </if> |
| | | <if test="matnr!=null and matnr!='' "> |
| | | and a.matnr like '%' + #{matnr} + '%' |
| | | </if> |
| | |
| | | where 1=1 |
| | | and b.loc_sts = 'F' |
| | | <include refid="stockOutCondition"></include> |
| | | ) t where t.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize}) |
| | | ) t where t.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize}) order by t.manu_date |
| | | </select> |
| | | |
| | | <select id="getStockOutPageCount" parameterType="java.util.Map" resultType="java.lang.Integer"> |
| | |
| | | select loc_no locNo,loc_type2 locType2,crn_no crnNo from asr_loc_mast where loc_sts = 'O' and loc_type2 = #{locType2} |
| | | <choose> |
| | | <when test="sourceStaNo == 101"> |
| | | AND crn_no = 2 |
| | | AND crn_no = 2 order by lev1,bay1,row1 |
| | | </when > |
| | | <when test="sourceStaNo == 103"> |
| | | AND crn_no = 1 |
| | | AND crn_no = 1 order by lev1,bay1,row1 |
| | | </when > |
| | | <when test="sourceStaNo == 305"> |
| | | order by lev1 asc,bay1 desc,row1 asc |
| | | </when > |
| | | </choose> |
| | | order by lev1,bay1,row1 |
| | | |
| | | </select> |
| | | <select id="selectAllLocNotEmpty" resultType="com.zy.asrs.entity.LocMast"> |
| | | SELECT * FROM asr_loc_mast WHERE loc_sts != 'O' AND loc_no in |
| | |
| | | <select id="queryOutLocWork" resultType="com.zy.asrs.entity.WrkMast"> |
| | | select * |
| | | from asr_wrk_mast awm |
| | | where awm.io_type = 101 |
| | | and (awm.wrk_sts != 15 or wrk_no in (select wrk_no from asr_bas_devp)) |
| | | where awm.io_type = 101 and awm.sta_no = 305 |
| | | and (awm.wrk_sts != 15 or wrk_no in (select wrk_no from asr_bas_devp) or awm.wrk_sts = 12) |
| | | </select> |
| | | <select id="getOutboundMaterials" resultType="com.zy.asrs.entity.WrkDetl"> |
| | | select TOP 1 awd.* |
| | |
| | | <div id="search-box" class="layui-form layui-card-header"> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="model" placeholder="型号" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="batch" placeholder="批号" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | |
| | | (window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["pages-pakin-putDown"],{"0a77":function(t,e,i){"use strict";i.r(e);var a=i("35bc"),n=i.n(a);for(var s in a)["default"].indexOf(s)<0&&function(t){i.d(e,t,(function(){return a[t]}))}(s);e["default"]=n.a},"0ef2":function(t,e,i){"use strict";var a=i("b18d"),n=i.n(a);n.a},"35bc":function(t,e,i){"use strict";(function(t){i("7a82"),Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,i("3c65"),i("a434"),i("e9c4");var a={data:function(){return{baseUrl:"",token:"",barcode:"",dataList:[],count:0,rowNum:"",matnr:"",batch:"",weight:"",msgType1:"success",msgType:"success",messageText:"",title:"",content:"",barcodeFocus:!0,matFocus:!1,matData:"",removeNum:0,specs:"",manuDate:"",model:"",length:"",volume:"",staList:[100,102,104,107,305],sta:"",item:""}},onLoad:function(){},onShow:function(){this.baseUrl=uni.getStorageSync("baseUrl"),this.token=uni.getStorageSync("token")},methods:{messageToggle:function(t){this.msgType1=t,this.$refs.message.open()},barcodeInput:function(){var t=this;setTimeout((function(){var e=t.barcode.length;if(8!=e)return uni.showToast({title:"托盘码有误请重试",icon:"none",position:"top"}),void t.barcodeFocuss();t.focuss()}),200)},barcodeFocuss:function(){var t=this;t.barcodeFocus=!1,setTimeout((function(){t.barcode="",t.barcodeFocus=!0}),100)},focuss:function(){var t=this;this.barcodeFocus=!1,this.matFocus=!1,setTimeout((function(){t.matnr="",t.matFocus=!0}),100)},findMat:function(){var t=this;uni.request({url:t.baseUrl+"/mat/split",data:{matnr:t.matnr},header:{token:uni.getStorageSync("token")},success:function(e){e=e.data,200===e.code&&e.data?(t.matData=e.data,t.checkMat(t.matData)):403==e.code?(uni.showToast({title:e.msg,icon:"none",position:"top"}),setTimeout((function(){uni.reLaunch({url:"../login/login"})}),1e3)):uni.showToast({title:e.msg,icon:"none",position:"top"})}})},selectMat:function(){var e=this;uni.navigateTo({url:"../locDetl/locDetl",success:function(t){t.eventChannel.emit("commonUrl",{commonUrl:""})},events:{acceptDataFromOpenedPage:function(i){t("log",i.data," at pages/pakin/putDown.vue:280");for(var a=0;a<i.data.length;a++)e.checkMat(i.data[a])}}}),e.matnr=""},checkMat:function(t){for(var e=this.dataList.length,i=!0,a=0;a<e;a++)t.locNo==this.dataList[a].locNo&&t.matnr==this.dataList[a].matnr&&(i=!1);i&&this.dataList.unshift(t),this.$forceUpdate()},revise:function(t,e){this.matnr=this.dataList[e].matnr,this.batch=this.dataList[e].batch,this.weight=this.dataList[e].weight,this.specs=this.dataList[e].specs,this.manuDate=this.dataList[e].manuDate,this.model=this.dataList[e].model,this.length=this.dataList[e].length,this.volume=this.dataList[e].volume,this.rowNum=e,this.eject()},eject:function(t){this.type=t,this.$refs.revise.open(t)},remove:function(t,e,i){this.removeNum=e,this.msgType=i,this.title="警告",this.content="是否移除当前商品!",this.$refs.alertDialog.open(e)},removeConfirm:function(){this.messageText="移除成功",this.messageToggle("success"),this.dataList.splice(this.removeNum,1)},removeClose:function(){this.$refs.alertDialog.close()},reviseConfirm:function(){this.dataList[this.rowNum].anfme=this.count,this.dataList[this.rowNum].batch=this.batch,this.dataList[this.rowNum].weight=this.weight,this.matnr="",this.messageText="修改成功",this.messageToggle("success"),this.$refs.revise.close()},reviseClose:function(){this.$refs.revise.close()},changeValue:function(t){this.count=t},combConfirm:function(t){this.msgType=t,this.title="警告",this.content="是否生成出库任务!",this.$refs.combConfirm.open()},combClose:function(){this.$refs.combConfirm.close()},comb:function(){uni.vibrateShort();var t=this;return 0===t.dataList.length?(this.messageText="请添加商品列表",void this.messageToggle("error")):""===t.sta?(this.messageText="请选择站点",void this.messageToggle("error")):void uni.request({url:t.baseUrl+"/mobile/outbound/auth",data:JSON.stringify({sta:t.barcode,combMats:t.dataList}),method:"POST",header:{token:uni.getStorageSync("token")},success:function(e){var i=e.data;200===i.code?(t.resst(),t.messageText="生成出库任务成功",t.messageToggle("success")):403==i.code?(t.messageText=i.msg,t.messageToggle("error"),setTimeout((function(){uni.reLaunch({url:"../login/login"})}),1e3)):(t.messageText=i.msg,t.messageToggle("error"))}})},reset:function(t){this.msgType=t,this.title="警告",this.content="是否重置!",this.$refs.resetConfirm.open()},resetConfirm:function(){this.dataList=[],this.messageText="重置完成",this.messageToggle("success")},resetClose:function(){},resst:function(){this.dataList=[],this.barcode="",this.sta="",this.barcodeFocuss()}}};e.default=a}).call(this,i("0de9")["log"])},3993:function(t,e,i){"use strict";i.d(e,"b",(function(){return a})),i.d(e,"c",(function(){return n})),i.d(e,"a",(function(){}));var a=function(){var t=this,e=t.$createElement,i=t._self._c||e;return t.text?i("v-uni-text",{staticClass:"uni-tag",class:t.classes,style:t.customStyle,on:{click:function(e){arguments[0]=e=t.$handleEvent(e),t.onClick.apply(void 0,arguments)}}},[t._v(t._s(t.text))]):t._e()},n=[]},"3d97":function(t,e,i){"use strict";i.d(e,"b",(function(){return n})),i.d(e,"c",(function(){return s})),i.d(e,"a",(function(){return a}));var a={uniCombox:i("6d8b").default,uniTag:i("b2a6").default,uniIcons:i("125d").default,uniPopup:i("0ffb").default,uniPopupDialog:i("ed48").default,uniPopupMessage:i("d001").default},n=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("v-uni-view",[i("v-uni-view",{staticClass:"code"},[i("v-uni-view",{staticClass:"itemButton"},[i("v-uni-button",{attrs:{size:"mini",type:"primary"},on:{click:function(e){arguments[0]=e=t.$handleEvent(e),t.selectMat()}}},[t._v("提取+")]),i("uni-combox",{attrs:{candidates:t.staList,placeholder:"请选择入库站点"},model:{value:t.sta,callback:function(e){t.sta=e},expression:"sta"}})],1)],1),i("v-uni-view",{staticClass:"mat-list-title"},[t._v("商品列表")]),i("v-uni-scroll-view",t._l(t.dataList,(function(e,a){return i("v-uni-view",{key:a,staticClass:"list"},[i("v-uni-view",{staticClass:"list-left"},[i("v-uni-view",{staticClass:"list-left-item"},[i("v-uni-view",{staticClass:"desc"},[t._v("No:")]),i("v-uni-view",{staticClass:"left-item"},[t._v(t._s(a+1))])],1),i("v-uni-view",{staticClass:"list-left-item"},[i("v-uni-view",{staticClass:"desc"},[t._v("编码:")]),i("v-uni-view",{staticClass:"left-item"},[t._v(t._s(e.locNo))])],1),i("v-uni-view",{staticClass:"list-left-item"},[i("v-uni-view",{staticClass:"desc"},[t._v("编码:")]),i("v-uni-view",{staticClass:"left-item"},[i("uni-tag",{attrs:{text:e.matnr,type:"primary"}})],1)],1),i("v-uni-view",{staticClass:"list-left-item"},[i("v-uni-view",{staticClass:"desc"},[t._v("批号:")]),i("v-uni-view",{staticClass:"left-item"},[t._v(t._s(e.batch))])],1),i("v-uni-view",{staticClass:"list-left-item"},[i("v-uni-view",{staticClass:"desc"},[t._v("膜类型:")]),i("v-uni-view",{staticClass:"left-item"},[t._v(t._s(e.specs))])],1),i("v-uni-view",{staticClass:"list-left-item"},[i("v-uni-view",{staticClass:"desc"},[t._v("生产日期:")]),i("v-uni-view",{staticClass:"left-item"},[t._v(t._s(e.manuDate))])],1),i("v-uni-view",{staticClass:"list-left-item"},[i("v-uni-view",{staticClass:"desc"},[t._v("型号:")]),i("v-uni-view",{staticClass:"left-item"},[t._v(t._s(e.model))])],1),i("v-uni-view",{staticClass:"list-left-item"},[i("v-uni-view",{staticClass:"desc"},[t._v("宽度:")]),i("v-uni-view",{staticClass:"left-item"},[t._v(t._s(e.weight))])],1),i("v-uni-view",{staticClass:"list-left-item"},[i("v-uni-view",{staticClass:"desc"},[t._v("长度:")]),i("v-uni-view",{staticClass:"left-item"},[t._v(t._s(e.length))])],1),i("v-uni-view",{staticClass:"list-left-item"},[i("v-uni-view",{staticClass:"desc"},[t._v("面积:")]),i("v-uni-view",{staticClass:"left-item"},[t._v(t._s(e.volume))])],1)],1),i("v-uni-view",{staticClass:"list-right"},[i("uni-icons",{attrs:{type:"trash",color:"#f58a8a",size:"24"},on:{click:function(i){arguments[0]=i=t.$handleEvent(i),t.remove(e,a,"warn")}}})],1)],1)})),1),i("v-uni-view",{staticClass:"buttom"},[i("v-uni-button",{attrs:{size:"mini"},on:{click:function(e){arguments[0]=e=t.$handleEvent(e),t.reset("warn")}}},[t._v("重置")]),i("v-uni-button",{attrs:{size:"mini",type:"primary"},on:{click:function(e){arguments[0]=e=t.$handleEvent(e),t.combConfirm("warn")}}},[t._v("出库")])],1),i("v-uni-view",[i("uni-popup",{ref:"revise",attrs:{type:"dialog"}},[i("v-uni-view",{staticClass:"popup"},[i("v-uni-view",{staticClass:"title"},[t._v("修改")]),i("v-uni-view",{staticClass:"popup-item"},[i("v-uni-view",{staticClass:"popup-item-left"},[t._v("编码:")]),i("v-uni-view",{staticClass:"popup-item-right"},[i("v-uni-input",{staticStyle:{"background-color":"#f7f7f7",padding:"0",color:"#d5d5d5"},attrs:{type:"text",disabled:"true"},model:{value:t.matnr,callback:function(e){t.matnr=e},expression:"matnr"}})],1)],1),i("v-uni-view",{staticClass:"popup-item"},[i("v-uni-view",{staticClass:"popup-item-left"},[t._v("批号:")]),i("v-uni-view",{staticClass:"popup-item-right"},[i("v-uni-input",{attrs:{type:"text"},model:{value:t.batch,callback:function(e){t.batch=e},expression:"batch"}})],1)],1),i("v-uni-view",{staticClass:"popup-item"},[i("v-uni-view",{staticClass:"popup-item-left"},[t._v("膜类型:")]),i("v-uni-view",{staticClass:"popup-item-right"},[i("v-uni-input",{attrs:{type:"text"},model:{value:t.specs,callback:function(e){t.specs=e},expression:"specs"}})],1)],1),i("v-uni-view",{staticClass:"popup-item"},[i("v-uni-view",{staticClass:"popup-item-left"},[t._v("生产日期:")]),i("v-uni-view",{staticClass:"popup-item-right"},[i("v-uni-input",{attrs:{type:"text"},model:{value:t.manuDate,callback:function(e){t.manuDate=e},expression:"manuDate"}})],1)],1),i("v-uni-view",{staticClass:"popup-item"},[i("v-uni-view",{staticClass:"popup-item-left"},[t._v("型号:")]),i("v-uni-view",{staticClass:"popup-item-right"},[i("v-uni-input",{attrs:{type:"text"},model:{value:t.model,callback:function(e){t.model=e},expression:"model"}})],1)],1),i("v-uni-view",{staticClass:"popup-item"},[i("v-uni-view",{staticClass:"popup-item-left"},[t._v("宽度:")]),i("v-uni-view",{staticClass:"popup-item-right"},[i("v-uni-input",{attrs:{type:"text"},model:{value:t.weight,callback:function(e){t.weight=e},expression:"weight"}})],1)],1),i("v-uni-view",{staticClass:"popup-item"},[i("v-uni-view",{staticClass:"popup-item-left"},[t._v("长度:")]),i("v-uni-view",{staticClass:"popup-item-right"},[i("v-uni-input",{attrs:{type:"text"},model:{value:t.length,callback:function(e){t.length=e},expression:"length"}})],1)],1),i("v-uni-view",{staticClass:"popup-item"},[i("v-uni-view",{staticClass:"popup-item-left"},[t._v("面积:")]),i("v-uni-view",{staticClass:"popup-item-right"},[i("v-uni-input",{attrs:{type:"text"},model:{value:t.volume,callback:function(e){t.volume=e},expression:"volume"}})],1)],1),i("v-uni-view",{staticClass:"btn"},[i("v-uni-view",{staticClass:"btn-left",on:{click:function(e){arguments[0]=e=t.$handleEvent(e),t.reviseClose.apply(void 0,arguments)}}},[t._v("取消")]),i("v-uni-view",{staticClass:"btn-right",on:{click:function(e){arguments[0]=e=t.$handleEvent(e),t.reviseConfirm()}}},[t._v("修改")])],1)],1)],1)],1),i("v-uni-view",[i("uni-popup",{ref:"alertDialog",attrs:{type:"dialog"}},[i("uni-popup-dialog",{attrs:{type:t.msgType,confirmText:"移除",title:t.title,content:t.content},on:{confirm:function(e){arguments[0]=e=t.$handleEvent(e),t.removeConfirm()},close:function(e){arguments[0]=e=t.$handleEvent(e),t.removeClose.apply(void 0,arguments)}}})],1)],1),i("v-uni-view",[i("uni-popup",{ref:"message",attrs:{type:"message"}},[i("uni-popup-message",{attrs:{type:t.msgType1,message:t.messageText,duration:2e3}})],1)],1),i("v-uni-view",[i("uni-popup",{ref:"combConfirm",attrs:{type:"dialog"}},[i("uni-popup-dialog",{attrs:{type:t.msgType,cancelText:"取消",confirmText:"确认",title:t.title,content:t.content},on:{confirm:function(e){arguments[0]=e=t.$handleEvent(e),t.comb.apply(void 0,arguments)},close:function(e){arguments[0]=e=t.$handleEvent(e),t.combClose.apply(void 0,arguments)}}})],1)],1),i("v-uni-view",[i("uni-popup",{ref:"resetConfirm",attrs:{type:"dialog"}},[i("uni-popup-dialog",{attrs:{type:t.msgType,cancelText:"取消",confirmText:"确认",title:t.title,content:t.content},on:{confirm:function(e){arguments[0]=e=t.$handleEvent(e),t.resetConfirm.apply(void 0,arguments)},close:function(e){arguments[0]=e=t.$handleEvent(e),t.resetClose.apply(void 0,arguments)}}})],1)],1)],1)},s=[]},"51a3":function(t,e,i){"use strict";i("7a82"),Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,i("a9e3"),i("4de4"),i("d3b7"),i("c975"),i("d401"),i("25f0");var a={name:"uniCombox",emits:["input","update:modelValue"],props:{border:{type:Boolean,default:!0},label:{type:String,default:""},labelWidth:{type:String,default:"auto"},placeholder:{type:String,default:""},candidates:{type:Array,default:function(){return[]}},emptyTips:{type:String,default:"无匹配项"},value:{type:[String,Number],default:""}},data:function(){return{showSelector:!1,inputVal:""}},computed:{labelStyle:function(){return"auto"===this.labelWidth?"":"width: ".concat(this.labelWidth)},filterCandidates:function(){var t=this;return this.candidates.filter((function(e){return e.toString().indexOf(t.inputVal)>-1}))},filterCandidatesLength:function(){return this.filterCandidates.length}},watch:{value:{handler:function(t){this.inputVal=t},immediate:!0}},methods:{toggleSelector:function(){this.showSelector=!this.showSelector},onFocus:function(){this.showSelector=!0},onBlur:function(){var t=this;setTimeout((function(){t.showSelector=!1}),153)},onSelectorClick:function(t){this.inputVal=this.filterCandidates[t],this.showSelector=!1,this.$emit("input",this.inputVal),this.$emit("update:modelValue",this.inputVal)},onInput:function(){var t=this;setTimeout((function(){t.$emit("input",t.inputVal),t.$emit("update:modelValue",t.inputVal)}))}}};e.default=a},"53d1":function(t,e,i){var a=i("dade");a.__esModule&&(a=a.default),"string"===typeof a&&(a=[[t.i,a,""]]),a.locals&&(t.exports=a.locals);var n=i("4f06").default;n("7983c66a",a,!0,{sourceMap:!1,shadowMode:!1})},"5fba":function(t,e,i){"use strict";i.d(e,"b",(function(){return n})),i.d(e,"c",(function(){return s})),i.d(e,"a",(function(){return a}));var a={uniIcons:i("125d").default},n=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("v-uni-view",{staticClass:"uni-combox",class:t.border?"":"uni-combox__no-border"},[t.label?i("v-uni-view",{staticClass:"uni-combox__label",style:t.labelStyle},[i("v-uni-text",[t._v(t._s(t.label))])],1):t._e(),i("v-uni-view",{staticClass:"uni-combox__input-box"},[i("v-uni-input",{staticClass:"uni-combox__input",attrs:{type:"text",placeholder:t.placeholder,"placeholder-class":"uni-combox__input-plac"},on:{input:function(e){arguments[0]=e=t.$handleEvent(e),t.onInput.apply(void 0,arguments)},focus:function(e){arguments[0]=e=t.$handleEvent(e),t.onFocus.apply(void 0,arguments)},blur:function(e){arguments[0]=e=t.$handleEvent(e),t.onBlur.apply(void 0,arguments)}},model:{value:t.inputVal,callback:function(e){t.inputVal=e},expression:"inputVal"}}),i("uni-icons",{attrs:{type:t.showSelector?"top":"bottom",size:"14",color:"#999"},on:{click:function(e){arguments[0]=e=t.$handleEvent(e),t.toggleSelector.apply(void 0,arguments)}}})],1),t.showSelector?i("v-uni-view",{staticClass:"uni-combox__selector"},[i("v-uni-view",{staticClass:"uni-popper__arrow"}),i("v-uni-scroll-view",{staticClass:"uni-combox__selector-scroll",attrs:{"scroll-y":"true"}},[0===t.filterCandidatesLength?i("v-uni-view",{staticClass:"uni-combox__selector-empty"},[i("v-uni-text",[t._v(t._s(t.emptyTips))])],1):t._e(),t._l(t.filterCandidates,(function(e,a){return i("v-uni-view",{key:a,staticClass:"uni-combox__selector-item",on:{click:function(e){arguments[0]=e=t.$handleEvent(e),t.onSelectorClick(a)}}},[i("v-uni-text",[t._v(t._s(e))])],1)}))],2)],1):t._e()],1)},s=[]},"62e0":function(t,e,i){"use strict";i.r(e);var a=i("e4e8"),n=i.n(a);for(var s in a)["default"].indexOf(s)<0&&function(t){i.d(e,t,(function(){return a[t]}))}(s);e["default"]=n.a},6827:function(t,e,i){"use strict";var a=i("b18f"),n=i.n(a);n.a},"6d8b":function(t,e,i){"use strict";i.r(e);var a=i("5fba"),n=i("cc05");for(var s in n)["default"].indexOf(s)<0&&function(t){i.d(e,t,(function(){return n[t]}))}(s);i("0ef2");var o=i("f0c5"),r=Object(o["a"])(n["default"],a["b"],a["c"],!1,null,"1c3f77c9",null,!1,a["a"],void 0);e["default"]=r.exports},ac60:function(t,e,i){var a=i("24fb");e=a(!1),e.push([t.i,'@charset "UTF-8";\r\n/**\r\n * 这里是uni-app内置的常用样式变量\r\n *\r\n * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量\r\n * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App\r\n *\r\n */\r\n/**\r\n * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能\r\n *\r\n * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件\r\n */\r\n/* 颜色变量 */\r\n/* 行为相关颜色 */\r\n/* 文字基本颜色 */\r\n/* 背景颜色 */\r\n/* 边框颜色 */\r\n/* 尺寸变量 */\r\n/* 文字尺寸 */\r\n/* 图片尺寸 */\r\n/* Border Radius */\r\n/* 水平间距 */\r\n/* 垂直间距 */\r\n/* 透明度 */\r\n/* 文章场景相关 */.uni-combox[data-v-1c3f77c9]{font-size:14px;border:1px solid #dcdfe6;border-radius:4px;padding:6px 10px;position:relative;display:flex;flex-direction:row;align-items:center}.uni-combox__label[data-v-1c3f77c9]{font-size:16px;line-height:22px;padding-right:10px;color:#999}.uni-combox__input-box[data-v-1c3f77c9]{position:relative;display:flex;flex:1;flex-direction:row;align-items:center}.uni-combox__input[data-v-1c3f77c9]{flex:1;font-size:14px;height:22px;line-height:22px}.uni-combox__input-plac[data-v-1c3f77c9]{font-size:14px;color:#999}.uni-combox__selector[data-v-1c3f77c9]{box-sizing:border-box;position:absolute;top:calc(100% + 12px);left:0;width:100%;background-color:#fff;border:1px solid #ebeef5;border-radius:6px;box-shadow:0 2px 12px 0 rgba(0,0,0,.1);z-index:2;padding:4px 0}.uni-combox__selector-scroll[data-v-1c3f77c9]{max-height:200px;box-sizing:border-box}.uni-combox__selector-empty[data-v-1c3f77c9],\r\n.uni-combox__selector-item[data-v-1c3f77c9]{display:flex;cursor:pointer;line-height:36px;font-size:14px;text-align:center;padding:0 10px}.uni-combox__selector-item[data-v-1c3f77c9]:hover{background-color:#f9f9f9}.uni-combox__selector-empty[data-v-1c3f77c9]:last-child,\r\n.uni-combox__selector-item[data-v-1c3f77c9]:last-child{border-bottom:none}.uni-popper__arrow[data-v-1c3f77c9],\r\n.uni-popper__arrow[data-v-1c3f77c9]::after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid;border-width:6px}.uni-popper__arrow[data-v-1c3f77c9]{-webkit-filter:drop-shadow(0 2px 12px rgba(0,0,0,.03));filter:drop-shadow(0 2px 12px rgba(0,0,0,.03));top:-6px;left:10%;margin-right:3px;border-top-width:0;border-bottom-color:#ebeef5}.uni-popper__arrow[data-v-1c3f77c9]::after{content:" ";top:1px;margin-left:-6px;border-top-width:0;border-bottom-color:#fff}.uni-combox__no-border[data-v-1c3f77c9]{border:none}',""]),t.exports=e},b18d:function(t,e,i){var a=i("ac60");a.__esModule&&(a=a.default),"string"===typeof a&&(a=[[t.i,a,""]]),a.locals&&(t.exports=a.locals);var n=i("4f06").default;n("f01df0cc",a,!0,{sourceMap:!1,shadowMode:!1})},b18f:function(t,e,i){var a=i("bc66");a.__esModule&&(a=a.default),"string"===typeof a&&(a=[[t.i,a,""]]),a.locals&&(t.exports=a.locals);var n=i("4f06").default;n("c442bfba",a,!0,{sourceMap:!1,shadowMode:!1})},b2a6:function(t,e,i){"use strict";i.r(e);var a=i("3993"),n=i("62e0");for(var s in n)["default"].indexOf(s)<0&&function(t){i.d(e,t,(function(){return n[t]}))}(s);i("6827");var o=i("f0c5"),r=Object(o["a"])(n["default"],a["b"],a["c"],!1,null,"350e8d74",null,!1,a["a"],void 0);e["default"]=r.exports},bc66:function(t,e,i){var a=i("24fb");e=a(!1),e.push([t.i,'@charset "UTF-8";\r\n/**\r\n * 这里是uni-app内置的常用样式变量\r\n *\r\n * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量\r\n * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App\r\n *\r\n */\r\n/**\r\n * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能\r\n *\r\n * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件\r\n */\r\n/* 颜色变量 */\r\n/* 行为相关颜色 */\r\n/* 文字基本颜色 */\r\n/* 背景颜色 */\r\n/* 边框颜色 */\r\n/* 尺寸变量 */\r\n/* 文字尺寸 */\r\n/* 图片尺寸 */\r\n/* Border Radius */\r\n/* 水平间距 */\r\n/* 垂直间距 */\r\n/* 透明度 */\r\n/* 文章场景相关 */.uni-tag[data-v-350e8d74]{line-height:14px;font-size:12px;font-weight:200;padding:4px 7px;color:#fff;border-radius:3px;background-color:#8f939c;border-width:%?1?%;border-style:solid;border-color:#8f939c;cursor:pointer}.uni-tag--default[data-v-350e8d74]{font-size:12px}.uni-tag--default--inverted[data-v-350e8d74]{color:#8f939c;border-color:#8f939c}.uni-tag--small[data-v-350e8d74]{padding:2px 5px;font-size:12px;border-radius:2px}.uni-tag--mini[data-v-350e8d74]{padding:1px 3px;font-size:12px;border-radius:2px}.uni-tag--primary[data-v-350e8d74]{background-color:#2979ff;border-color:#2979ff;color:#fff}.uni-tag--success[data-v-350e8d74]{color:#fff;background-color:#18bc37;border-color:#18bc37}.uni-tag--warning[data-v-350e8d74]{color:#fff;background-color:#f3a73f;border-color:#f3a73f}.uni-tag--error[data-v-350e8d74]{color:#fff;background-color:#e43d33;border-color:#e43d33}.uni-tag--primary--inverted[data-v-350e8d74]{color:#2979ff;border-color:#2979ff}.uni-tag--success--inverted[data-v-350e8d74]{color:#18bc37;border-color:#18bc37}.uni-tag--warning--inverted[data-v-350e8d74]{color:#f3a73f;border-color:#f3a73f}.uni-tag--error--inverted[data-v-350e8d74]{color:#e43d33;border-color:#e43d33}.uni-tag--inverted[data-v-350e8d74]{background-color:#fff}.uni-tag--circle[data-v-350e8d74]{border-radius:15px!important}.uni-tag--mark[data-v-350e8d74]{border-top-left-radius:0!important;border-bottom-left-radius:0!important;border-top-right-radius:15px!important;border-bottom-right-radius:15px!important}.uni-tag--disabled[data-v-350e8d74]{opacity:.5;cursor:not-allowed}.uni-tag-text[data-v-350e8d74]{color:#fff;font-size:14px}.uni-tag-text--primary[data-v-350e8d74]{color:#2979ff}.uni-tag-text--success[data-v-350e8d74]{color:#18bc37}.uni-tag-text--warning[data-v-350e8d74]{color:#f3a73f}.uni-tag-text--error[data-v-350e8d74]{color:#e43d33}.uni-tag-text--small[data-v-350e8d74]{font-size:12px}',""]),t.exports=e},cc05:function(t,e,i){"use strict";i.r(e);var a=i("51a3"),n=i.n(a);for(var s in a)["default"].indexOf(s)<0&&function(t){i.d(e,t,(function(){return a[t]}))}(s);e["default"]=n.a},dade:function(t,e,i){var a=i("24fb");e=a(!1),e.push([t.i,".list[data-v-482a2878]{display:flex;min-height:%?80?%;background-color:#fff;margin:%?20?% %?20?%;border-radius:%?20?%;box-shadow:0 0 30px 0 rgba(0,0,0,.2);padding:%?10?%}.list[data-v-482a2878]:first-child{margin-top:%?320?%}.list[data-v-482a2878]:last-child{margin-bottom:%?120?%}.list-left[data-v-482a2878]{display:flex;flex-direction:column;margin-left:%?20?%;width:100vw}.list-left-item[data-v-482a2878]{min-height:%?40?%;line-height:%?40?%;display:flex}.desc[data-v-482a2878]{min-height:%?40?%;display:flex;align-items:center;width:35%}.left-item[data-v-482a2878]{display:flex;flex-wrap:wrap;width:75%;margin:1px 1px 1px 1px\r\n\t/* color: #409EFF; */}.list-right[data-v-482a2878]{display:flex;width:20vw;justify-content:space-between;align-items:center;margin-right:%?20?%}.buttom[data-v-482a2878]{width:100%;position:fixed;bottom:0;left:0;display:flex;align-items:center;justify-content:space-between;height:%?100?%;background-color:#fff;box-shadow:0 0 10px 0 rgba(0,0,0,.2)}.popup[data-v-482a2878]{width:80vw;min-height:%?100?%;background-color:#fff;border-radius:%?25?%}.title[data-v-482a2878]{height:%?100?%;line-height:%?100?%;width:100%;color:#606266;text-align:center;font-size:16px}.popup-item[data-v-482a2878]{height:%?80?%;line-height:%?80?%;display:flex;align-items:center;font-size:14px}.popup-item-left[data-v-482a2878]{width:16vw;padding-right:%?20?%;text-align:right;color:#606266}.popup-item-right[data-v-482a2878]{display:flex;align-items:center;width:50vw;height:%?50?%;padding:2px 5px;border:1px solid #e4e7ed;border-radius:%?5?%}.popup-item-right uni-input[data-v-482a2878]{color:#606266}.btn[data-v-482a2878]{display:flex;height:%?90?%;margin-top:%?20?%;border-top:1px solid #dcdfe6;justify-content:center;align-items:center}.btn-left[data-v-482a2878]{display:flex;flex:1;height:100%;justify-content:center;align-items:center;color:#606266;border-right:1px solid #dcdfe6}.btn-right[data-v-482a2878]{display:flex;flex:1;justify-content:center;align-items:center;color:#409eff}\r\n/* 搜索框 */.search-bar[data-v-482a2878]{background-color:#f8f8f8}.list[data-v-482a2878]:first-child{margin-top:%?220?%}.code[data-v-482a2878]{width:100%;position:fixed;min-height:%?100?%;background-color:#fff;z-index:10}.itemButton[data-v-482a2878]{display:flex;align-items:center;justify-content:space-around;height:%?100?%;\t\t\r\n\t/* justify-content: flex-start; */\r\n\t/* margin-left: 20rpx; */border-bottom:1px solid #dcdfe6}.itemButton uni-button[data-v-482a2878]{\r\n\t/* width: 20%; */margin:0}.item[data-v-482a2878]{display:flex;align-items:center;height:%?100?%;margin-left:%?20?%;border-bottom:1px solid #dcdfe6}.item uni-input[data-v-482a2878]{height:%?50?%;line-height:%?50?%;\r\n\t/* font-family: PingFang SC; uniapp 默认字体不居中 */font-size:%?36?%;font-family:PingFang SC;width:55vw}.code-decs[data-v-482a2878]{width:20vw;font-size:18px;color:#303133}.item-right[data-v-482a2878]{margin-left:auto;margin-right:%?20?%}.mat-list-title[data-v-482a2878]{height:%?80?%;line-height:%?80?%;width:100%;background-color:#fff;position:fixed;margin-top:%?100?%;z-index:9;\r\n\t/* border-top: 1px solid #DCDFE6; */text-align:center;box-shadow:0 0 10px 0 rgba(0,0,0,.2)}",""]),t.exports=e},e10b:function(t,e,i){"use strict";i.r(e);var a=i("3d97"),n=i("0a77");for(var s in n)["default"].indexOf(s)<0&&function(t){i.d(e,t,(function(){return n[t]}))}(s);i("ea38");var o=i("f0c5"),r=Object(o["a"])(n["default"],a["b"],a["c"],!1,null,"482a2878",null,!1,a["a"],void 0);e["default"]=r.exports},e4e8:function(t,e,i){"use strict";i("7a82"),Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var a={name:"UniTag",emits:["click"],props:{type:{type:String,default:"default"},size:{type:String,default:"normal"},text:{type:String,default:""},disabled:{type:[Boolean,String],default:!1},inverted:{type:[Boolean,String],default:!1},circle:{type:[Boolean,String],default:!1},mark:{type:[Boolean,String],default:!1},customStyle:{type:String,default:""}},computed:{classes:function(){var t=this.type,e=this.disabled,i=this.inverted,a=this.circle,n=this.mark,s=this.size,o=this.isTrue,r=["uni-tag--"+t,"uni-tag--"+s,o(e)?"uni-tag--disabled":"",o(i)?"uni-tag--"+t+"--inverted":"",o(a)?"uni-tag--circle":"",o(n)?"uni-tag--mark":"",o(i)?"uni-tag--inverted uni-tag-text--"+t:"","small"===s?"uni-tag-text--small":""];return r.join(" ")}},methods:{isTrue:function(t){return!0===t||"true"===t},onClick:function(){this.isTrue(this.disabled)||this.$emit("click")}}};e.default=a},ea38:function(t,e,i){"use strict";var a=i("53d1"),n=i.n(a);n.a}}]); |
| | | (window["webpackJsonp"] = window["webpackJsonp"] || []).push([["pages-pakin-putDown"], { |
| | | "0a77": function (t, e, i) { |
| | | "use strict"; |
| | | i.r(e); |
| | | var a = i("35bc"), n = i.n(a); |
| | | for (var s in a) ["default"].indexOf(s) < 0 && function (t) { |
| | | i.d(e, t, (function () { |
| | | return a[t] |
| | | })) |
| | | }(s); |
| | | e["default"] = n.a |
| | | }, "0ef2": function (t, e, i) { |
| | | "use strict"; |
| | | var a = i("b18d"), n = i.n(a); |
| | | n.a |
| | | }, "35bc": function (t, e, i) { |
| | | "use strict"; |
| | | (function (t) { |
| | | i("7a82"), Object.defineProperty(e, "__esModule", {value: !0}), e.default = void 0, i("3c65"), i("a434"), i("e9c4"); |
| | | var a = { |
| | | data: function () { |
| | | return { |
| | | baseUrl: "", |
| | | token: "", |
| | | barcode: "", |
| | | dataList: [], |
| | | count: 0, |
| | | rowNum: "", |
| | | matnr: "", |
| | | batch: "", |
| | | weight: "", |
| | | msgType1: "success", |
| | | msgType: "success", |
| | | messageText: "", |
| | | title: "", |
| | | content: "", |
| | | barcodeFocus: !0, |
| | | matFocus: !1, |
| | | matData: "", |
| | | removeNum: 0, |
| | | specs: "", |
| | | manuDate: "", |
| | | model: "", |
| | | length: "", |
| | | volume: "", |
| | | staList: [100, 102, 104, 107, 305], |
| | | sta: "", |
| | | item: "" |
| | | } |
| | | }, onLoad: function () { |
| | | }, onShow: function () { |
| | | this.baseUrl = uni.getStorageSync("baseUrl"), this.token = uni.getStorageSync("token") |
| | | }, methods: { |
| | | messageToggle: function (t) { |
| | | this.msgType1 = t, this.$refs.message.open() |
| | | }, barcodeInput: function () { |
| | | var t = this; |
| | | setTimeout((function () { |
| | | var e = t.barcode.length; |
| | | if (8 != e) return uni.showToast({ |
| | | title: "托盘码有误请重试", |
| | | icon: "none", |
| | | position: "top" |
| | | }), void t.barcodeFocuss(); |
| | | t.focuss() |
| | | }), 200) |
| | | }, barcodeFocuss: function () { |
| | | var t = this; |
| | | t.barcodeFocus = !1, setTimeout((function () { |
| | | t.barcode = "", t.barcodeFocus = !0 |
| | | }), 100) |
| | | }, focuss: function () { |
| | | var t = this; |
| | | this.barcodeFocus = !1, this.matFocus = !1, setTimeout((function () { |
| | | t.matnr = "", t.matFocus = !0 |
| | | }), 100) |
| | | }, findMat: function () { |
| | | var t = this; |
| | | uni.request({ |
| | | url: t.baseUrl + "/mat/split", |
| | | data: {matnr: t.matnr}, |
| | | header: {token: uni.getStorageSync("token")}, |
| | | success: function (e) { |
| | | e = e.data, 200 === e.code && e.data ? (t.matData = e.data, t.checkMat(t.matData)) : 403 == e.code ? (uni.showToast({ |
| | | title: e.msg, |
| | | icon: "none", |
| | | position: "top" |
| | | }), setTimeout((function () { |
| | | uni.reLaunch({url: "../login/login"}) |
| | | }), 1e3)) : uni.showToast({title: e.msg, icon: "none", position: "top"}) |
| | | } |
| | | }) |
| | | }, selectMat: function () { |
| | | var e = this; |
| | | uni.navigateTo({ |
| | | url: "../locDetl/locDetl", success: function (t) { |
| | | t.eventChannel.emit("commonUrl", {commonUrl: ""}) |
| | | }, events: { |
| | | acceptDataFromOpenedPage: function (i) { |
| | | t("log", i.data, " at pages/pakin/putDown.vue:280"); |
| | | for (var a = 0; a < i.data.length; a++) e.checkMat(i.data[a]) |
| | | } |
| | | } |
| | | }), e.matnr = "" |
| | | }, checkMat: function (t) { |
| | | for (var e = this.dataList.length, i = !0, a = 0; a < e; a++) t.locNo == this.dataList[a].locNo && t.matnr == this.dataList[a].matnr && (i = !1); |
| | | i && this.dataList.unshift(t), this.$forceUpdate() |
| | | }, revise: function (t, e) { |
| | | this.matnr = this.dataList[e].matnr, this.batch = this.dataList[e].batch, this.weight = this.dataList[e].weight, this.specs = this.dataList[e].specs, this.manuDate = this.dataList[e].manuDate, this.model = this.dataList[e].model, this.length = this.dataList[e].length, this.volume = this.dataList[e].volume, this.rowNum = e, this.eject() |
| | | }, eject: function (t) { |
| | | this.type = t, this.$refs.revise.open(t) |
| | | }, remove: function (t, e, i) { |
| | | this.removeNum = e, this.msgType = i, this.title = "警告", this.content = "是否移除当前商品!", this.$refs.alertDialog.open(e) |
| | | }, removeConfirm: function () { |
| | | this.messageText = "移除成功", this.messageToggle("success"), this.dataList.splice(this.removeNum, 1) |
| | | }, removeClose: function () { |
| | | this.$refs.alertDialog.close() |
| | | }, reviseConfirm: function () { |
| | | this.dataList[this.rowNum].anfme = this.count, this.dataList[this.rowNum].batch = this.batch, this.dataList[this.rowNum].weight = this.weight, this.matnr = "", this.messageText = "修改成功", this.messageToggle("success"), this.$refs.revise.close() |
| | | }, reviseClose: function () { |
| | | this.$refs.revise.close() |
| | | }, changeValue: function (t) { |
| | | this.count = t |
| | | }, combConfirm: function (t) { |
| | | this.msgType = t, this.title = "警告", this.content = "是否生成出库任务!", this.$refs.combConfirm.open() |
| | | }, combClose: function () { |
| | | this.$refs.combConfirm.close() |
| | | }, comb: function () { |
| | | uni.vibrateShort(); |
| | | var t = this; |
| | | return 0 === t.dataList.length ? (this.messageText = "请添加商品列表", void this.messageToggle("error")) : "" === t.sta ? (this.messageText = "请选择站点", void this.messageToggle("error")) : void uni.request({ |
| | | url: t.baseUrl + "/mobile/outbound/auth", |
| | | data: JSON.stringify({sta: t.sta, combMats: t.dataList}), |
| | | method: "POST", |
| | | header: {token: uni.getStorageSync("token")}, |
| | | success: function (e) { |
| | | var i = e.data; |
| | | 200 === i.code ? (t.resst(), t.messageText = "生成出库任务成功", t.messageToggle("success")) : 403 == i.code ? (t.messageText = i.msg, t.messageToggle("error"), setTimeout((function () { |
| | | uni.reLaunch({url: "../login/login"}) |
| | | }), 1e3)) : (t.messageText = i.msg, t.messageToggle("error")) |
| | | } |
| | | }) |
| | | }, reset: function (t) { |
| | | this.msgType = t, this.title = "警告", this.content = "是否重置!", this.$refs.resetConfirm.open() |
| | | }, resetConfirm: function () { |
| | | this.dataList = [], this.messageText = "重置完成", this.messageToggle("success") |
| | | }, resetClose: function () { |
| | | }, resst: function () { |
| | | this.dataList = [], this.barcode = "", this.sta = "", this.barcodeFocuss() |
| | | } |
| | | } |
| | | }; |
| | | e.default = a |
| | | }).call(this, i("0de9")["log"]) |
| | | }, 3993: function (t, e, i) { |
| | | "use strict"; |
| | | i.d(e, "b", (function () { |
| | | return a |
| | | })), i.d(e, "c", (function () { |
| | | return n |
| | | })), i.d(e, "a", (function () { |
| | | })); |
| | | var a = function () { |
| | | var t = this, e = t.$createElement, i = t._self._c || e; |
| | | return t.text ? i("v-uni-text", { |
| | | staticClass: "uni-tag", |
| | | class: t.classes, |
| | | style: t.customStyle, |
| | | on: { |
| | | click: function (e) { |
| | | arguments[0] = e = t.$handleEvent(e), t.onClick.apply(void 0, arguments) |
| | | } |
| | | } |
| | | }, [t._v(t._s(t.text))]) : t._e() |
| | | }, n = [] |
| | | }, "3d97": function (t, e, i) { |
| | | "use strict"; |
| | | i.d(e, "b", (function () { |
| | | return n |
| | | })), i.d(e, "c", (function () { |
| | | return s |
| | | })), i.d(e, "a", (function () { |
| | | return a |
| | | })); |
| | | var a = { |
| | | uniCombox: i("6d8b").default, |
| | | uniTag: i("b2a6").default, |
| | | uniIcons: i("125d").default, |
| | | uniPopup: i("0ffb").default, |
| | | uniPopupDialog: i("ed48").default, |
| | | uniPopupMessage: i("d001").default |
| | | }, n = function () { |
| | | var t = this, e = t.$createElement, i = t._self._c || e; |
| | | return i("v-uni-view", [i("v-uni-view", {staticClass: "code"}, [i("v-uni-view", {staticClass: "itemButton"}, [i("v-uni-button", { |
| | | attrs: { |
| | | size: "mini", |
| | | type: "primary" |
| | | }, on: { |
| | | click: function (e) { |
| | | arguments[0] = e = t.$handleEvent(e), t.selectMat() |
| | | } |
| | | } |
| | | }, [t._v("提取+")]), i("uni-combox", { |
| | | attrs: {candidates: t.staList, placeholder: "请选择入库站点"}, |
| | | model: { |
| | | value: t.sta, callback: function (e) { |
| | | t.sta = e |
| | | }, expression: "sta" |
| | | } |
| | | })], 1)], 1), i("v-uni-view", {staticClass: "mat-list-title"}, [t._v("商品列表")]), i("v-uni-scroll-view", t._l(t.dataList, (function (e, a) { |
| | | return i("v-uni-view", { |
| | | key: a, |
| | | staticClass: "list" |
| | | }, [i("v-uni-view", {staticClass: "list-left"}, [i("v-uni-view", {staticClass: "list-left-item"}, [i("v-uni-view", {staticClass: "desc"}, [t._v("No:")]), i("v-uni-view", {staticClass: "left-item"}, [t._v(t._s(a + 1))])], 1), i("v-uni-view", {staticClass: "list-left-item"}, [i("v-uni-view", {staticClass: "desc"}, [t._v("库位号:")]), i("v-uni-view", {staticClass: "left-item"}, [t._v(t._s(e.locNo))])], 1), i("v-uni-view", {staticClass: "list-left-item"}, [i("v-uni-view", {staticClass: "desc"}, [t._v("编码:")]), i("v-uni-view", {staticClass: "left-item"}, [i("uni-tag", { |
| | | attrs: { |
| | | text: e.matnr, |
| | | type: "primary" |
| | | } |
| | | })], 1)], 1), i("v-uni-view", {staticClass: "list-left-item"}, [i("v-uni-view", {staticClass: "desc"}, [t._v("批号:")]), i("v-uni-view", {staticClass: "left-item"}, [t._v(t._s(e.batch))])], 1), i("v-uni-view", {staticClass: "list-left-item"}, [i("v-uni-view", {staticClass: "desc"}, [t._v("膜类型:")]), i("v-uni-view", {staticClass: "left-item"}, [t._v(t._s(e.specs))])], 1), i("v-uni-view", {staticClass: "list-left-item"}, [i("v-uni-view", {staticClass: "desc"}, [t._v("生产日期:")]), i("v-uni-view", {staticClass: "left-item"}, [t._v(t._s(e.manuDate))])], 1), i("v-uni-view", {staticClass: "list-left-item"}, [i("v-uni-view", {staticClass: "desc"}, [t._v("型号:")]), i("v-uni-view", {staticClass: "left-item"}, [t._v(t._s(e.model))])], 1), i("v-uni-view", {staticClass: "list-left-item"}, [i("v-uni-view", {staticClass: "desc"}, [t._v("宽度:")]), i("v-uni-view", {staticClass: "left-item"}, [t._v(t._s(e.weight))])], 1), i("v-uni-view", {staticClass: "list-left-item"}, [i("v-uni-view", {staticClass: "desc"}, [t._v("长度:")]), i("v-uni-view", {staticClass: "left-item"}, [t._v(t._s(e.length))])], 1), i("v-uni-view", {staticClass: "list-left-item"}, [i("v-uni-view", {staticClass: "desc"}, [t._v("面积:")]), i("v-uni-view", {staticClass: "left-item"}, [t._v(t._s(e.volume))])], 1)], 1), i("v-uni-view", {staticClass: "list-right"}, [i("uni-icons", { |
| | | attrs: { |
| | | type: "trash", |
| | | color: "#f58a8a", |
| | | size: "24" |
| | | }, on: { |
| | | click: function (i) { |
| | | arguments[0] = i = t.$handleEvent(i), t.remove(e, a, "warn") |
| | | } |
| | | } |
| | | })], 1)], 1) |
| | | })), 1), i("v-uni-view", {staticClass: "buttom"}, [i("v-uni-button", { |
| | | attrs: {size: "mini"}, |
| | | on: { |
| | | click: function (e) { |
| | | arguments[0] = e = t.$handleEvent(e), t.reset("warn") |
| | | } |
| | | } |
| | | }, [t._v("重置")]), i("v-uni-button", { |
| | | attrs: {size: "mini", type: "primary"}, on: { |
| | | click: function (e) { |
| | | arguments[0] = e = t.$handleEvent(e), t.combConfirm("warn") |
| | | } |
| | | } |
| | | }, [t._v("出库")])], 1), i("v-uni-view", [i("uni-popup", { |
| | | ref: "revise", |
| | | attrs: {type: "dialog"} |
| | | }, [i("v-uni-view", {staticClass: "popup"}, [i("v-uni-view", {staticClass: "title"}, [t._v("修改")]), i("v-uni-view", {staticClass: "popup-item"}, [i("v-uni-view", {staticClass: "popup-item-left"}, [t._v("编码:")]), i("v-uni-view", {staticClass: "popup-item-right"}, [i("v-uni-input", { |
| | | staticStyle: { |
| | | "background-color": "#f7f7f7", |
| | | padding: "0", |
| | | color: "#d5d5d5" |
| | | }, attrs: {type: "text", disabled: "true"}, model: { |
| | | value: t.matnr, callback: function (e) { |
| | | t.matnr = e |
| | | }, expression: "matnr" |
| | | } |
| | | })], 1)], 1), i("v-uni-view", {staticClass: "popup-item"}, [i("v-uni-view", {staticClass: "popup-item-left"}, [t._v("批号:")]), i("v-uni-view", {staticClass: "popup-item-right"}, [i("v-uni-input", { |
| | | attrs: {type: "text"}, |
| | | model: { |
| | | value: t.batch, callback: function (e) { |
| | | t.batch = e |
| | | }, expression: "batch" |
| | | } |
| | | })], 1)], 1), i("v-uni-view", {staticClass: "popup-item"}, [i("v-uni-view", {staticClass: "popup-item-left"}, [t._v("膜类型:")]), i("v-uni-view", {staticClass: "popup-item-right"}, [i("v-uni-input", { |
| | | attrs: {type: "text"}, |
| | | model: { |
| | | value: t.specs, callback: function (e) { |
| | | t.specs = e |
| | | }, expression: "specs" |
| | | } |
| | | })], 1)], 1), i("v-uni-view", {staticClass: "popup-item"}, [i("v-uni-view", {staticClass: "popup-item-left"}, [t._v("生产日期:")]), i("v-uni-view", {staticClass: "popup-item-right"}, [i("v-uni-input", { |
| | | attrs: {type: "text"}, |
| | | model: { |
| | | value: t.manuDate, callback: function (e) { |
| | | t.manuDate = e |
| | | }, expression: "manuDate" |
| | | } |
| | | })], 1)], 1), i("v-uni-view", {staticClass: "popup-item"}, [i("v-uni-view", {staticClass: "popup-item-left"}, [t._v("型号:")]), i("v-uni-view", {staticClass: "popup-item-right"}, [i("v-uni-input", { |
| | | attrs: {type: "text"}, |
| | | model: { |
| | | value: t.model, callback: function (e) { |
| | | t.model = e |
| | | }, expression: "model" |
| | | } |
| | | })], 1)], 1), i("v-uni-view", {staticClass: "popup-item"}, [i("v-uni-view", {staticClass: "popup-item-left"}, [t._v("宽度:")]), i("v-uni-view", {staticClass: "popup-item-right"}, [i("v-uni-input", { |
| | | attrs: {type: "text"}, |
| | | model: { |
| | | value: t.weight, callback: function (e) { |
| | | t.weight = e |
| | | }, expression: "weight" |
| | | } |
| | | })], 1)], 1), i("v-uni-view", {staticClass: "popup-item"}, [i("v-uni-view", {staticClass: "popup-item-left"}, [t._v("长度:")]), i("v-uni-view", {staticClass: "popup-item-right"}, [i("v-uni-input", { |
| | | attrs: {type: "text"}, |
| | | model: { |
| | | value: t.length, callback: function (e) { |
| | | t.length = e |
| | | }, expression: "length" |
| | | } |
| | | })], 1)], 1), i("v-uni-view", {staticClass: "popup-item"}, [i("v-uni-view", {staticClass: "popup-item-left"}, [t._v("面积:")]), i("v-uni-view", {staticClass: "popup-item-right"}, [i("v-uni-input", { |
| | | attrs: {type: "text"}, |
| | | model: { |
| | | value: t.volume, callback: function (e) { |
| | | t.volume = e |
| | | }, expression: "volume" |
| | | } |
| | | })], 1)], 1), i("v-uni-view", {staticClass: "btn"}, [i("v-uni-view", { |
| | | staticClass: "btn-left", |
| | | on: { |
| | | click: function (e) { |
| | | arguments[0] = e = t.$handleEvent(e), t.reviseClose.apply(void 0, arguments) |
| | | } |
| | | } |
| | | }, [t._v("取消")]), i("v-uni-view", { |
| | | staticClass: "btn-right", on: { |
| | | click: function (e) { |
| | | arguments[0] = e = t.$handleEvent(e), t.reviseConfirm() |
| | | } |
| | | } |
| | | }, [t._v("修改")])], 1)], 1)], 1)], 1), i("v-uni-view", [i("uni-popup", { |
| | | ref: "alertDialog", |
| | | attrs: {type: "dialog"} |
| | | }, [i("uni-popup-dialog", { |
| | | attrs: {type: t.msgType, confirmText: "移除", title: t.title, content: t.content}, |
| | | on: { |
| | | confirm: function (e) { |
| | | arguments[0] = e = t.$handleEvent(e), t.removeConfirm() |
| | | }, close: function (e) { |
| | | arguments[0] = e = t.$handleEvent(e), t.removeClose.apply(void 0, arguments) |
| | | } |
| | | } |
| | | })], 1)], 1), i("v-uni-view", [i("uni-popup", { |
| | | ref: "message", |
| | | attrs: {type: "message"} |
| | | }, [i("uni-popup-message", { |
| | | attrs: { |
| | | type: t.msgType1, |
| | | message: t.messageText, |
| | | duration: 2e3 |
| | | } |
| | | })], 1)], 1), i("v-uni-view", [i("uni-popup", { |
| | | ref: "combConfirm", |
| | | attrs: {type: "dialog"} |
| | | }, [i("uni-popup-dialog", { |
| | | attrs: { |
| | | type: t.msgType, |
| | | cancelText: "取消", |
| | | confirmText: "确认", |
| | | title: t.title, |
| | | content: t.content |
| | | }, on: { |
| | | confirm: function (e) { |
| | | arguments[0] = e = t.$handleEvent(e), t.comb.apply(void 0, arguments) |
| | | }, close: function (e) { |
| | | arguments[0] = e = t.$handleEvent(e), t.combClose.apply(void 0, arguments) |
| | | } |
| | | } |
| | | })], 1)], 1), i("v-uni-view", [i("uni-popup", { |
| | | ref: "resetConfirm", |
| | | attrs: {type: "dialog"} |
| | | }, [i("uni-popup-dialog", { |
| | | attrs: { |
| | | type: t.msgType, |
| | | cancelText: "取消", |
| | | confirmText: "确认", |
| | | title: t.title, |
| | | content: t.content |
| | | }, on: { |
| | | confirm: function (e) { |
| | | arguments[0] = e = t.$handleEvent(e), t.resetConfirm.apply(void 0, arguments) |
| | | }, close: function (e) { |
| | | arguments[0] = e = t.$handleEvent(e), t.resetClose.apply(void 0, arguments) |
| | | } |
| | | } |
| | | })], 1)], 1)], 1) |
| | | }, s = [] |
| | | }, "51a3": function (t, e, i) { |
| | | "use strict"; |
| | | i("7a82"), Object.defineProperty(e, "__esModule", {value: !0}), e.default = void 0, i("a9e3"), i("4de4"), i("d3b7"), i("c975"), i("d401"), i("25f0"); |
| | | var a = { |
| | | name: "uniCombox", |
| | | emits: ["input", "update:modelValue"], |
| | | props: { |
| | | border: {type: Boolean, default: !0}, |
| | | label: {type: String, default: ""}, |
| | | labelWidth: {type: String, default: "auto"}, |
| | | placeholder: {type: String, default: ""}, |
| | | candidates: { |
| | | type: Array, default: function () { |
| | | return [] |
| | | } |
| | | }, |
| | | emptyTips: {type: String, default: "无匹配项"}, |
| | | value: {type: [String, Number], default: ""} |
| | | }, |
| | | data: function () { |
| | | return {showSelector: !1, inputVal: ""} |
| | | }, |
| | | computed: { |
| | | labelStyle: function () { |
| | | return "auto" === this.labelWidth ? "" : "width: ".concat(this.labelWidth) |
| | | }, filterCandidates: function () { |
| | | var t = this; |
| | | return this.candidates.filter((function (e) { |
| | | return e.toString().indexOf(t.inputVal) > -1 |
| | | })) |
| | | }, filterCandidatesLength: function () { |
| | | return this.filterCandidates.length |
| | | } |
| | | }, |
| | | watch: { |
| | | value: { |
| | | handler: function (t) { |
| | | this.inputVal = t |
| | | }, immediate: !0 |
| | | } |
| | | }, |
| | | methods: { |
| | | toggleSelector: function () { |
| | | this.showSelector = !this.showSelector |
| | | }, onFocus: function () { |
| | | this.showSelector = !0 |
| | | }, onBlur: function () { |
| | | var t = this; |
| | | setTimeout((function () { |
| | | t.showSelector = !1 |
| | | }), 153) |
| | | }, onSelectorClick: function (t) { |
| | | this.inputVal = this.filterCandidates[t], this.showSelector = !1, this.$emit("input", this.inputVal), this.$emit("update:modelValue", this.inputVal) |
| | | }, onInput: function () { |
| | | var t = this; |
| | | setTimeout((function () { |
| | | t.$emit("input", t.inputVal), t.$emit("update:modelValue", t.inputVal) |
| | | })) |
| | | } |
| | | } |
| | | }; |
| | | e.default = a |
| | | }, "53d1": function (t, e, i) { |
| | | var a = i("dade"); |
| | | a.__esModule && (a = a.default), "string" === typeof a && (a = [[t.i, a, ""]]), a.locals && (t.exports = a.locals); |
| | | var n = i("4f06").default; |
| | | n("7983c66a", a, !0, {sourceMap: !1, shadowMode: !1}) |
| | | }, "5fba": function (t, e, i) { |
| | | "use strict"; |
| | | i.d(e, "b", (function () { |
| | | return n |
| | | })), i.d(e, "c", (function () { |
| | | return s |
| | | })), i.d(e, "a", (function () { |
| | | return a |
| | | })); |
| | | var a = {uniIcons: i("125d").default}, n = function () { |
| | | var t = this, e = t.$createElement, i = t._self._c || e; |
| | | return i("v-uni-view", { |
| | | staticClass: "uni-combox", |
| | | class: t.border ? "" : "uni-combox__no-border" |
| | | }, [t.label ? i("v-uni-view", { |
| | | staticClass: "uni-combox__label", |
| | | style: t.labelStyle |
| | | }, [i("v-uni-text", [t._v(t._s(t.label))])], 1) : t._e(), i("v-uni-view", {staticClass: "uni-combox__input-box"}, [i("v-uni-input", { |
| | | staticClass: "uni-combox__input", |
| | | attrs: {type: "text", placeholder: t.placeholder, "placeholder-class": "uni-combox__input-plac"}, |
| | | on: { |
| | | input: function (e) { |
| | | arguments[0] = e = t.$handleEvent(e), t.onInput.apply(void 0, arguments) |
| | | }, focus: function (e) { |
| | | arguments[0] = e = t.$handleEvent(e), t.onFocus.apply(void 0, arguments) |
| | | }, blur: function (e) { |
| | | arguments[0] = e = t.$handleEvent(e), t.onBlur.apply(void 0, arguments) |
| | | } |
| | | }, |
| | | model: { |
| | | value: t.inputVal, callback: function (e) { |
| | | t.inputVal = e |
| | | }, expression: "inputVal" |
| | | } |
| | | }), i("uni-icons", { |
| | | attrs: {type: t.showSelector ? "top" : "bottom", size: "14", color: "#999"}, |
| | | on: { |
| | | click: function (e) { |
| | | arguments[0] = e = t.$handleEvent(e), t.toggleSelector.apply(void 0, arguments) |
| | | } |
| | | } |
| | | })], 1), t.showSelector ? i("v-uni-view", {staticClass: "uni-combox__selector"}, [i("v-uni-view", {staticClass: "uni-popper__arrow"}), i("v-uni-scroll-view", { |
| | | staticClass: "uni-combox__selector-scroll", |
| | | attrs: {"scroll-y": "true"} |
| | | }, [0 === t.filterCandidatesLength ? i("v-uni-view", {staticClass: "uni-combox__selector-empty"}, [i("v-uni-text", [t._v(t._s(t.emptyTips))])], 1) : t._e(), t._l(t.filterCandidates, (function (e, a) { |
| | | return i("v-uni-view", { |
| | | key: a, staticClass: "uni-combox__selector-item", on: { |
| | | click: function (e) { |
| | | arguments[0] = e = t.$handleEvent(e), t.onSelectorClick(a) |
| | | } |
| | | } |
| | | }, [i("v-uni-text", [t._v(t._s(e))])], 1) |
| | | }))], 2)], 1) : t._e()], 1) |
| | | }, s = [] |
| | | }, "62e0": function (t, e, i) { |
| | | "use strict"; |
| | | i.r(e); |
| | | var a = i("e4e8"), n = i.n(a); |
| | | for (var s in a) ["default"].indexOf(s) < 0 && function (t) { |
| | | i.d(e, t, (function () { |
| | | return a[t] |
| | | })) |
| | | }(s); |
| | | e["default"] = n.a |
| | | }, 6827: function (t, e, i) { |
| | | "use strict"; |
| | | var a = i("b18f"), n = i.n(a); |
| | | n.a |
| | | }, "6d8b": function (t, e, i) { |
| | | "use strict"; |
| | | i.r(e); |
| | | var a = i("5fba"), n = i("cc05"); |
| | | for (var s in n) ["default"].indexOf(s) < 0 && function (t) { |
| | | i.d(e, t, (function () { |
| | | return n[t] |
| | | })) |
| | | }(s); |
| | | i("0ef2"); |
| | | var o = i("f0c5"), |
| | | r = Object(o["a"])(n["default"], a["b"], a["c"], !1, null, "1c3f77c9", null, !1, a["a"], void 0); |
| | | e["default"] = r.exports |
| | | }, ac60: function (t, e, i) { |
| | | var a = i("24fb"); |
| | | e = a(!1), e.push([t.i, '@charset "UTF-8";\r\n/**\r\n * 这里是uni-app内置的常用样式变量\r\n *\r\n * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量\r\n * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App\r\n *\r\n */\r\n/**\r\n * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能\r\n *\r\n * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件\r\n */\r\n/* 颜色变量 */\r\n/* 行为相关颜色 */\r\n/* 文字基本颜色 */\r\n/* 背景颜色 */\r\n/* 边框颜色 */\r\n/* 尺寸变量 */\r\n/* 文字尺寸 */\r\n/* 图片尺寸 */\r\n/* Border Radius */\r\n/* 水平间距 */\r\n/* 垂直间距 */\r\n/* 透明度 */\r\n/* 文章场景相关 */.uni-combox[data-v-1c3f77c9]{font-size:14px;border:1px solid #dcdfe6;border-radius:4px;padding:6px 10px;position:relative;display:flex;flex-direction:row;align-items:center}.uni-combox__label[data-v-1c3f77c9]{font-size:16px;line-height:22px;padding-right:10px;color:#999}.uni-combox__input-box[data-v-1c3f77c9]{position:relative;display:flex;flex:1;flex-direction:row;align-items:center}.uni-combox__input[data-v-1c3f77c9]{flex:1;font-size:14px;height:22px;line-height:22px}.uni-combox__input-plac[data-v-1c3f77c9]{font-size:14px;color:#999}.uni-combox__selector[data-v-1c3f77c9]{box-sizing:border-box;position:absolute;top:calc(100% + 12px);left:0;width:100%;background-color:#fff;border:1px solid #ebeef5;border-radius:6px;box-shadow:0 2px 12px 0 rgba(0,0,0,.1);z-index:2;padding:4px 0}.uni-combox__selector-scroll[data-v-1c3f77c9]{max-height:200px;box-sizing:border-box}.uni-combox__selector-empty[data-v-1c3f77c9],\r\n.uni-combox__selector-item[data-v-1c3f77c9]{display:flex;cursor:pointer;line-height:36px;font-size:14px;text-align:center;padding:0 10px}.uni-combox__selector-item[data-v-1c3f77c9]:hover{background-color:#f9f9f9}.uni-combox__selector-empty[data-v-1c3f77c9]:last-child,\r\n.uni-combox__selector-item[data-v-1c3f77c9]:last-child{border-bottom:none}.uni-popper__arrow[data-v-1c3f77c9],\r\n.uni-popper__arrow[data-v-1c3f77c9]::after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid;border-width:6px}.uni-popper__arrow[data-v-1c3f77c9]{-webkit-filter:drop-shadow(0 2px 12px rgba(0,0,0,.03));filter:drop-shadow(0 2px 12px rgba(0,0,0,.03));top:-6px;left:10%;margin-right:3px;border-top-width:0;border-bottom-color:#ebeef5}.uni-popper__arrow[data-v-1c3f77c9]::after{content:" ";top:1px;margin-left:-6px;border-top-width:0;border-bottom-color:#fff}.uni-combox__no-border[data-v-1c3f77c9]{border:none}', ""]), t.exports = e |
| | | }, b18d: function (t, e, i) { |
| | | var a = i("ac60"); |
| | | a.__esModule && (a = a.default), "string" === typeof a && (a = [[t.i, a, ""]]), a.locals && (t.exports = a.locals); |
| | | var n = i("4f06").default; |
| | | n("f01df0cc", a, !0, {sourceMap: !1, shadowMode: !1}) |
| | | }, b18f: function (t, e, i) { |
| | | var a = i("bc66"); |
| | | a.__esModule && (a = a.default), "string" === typeof a && (a = [[t.i, a, ""]]), a.locals && (t.exports = a.locals); |
| | | var n = i("4f06").default; |
| | | n("c442bfba", a, !0, {sourceMap: !1, shadowMode: !1}) |
| | | }, b2a6: function (t, e, i) { |
| | | "use strict"; |
| | | i.r(e); |
| | | var a = i("3993"), n = i("62e0"); |
| | | for (var s in n) ["default"].indexOf(s) < 0 && function (t) { |
| | | i.d(e, t, (function () { |
| | | return n[t] |
| | | })) |
| | | }(s); |
| | | i("6827"); |
| | | var o = i("f0c5"), |
| | | r = Object(o["a"])(n["default"], a["b"], a["c"], !1, null, "350e8d74", null, !1, a["a"], void 0); |
| | | e["default"] = r.exports |
| | | }, bc66: function (t, e, i) { |
| | | var a = i("24fb"); |
| | | e = a(!1), e.push([t.i, '@charset "UTF-8";\r\n/**\r\n * 这里是uni-app内置的常用样式变量\r\n *\r\n * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量\r\n * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App\r\n *\r\n */\r\n/**\r\n * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能\r\n *\r\n * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件\r\n */\r\n/* 颜色变量 */\r\n/* 行为相关颜色 */\r\n/* 文字基本颜色 */\r\n/* 背景颜色 */\r\n/* 边框颜色 */\r\n/* 尺寸变量 */\r\n/* 文字尺寸 */\r\n/* 图片尺寸 */\r\n/* Border Radius */\r\n/* 水平间距 */\r\n/* 垂直间距 */\r\n/* 透明度 */\r\n/* 文章场景相关 */.uni-tag[data-v-350e8d74]{line-height:14px;font-size:12px;font-weight:200;padding:4px 7px;color:#fff;border-radius:3px;background-color:#8f939c;border-width:%?1?%;border-style:solid;border-color:#8f939c;cursor:pointer}.uni-tag--default[data-v-350e8d74]{font-size:12px}.uni-tag--default--inverted[data-v-350e8d74]{color:#8f939c;border-color:#8f939c}.uni-tag--small[data-v-350e8d74]{padding:2px 5px;font-size:12px;border-radius:2px}.uni-tag--mini[data-v-350e8d74]{padding:1px 3px;font-size:12px;border-radius:2px}.uni-tag--primary[data-v-350e8d74]{background-color:#2979ff;border-color:#2979ff;color:#fff}.uni-tag--success[data-v-350e8d74]{color:#fff;background-color:#18bc37;border-color:#18bc37}.uni-tag--warning[data-v-350e8d74]{color:#fff;background-color:#f3a73f;border-color:#f3a73f}.uni-tag--error[data-v-350e8d74]{color:#fff;background-color:#e43d33;border-color:#e43d33}.uni-tag--primary--inverted[data-v-350e8d74]{color:#2979ff;border-color:#2979ff}.uni-tag--success--inverted[data-v-350e8d74]{color:#18bc37;border-color:#18bc37}.uni-tag--warning--inverted[data-v-350e8d74]{color:#f3a73f;border-color:#f3a73f}.uni-tag--error--inverted[data-v-350e8d74]{color:#e43d33;border-color:#e43d33}.uni-tag--inverted[data-v-350e8d74]{background-color:#fff}.uni-tag--circle[data-v-350e8d74]{border-radius:15px!important}.uni-tag--mark[data-v-350e8d74]{border-top-left-radius:0!important;border-bottom-left-radius:0!important;border-top-right-radius:15px!important;border-bottom-right-radius:15px!important}.uni-tag--disabled[data-v-350e8d74]{opacity:.5;cursor:not-allowed}.uni-tag-text[data-v-350e8d74]{color:#fff;font-size:14px}.uni-tag-text--primary[data-v-350e8d74]{color:#2979ff}.uni-tag-text--success[data-v-350e8d74]{color:#18bc37}.uni-tag-text--warning[data-v-350e8d74]{color:#f3a73f}.uni-tag-text--error[data-v-350e8d74]{color:#e43d33}.uni-tag-text--small[data-v-350e8d74]{font-size:12px}', ""]), t.exports = e |
| | | }, cc05: function (t, e, i) { |
| | | "use strict"; |
| | | i.r(e); |
| | | var a = i("51a3"), n = i.n(a); |
| | | for (var s in a) ["default"].indexOf(s) < 0 && function (t) { |
| | | i.d(e, t, (function () { |
| | | return a[t] |
| | | })) |
| | | }(s); |
| | | e["default"] = n.a |
| | | }, dade: function (t, e, i) { |
| | | var a = i("24fb"); |
| | | e = a(!1), e.push([t.i, ".list[data-v-482a2878]{display:flex;min-height:%?80?%;background-color:#fff;margin:%?20?% %?20?%;border-radius:%?20?%;box-shadow:0 0 30px 0 rgba(0,0,0,.2);padding:%?10?%}.list[data-v-482a2878]:first-child{margin-top:%?320?%}.list[data-v-482a2878]:last-child{margin-bottom:%?120?%}.list-left[data-v-482a2878]{display:flex;flex-direction:column;margin-left:%?20?%;width:100vw}.list-left-item[data-v-482a2878]{min-height:%?40?%;line-height:%?40?%;display:flex}.desc[data-v-482a2878]{min-height:%?40?%;display:flex;align-items:center;width:35%}.left-item[data-v-482a2878]{display:flex;flex-wrap:wrap;width:75%;margin:1px 1px 1px 1px\r\n\t/* color: #409EFF; */}.list-right[data-v-482a2878]{display:flex;width:20vw;justify-content:space-between;align-items:center;margin-right:%?20?%}.buttom[data-v-482a2878]{width:100%;position:fixed;bottom:0;left:0;display:flex;align-items:center;justify-content:space-between;height:%?100?%;background-color:#fff;box-shadow:0 0 10px 0 rgba(0,0,0,.2)}.popup[data-v-482a2878]{width:80vw;min-height:%?100?%;background-color:#fff;border-radius:%?25?%}.title[data-v-482a2878]{height:%?100?%;line-height:%?100?%;width:100%;color:#606266;text-align:center;font-size:16px}.popup-item[data-v-482a2878]{height:%?80?%;line-height:%?80?%;display:flex;align-items:center;font-size:14px}.popup-item-left[data-v-482a2878]{width:16vw;padding-right:%?20?%;text-align:right;color:#606266}.popup-item-right[data-v-482a2878]{display:flex;align-items:center;width:50vw;height:%?50?%;padding:2px 5px;border:1px solid #e4e7ed;border-radius:%?5?%}.popup-item-right uni-input[data-v-482a2878]{color:#606266}.btn[data-v-482a2878]{display:flex;height:%?90?%;margin-top:%?20?%;border-top:1px solid #dcdfe6;justify-content:center;align-items:center}.btn-left[data-v-482a2878]{display:flex;flex:1;height:100%;justify-content:center;align-items:center;color:#606266;border-right:1px solid #dcdfe6}.btn-right[data-v-482a2878]{display:flex;flex:1;justify-content:center;align-items:center;color:#409eff}\r\n/* 搜索框 */.search-bar[data-v-482a2878]{background-color:#f8f8f8}.list[data-v-482a2878]:first-child{margin-top:%?220?%}.code[data-v-482a2878]{width:100%;position:fixed;min-height:%?100?%;background-color:#fff;z-index:10}.itemButton[data-v-482a2878]{display:flex;align-items:center;justify-content:space-around;height:%?100?%;\t\t\r\n\t/* justify-content: flex-start; */\r\n\t/* margin-left: 20rpx; */border-bottom:1px solid #dcdfe6}.itemButton uni-button[data-v-482a2878]{\r\n\t/* width: 20%; */margin:0}.item[data-v-482a2878]{display:flex;align-items:center;height:%?100?%;margin-left:%?20?%;border-bottom:1px solid #dcdfe6}.item uni-input[data-v-482a2878]{height:%?50?%;line-height:%?50?%;\r\n\t/* font-family: PingFang SC; uniapp 默认字体不居中 */font-size:%?36?%;font-family:PingFang SC;width:55vw}.code-decs[data-v-482a2878]{width:20vw;font-size:18px;color:#303133}.item-right[data-v-482a2878]{margin-left:auto;margin-right:%?20?%}.mat-list-title[data-v-482a2878]{height:%?80?%;line-height:%?80?%;width:100%;background-color:#fff;position:fixed;margin-top:%?100?%;z-index:9;\r\n\t/* border-top: 1px solid #DCDFE6; */text-align:center;box-shadow:0 0 10px 0 rgba(0,0,0,.2)}", ""]), t.exports = e |
| | | }, e10b: function (t, e, i) { |
| | | "use strict"; |
| | | i.r(e); |
| | | var a = i("3d97"), n = i("0a77"); |
| | | for (var s in n) ["default"].indexOf(s) < 0 && function (t) { |
| | | i.d(e, t, (function () { |
| | | return n[t] |
| | | })) |
| | | }(s); |
| | | i("ea38"); |
| | | var o = i("f0c5"), |
| | | r = Object(o["a"])(n["default"], a["b"], a["c"], !1, null, "482a2878", null, !1, a["a"], void 0); |
| | | e["default"] = r.exports |
| | | }, e4e8: function (t, e, i) { |
| | | "use strict"; |
| | | i("7a82"), Object.defineProperty(e, "__esModule", {value: !0}), e.default = void 0; |
| | | var a = { |
| | | name: "UniTag", |
| | | emits: ["click"], |
| | | props: { |
| | | type: {type: String, default: "default"}, |
| | | size: {type: String, default: "normal"}, |
| | | text: {type: String, default: ""}, |
| | | disabled: {type: [Boolean, String], default: !1}, |
| | | inverted: {type: [Boolean, String], default: !1}, |
| | | circle: {type: [Boolean, String], default: !1}, |
| | | mark: {type: [Boolean, String], default: !1}, |
| | | customStyle: {type: String, default: ""} |
| | | }, |
| | | computed: { |
| | | classes: function () { |
| | | var t = this.type, e = this.disabled, i = this.inverted, a = this.circle, n = this.mark, |
| | | s = this.size, o = this.isTrue, |
| | | r = ["uni-tag--" + t, "uni-tag--" + s, o(e) ? "uni-tag--disabled" : "", o(i) ? "uni-tag--" + t + "--inverted" : "", o(a) ? "uni-tag--circle" : "", o(n) ? "uni-tag--mark" : "", o(i) ? "uni-tag--inverted uni-tag-text--" + t : "", "small" === s ? "uni-tag-text--small" : ""]; |
| | | return r.join(" ") |
| | | } |
| | | }, |
| | | methods: { |
| | | isTrue: function (t) { |
| | | return !0 === t || "true" === t |
| | | }, onClick: function () { |
| | | this.isTrue(this.disabled) || this.$emit("click") |
| | | } |
| | | } |
| | | }; |
| | | e.default = a |
| | | }, ea38: function (t, e, i) { |
| | | "use strict"; |
| | | var a = i("53d1"), n = i.n(a); |
| | | n.a |
| | | } |
| | | }]); |