| | |
| | | let otherMoney = ref([]) |
| | | let delivery = ref([]) |
| | | let money = ref("") |
| | | let otherMoneys = 0 |
| | | let takeCare = "注意:请妥善保管好我司的玻璃架,如有丢失或损坏,按1500元只赔偿。谢谢配合!" |
| | | let remark = "备注:本批玻璃为优等合格品,请在卸货时,当面消点验收、如有质量问题在一周内与本公司联系,否则概不负责!" |
| | | |
| | |
| | | delivery.value=deepClone(res.data.delivery) |
| | | money.value=deepClone(res.data.money) |
| | | otherMoney.value=deepClone(res.data.otherMoney) |
| | | |
| | | otherMoney.value.forEach(item => { |
| | | otherMoneys+=item.DeliveryDetailOtherMoney.monery |
| | | }) |
| | | }else{ |
| | | ElMessage.warning(res.msg) |
| | | router.push("/login") |
| | |
| | | <td>{{delivery.quantity}}</td> |
| | | <td>{{delivery.area}}</td> |
| | | <td></td> |
| | | <td>{{delivery.money}}</td> |
| | | <td>{{delivery.money-otherMoneys}}</td> |
| | | <td></td> |
| | | </tr> |
| | | <tr class="day-in"> |
| | |
| | | <tr class="day-in"> |
| | | <td style="text-align: left;border-width: 0 1px 0 0; border-style: solid; border-color: #d3dce6;" colspan="4" > |
| | | <div style="display: flex;font-size: 10px;text-align: center" v-for="(item, index2) in otherMoney" :key="index2"> |
| | | <div style="width: 25%">{{item.DeliveryDetailOtherMoney[0].alias}}</div> |
| | | <div style="width: 25%">{{item.DeliveryDetailOtherMoney[0].price}}</div> |
| | | <div style="width: 25%">{{item.DeliveryDetailOtherMoney[0].count}}</div> |
| | | <div style="width: 25%">{{item.DeliveryDetailOtherMoney[0].monery}}</div> |
| | | <div style="width: 25%">{{item.DeliveryDetailOtherMoney.alias}}</div> |
| | | <div style="width: 25%">{{item.DeliveryDetailOtherMoney.price}}</div> |
| | | <div style="width: 25%">{{item.DeliveryDetailOtherMoney.count}}</div> |
| | | <div style="width: 25%">{{item.DeliveryDetailOtherMoney.monery}}</div> |
| | | </div> |
| | | </td> |
| | | <td style="text-align: left;border:none;font-size: 15px;" colspan="5">大写金额: {{money}}</td> |
| | |
| | | let delivery = ref([]) |
| | | let otherMoney = ref([]) |
| | | let money = ref("") |
| | | let otherMoneys = 0 |
| | | let takeCare = "注意:请妥善保管好我司的玻璃架,如有丢失或损坏,按1500元只赔偿。谢谢配合!" |
| | | let remark = "备注:本批玻璃为优等合格品,请在卸货时,当面消点验收、如有质量问题在一周内与本公司联系,否则概不负责!" |
| | | |
| | |
| | | delivery.value=deepClone(res.data.delivery) |
| | | money.value=deepClone(res.data.money) |
| | | otherMoney.value=deepClone(res.data.otherMoney) |
| | | |
| | | otherMoney.value.forEach(item => { |
| | | otherMoneys+=item.DeliveryDetailOtherMoney.monery |
| | | }) |
| | | }else{ |
| | | ElMessage.warning(res.msg) |
| | | router.push("/login") |
| | |
| | | <td>{{item.DeliveryDetail.quantity}}</td> |
| | | <td>{{item.DeliveryDetail.area}}</td> |
| | | <td></td> |
| | | <td>{{item.DeliveryDetail.money}}</td> |
| | | <td>{{item.DeliveryDetail.grossAmount}}</td> |
| | | <td></td> |
| | | </tr> |
| | | |
| | |
| | | <td>{{delivery.quantity}}</td> |
| | | <td>{{delivery.area}}</td> |
| | | <td></td> |
| | | <td>{{delivery.money}}</td> |
| | | <td>{{delivery.money-otherMoneys}}</td> |
| | | <td></td> |
| | | </tr> |
| | | <tr class="day-in"> |
| | |
| | | <tr class="day-in"> |
| | | <td style="text-align: left;border-width: 0 1px 0 0; border-style: solid; border-color: #d3dce6;" colspan="4" > |
| | | <div style="display: flex;font-size: 10px;text-align: center" v-for="(item, index2) in otherMoney" :key="index2"> |
| | | <div style="width: 25%">{{item.DeliveryDetailOtherMoney[0].alias}}</div> |
| | | <div style="width: 25%">{{item.DeliveryDetailOtherMoney[0].price}}</div> |
| | | <div style="width: 25%">{{item.DeliveryDetailOtherMoney[0].count}}</div> |
| | | <div style="width: 25%">{{item.DeliveryDetailOtherMoney[0].monery}}</div> |
| | | <div style="width: 25%">{{item.DeliveryDetailOtherMoney.alias}}</div> |
| | | <div style="width: 25%">{{item.DeliveryDetailOtherMoney.price}}</div> |
| | | <div style="width: 25%">{{item.DeliveryDetailOtherMoney.count}}</div> |
| | | <div style="width: 25%">{{item.DeliveryDetailOtherMoney.monery}}</div> |
| | | </div> |
| | | </td> |
| | | <td style="text-align: left;border:none;font-size: 15px;font-weight: bold;" colspan="5">大写金额: {{money}}</td> |
| | |
| | | { code: 'sheet3', name: '浏览发货信息' } |
| | | |
| | | ] |
| | | } |
| | | }, |
| | | { code: 'oneClickStorage', name: "一键完工", prefixIcon: 'vxe-icon-copy', visible: true}, |
| | | // { code: 'getProcessList', name: t('searchOrder.processFlows'), prefixIcon: 'vxe-icon-file-txt', visible: true} |
| | | ] |
| | | ] |
| | |
| | | |
| | | break |
| | | } |
| | | case 'oneClickStorage': { |
| | | if(rowClickIndex.value.processReview===0||rowClickIndex.value.orderReview===0){ |
| | | ElMessage.warning('订单未审核') |
| | | return |
| | | } |
| | | if(rowClickIndex.value.warehousing>0){ |
| | | ElMessage.warning('订单已入库') |
| | | return |
| | | } |
| | | request.post(`/FinishedGoodsInventory/oneClickStorage/${rowClickIndex.value.orderId}/${userStore.user.userName}`).then((res) => { |
| | | if(res.code==200 && res.data===true){ |
| | | ElMessage.success(t('productStock.receivedSuccessfully')) |
| | | router.push({path:'/main/order/selectOrder',query:{random:Math.random()}}) |
| | | }else{ |
| | | ElMessage.warning(res.msg) |
| | | } |
| | | }) |
| | | break |
| | | } |
| | | |
| | | } |
| | | } |
| | |
| | | //参数:相应的数据,实体类信息,相应的方法(数据获取),生成的excel名字 |
| | | DownExcel.download(response, FinishedOperateLogDTO.class, finishedGoodsInventoryService.exportFinishedOperateLogReport(dates),"orderReport"); |
| | | } |
| | | |
| | | |
| | | /*订单一键入库*/ |
| | | @ApiOperation("订单一键入库") |
| | | @SaCheckPermission("CreateProductStock.add") |
| | | @PostMapping("/oneClickStorage/{orderId}/{userName}") |
| | | public Result oneClickStorage( @PathVariable String orderId,@PathVariable String userName){ |
| | | return Result.seccess(finishedGoodsInventoryService.oneClickStorage(orderId,userName)); |
| | | |
| | | } |
| | | } |
| | |
| | | @Param("orderNumber") Integer orderNumber, |
| | | @Param("quantity") Integer quantity); |
| | | |
| | | List<OrderDetail> getSelectOrderDetail(String orderId); |
| | | |
| | | Boolean insertOrderFinishedGoodsInventory(@Param("orderDetail") OrderDetail orderDetail); |
| | | |
| | | Boolean updateOrderInventory(@Param("orderDetail") OrderDetail orderDetail); |
| | | |
| | | |
| | | } |
| | | |
| | |
| | | @Param("finishedOperateLog") FinishedOperateLog finishedOperateLog); |
| | | |
| | | List<FinishedOperateLogDTO> exportFinishedOperateLogReport(List<LocalDate> dates); |
| | | |
| | | Boolean insertOrderFinishedOperateLog(@Param("orderDetail") OrderDetail orderDetail,@Param("userName") String userName,@Param("oddNumber") String oddNumber); |
| | | |
| | | } |
| | |
| | | List <Map<String, Object>> getSelectDeliveryDetailPrinting(@Param("deliveryId") String deliveryId, |
| | | @Param("productId") Integer productId,@Param("orderId") String orderId); |
| | | |
| | | List <Map<String, Object>> getSelectotherMoney(@Param("orderId") String orderId,@Param("deliveryId") String deliveryId, |
| | | @Param("key") String key,@Param("value") String value); |
| | | Map<String, Object> getSelectotherMoney(@Param("orderId") String orderId,@Param("deliveryId") String deliveryId, |
| | | @Param("orderNumber") Integer orderNumber,@Param("key") String key,@Param("value") String value); |
| | | |
| | | List <Map<String, Object>> getSelectOrderotherMoney(@Param("orderId") String orderId, @Param("key") String key,@Param("value") String value); |
| | | Map<String, Object> getSelectOrderotherMoney(@Param("orderId") String orderId,@Param("orderNumber") Integer orderNumber, @Param("key") String key,@Param("value") String value); |
| | | |
| | | List <Map<String, Object>> getSelectOrderDetailPrinting(@Param("productId") Integer productId,@Param("orderId") String orderId); |
| | | |
| | |
| | | import com.example.erp.mapper.mm.BasicWarehouseTypeMapper; |
| | | import com.example.erp.mapper.mm.FinishedGoodsInventoryMapper; |
| | | import com.example.erp.mapper.mm.FinishedOperateLogMapper; |
| | | import com.example.erp.mapper.sd.OrderDetailMapper; |
| | | import com.example.erp.service.userInfo.SysErrorService; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | FinishedOperateLogMapper finishedOperateLogMapper; |
| | | @Autowired |
| | | BasicWarehouseTypeMapper basicWarehouseTypeMapper; |
| | | @Autowired |
| | | OrderDetailMapper orderDetailMapper; |
| | | @Autowired |
| | | SysErrorService sysErrorService; |
| | | |
| | |
| | | finishedOperateLogMapper.updateFinishedOperateLogState(finishedOperateLog,"已作废"); |
| | | //修改库存表入库数量 |
| | | finishedGoodsInventoryMapper.updateInventoryOut(finishedOperateLog); |
| | | //修改流程卡表入库数量 |
| | | finishedGoodsInventoryMapper.updateflowcardOut(finishedOperateLog); |
| | | if(finishedOperateLog.getProcessId()!=null){ |
| | | //修改流程卡表入库数量 |
| | | finishedGoodsInventoryMapper.updateflowcardOut(finishedOperateLog); |
| | | } |
| | | |
| | | //修改订单明细表入库数量 |
| | | finishedGoodsInventoryMapper.updateOutOrderNumberConut(finishedOperateLog.getOrderId(),finishedOperateLog.getOperationNumber(),finishedOperateLog.getQuantity()); |
| | | //判断订单是否全部入库 |
| | |
| | | } |
| | | |
| | | |
| | | public Boolean oneClickStorage(String orderId,String userName) { |
| | | boolean saveState = true; |
| | | Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint(); |
| | | try { |
| | | String oddNumber= orderNumberSetting("入库"); |
| | | List<OrderDetail> orderDetailList=finishedGoodsInventoryMapper.getSelectOrderDetail(orderId); |
| | | for (OrderDetail orderDetail:orderDetailList){ |
| | | Integer finishedGoodsInventoryCount = finishedGoodsInventoryMapper.findOrderNumberdcount(orderDetail.getOrderId(),orderDetail.getOrderNumber()); |
| | | System.out.println(finishedGoodsInventoryCount); |
| | | if(finishedGoodsInventoryCount>0){ |
| | | //修改库存表入库数量 |
| | | finishedGoodsInventoryMapper.updateOrderInventory(orderDetail); |
| | | }else{ |
| | | finishedGoodsInventoryMapper.insertOrderFinishedGoodsInventory(orderDetail); |
| | | } |
| | | finishedOperateLogMapper.insertOrderFinishedOperateLog(orderDetail,userName,oddNumber); |
| | | finishedGoodsInventoryMapper.updateIntOrderNumberConut(orderDetail.getOrderId(),orderDetail.getOrderNumber(),Integer.parseInt(orderDetail.getQuantity().toString())); |
| | | } |
| | | finishedGoodsInventoryMapper.updateOrderWarehousingState(orderId,2); |
| | | |
| | | } catch (Exception e) { |
| | | TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint); |
| | | //将异常传入数据库 |
| | | SysError sysError = new SysError(); |
| | | sysError.setError(e.toString()); |
| | | sysError.setFunc("saveOrder"); |
| | | sysErrorService.insert(sysError); |
| | | saveState = false; |
| | | |
| | | } |
| | | |
| | | return saveState; |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | |
| | | List <Map<String, Object>> moneryList=new ArrayList<Map<String, Object>>();//最终结果 |
| | | List<DeliveryDetail> deliveryDetailList=deliveryDetailMapper.getSelectDeliveryPrinting(deliveryDetail); |
| | | String orderId=""; |
| | | double otherMoney=0.0; |
| | | for (DeliveryDetail detail : deliveryDetailList) { |
| | | System.out.println(detail); |
| | | orderId=detail.getOrderDetail().getOrderId(); |
| | | Map<String, Object> itemmap = new HashMap<>(); |
| | | |
| | | List<Map<String, Object>> deliveryDetailList2 = deliveryDetailMapper.getSelectDeliveryDetailPrinting(detail.getDeliveryId(), |
| | | detail.getOrderDetail().getProductId(), detail.getOrderDetail().getOrderId()); |
| | | |
| | | for (Map<String, Object> stringObjectMap : deliveryDetailList2) { |
| | | if(stringObjectMap.get("other_columns")!=null){ |
| | | JSONObject jsonObject = JSON.parseObject(stringObjectMap.get("other_columns").toString()); |
| | |
| | | boolean isnull = key.contains("M"); |
| | | if(isnull) { |
| | | Map<String, Object> moneryItemmap = new HashMap<>(); |
| | | List<Map<String, Object>> deliveryDetailOtherMoney = deliveryDetailMapper.getSelectotherMoney(detail.getOrderDetail().getOrderId(), detail.getDeliveryId(), key, jsonObject.get(key).toString()); |
| | | Map<String, Object> deliveryDetailOtherMoney = deliveryDetailMapper.getSelectotherMoney(detail.getOrderDetail().getOrderId(), |
| | | detail.getDeliveryId(),Integer.parseInt(stringObjectMap.get("order_number").toString()), key, jsonObject.get(key).toString()); |
| | | otherMoney=otherMoney+Double.valueOf(deliveryDetailOtherMoney.get("monery").toString()); |
| | | moneryItemmap.put("DeliveryDetailOtherMoney", deliveryDetailOtherMoney); |
| | | moneryList.add(moneryItemmap); |
| | | } |
| | |
| | | |
| | | } |
| | | Delivery delivery=deliveryMapper.getSelectShippingOrderDetailDeliveryPrinting(deliveryDetail); |
| | | delivery.setMoney(delivery.getMoney()+otherMoney); |
| | | map.put("data", list); |
| | | map.put("otherMoney",moneryList); |
| | | map.put("delivery", deliveryMapper.getSelectShippingOrderDetailDeliveryPrinting(deliveryDetail)); |
| | |
| | | boolean isnull = key.contains("M"); |
| | | if(isnull){ |
| | | Map<String, Object> moneryItemmap = new HashMap<>(); |
| | | List<Map<String, Object>> deliveryDetailOtherMoney = deliveryDetailMapper.getSelectOrderotherMoney(detail.getOrderId(),key,jsonObject.get(key).toString()); |
| | | Map<String, Object> deliveryDetailOtherMoney = deliveryDetailMapper.getSelectOrderotherMoney(detail.getOrderId(),Integer.parseInt(stringObjectMap.get("order_number").toString()),key,jsonObject.get(key).toString()); |
| | | moneryItemmap.put("DeliveryDetailOtherMoney", deliveryDetailOtherMoney); |
| | | moneryList.add(moneryItemmap); |
| | | } |
| | |
| | | ; |
| | | </select> |
| | | |
| | | <select id="getSelectOrderDetail" > |
| | | select * from sd.order_detail where order_id=#{orderId} |
| | | </select> |
| | | |
| | | <insert id="insertOrderFinishedGoodsInventory" useGeneratedKeys="true" > |
| | | insert into mm.finished_goods_inventory (order_id, |
| | | order_number, |
| | | process_id, |
| | | inventory, |
| | | actual_signal_area, |
| | | area, |
| | | quantity_available, |
| | | warehouse_number, |
| | | storage_region, |
| | | `status`, |
| | | enter_storage_time, |
| | | update_time, |
| | | end_time, |
| | | remark |
| | | ) |
| | | values ( |
| | | #{orderDetail.orderId} ,#{orderDetail.orderNumber},"",#{orderDetail.quantity},#{orderDetail.computeArea}, |
| | | #{orderDetail.computeGrossArea}, |
| | | #{orderDetail.quantity},null,"", |
| | | 0,now(),now(),null,"" |
| | | ) |
| | | </insert> |
| | | |
| | | <update id="updateOrderInventory"> |
| | | update mm.finished_goods_inventory |
| | | set inventory=inventory+${orderDetail.quantity},quantity_available=quantity_available+${orderDetail.quantity}, |
| | | update_time=now(),area=actual_signal_area*quantity_available |
| | | where order_number=#{orderDetail.orderNumber} and order_id=#{orderDetail.orderId} |
| | | </update> |
| | | |
| | | |
| | | |
| | | |
| | |
| | | and fol.remarks regexp #{finishedOperateLog.remarksr} |
| | | </if> |
| | | </where> |
| | | order by fol.`status` desc |
| | | order by fol.operate_time desc |
| | | limit #{offset},#{pageSize}; |
| | | </select> |
| | | |
| | |
| | | |
| | | </select> |
| | | |
| | | <insert id="insertOrderFinishedOperateLog" useGeneratedKeys="true" > |
| | | insert into mm.finished_operate_log(operation_order_number, |
| | | order_id, |
| | | process_id, |
| | | operation_number, |
| | | operate_type, |
| | | operator, |
| | | quantity, |
| | | operate_time, |
| | | status |
| | | ) |
| | | values ( |
| | | #{oddNumber} ,#{orderDetail.orderId},"",#{orderDetail.orderNumber},"入库",#{userName},#{orderDetail.quantity},now(),"未审核" |
| | | ) |
| | | </insert> |
| | | |
| | | |
| | | |
| | | |
| | | </mapper> |
| | |
| | | </select> |
| | | |
| | | <select id="getSelectOrderPrinting" > |
| | | select od.order_id,od.product_id,p.remarks as product_name,sum(od.compute_gross_area) as area,sum(od.gross_amount) as money,sum(od.quantity) as quantity from |
| | | select od.order_id,od.product_id,p.remarks as product_name,sum(od.compute_gross_area) as area,sum(od.gross_amount) as gross_amount ,sum(od.quantity) as quantity from |
| | | order_detail od left join product p on od.product_id=p.id |
| | | |
| | | <where> |
| | |
| | | left join order_other_money oom on oom.order_id=dd.order_id and oom.column=#{key} |
| | | left join basic_other_money bom on bom.`column`=oom.`column` |
| | | where delivery_id = #{deliveryId} |
| | | and od.order_id = #{orderId} |
| | | and od.order_id = #{orderId} and od.order_number=#{orderNumber} and (od.other_columns!='{}' or od.other_columns!=null) |
| | | </select> |
| | | |
| | | <select id="getSelectOrderotherMoney" > |
| | |
| | | from order_detail od |
| | | left join order_other_money oom on oom.order_id=od.order_id and oom.column=#{key} |
| | | left join basic_other_money bom on bom.`column`=oom.`column` |
| | | where od.order_id = #{orderId} |
| | | where od.order_id = #{orderId} and od.order_number=#{orderNumber} and (od.other_columns!='{}' or od.other_columns!=null) |
| | | </select> |
| | | |
| | | <select id="getSelectOrderDetailPrinting" > |