ling li
2 years ago
89 changed files with 11021 additions and 0 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1,136 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<!DOCTYPE mapper |
|||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" |
|||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="com.ruoyi.manufacture.mapper.DeliveryGoodsDetailMapper"> |
|||
|
|||
<resultMap type="DeliveryGoodsDetail" id="DeliveryGoodsDetailResult"> |
|||
<result property="deliveryGoodsDetailId" column="delivery_goods_detail_id" /> |
|||
<result property="noticeOrderNumber" column="notice_order_number" /> |
|||
<result property="salesOrderNumber" column="sales_order_number" /> |
|||
<result property="enterpriseCode" column="enterprise_code" /> |
|||
<result property="enterpriseName" column="enterprise_name" /> |
|||
<result property="finishProductCode" column="finish_product_code" /> |
|||
<result property="finishProductName" column="finish_product_name" /> |
|||
<result property="specificationModel" column="specification_model" /> |
|||
<result property="customerNumber" column="customer_number" /> |
|||
<result property="typeMachine" column="type_machine" /> |
|||
<result property="inventoryUnit" column="inventory_unit" /> |
|||
<result property="commonCurrency" column="common_currency" /> |
|||
<result property="processPrice" column="process_price" /> |
|||
<result property="productQuantity" column="product_quantity" /> |
|||
<result property="amountMoney" column="amount_money" /> |
|||
<result property="line" column="line" /> |
|||
<result property="versionNumber" column="version_number" /> |
|||
<result property="salesExplain" column="sales_explain" /> |
|||
<result property="standbyOne" column="standby_one" /> |
|||
<result property="standbyTwo" column="standby_two" /> |
|||
</resultMap> |
|||
|
|||
<sql id="selectDeliveryGoodsDetailVo"> |
|||
select delivery_goods_detail_id, notice_order_number, sales_order_number, enterprise_code, enterprise_name, finish_product_code, finish_product_name, specification_model, customer_number, type_machine, inventory_unit, common_currency, process_price, product_quantity, amount_money, line, version_number, sales_explain, standby_one, standby_two from delivery_goods_detail |
|||
</sql> |
|||
|
|||
<select id="selectDeliveryGoodsDetailList" parameterType="DeliveryGoodsDetail" resultMap="DeliveryGoodsDetailResult"> |
|||
<include refid="selectDeliveryGoodsDetailVo"/> |
|||
<where> |
|||
<if test="noticeOrderNumber != null and noticeOrderNumber != ''"> and notice_order_number like concat('%', #{noticeOrderNumber}, '%')</if> |
|||
<if test="salesOrderNumber != null and salesOrderNumber != ''"> and sales_order_number like concat('%', #{salesOrderNumber}, '%')</if> |
|||
<if test="enterpriseCode != null and enterpriseCode != ''"> and enterprise_code like concat('%', #{enterpriseCode}, '%')</if> |
|||
<if test="enterpriseName != null and enterpriseName != ''"> and enterprise_name like concat('%', #{enterpriseName}, '%')</if> |
|||
<if test="finishProductCode != null and finishProductCode != ''"> and finish_product_code like concat('%', #{finishProductCode}, '%')</if> |
|||
<if test="finishProductName != null and finishProductName != ''"> and finish_product_name like concat('%', #{finishProductName}, '%')</if> |
|||
</where> |
|||
</select> |
|||
|
|||
<select id="selectDeliveryGoodsDetailById" parameterType="Long" resultMap="DeliveryGoodsDetailResult"> |
|||
<include refid="selectDeliveryGoodsDetailVo"/> |
|||
where delivery_goods_detail_id = #{deliveryGoodsDetailId} |
|||
</select> |
|||
|
|||
<insert id="insertDeliveryGoodsDetail" parameterType="DeliveryGoodsDetail"> |
|||
insert into delivery_goods_detail |
|||
<trim prefix="(" suffix=")" suffixOverrides=","> |
|||
<if test="deliveryGoodsDetailId != null">delivery_goods_detail_id,</if> |
|||
<if test="noticeOrderNumber != null">notice_order_number,</if> |
|||
<if test="salesOrderNumber != null">sales_order_number,</if> |
|||
<if test="enterpriseCode != null">enterprise_code,</if> |
|||
<if test="enterpriseName != null">enterprise_name,</if> |
|||
<if test="finishProductCode != null">finish_product_code,</if> |
|||
<if test="finishProductName != null">finish_product_name,</if> |
|||
<if test="specificationModel != null">specification_model,</if> |
|||
<if test="customerNumber != null">customer_number,</if> |
|||
<if test="typeMachine != null">type_machine,</if> |
|||
<if test="inventoryUnit != null">inventory_unit,</if> |
|||
<if test="commonCurrency != null">common_currency,</if> |
|||
<if test="processPrice != null">process_price,</if> |
|||
<if test="productQuantity != null">product_quantity,</if> |
|||
<if test="amountMoney != null">amount_money,</if> |
|||
<if test="line != null">line,</if> |
|||
<if test="versionNumber != null">version_number,</if> |
|||
<if test="salesExplain != null">sales_explain,</if> |
|||
<if test="standbyOne != null">standby_one,</if> |
|||
<if test="standbyTwo != null">standby_two,</if> |
|||
</trim> |
|||
<trim prefix="values (" suffix=")" suffixOverrides=","> |
|||
<if test="deliveryGoodsDetailId != null">#{deliveryGoodsDetailId},</if> |
|||
<if test="noticeOrderNumber != null">#{noticeOrderNumber},</if> |
|||
<if test="salesOrderNumber != null">#{salesOrderNumber},</if> |
|||
<if test="enterpriseCode != null">#{enterpriseCode},</if> |
|||
<if test="enterpriseName != null">#{enterpriseName},</if> |
|||
<if test="finishProductCode != null">#{finishProductCode},</if> |
|||
<if test="finishProductName != null">#{finishProductName},</if> |
|||
<if test="specificationModel != null">#{specificationModel},</if> |
|||
<if test="customerNumber != null">#{customerNumber},</if> |
|||
<if test="typeMachine != null">#{typeMachine},</if> |
|||
<if test="inventoryUnit != null">#{inventoryUnit},</if> |
|||
<if test="commonCurrency != null">#{commonCurrency},</if> |
|||
<if test="processPrice != null">#{processPrice},</if> |
|||
<if test="productQuantity != null">#{productQuantity},</if> |
|||
<if test="amountMoney != null">#{amountMoney},</if> |
|||
<if test="line != null">#{line},</if> |
|||
<if test="versionNumber != null">#{versionNumber},</if> |
|||
<if test="salesExplain != null">#{salesExplain},</if> |
|||
<if test="standbyOne != null">#{standbyOne},</if> |
|||
<if test="standbyTwo != null">#{standbyTwo},</if> |
|||
</trim> |
|||
</insert> |
|||
|
|||
<update id="updateDeliveryGoodsDetail" parameterType="DeliveryGoodsDetail"> |
|||
update delivery_goods_detail |
|||
<trim prefix="SET" suffixOverrides=","> |
|||
<if test="noticeOrderNumber != null">notice_order_number = #{noticeOrderNumber},</if> |
|||
<if test="salesOrderNumber != null">sales_order_number = #{salesOrderNumber},</if> |
|||
<if test="enterpriseCode != null">enterprise_code = #{enterpriseCode},</if> |
|||
<if test="enterpriseName != null">enterprise_name = #{enterpriseName},</if> |
|||
<if test="finishProductCode != null">finish_product_code = #{finishProductCode},</if> |
|||
<if test="finishProductName != null">finish_product_name = #{finishProductName},</if> |
|||
<if test="specificationModel != null">specification_model = #{specificationModel},</if> |
|||
<if test="customerNumber != null">customer_number = #{customerNumber},</if> |
|||
<if test="typeMachine != null">type_machine = #{typeMachine},</if> |
|||
<if test="inventoryUnit != null">inventory_unit = #{inventoryUnit},</if> |
|||
<if test="commonCurrency != null">common_currency = #{commonCurrency},</if> |
|||
<if test="processPrice != null">process_price = #{processPrice},</if> |
|||
<if test="productQuantity != null">product_quantity = #{productQuantity},</if> |
|||
<if test="amountMoney != null">amount_money = #{amountMoney},</if> |
|||
<if test="line != null">line = #{line},</if> |
|||
<if test="versionNumber != null">version_number = #{versionNumber},</if> |
|||
<if test="salesExplain != null">sales_explain = #{salesExplain},</if> |
|||
<if test="standbyOne != null">standby_one = #{standbyOne},</if> |
|||
<if test="standbyTwo != null">standby_two = #{standbyTwo},</if> |
|||
</trim> |
|||
where delivery_goods_detail_id = #{deliveryGoodsDetailId} |
|||
</update> |
|||
|
|||
<delete id="deleteDeliveryGoodsDetailById" parameterType="Long"> |
|||
delete from delivery_goods_detail where delivery_goods_detail_id = #{deliveryGoodsDetailId} |
|||
</delete> |
|||
|
|||
<delete id="deleteDeliveryGoodsDetailByIds" parameterType="String"> |
|||
delete from delivery_goods_detail where delivery_goods_detail_id in |
|||
<foreach item="deliveryGoodsDetailId" collection="array" open="(" separator="," close=")"> |
|||
#{deliveryGoodsDetailId} |
|||
</foreach> |
|||
</delete> |
|||
|
|||
</mapper> |
@ -0,0 +1,126 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<!DOCTYPE mapper |
|||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" |
|||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="com.ruoyi.manufacture.mapper.DeliveryGoodsNoticeMapper"> |
|||
|
|||
<resultMap type="DeliveryGoodsNotice" id="DeliveryGoodsNoticeResult"> |
|||
<result property="deliveryGoodsNoticeId" column="delivery_goods_notice_id" /> |
|||
<result property="noticeOrderNumber" column="notice_order_number" /> |
|||
<result property="deliveryDate" column="delivery_date" /> |
|||
<result property="enterpriseCode" column="enterprise_code" /> |
|||
<result property="enterpriseName" column="enterprise_name" /> |
|||
<result property="customerContact" column="customer_contact" /> |
|||
<result property="customerFactory" column="customer_factory" /> |
|||
<result property="deliveryAddress" column="delivery_address" /> |
|||
<result property="exportSales" column="export_sales" /> |
|||
<result property="stockNumber" column="stock_number" /> |
|||
<result property="stockName" column="stock_name" /> |
|||
<result property="remarks" column="remarks" /> |
|||
<result property="voucherPreparation" column="voucher_preparation" /> |
|||
<result property="deliveryGoodsFlag" column="delivery_goods_flag" /> |
|||
<result property="firstAddTime" column="first_add_time" /> |
|||
<result property="updateInfoTime" column="update_info_time" /> |
|||
<result property="standbyOne" column="standby_one" /> |
|||
<result property="standbyTwo" column="standby_two" /> |
|||
</resultMap> |
|||
|
|||
<sql id="selectDeliveryGoodsNoticeVo"> |
|||
select delivery_goods_notice_id, notice_order_number, delivery_date, enterprise_code, enterprise_name, customer_contact, customer_factory, delivery_address, export_sales, stock_number, stock_name, remarks, voucher_preparation, delivery_goods_flag, first_add_time, update_info_time, standby_one, standby_two from delivery_goods_notice |
|||
</sql> |
|||
|
|||
<select id="selectDeliveryGoodsNoticeList" parameterType="DeliveryGoodsNotice" resultMap="DeliveryGoodsNoticeResult"> |
|||
<include refid="selectDeliveryGoodsNoticeVo"/> |
|||
<where> |
|||
<if test="noticeOrderNumber != null and noticeOrderNumber != ''"> and notice_order_number like concat('%', #{noticeOrderNumber}, '%')</if> |
|||
<if test="deliveryDate != null and deliveryDate != ''"> and delivery_date like concat('%', #{deliveryDate}, '%')</if> |
|||
<if test="enterpriseCode != null and enterpriseCode != ''"> and enterprise_code like concat('%', #{enterpriseCode}, '%')</if> |
|||
<if test="enterpriseName != null and enterpriseName != ''"> and enterprise_name like concat('%', #{enterpriseName}, '%')</if> |
|||
<if test="exportSales != null and exportSales != ''"> and export_sales = #{exportSales}</if> |
|||
<if test="deliveryGoodsFlag != null and deliveryGoodsFlag != ''"> and delivery_goods_flag = #{deliveryGoodsFlag}</if> |
|||
</where> |
|||
</select> |
|||
|
|||
<select id="selectDeliveryGoodsNoticeById" parameterType="Long" resultMap="DeliveryGoodsNoticeResult"> |
|||
<include refid="selectDeliveryGoodsNoticeVo"/> |
|||
where delivery_goods_notice_id = #{deliveryGoodsNoticeId} |
|||
</select> |
|||
|
|||
<insert id="insertDeliveryGoodsNotice" parameterType="DeliveryGoodsNotice" useGeneratedKeys="true" keyProperty="deliveryGoodsNoticeId"> |
|||
insert into delivery_goods_notice |
|||
<trim prefix="(" suffix=")" suffixOverrides=","> |
|||
<if test="noticeOrderNumber != null and noticeOrderNumber != ''">notice_order_number,</if> |
|||
<if test="deliveryDate != null">delivery_date,</if> |
|||
<if test="enterpriseCode != null and enterpriseCode != ''">enterprise_code,</if> |
|||
<if test="enterpriseName != null and enterpriseName != ''">enterprise_name,</if> |
|||
<if test="customerContact != null">customer_contact,</if> |
|||
<if test="customerFactory != null">customer_factory,</if> |
|||
<if test="deliveryAddress != null">delivery_address,</if> |
|||
<if test="exportSales != null">export_sales,</if> |
|||
<if test="stockNumber != null">stock_number,</if> |
|||
<if test="stockName != null">stock_name,</if> |
|||
<if test="remarks != null">remarks,</if> |
|||
<if test="voucherPreparation != null">voucher_preparation,</if> |
|||
<if test="deliveryGoodsFlag != null">delivery_goods_flag,</if> |
|||
<if test="standbyOne != null">standby_one,</if> |
|||
<if test="standbyTwo != null">standby_two,</if> |
|||
first_add_time, |
|||
</trim> |
|||
<trim prefix="values (" suffix=")" suffixOverrides=","> |
|||
<if test="noticeOrderNumber != null and noticeOrderNumber != ''">#{noticeOrderNumber},</if> |
|||
<if test="deliveryDate != null">#{deliveryDate},</if> |
|||
<if test="enterpriseCode != null and enterpriseCode != ''">#{enterpriseCode},</if> |
|||
<if test="enterpriseName != null and enterpriseName != ''">#{enterpriseName},</if> |
|||
<if test="customerContact != null">#{customerContact},</if> |
|||
<if test="customerFactory != null">#{customerFactory},</if> |
|||
<if test="deliveryAddress != null">#{deliveryAddress},</if> |
|||
<if test="exportSales != null">#{exportSales},</if> |
|||
<if test="stockNumber != null">#{stockNumber},</if> |
|||
<if test="stockName != null">#{stockName},</if> |
|||
<if test="remarks != null">#{remarks},</if> |
|||
<if test="voucherPreparation != null">#{voucherPreparation},</if> |
|||
<if test="deliveryGoodsFlag != null">#{deliveryGoodsFlag},</if> |
|||
<if test="standbyOne != null">#{standbyOne},</if> |
|||
<if test="standbyTwo != null">#{standbyTwo},</if> |
|||
NOW(), |
|||
</trim> |
|||
</insert> |
|||
|
|||
<update id="updateDeliveryGoodsNotice" parameterType="DeliveryGoodsNotice"> |
|||
update delivery_goods_notice |
|||
<trim prefix="SET" suffixOverrides=","> |
|||
<if test="noticeOrderNumber != null and noticeOrderNumber != ''">notice_order_number = #{noticeOrderNumber},</if> |
|||
<if test="deliveryDate != null">delivery_date = #{deliveryDate},</if> |
|||
<if test="enterpriseCode != null and enterpriseCode != ''">enterprise_code = #{enterpriseCode},</if> |
|||
<if test="enterpriseName != null and enterpriseName != ''">enterprise_name = #{enterpriseName},</if> |
|||
<if test="customerContact != null">customer_contact = #{customerContact},</if> |
|||
<if test="customerFactory != null">customer_factory = #{customerFactory},</if> |
|||
<if test="deliveryAddress != null">delivery_address = #{deliveryAddress},</if> |
|||
<if test="exportSales != null">export_sales = #{exportSales},</if> |
|||
<if test="stockNumber != null">stock_number = #{stockNumber},</if> |
|||
<if test="stockName != null">stock_name = #{stockName},</if> |
|||
<if test="remarks != null">remarks = #{remarks},</if> |
|||
<if test="voucherPreparation != null">voucher_preparation = #{voucherPreparation},</if> |
|||
<if test="deliveryGoodsFlag != null">delivery_goods_flag = #{deliveryGoodsFlag},</if> |
|||
<if test="standbyOne != null">standby_one = #{standbyOne},</if> |
|||
<if test="standbyTwo != null">standby_two = #{standbyTwo},</if> |
|||
update_info_time = CONCAT_WS(',',NOW(),update_info_time), |
|||
</trim> |
|||
where delivery_goods_notice_id = #{deliveryGoodsNoticeId} |
|||
</update> |
|||
|
|||
<delete id="deleteDeliveryGoodsNoticeById" parameterType="Long"> |
|||
delete from delivery_goods_notice where delivery_goods_notice_id = #{deliveryGoodsNoticeId} |
|||
</delete> |
|||
|
|||
<delete id="deleteDeliveryGoodsNoticeByIds" parameterType="String"> |
|||
delete from delivery_goods_notice where delivery_goods_notice_id in |
|||
<foreach item="deliveryGoodsNoticeId" collection="array" open="(" separator="," close=")"> |
|||
#{deliveryGoodsNoticeId} |
|||
</foreach> |
|||
</delete> |
|||
|
|||
<select id="selectCountByDay" resultType="Integer"> |
|||
select count(*) from delivery_goods_notice where to_days(first_add_time) = to_days(now()); |
|||
</select> |
|||
</mapper> |
@ -0,0 +1,108 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<!DOCTYPE mapper |
|||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" |
|||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="com.ruoyi.manufacture.mapper.MaterialRequisitionDetailMapper"> |
|||
|
|||
<resultMap type="MaterialRequisitionDetail" id="MaterialRequisitionDetailResult"> |
|||
<result property="materialRequisitionDetailId" column="material_requisition_detail_id" /> |
|||
<result property="materialRequisitionNumber" column="material_requisition_number" /> |
|||
<result property="materialCode" column="material_code" /> |
|||
<result property="materialName" column="material_name" /> |
|||
<result property="specificationModel" column="specification_model" /> |
|||
<result property="typeMachine" column="type_machine" /> |
|||
<result property="inventoryUnit" column="inventory_unit" /> |
|||
<result property="planQuantity" column="plan_quantity" /> |
|||
<result property="description" column="description" /> |
|||
<result property="unitUsage" column="unit_usage" /> |
|||
<result property="storageLocation" column="storage_location" /> |
|||
<result property="materialType" column="material_type" /> |
|||
<result property="standbyOne" column="standby_one" /> |
|||
<result property="standbyTwo" column="standby_two" /> |
|||
</resultMap> |
|||
|
|||
<sql id="selectMaterialRequisitionDetailVo"> |
|||
select material_requisition_detail_id, material_requisition_number, material_code, material_name, specification_model, type_machine, inventory_unit, plan_quantity, description, unit_usage, storage_location, material_type, standby_one, standby_two from material_requisition_detail |
|||
</sql> |
|||
|
|||
<select id="selectMaterialRequisitionDetailList" parameterType="MaterialRequisitionDetail" resultMap="MaterialRequisitionDetailResult"> |
|||
<include refid="selectMaterialRequisitionDetailVo"/> |
|||
<where> |
|||
<if test="materialRequisitionNumber != null and materialRequisitionNumber != ''"> and material_requisition_number like concat('%', #{materialRequisitionNumber}, '%')</if> |
|||
<if test="materialCode != null and materialCode != ''"> and material_code like concat('%', #{materialCode}, '%')</if> |
|||
<if test="materialName != null and materialName != ''"> and material_name like concat('%', #{materialName}, '%')</if> |
|||
<if test="materialType != null and materialType != ''"> and material_type = #{materialType}</if> |
|||
</where> |
|||
</select> |
|||
|
|||
<select id="selectMaterialRequisitionDetailById" parameterType="Long" resultMap="MaterialRequisitionDetailResult"> |
|||
<include refid="selectMaterialRequisitionDetailVo"/> |
|||
where material_requisition_detail_id = #{materialRequisitionDetailId} |
|||
</select> |
|||
|
|||
<insert id="insertMaterialRequisitionDetail" parameterType="MaterialRequisitionDetail" useGeneratedKeys="true" keyProperty="materialRequisitionDetailId"> |
|||
insert into material_requisition_detail |
|||
<trim prefix="(" suffix=")" suffixOverrides=","> |
|||
<if test="materialRequisitionNumber != null">material_requisition_number,</if> |
|||
<if test="materialCode != null">material_code,</if> |
|||
<if test="materialName != null">material_name,</if> |
|||
<if test="specificationModel != null">specification_model,</if> |
|||
<if test="typeMachine != null">type_machine,</if> |
|||
<if test="inventoryUnit != null">inventory_unit,</if> |
|||
<if test="planQuantity != null">plan_quantity,</if> |
|||
<if test="description != null">description,</if> |
|||
<if test="unitUsage != null">unit_usage,</if> |
|||
<if test="storageLocation != null">storage_location,</if> |
|||
<if test="materialType != null">material_type,</if> |
|||
<if test="standbyOne != null">standby_one,</if> |
|||
<if test="standbyTwo != null">standby_two,</if> |
|||
</trim> |
|||
<trim prefix="values (" suffix=")" suffixOverrides=","> |
|||
<if test="materialRequisitionNumber != null">#{materialRequisitionNumber},</if> |
|||
<if test="materialCode != null">#{materialCode},</if> |
|||
<if test="materialName != null">#{materialName},</if> |
|||
<if test="specificationModel != null">#{specificationModel},</if> |
|||
<if test="typeMachine != null">#{typeMachine},</if> |
|||
<if test="inventoryUnit != null">#{inventoryUnit},</if> |
|||
<if test="planQuantity != null">#{planQuantity},</if> |
|||
<if test="description != null">#{description},</if> |
|||
<if test="unitUsage != null">#{unitUsage},</if> |
|||
<if test="storageLocation != null">#{storageLocation},</if> |
|||
<if test="materialType != null">#{materialType},</if> |
|||
<if test="standbyOne != null">#{standbyOne},</if> |
|||
<if test="standbyTwo != null">#{standbyTwo},</if> |
|||
</trim> |
|||
</insert> |
|||
|
|||
<update id="updateMaterialRequisitionDetail" parameterType="MaterialRequisitionDetail"> |
|||
update material_requisition_detail |
|||
<trim prefix="SET" suffixOverrides=","> |
|||
<if test="materialRequisitionNumber != null">material_requisition_number = #{materialRequisitionNumber},</if> |
|||
<if test="materialCode != null">material_code = #{materialCode},</if> |
|||
<if test="materialName != null">material_name = #{materialName},</if> |
|||
<if test="specificationModel != null">specification_model = #{specificationModel},</if> |
|||
<if test="typeMachine != null">type_machine = #{typeMachine},</if> |
|||
<if test="inventoryUnit != null">inventory_unit = #{inventoryUnit},</if> |
|||
<if test="planQuantity != null">plan_quantity = #{planQuantity},</if> |
|||
<if test="description != null">description = #{description},</if> |
|||
<if test="unitUsage != null">unit_usage = #{unitUsage},</if> |
|||
<if test="storageLocation != null">storage_location = #{storageLocation},</if> |
|||
<if test="materialType != null">material_type = #{materialType},</if> |
|||
<if test="standbyOne != null">standby_one = #{standbyOne},</if> |
|||
<if test="standbyTwo != null">standby_two = #{standbyTwo},</if> |
|||
</trim> |
|||
where material_requisition_detail_id = #{materialRequisitionDetailId} |
|||
</update> |
|||
|
|||
<delete id="deleteMaterialRequisitionDetailById" parameterType="Long"> |
|||
delete from material_requisition_detail where material_requisition_detail_id = #{materialRequisitionDetailId} |
|||
</delete> |
|||
|
|||
<delete id="deleteMaterialRequisitionDetailByIds" parameterType="String"> |
|||
delete from material_requisition_detail where material_requisition_detail_id in |
|||
<foreach item="materialRequisitionDetailId" collection="array" open="(" separator="," close=")"> |
|||
#{materialRequisitionDetailId} |
|||
</foreach> |
|||
</delete> |
|||
|
|||
</mapper> |
@ -0,0 +1,146 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<!DOCTYPE mapper |
|||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" |
|||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="com.ruoyi.manufacture.mapper.MaterialRequisitionInfoMapper"> |
|||
|
|||
<resultMap type="MaterialRequisitionInfo" id="MaterialRequisitionInfoResult"> |
|||
<result property="materialRequisitionId" column="material_requisition_id" /> |
|||
<result property="materialRequisitionNumber" column="material_requisition_number" /> |
|||
<result property="salesOrderNumber" column="sales_order_number" /> |
|||
<result property="workOrderNumber" column="work_order_number" /> |
|||
<result property="deptName" column="dept_name" /> |
|||
<result property="materialRequisitionPerson" column="material_requisition_person" /> |
|||
<result property="deptNumber" column="dept_number" /> |
|||
<result property="stockNumber" column="stock_number" /> |
|||
<result property="stockName" column="stock_name" /> |
|||
<result property="stockManager" column="stock_manager" /> |
|||
<result property="outputClass" column="output_class" /> |
|||
<result property="outputDate" column="output_date" /> |
|||
<result property="finishProductCode" column="finish_product_code" /> |
|||
<result property="typeMachine" column="type_machine" /> |
|||
<result property="workOrderQuantity" column="work_order_quantity" /> |
|||
<result property="remarkContent" column="remark_content" /> |
|||
<result property="getMaterialFlag" column="get_material_flag" /> |
|||
<result property="firstAddTime" column="first_add_time" /> |
|||
<result property="updateInfoTime" column="update_info_time" /> |
|||
<result property="standbyOne" column="standby_one" /> |
|||
<result property="standbyTwo" column="standby_two" /> |
|||
</resultMap> |
|||
|
|||
<sql id="selectMaterialRequisitionInfoVo"> |
|||
select material_requisition_id, material_requisition_number, sales_order_number, work_order_number, dept_name, material_requisition_person, dept_number, stock_number, stock_name, stock_manager, output_class, output_date, finish_product_code, type_machine, work_order_quantity, remark_content, get_material_flag, first_add_time, update_info_time, standby_one, standby_two from material_requisition_info |
|||
</sql> |
|||
|
|||
<select id="selectMaterialRequisitionInfoList" parameterType="MaterialRequisitionInfo" resultMap="MaterialRequisitionInfoResult"> |
|||
<include refid="selectMaterialRequisitionInfoVo"/> |
|||
<where> |
|||
<if test="materialRequisitionNumber != null and materialRequisitionNumber != ''"> and material_requisition_number like concat('%', #{materialRequisitionNumber}, '%')</if> |
|||
<if test="salesOrderNumber != null and salesOrderNumber != ''"> and sales_order_number like concat('%', #{salesOrderNumber}, '%')</if> |
|||
<if test="workOrderNumber != null and workOrderNumber != ''"> and work_order_number like concat('%', #{workOrderNumber}, '%')</if> |
|||
<if test="deptName != null and deptName != ''"> and dept_name = #{deptName}</if> |
|||
<if test="stockName != null and stockName != ''"> and stock_name like concat('%', #{stockName}, '%')</if> |
|||
<if test="outputClass != null and outputClass != ''"> and output_class = #{outputClass}</if> |
|||
<if test="params.beginOutputDate != null and params.beginOutputDate != '' and params.endOutputDate != null and params.endOutputDate != ''"> and output_date between #{params.beginOutputDate} and #{params.endOutputDate}</if> |
|||
<if test="getMaterialFlag != null and getMaterialFlag != ''"> and get_material_flag = #{getMaterialFlag}</if> |
|||
</where> |
|||
</select> |
|||
|
|||
<select id="selectMaterialRequisitionInfoById" parameterType="Long" resultMap="MaterialRequisitionInfoResult"> |
|||
<include refid="selectMaterialRequisitionInfoVo"/> |
|||
where material_requisition_id = #{materialRequisitionId} |
|||
</select> |
|||
|
|||
<insert id="insertMaterialRequisitionInfo" parameterType="MaterialRequisitionInfo" useGeneratedKeys="true" keyProperty="materialRequisitionId"> |
|||
insert into material_requisition_info |
|||
<trim prefix="(" suffix=")" suffixOverrides=","> |
|||
<if test="materialRequisitionNumber != null and materialRequisitionNumber != ''">material_requisition_number,</if> |
|||
<if test="salesOrderNumber != null">sales_order_number,</if> |
|||
<if test="workOrderNumber != null">work_order_number,</if> |
|||
<if test="deptName != null">dept_name,</if> |
|||
<if test="materialRequisitionPerson != null">material_requisition_person,</if> |
|||
<if test="deptNumber != null">dept_number,</if> |
|||
<if test="stockNumber != null">stock_number,</if> |
|||
<if test="stockName != null">stock_name,</if> |
|||
<if test="stockManager != null">stock_manager,</if> |
|||
<if test="outputClass != null">output_class,</if> |
|||
<if test="outputDate != null">output_date,</if> |
|||
<if test="finishProductCode != null">finish_product_code,</if> |
|||
<if test="typeMachine != null">type_machine,</if> |
|||
<if test="workOrderQuantity != null">work_order_quantity,</if> |
|||
<if test="remarkContent != null">remark_content,</if> |
|||
<if test="getMaterialFlag != null">get_material_flag,</if> |
|||
<if test="firstAddTime != null">first_add_time,</if> |
|||
<if test="updateInfoTime != null">update_info_time,</if> |
|||
<if test="standbyOne != null">standby_one,</if> |
|||
<if test="standbyTwo != null">standby_two,</if> |
|||
first_add_time, |
|||
</trim> |
|||
<trim prefix="values (" suffix=")" suffixOverrides=","> |
|||
<if test="materialRequisitionNumber != null and materialRequisitionNumber != ''">#{materialRequisitionNumber},</if> |
|||
<if test="salesOrderNumber != null">#{salesOrderNumber},</if> |
|||
<if test="workOrderNumber != null">#{workOrderNumber},</if> |
|||
<if test="deptName != null">#{deptName},</if> |
|||
<if test="materialRequisitionPerson != null">#{materialRequisitionPerson},</if> |
|||
<if test="deptNumber != null">#{deptNumber},</if> |
|||
<if test="stockNumber != null">#{stockNumber},</if> |
|||
<if test="stockName != null">#{stockName},</if> |
|||
<if test="stockManager != null">#{stockManager},</if> |
|||
<if test="outputClass != null">#{outputClass},</if> |
|||
<if test="outputDate != null">#{outputDate},</if> |
|||
<if test="finishProductCode != null">#{finishProductCode},</if> |
|||
<if test="typeMachine != null">#{typeMachine},</if> |
|||
<if test="workOrderQuantity != null">#{workOrderQuantity},</if> |
|||
<if test="remarkContent != null">#{remarkContent},</if> |
|||
<if test="getMaterialFlag != null">#{getMaterialFlag},</if> |
|||
<if test="firstAddTime != null">#{firstAddTime},</if> |
|||
<if test="updateInfoTime != null">#{updateInfoTime},</if> |
|||
<if test="standbyOne != null">#{standbyOne},</if> |
|||
<if test="standbyTwo != null">#{standbyTwo},</if> |
|||
now(), |
|||
</trim> |
|||
</insert> |
|||
|
|||
<update id="updateMaterialRequisitionInfo" parameterType="MaterialRequisitionInfo"> |
|||
update material_requisition_info |
|||
<trim prefix="SET" suffixOverrides=","> |
|||
<if test="materialRequisitionNumber != null and materialRequisitionNumber != ''">material_requisition_number = #{materialRequisitionNumber},</if> |
|||
<if test="salesOrderNumber != null">sales_order_number = #{salesOrderNumber},</if> |
|||
<if test="workOrderNumber != null">work_order_number = #{workOrderNumber},</if> |
|||
<if test="deptName != null">dept_name = #{deptName},</if> |
|||
<if test="materialRequisitionPerson != null">material_requisition_person = #{materialRequisitionPerson},</if> |
|||
<if test="deptNumber != null">dept_number = #{deptNumber},</if> |
|||
<if test="stockNumber != null">stock_number = #{stockNumber},</if> |
|||
<if test="stockName != null">stock_name = #{stockName},</if> |
|||
<if test="stockManager != null">stock_manager = #{stockManager},</if> |
|||
<if test="outputClass != null">output_class = #{outputClass},</if> |
|||
<if test="outputDate != null">output_date = #{outputDate},</if> |
|||
<if test="finishProductCode != null">finish_product_code = #{finishProductCode},</if> |
|||
<if test="typeMachine != null">type_machine = #{typeMachine},</if> |
|||
<if test="workOrderQuantity != null">work_order_quantity = #{workOrderQuantity},</if> |
|||
<if test="remarkContent != null">remark_content = #{remarkContent},</if> |
|||
<if test="getMaterialFlag != null">get_material_flag = #{getMaterialFlag},</if> |
|||
<if test="firstAddTime != null">first_add_time = #{firstAddTime},</if> |
|||
<if test="updateInfoTime != null">update_info_time = #{updateInfoTime},</if> |
|||
<if test="standbyOne != null">standby_one = #{standbyOne},</if> |
|||
<if test="standbyTwo != null">standby_two = #{standbyTwo},</if> |
|||
update_info_time = CONCAT_WS(',',NOW(),update_info_time), |
|||
</trim> |
|||
where material_requisition_id = #{materialRequisitionId} |
|||
</update> |
|||
|
|||
<delete id="deleteMaterialRequisitionInfoById" parameterType="Long"> |
|||
delete from material_requisition_info where material_requisition_id = #{materialRequisitionId} |
|||
</delete> |
|||
|
|||
<delete id="deleteMaterialRequisitionInfoByIds" parameterType="String"> |
|||
delete from material_requisition_info where material_requisition_id in |
|||
<foreach item="materialRequisitionId" collection="array" open="(" separator="," close=")"> |
|||
#{materialRequisitionId} |
|||
</foreach> |
|||
</delete> |
|||
|
|||
<select id="selectCountByDay" resultType="Integer"> |
|||
select count(*) from material_requisition_info where to_days(output_date) = to_days(now()); |
|||
</select> |
|||
</mapper> |
@ -0,0 +1,102 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<!DOCTYPE mapper |
|||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" |
|||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="com.ruoyi.manufacture.mapper.WorkOrderDetailMapper"> |
|||
|
|||
<resultMap type="WorkOrderDetail" id="WorkOrderDetailResult"> |
|||
<result property="workOrderDetailId" column="work_order_detail_id" /> |
|||
<result property="workOrderNumber" column="work_order_number" /> |
|||
<result property="materialCode" column="material_code" /> |
|||
<result property="materialName" column="material_name" /> |
|||
<result property="specificationModel" column="specification_model" /> |
|||
<result property="inventoryUnit" column="inventory_unit" /> |
|||
<result property="materialType" column="material_type" /> |
|||
<result property="materialConsumption" column="material_consumption" /> |
|||
<result property="itemNumber" column="item_number" /> |
|||
<result property="description" column="description" /> |
|||
<result property="standbyOne" column="standby_one" /> |
|||
<result property="standbyTwo" column="standby_two" /> |
|||
</resultMap> |
|||
|
|||
<sql id="selectWorkOrderDetailVo"> |
|||
select work_order_detail_id, work_order_number, material_code, material_name, specification_model, inventory_unit, material_type, material_consumption, item_number, description, standby_one, standby_two from work_order_detail |
|||
</sql> |
|||
|
|||
<select id="selectWorkOrderDetailList" parameterType="WorkOrderDetail" resultMap="WorkOrderDetailResult"> |
|||
<include refid="selectWorkOrderDetailVo"/> |
|||
<where> |
|||
<if test="workOrderNumber != null and workOrderNumber != ''"> and work_order_number like concat('%', #{workOrderNumber}, '%')</if> |
|||
<if test="materialCode != null and materialCode != ''"> and material_code like concat('%', #{materialCode}, '%')</if> |
|||
<if test="materialName != null and materialName != ''"> and material_name like concat('%', #{materialName}, '%')</if> |
|||
<if test="materialType != null and materialType != ''"> and material_type = #{materialType}</if> |
|||
</where> |
|||
</select> |
|||
|
|||
<select id="selectWorkOrderDetailById" parameterType="Long" resultMap="WorkOrderDetailResult"> |
|||
<include refid="selectWorkOrderDetailVo"/> |
|||
where work_order_detail_id = #{workOrderDetailId} |
|||
</select> |
|||
|
|||
<insert id="insertWorkOrderDetail" parameterType="WorkOrderDetail"> |
|||
insert into work_order_detail |
|||
<trim prefix="(" suffix=")" suffixOverrides=","> |
|||
<if test="workOrderDetailId != null">work_order_detail_id,</if> |
|||
<if test="workOrderNumber != null and workOrderNumber != ''">work_order_number,</if> |
|||
<if test="materialCode != null and materialCode != ''">material_code,</if> |
|||
<if test="materialName != null">material_name,</if> |
|||
<if test="specificationModel != null">specification_model,</if> |
|||
<if test="inventoryUnit != null">inventory_unit,</if> |
|||
<if test="materialType != null">material_type,</if> |
|||
<if test="materialConsumption != null">material_consumption,</if> |
|||
<if test="itemNumber != null">item_number,</if> |
|||
<if test="description != null">description,</if> |
|||
<if test="standbyOne != null">standby_one,</if> |
|||
<if test="standbyTwo != null">standby_two,</if> |
|||
</trim> |
|||
<trim prefix="values (" suffix=")" suffixOverrides=","> |
|||
<if test="workOrderDetailId != null">#{workOrderDetailId},</if> |
|||
<if test="workOrderNumber != null and workOrderNumber != ''">#{workOrderNumber},</if> |
|||
<if test="materialCode != null and materialCode != ''">#{materialCode},</if> |
|||
<if test="materialName != null">#{materialName},</if> |
|||
<if test="specificationModel != null">#{specificationModel},</if> |
|||
<if test="inventoryUnit != null">#{inventoryUnit},</if> |
|||
<if test="materialType != null">#{materialType},</if> |
|||
<if test="materialConsumption != null">#{materialConsumption},</if> |
|||
<if test="itemNumber != null">#{itemNumber},</if> |
|||
<if test="description != null">#{description},</if> |
|||
<if test="standbyOne != null">#{standbyOne},</if> |
|||
<if test="standbyTwo != null">#{standbyTwo},</if> |
|||
</trim> |
|||
</insert> |
|||
|
|||
<update id="updateWorkOrderDetail" parameterType="WorkOrderDetail"> |
|||
update work_order_detail |
|||
<trim prefix="SET" suffixOverrides=","> |
|||
<if test="workOrderNumber != null and workOrderNumber != ''">work_order_number = #{workOrderNumber},</if> |
|||
<if test="materialCode != null and materialCode != ''">material_code = #{materialCode},</if> |
|||
<if test="materialName != null">material_name = #{materialName},</if> |
|||
<if test="specificationModel != null">specification_model = #{specificationModel},</if> |
|||
<if test="inventoryUnit != null">inventory_unit = #{inventoryUnit},</if> |
|||
<if test="materialType != null">material_type = #{materialType},</if> |
|||
<if test="materialConsumption != null">material_consumption = #{materialConsumption},</if> |
|||
<if test="itemNumber != null">item_number = #{itemNumber},</if> |
|||
<if test="description != null">description = #{description},</if> |
|||
<if test="standbyOne != null">standby_one = #{standbyOne},</if> |
|||
<if test="standbyTwo != null">standby_two = #{standbyTwo},</if> |
|||
</trim> |
|||
where work_order_detail_id = #{workOrderDetailId} |
|||
</update> |
|||
|
|||
<delete id="deleteWorkOrderDetailById" parameterType="Long"> |
|||
delete from work_order_detail where work_order_detail_id = #{workOrderDetailId} |
|||
</delete> |
|||
|
|||
<delete id="deleteWorkOrderDetailByIds" parameterType="String"> |
|||
delete from work_order_detail where work_order_detail_id in |
|||
<foreach item="workOrderDetailId" collection="array" open="(" separator="," close=")"> |
|||
#{workOrderDetailId} |
|||
</foreach> |
|||
</delete> |
|||
|
|||
</mapper> |
@ -0,0 +1,189 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<!DOCTYPE mapper |
|||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" |
|||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="com.ruoyi.manufacture.mapper.WorkOrderInfoMapper"> |
|||
|
|||
<resultMap type="WorkOrderInfo" id="WorkOrderInfoResult"> |
|||
<result property="workOrderId" column="work_order_id" /> |
|||
<result property="salesOrderNumber" column="sales_order_number" /> |
|||
<result property="workOrderNumber" column="work_order_number" /> |
|||
<result property="line" column="line" /> |
|||
<result property="processDept" column="process_dept" /> |
|||
<result property="enterpriseCode" column="enterprise_code" /> |
|||
<result property="enterpriseName" column="enterprise_name" /> |
|||
<result property="finishProductCode" column="finish_product_code" /> |
|||
<result property="finishProductName" column="finish_product_name" /> |
|||
<result property="specificationModel" column="specification_model" /> |
|||
<result property="typeMachine" column="type_machine" /> |
|||
<result property="inventoryUnit" column="inventory_unit" /> |
|||
<result property="orderQuantity" column="order_quantity" /> |
|||
<result property="deliveryOrderQuantity" column="delivery_order_quantity" /> |
|||
<result property="beginOrderQuantity" column="begin_order_quantity" /> |
|||
<result property="notBeginOrderQuantity" column="not_begin_order_quantity" /> |
|||
<result property="customerFactory" column="customer_factory" /> |
|||
<result property="beginDate" column="begin_date" /> |
|||
<result property="endDate" column="end_date" /> |
|||
<result property="billingTime" column="billing_time" /> |
|||
<result property="deliveryTime" column="delivery_time" /> |
|||
<result property="versionNumber" column="version_number" /> |
|||
<result property="salesExplain" column="sales_explain" /> |
|||
<result property="workOrderClass" column="work_order_class" /> |
|||
<result property="firstAddTime" column="first_add_time" /> |
|||
<result property="updateInfoTime" column="update_info_time" /> |
|||
<result property="closeCaseFlag" column="close_case_flag" /> |
|||
<result property="closeCasePerson" column="close_case_person" /> |
|||
<result property="closeCaseTime" column="close_case_time" /> |
|||
<result property="standbyOne" column="standby_one" /> |
|||
<result property="standbyTwo" column="standby_two" /> |
|||
</resultMap> |
|||
|
|||
<sql id="selectWorkOrderInfoVo"> |
|||
select work_order_id, sales_order_number, work_order_number, line, process_dept, enterprise_code, enterprise_name, finish_product_code, finish_product_name, specification_model, type_machine, inventory_unit, order_quantity, delivery_order_quantity, begin_order_quantity, not_begin_order_quantity, customer_factory, begin_date, end_date, billing_time, delivery_time, version_number, sales_explain, work_order_class, first_add_time, update_info_time, close_case_flag, close_case_person, close_case_time, standby_one, standby_two from work_order_info |
|||
</sql> |
|||
|
|||
<select id="selectWorkOrderInfoList" parameterType="WorkOrderInfo" resultMap="WorkOrderInfoResult"> |
|||
<include refid="selectWorkOrderInfoVo"/> |
|||
<where> |
|||
<if test="salesOrderNumber != null and salesOrderNumber != ''"> and sales_order_number like concat('%', #{salesOrderNumber}, '%')</if> |
|||
<if test="workOrderNumber != null and workOrderNumber != ''"> and work_order_number like concat('%', #{workOrderNumber}, '%')</if> |
|||
<if test="processDept != null and processDept != ''"> and process_dept like concat('%', #{processDept}, '%')</if> |
|||
<if test="enterpriseCode != null and enterpriseCode != ''"> and enterprise_code like concat('%', #{enterpriseCode}, '%')</if> |
|||
<if test="finishProductCode != null and finishProductCode != ''"> and finish_product_code like concat('%', #{finishProductCode}, '%')</if> |
|||
<if test="finishProductName != null and finishProductName != ''"> and finish_product_name like concat('%', #{finishProductName}, '%')</if> |
|||
<if test="params.beginBillingTime != null and params.beginBillingTime != '' and params.endBillingTime != null and params.endBillingTime != ''"> and billing_time between #{params.beginBillingTime} and #{params.endBillingTime}</if> |
|||
<if test="params.beginDeliveryTime != null and params.beginDeliveryTime != '' and params.endDeliveryTime != null and params.endDeliveryTime != ''"> and delivery_time between #{params.beginDeliveryTime} and #{params.endDeliveryTime}</if> |
|||
<if test="workOrderClass != null and workOrderClass != ''"> and work_order_class = #{workOrderClass}</if> |
|||
<if test="closeCaseFlag != null and closeCaseFlag != ''"> and close_case_flag = #{closeCaseFlag}</if> |
|||
</where> |
|||
</select> |
|||
|
|||
<select id="selectWorkOrderInfoById" parameterType="Long" resultMap="WorkOrderInfoResult"> |
|||
<include refid="selectWorkOrderInfoVo"/> |
|||
where work_order_id = #{workOrderId} |
|||
</select> |
|||
|
|||
<insert id="insertWorkOrderInfo" parameterType="WorkOrderInfo" useGeneratedKeys="true" keyProperty="workOrderId"> |
|||
insert into work_order_info |
|||
<trim prefix="(" suffix=")" suffixOverrides=","> |
|||
<if test="salesOrderNumber != null">sales_order_number,</if> |
|||
<if test="workOrderNumber != null">work_order_number,</if> |
|||
<if test="line != null">line,</if> |
|||
<if test="processDept != null">process_dept,</if> |
|||
<if test="enterpriseCode != null">enterprise_code,</if> |
|||
<if test="enterpriseName != null">enterprise_name,</if> |
|||
<if test="finishProductCode != null">finish_product_code,</if> |
|||
<if test="finishProductName != null">finish_product_name,</if> |
|||
<if test="specificationModel != null">specification_model,</if> |
|||
<if test="typeMachine != null">type_machine,</if> |
|||
<if test="inventoryUnit != null">inventory_unit,</if> |
|||
<if test="orderQuantity != null">order_quantity,</if> |
|||
<if test="deliveryOrderQuantity != null">delivery_order_quantity,</if> |
|||
<if test="beginOrderQuantity != null">begin_order_quantity,</if> |
|||
<if test="notBeginOrderQuantity != null">not_begin_order_quantity,</if> |
|||
<if test="customerFactory != null">customer_factory,</if> |
|||
<if test="beginDate != null">begin_date,</if> |
|||
<if test="endDate != null">end_date,</if> |
|||
<if test="billingTime != null">billing_time,</if> |
|||
<if test="deliveryTime != null">delivery_time,</if> |
|||
<if test="versionNumber != null">version_number,</if> |
|||
<if test="salesExplain != null">sales_explain,</if> |
|||
<if test="workOrderClass != null">work_order_class,</if> |
|||
<if test="firstAddTime != null">first_add_time,</if> |
|||
<if test="updateInfoTime != null">update_info_time,</if> |
|||
<if test="closeCaseFlag != null">close_case_flag,</if> |
|||
<if test="closeCasePerson != null">close_case_person,</if> |
|||
<if test="closeCaseTime != null">close_case_time,</if> |
|||
<if test="standbyOne != null">standby_one,</if> |
|||
<if test="standbyTwo != null">standby_two,</if> |
|||
first_add_time, |
|||
</trim> |
|||
<trim prefix="values (" suffix=")" suffixOverrides=","> |
|||
<if test="salesOrderNumber != null">#{salesOrderNumber},</if> |
|||
<if test="workOrderNumber != null">#{workOrderNumber},</if> |
|||
<if test="line != null">#{line},</if> |
|||
<if test="processDept != null">#{processDept},</if> |
|||
<if test="enterpriseCode != null">#{enterpriseCode},</if> |
|||
<if test="enterpriseName != null">#{enterpriseName},</if> |
|||
<if test="finishProductCode != null">#{finishProductCode},</if> |
|||
<if test="finishProductName != null">#{finishProductName},</if> |
|||
<if test="specificationModel != null">#{specificationModel},</if> |
|||
<if test="typeMachine != null">#{typeMachine},</if> |
|||
<if test="inventoryUnit != null">#{inventoryUnit},</if> |
|||
<if test="orderQuantity != null">#{orderQuantity},</if> |
|||
<if test="deliveryOrderQuantity != null">#{deliveryOrderQuantity},</if> |
|||
<if test="beginOrderQuantity != null">#{beginOrderQuantity},</if> |
|||
<if test="notBeginOrderQuantity != null">#{notBeginOrderQuantity},</if> |
|||
<if test="customerFactory != null">#{customerFactory},</if> |
|||
<if test="beginDate != null">#{beginDate},</if> |
|||
<if test="endDate != null">#{endDate},</if> |
|||
<if test="billingTime != null">#{billingTime},</if> |
|||
<if test="deliveryTime != null">#{deliveryTime},</if> |
|||
<if test="versionNumber != null">#{versionNumber},</if> |
|||
<if test="salesExplain != null">#{salesExplain},</if> |
|||
<if test="workOrderClass != null">#{workOrderClass},</if> |
|||
<if test="firstAddTime != null">#{firstAddTime},</if> |
|||
<if test="updateInfoTime != null">#{updateInfoTime},</if> |
|||
<if test="closeCaseFlag != null">#{closeCaseFlag},</if> |
|||
<if test="closeCasePerson != null">#{closeCasePerson},</if> |
|||
<if test="closeCaseTime != null">#{closeCaseTime},</if> |
|||
<if test="standbyOne != null">#{standbyOne},</if> |
|||
<if test="standbyTwo != null">#{standbyTwo},</if> |
|||
now(), |
|||
</trim> |
|||
</insert> |
|||
|
|||
<update id="updateWorkOrderInfo" parameterType="WorkOrderInfo"> |
|||
update work_order_info |
|||
<trim prefix="SET" suffixOverrides=","> |
|||
<if test="salesOrderNumber != null">sales_order_number = #{salesOrderNumber},</if> |
|||
<if test="workOrderNumber != null">work_order_number = #{workOrderNumber},</if> |
|||
<if test="line != null">line = #{line},</if> |
|||
<if test="processDept != null">process_dept = #{processDept},</if> |
|||
<if test="enterpriseCode != null">enterprise_code = #{enterpriseCode},</if> |
|||
<if test="enterpriseName != null">enterprise_name = #{enterpriseName},</if> |
|||
<if test="finishProductCode != null">finish_product_code = #{finishProductCode},</if> |
|||
<if test="finishProductName != null">finish_product_name = #{finishProductName},</if> |
|||
<if test="specificationModel != null">specification_model = #{specificationModel},</if> |
|||
<if test="typeMachine != null">type_machine = #{typeMachine},</if> |
|||
<if test="inventoryUnit != null">inventory_unit = #{inventoryUnit},</if> |
|||
<if test="orderQuantity != null">order_quantity = #{orderQuantity},</if> |
|||
<if test="deliveryOrderQuantity != null">delivery_order_quantity = #{deliveryOrderQuantity},</if> |
|||
<if test="beginOrderQuantity != null">begin_order_quantity = #{beginOrderQuantity},</if> |
|||
<if test="notBeginOrderQuantity != null">not_begin_order_quantity = #{notBeginOrderQuantity},</if> |
|||
<if test="customerFactory != null">customer_factory = #{customerFactory},</if> |
|||
<if test="beginDate != null">begin_date = #{beginDate},</if> |
|||
<if test="endDate != null">end_date = #{endDate},</if> |
|||
<if test="billingTime != null">billing_time = #{billingTime},</if> |
|||
<if test="deliveryTime != null">delivery_time = #{deliveryTime},</if> |
|||
<if test="versionNumber != null">version_number = #{versionNumber},</if> |
|||
<if test="salesExplain != null">sales_explain = #{salesExplain},</if> |
|||
<if test="workOrderClass != null">work_order_class = #{workOrderClass},</if> |
|||
<if test="firstAddTime != null">first_add_time = #{firstAddTime},</if> |
|||
<if test="updateInfoTime != null">update_info_time = #{updateInfoTime},</if> |
|||
<if test="closeCaseFlag != null">close_case_flag = #{closeCaseFlag},</if> |
|||
<if test="closeCasePerson != null">close_case_person = #{closeCasePerson},</if> |
|||
<if test="closeCaseTime != null">close_case_time = #{closeCaseTime},</if> |
|||
<if test="standbyOne != null">standby_one = #{standbyOne},</if> |
|||
<if test="standbyTwo != null">standby_two = #{standbyTwo},</if> |
|||
update_info_time = CONCAT_WS(',',NOW(),update_info_time), |
|||
</trim> |
|||
where work_order_id = #{workOrderId} |
|||
</update> |
|||
|
|||
<delete id="deleteWorkOrderInfoById" parameterType="Long"> |
|||
delete from work_order_info where work_order_id = #{workOrderId} |
|||
</delete> |
|||
|
|||
<delete id="deleteWorkOrderInfoByIds" parameterType="String"> |
|||
delete from work_order_info where work_order_id in |
|||
<foreach item="workOrderId" collection="array" open="(" separator="," close=")"> |
|||
#{workOrderId} |
|||
</foreach> |
|||
</delete> |
|||
|
|||
<select id="selectCountByDay" resultType="Integer"> |
|||
select count(*) from work_order_info where to_days(billing_time) = to_days(now()); |
|||
</select> |
|||
|
|||
</mapper> |
@ -0,0 +1,121 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<!DOCTYPE mapper |
|||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" |
|||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="com.ruoyi.storehouse.mapper.WarehousingInspectionDetailMapper"> |
|||
|
|||
<resultMap type="WarehousingInspectionDetail" id="WarehousingInspectionDetailResult"> |
|||
<result property="warehousingInspectionDetailId" column="warehousing_inspection_detail_id" /> |
|||
<result property="inNoticeNumber" column="in_notice_number" /> |
|||
<result property="materialCode" column="material_code" /> |
|||
<result property="materialName" column="material_name" /> |
|||
<result property="specificationModel" column="specification_model" /> |
|||
<result property="materialType" column="material_type" /> |
|||
<result property="purchasingUnit" column="purchasing_unit" /> |
|||
<result property="materialQuantity" column="material_quantity" /> |
|||
<result property="qualifiedQuantity" column="qualified_quantity" /> |
|||
<result property="unqualifiedQuantity" column="unqualified_quantity" /> |
|||
<result property="qualificationRate" column="qualification_rate" /> |
|||
<result property="purchaseExplain" column="purchase_explain" /> |
|||
<result property="judgmentResults" column="judgment_results" /> |
|||
<result property="receiptBatchNumber" column="receipt_batch_number" /> |
|||
<result property="manufacturerBatchNumber" column="manufacturer_batch_number" /> |
|||
<result property="standbyOne" column="standby_one" /> |
|||
<result property="standbyTwo" column="standby_two" /> |
|||
</resultMap> |
|||
|
|||
<sql id="selectWarehousingInspectionDetailVo"> |
|||
select warehousing_inspection_detail_id, in_notice_number, material_code, material_name, specification_model, material_type, purchasing_unit, material_quantity, qualified_quantity, unqualified_quantity, qualification_rate, purchase_explain, judgment_results, receipt_batch_number, manufacturer_batch_number, standby_one, standby_two from warehousing_inspection_detail |
|||
</sql> |
|||
|
|||
<select id="selectWarehousingInspectionDetailList" parameterType="WarehousingInspectionDetail" resultMap="WarehousingInspectionDetailResult"> |
|||
<include refid="selectWarehousingInspectionDetailVo"/> |
|||
<where> |
|||
<if test="inNoticeNumber != null and inNoticeNumber != ''"> and in_notice_number like concat('%', #{inNoticeNumber}, '%')</if> |
|||
<if test="materialCode != null and materialCode != ''"> and material_code like concat('%', #{materialCode}, '%')</if> |
|||
<if test="materialName != null and materialName != ''"> and material_name like concat('%', #{materialName}, '%')</if> |
|||
<if test="materialType != null and materialType != ''"> and material_type = #{materialType}</if> |
|||
<if test="judgmentResults != null and judgmentResults != ''"> and judgment_results = #{judgmentResults}</if> |
|||
</where> |
|||
</select> |
|||
|
|||
<select id="selectWarehousingInspectionDetailById" parameterType="Long" resultMap="WarehousingInspectionDetailResult"> |
|||
<include refid="selectWarehousingInspectionDetailVo"/> |
|||
where warehousing_inspection_detail_id = #{warehousingInspectionDetailId} |
|||
</select> |
|||
|
|||
<insert id="insertWarehousingInspectionDetail" parameterType="WarehousingInspectionDetail" useGeneratedKeys="true" keyProperty="warehousingInspectionDetailId"> |
|||
insert into warehousing_inspection_detail |
|||
<trim prefix="(" suffix=")" suffixOverrides=","> |
|||
<if test="inNoticeNumber != null">in_notice_number,</if> |
|||
<if test="materialCode != null">material_code,</if> |
|||
<if test="materialName != null">material_name,</if> |
|||
<if test="specificationModel != null">specification_model,</if> |
|||
<if test="materialType != null">material_type,</if> |
|||
<if test="purchasingUnit != null">purchasing_unit,</if> |
|||
<if test="materialQuantity != null">material_quantity,</if> |
|||
<if test="qualifiedQuantity != null">qualified_quantity,</if> |
|||
<if test="unqualifiedQuantity != null">unqualified_quantity,</if> |
|||
<if test="qualificationRate != null">qualification_rate,</if> |
|||
<if test="purchaseExplain != null">purchase_explain,</if> |
|||
<if test="judgmentResults != null">judgment_results,</if> |
|||
<if test="receiptBatchNumber != null">receipt_batch_number,</if> |
|||
<if test="manufacturerBatchNumber != null">manufacturer_batch_number,</if> |
|||
<if test="standbyOne != null">standby_one,</if> |
|||
<if test="standbyTwo != null">standby_two,</if> |
|||
</trim> |
|||
<trim prefix="values (" suffix=")" suffixOverrides=","> |
|||
<if test="inNoticeNumber != null">#{inNoticeNumber},</if> |
|||
<if test="materialCode != null">#{materialCode},</if> |
|||
<if test="materialName != null">#{materialName},</if> |
|||
<if test="specificationModel != null">#{specificationModel},</if> |
|||
<if test="materialType != null">#{materialType},</if> |
|||
<if test="purchasingUnit != null">#{purchasingUnit},</if> |
|||
<if test="materialQuantity != null">#{materialQuantity},</if> |
|||
<if test="qualifiedQuantity != null">#{qualifiedQuantity},</if> |
|||
<if test="unqualifiedQuantity != null">#{unqualifiedQuantity},</if> |
|||
<if test="qualificationRate != null">#{qualificationRate},</if> |
|||
<if test="purchaseExplain != null">#{purchaseExplain},</if> |
|||
<if test="judgmentResults != null">#{judgmentResults},</if> |
|||
<if test="receiptBatchNumber != null">#{receiptBatchNumber},</if> |
|||
<if test="manufacturerBatchNumber != null">#{manufacturerBatchNumber},</if> |
|||
<if test="standbyOne != null">#{standbyOne},</if> |
|||
<if test="standbyTwo != null">#{standbyTwo},</if> |
|||
</trim> |
|||
</insert> |
|||
|
|||
<update id="updateWarehousingInspectionDetail" parameterType="WarehousingInspectionDetail"> |
|||
update warehousing_inspection_detail |
|||
<trim prefix="SET" suffixOverrides=","> |
|||
<if test="inNoticeNumber != null">in_notice_number = #{inNoticeNumber},</if> |
|||
<if test="materialCode != null">material_code = #{materialCode},</if> |
|||
<if test="materialName != null">material_name = #{materialName},</if> |
|||
<if test="specificationModel != null">specification_model = #{specificationModel},</if> |
|||
<if test="materialType != null">material_type = #{materialType},</if> |
|||
<if test="purchasingUnit != null">purchasing_unit = #{purchasingUnit},</if> |
|||
<if test="materialQuantity != null">material_quantity = #{materialQuantity},</if> |
|||
<if test="qualifiedQuantity != null">qualified_quantity = #{qualifiedQuantity},</if> |
|||
<if test="unqualifiedQuantity != null">unqualified_quantity = #{unqualifiedQuantity},</if> |
|||
<if test="qualificationRate != null">qualification_rate = #{qualificationRate},</if> |
|||
<if test="purchaseExplain != null">purchase_explain = #{purchaseExplain},</if> |
|||
<if test="judgmentResults != null">judgment_results = #{judgmentResults},</if> |
|||
<if test="receiptBatchNumber != null">receipt_batch_number = #{receiptBatchNumber},</if> |
|||
<if test="manufacturerBatchNumber != null">manufacturer_batch_number = #{manufacturerBatchNumber},</if> |
|||
<if test="standbyOne != null">standby_one = #{standbyOne},</if> |
|||
<if test="standbyTwo != null">standby_two = #{standbyTwo},</if> |
|||
</trim> |
|||
where warehousing_inspection_detail_id = #{warehousingInspectionDetailId} |
|||
</update> |
|||
|
|||
<delete id="deleteWarehousingInspectionDetailById" parameterType="Long"> |
|||
delete from warehousing_inspection_detail where warehousing_inspection_detail_id = #{warehousingInspectionDetailId} |
|||
</delete> |
|||
|
|||
<delete id="deleteWarehousingInspectionDetailByIds" parameterType="String"> |
|||
delete from warehousing_inspection_detail where warehousing_inspection_detail_id in |
|||
<foreach item="warehousingInspectionDetailId" collection="array" open="(" separator="," close=")"> |
|||
#{warehousingInspectionDetailId} |
|||
</foreach> |
|||
</delete> |
|||
|
|||
</mapper> |
@ -0,0 +1,125 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<!DOCTYPE mapper |
|||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" |
|||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="com.ruoyi.storehouse.mapper.WarehousingInspectionNoticeMapper"> |
|||
|
|||
<resultMap type="WarehousingInspectionNotice" id="WarehousingInspectionNoticeResult"> |
|||
<result property="warehousingInspectionNoticeId" column="warehousing_inspection_notice_id" /> |
|||
<result property="inNoticeNumber" column="in_notice_number" /> |
|||
<result property="purchaseOrderNumber" column="purchase_order_number" /> |
|||
<result property="supplierCode" column="supplier_code" /> |
|||
<result property="supplierName" column="supplier_name" /> |
|||
<result property="customerContact" column="customer_contact" /> |
|||
<result property="stockNumber" column="stock_number" /> |
|||
<result property="stockName" column="stock_name" /> |
|||
<result property="stockManager" column="stock_manager" /> |
|||
<result property="exportSales" column="export_sales" /> |
|||
<result property="warehousingCategory" column="warehousing_category" /> |
|||
<result property="inspectionDate" column="inspection_date" /> |
|||
<result property="warehousingDate" column="warehousing_date" /> |
|||
<result property="remarks" column="remarks" /> |
|||
<result property="inspectionReport" column="inspection_report" /> |
|||
<result property="firstAddTime" column="first_add_time" /> |
|||
<result property="updateInfoTime" column="update_info_time" /> |
|||
<result property="standbyOne" column="standby_one" /> |
|||
<result property="standbyTwo" column="standby_two" /> |
|||
</resultMap> |
|||
|
|||
<sql id="selectWarehousingInspectionNoticeVo"> |
|||
select warehousing_inspection_notice_id, in_notice_number, purchase_order_number, supplier_code, supplier_name, customer_contact, stock_number, stock_name, stock_manager, export_sales, warehousing_category, inspection_date, warehousing_date, remarks, inspection_report, first_add_time, update_info_time, standby_one, standby_two from warehousing_inspection_notice |
|||
</sql> |
|||
|
|||
<select id="selectWarehousingInspectionNoticeList" parameterType="WarehousingInspectionNotice" resultMap="WarehousingInspectionNoticeResult"> |
|||
<include refid="selectWarehousingInspectionNoticeVo"/> |
|||
<where> |
|||
<if test="inNoticeNumber != null and inNoticeNumber != ''"> and in_notice_number like concat('%', #{inNoticeNumber}, '%')</if> |
|||
<if test="purchaseOrderNumber != null and purchaseOrderNumber != ''"> and purchase_order_number like concat('%', #{purchaseOrderNumber}, '%')</if> |
|||
<if test="supplierCode != null and supplierCode != ''"> and supplier_code like concat('%', #{supplierCode}, '%')</if> |
|||
<if test="supplierName != null and supplierName != ''"> and supplier_name like concat('%', #{supplierName}, '%')</if> |
|||
<if test="warehousingCategory != null and warehousingCategory != ''"> and warehousing_category = #{warehousingCategory}</if> |
|||
<if test="params.beginWarehousingDate != null and params.beginWarehousingDate != '' and params.endWarehousingDate != null and params.endWarehousingDate != ''"> and warehousing_date between #{params.beginWarehousingDate} and #{params.endWarehousingDate}</if> |
|||
</where> |
|||
</select> |
|||
|
|||
<select id="selectWarehousingInspectionNoticeById" parameterType="Long" resultMap="WarehousingInspectionNoticeResult"> |
|||
<include refid="selectWarehousingInspectionNoticeVo"/> |
|||
where warehousing_inspection_notice_id = #{warehousingInspectionNoticeId} |
|||
</select> |
|||
|
|||
<insert id="insertWarehousingInspectionNotice" parameterType="WarehousingInspectionNotice" useGeneratedKeys="true" keyProperty="warehousingInspectionNoticeId"> |
|||
insert into warehousing_inspection_notice |
|||
<trim prefix="(" suffix=")" suffixOverrides=","> |
|||
<if test="inNoticeNumber != null and inNoticeNumber != ''">in_notice_number,</if> |
|||
<if test="purchaseOrderNumber != null">purchase_order_number,</if> |
|||
<if test="supplierCode != null">supplier_code,</if> |
|||
<if test="supplierName != null">supplier_name,</if> |
|||
<if test="customerContact != null">customer_contact,</if> |
|||
<if test="stockNumber != null">stock_number,</if> |
|||
<if test="stockName != null">stock_name,</if> |
|||
<if test="stockManager != null">stock_manager,</if> |
|||
<if test="exportSales != null">export_sales,</if> |
|||
<if test="warehousingCategory != null">warehousing_category,</if> |
|||
<if test="inspectionDate != null">inspection_date,</if> |
|||
<if test="warehousingDate != null">warehousing_date,</if> |
|||
<if test="remarks != null">remarks,</if> |
|||
<if test="inspectionReport != null">inspection_report,</if> |
|||
<if test="standbyOne != null">standby_one,</if> |
|||
<if test="standbyTwo != null">standby_two,</if> |
|||
first_add_time, |
|||
</trim> |
|||
<trim prefix="values (" suffix=")" suffixOverrides=","> |
|||
<if test="inNoticeNumber != null and inNoticeNumber != ''">#{inNoticeNumber},</if> |
|||
<if test="purchaseOrderNumber != null">#{purchaseOrderNumber},</if> |
|||
<if test="supplierCode != null">#{supplierCode},</if> |
|||
<if test="supplierName != null">#{supplierName},</if> |
|||
<if test="customerContact != null">#{customerContact},</if> |
|||
<if test="stockNumber != null">#{stockNumber},</if> |
|||
<if test="stockName != null">#{stockName},</if> |
|||
<if test="stockManager != null">#{stockManager},</if> |
|||
<if test="exportSales != null">#{exportSales},</if> |
|||
<if test="warehousingCategory != null">#{warehousingCategory},</if> |
|||
<if test="inspectionDate != null">#{inspectionDate},</if> |
|||
<if test="warehousingDate != null">#{warehousingDate},</if> |
|||
<if test="remarks != null">#{remarks},</if> |
|||
<if test="inspectionReport != null">#{inspectionReport},</if> |
|||
<if test="standbyOne != null">#{standbyOne},</if> |
|||
<if test="standbyTwo != null">#{standbyTwo},</if> |
|||
now(), |
|||
</trim> |
|||
</insert> |
|||
|
|||
<update id="updateWarehousingInspectionNotice" parameterType="WarehousingInspectionNotice"> |
|||
update warehousing_inspection_notice |
|||
<trim prefix="SET" suffixOverrides=","> |
|||
<if test="inNoticeNumber != null and inNoticeNumber != ''">in_notice_number = #{inNoticeNumber},</if> |
|||
<if test="purchaseOrderNumber != null">purchase_order_number = #{purchaseOrderNumber},</if> |
|||
<if test="supplierCode != null">supplier_code = #{supplierCode},</if> |
|||
<if test="supplierName != null">supplier_name = #{supplierName},</if> |
|||
<if test="customerContact != null">customer_contact = #{customerContact},</if> |
|||
<if test="stockNumber != null">stock_number = #{stockNumber},</if> |
|||
<if test="stockName != null">stock_name = #{stockName},</if> |
|||
<if test="stockManager != null">stock_manager = #{stockManager},</if> |
|||
<if test="exportSales != null">export_sales = #{exportSales},</if> |
|||
<if test="warehousingCategory != null">warehousing_category = #{warehousingCategory},</if> |
|||
<if test="inspectionDate != null">inspection_date = #{inspectionDate},</if> |
|||
<if test="warehousingDate != null">warehousing_date = #{warehousingDate},</if> |
|||
<if test="remarks != null">remarks = #{remarks},</if> |
|||
<if test="inspectionReport != null">inspection_report = #{inspectionReport},</if> |
|||
update_info_time = CONCAT_WS(',',NOW(),update_info_time), |
|||
</trim> |
|||
where warehousing_inspection_notice_id = #{warehousingInspectionNoticeId} |
|||
</update> |
|||
|
|||
<delete id="deleteWarehousingInspectionNoticeById" parameterType="Long"> |
|||
delete from warehousing_inspection_notice where warehousing_inspection_notice_id = #{warehousingInspectionNoticeId} |
|||
</delete> |
|||
|
|||
<delete id="deleteWarehousingInspectionNoticeByIds" parameterType="String"> |
|||
delete from warehousing_inspection_notice where warehousing_inspection_notice_id in |
|||
<foreach item="warehousingInspectionNoticeId" collection="array" open="(" separator="," close=")"> |
|||
#{warehousingInspectionNoticeId} |
|||
</foreach> |
|||
</delete> |
|||
|
|||
</mapper> |
@ -0,0 +1,127 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<!DOCTYPE mapper |
|||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" |
|||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="com.ruoyi.system.mapper.SysBomBcpMapper"> |
|||
|
|||
<resultMap type="SysBomBcp" id="SysBomBcpResult"> |
|||
<result property="bomBcpId" column="bom_bcp_id" /> |
|||
<result property="finishProductCode" column="finish_product_code" /> |
|||
<result property="versionNumber" column="version_number" /> |
|||
<result property="bcpCode" column="bcp_code" /> |
|||
<result property="bcpName" column="bcp_name" /> |
|||
<result property="bcpVersionNumber" column="bcp_version_number" /> |
|||
<result property="specificationModel" column="specification_model" /> |
|||
<result property="inventoryUnit" column="inventory_unit" /> |
|||
<result property="bcpMaterialConsumption" column="bcp_material_consumption" /> |
|||
<result property="bcpMaterialLoss" column="bcp_material_loss" /> |
|||
<result property="customerNumber" column="customer_number" /> |
|||
<result property="finishedProductQuantity" column="finished_product_quantity" /> |
|||
<result property="remarks" column="remarks" /> |
|||
<result property="processingCategory" column="processing_category" /> |
|||
<result property="standbyOne" column="standby_one" /> |
|||
<result property="standbyTwo" column="standby_two" /> |
|||
</resultMap> |
|||
|
|||
<sql id="selectSysBomBcpVo"> |
|||
select bom_bcp_id, finish_product_code, version_number, bcp_code, bcp_name, bcp_version_number, |
|||
specification_model, inventory_unit, bcp_material_consumption, bcp_material_loss, customer_number, |
|||
finished_product_quantity, remarks, processing_category, standby_one, standby_two from sys_bom_bcp |
|||
</sql> |
|||
|
|||
<select id="selectSysBomBcpList" parameterType="SysBomBcp" resultMap="SysBomBcpResult"> |
|||
<include refid="selectSysBomBcpVo"/> |
|||
<where> |
|||
<if test="finishProductCode != null and finishProductCode != ''"> and finish_product_code like concat('%', #{finishProductCode}, '%')</if> |
|||
<if test="versionNumber != null and versionNumber != ''"> and version_number like concat('%', #{versionNumber}, '%')</if> |
|||
<if test="bcpCode != null and bcpCode != ''"> and bcp_code like concat('%', #{bcpCode}, '%')</if> |
|||
<if test="bcpName != null and bcpName != ''"> and bcp_name like concat('%', #{bcpName}, '%')</if> |
|||
<if test="bcpVersionNumber != null and bcpVersionNumber != ''"> and bcp_version_number like concat('%', #{bcpVersionNumber}, '%')</if> |
|||
<if test="specificationModel != null and specificationModel != ''"> and specification_model = #{specificationModel}</if> |
|||
<if test="inventoryUnit != null and inventoryUnit != ''"> and inventory_unit = #{inventoryUnit}</if> |
|||
<if test="bcpMaterialConsumption != null and bcpMaterialConsumption != ''"> and bcp_material_consumption = #{bcpMaterialConsumption}</if> |
|||
<if test="bcpMaterialLoss != null and bcpMaterialLoss != ''"> and bcp_material_loss = #{bcpMaterialLoss}</if> |
|||
<if test="customerNumber != null and customerNumber != ''"> and customer_number = #{customerNumber}</if> |
|||
<if test="finishedProductQuantity != null and finishedProductQuantity != ''"> and finished_product_quantity = #{finishedProductQuantity}</if> |
|||
<if test="remarks != null and remarks != ''"> and remarks = #{remarks}</if> |
|||
<if test="processingCategory != null and processingCategory != ''"> and processing_category = #{processingCategory}</if> |
|||
</where> |
|||
</select> |
|||
|
|||
<select id="selectSysBomBcpById" parameterType="Long" resultMap="SysBomBcpResult"> |
|||
<include refid="selectSysBomBcpVo"/> |
|||
where bom_bcp_id = #{bomBcpId} |
|||
</select> |
|||
|
|||
<insert id="insertSysBomBcp" parameterType="SysBomBcp" useGeneratedKeys="true" keyProperty="bomBcpId"> |
|||
insert into sys_bom_bcp |
|||
<trim prefix="(" suffix=")" suffixOverrides=","> |
|||
<if test="finishProductCode != null">finish_product_code,</if> |
|||
<if test="versionNumber != null">version_number,</if> |
|||
<if test="bcpCode != null">bcp_code,</if> |
|||
<if test="bcpName != null">bcp_name,</if> |
|||
<if test="bcpVersionNumber != null">bcp_version_number,</if> |
|||
<if test="specificationModel != null">specification_model,</if> |
|||
<if test="inventoryUnit != null">inventory_unit,</if> |
|||
<if test="bcpMaterialConsumption != null">bcp_material_consumption,</if> |
|||
<if test="bcpMaterialLoss != null">bcp_material_loss,</if> |
|||
<if test="customerNumber != null">customer_number,</if> |
|||
<if test="finishedProductQuantity != null">finished_product_quantity,</if> |
|||
<if test="remarks != null">remarks,</if> |
|||
<if test="processingCategory != null">processing_category,</if> |
|||
<if test="standbyOne != null">standby_one,</if> |
|||
<if test="standbyTwo != null">standby_two,</if> |
|||
</trim> |
|||
<trim prefix="values (" suffix=")" suffixOverrides=","> |
|||
<if test="finishProductCode != null">#{finishProductCode},</if> |
|||
<if test="versionNumber != null">#{versionNumber},</if> |
|||
<if test="bcpCode != null">#{bcpCode},</if> |
|||
<if test="bcpName != null">#{bcpName},</if> |
|||
<if test="bcpVersionNumber != null">#{bcpVersionNumber},</if> |
|||
<if test="specificationModel != null">#{specificationModel},</if> |
|||
<if test="inventoryUnit != null">#{inventoryUnit},</if> |
|||
<if test="bcpMaterialConsumption != null">#{bcpMaterialConsumption},</if> |
|||
<if test="bcpMaterialLoss != null">#{bcpMaterialLoss},</if> |
|||
<if test="customerNumber != null">#{customerNumber},</if> |
|||
<if test="finishedProductQuantity != null">#{finishedProductQuantity},</if> |
|||
<if test="remarks != null">#{remarks},</if> |
|||
<if test="processingCategory != null">#{processingCategory},</if> |
|||
<if test="standbyOne != null">#{standbyOne},</if> |
|||
<if test="standbyTwo != null">#{standbyTwo},</if> |
|||
</trim> |
|||
</insert> |
|||
|
|||
<update id="updateSysBomBcp" parameterType="SysBomBcp"> |
|||
update sys_bom_bcp |
|||
<trim prefix="SET" suffixOverrides=","> |
|||
<if test="finishProductCode != null">finish_product_code = #{finishProductCode},</if> |
|||
<if test="versionNumber != null">version_number = #{versionNumber},</if> |
|||
<if test="bcpCode != null">bcp_code = #{bcpCode},</if> |
|||
<if test="bcpName != null">bcp_name = #{bcpName},</if> |
|||
<if test="bcpVersionNumber != null">bcp_version_number = #{bcpVersionNumber},</if> |
|||
<if test="specificationModel != null">specification_model = #{specificationModel},</if> |
|||
<if test="inventoryUnit != null">inventory_unit = #{inventoryUnit},</if> |
|||
<if test="bcpMaterialConsumption != null">bcp_material_consumption = #{bcpMaterialConsumption},</if> |
|||
<if test="bcpMaterialLoss != null">bcp_material_loss = #{bcpMaterialLoss},</if> |
|||
<if test="customerNumber != null">customer_number = #{customerNumber},</if> |
|||
<if test="finishedProductQuantity != null">finished_product_quantity = #{finishedProductQuantity},</if> |
|||
<if test="remarks != null">remarks = #{remarks},</if> |
|||
<if test="processingCategory != null">processing_category = #{processingCategory},</if> |
|||
<if test="standbyOne != null">standby_one = #{standbyOne},</if> |
|||
<if test="standbyTwo != null">standby_two = #{standbyTwo},</if> |
|||
</trim> |
|||
where bom_bcp_id = #{bomBcpId} |
|||
</update> |
|||
|
|||
<delete id="deleteSysBomBcpById" parameterType="Long"> |
|||
delete from sys_bom_bcp where bom_bcp_id = #{bomBcpId} |
|||
</delete> |
|||
|
|||
<delete id="deleteSysBomBcpByIds" parameterType="String"> |
|||
delete from sys_bom_bcp where bom_bcp_id in |
|||
<foreach item="bomBcpId" collection="array" open="(" separator="," close=")"> |
|||
#{bomBcpId} |
|||
</foreach> |
|||
</delete> |
|||
|
|||
</mapper> |
@ -0,0 +1,127 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" > |
|||
<head> |
|||
<th:block th:include="include :: header('新增发货通知单详情')" /> |
|||
</head> |
|||
<body class="white-bg"> |
|||
<div class="wrapper wrapper-content animated fadeInRight ibox-content"> |
|||
<form class="form-horizontal m" id="form-deliveryGoodsDetail-add"> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">通知单号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="noticeOrderNumber" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">订单号码:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="salesOrderNumber" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">客户代码:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="enterpriseCode" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">客户名称:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="enterpriseName" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">成品代码:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="finishProductCode" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">成品名称:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="finishProductName" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">规格型号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="specificationModel" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">客户料号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="customerNumber" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">机种:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="typeMachine" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">单位:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="inventoryUnit" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">币别:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="commonCurrency" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">单价:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="processPrice" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">数量:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="productQuantity" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">金额:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="amountMoney" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">Line#:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="line" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">版本号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="versionNumber" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">说明:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="salesExplain" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<script th:inline="javascript"> |
|||
var prefix = ctx + "manufacture/deliveryGoodsDetail" |
|||
$("#form-deliveryGoodsDetail-add").validate({ |
|||
focusCleanup: true |
|||
}); |
|||
|
|||
function submitHandler() { |
|||
if ($.validate.form()) { |
|||
$.operate.save(prefix + "/add", $('#form-deliveryGoodsDetail-add').serialize()); |
|||
} |
|||
} |
|||
</script> |
|||
</body> |
|||
</html> |
@ -0,0 +1,170 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro"> |
|||
<head> |
|||
<th:block th:include="include :: header('发货通知单详情列表')" /> |
|||
</head> |
|||
<body class="gray-bg"> |
|||
<div class="container-div"> |
|||
<div class="row"> |
|||
<div class="col-sm-12 search-collapse"> |
|||
<form id="formId"> |
|||
<div class="select-list"> |
|||
<ul> |
|||
<li> |
|||
<label>通知单号:</label> |
|||
<input type="text" name="noticeOrderNumber"/> |
|||
</li> |
|||
<li> |
|||
<label>订单号码:</label> |
|||
<input type="text" name="salesOrderNumber"/> |
|||
</li> |
|||
<li> |
|||
<label>客户代码:</label> |
|||
<input type="text" name="enterpriseCode"/> |
|||
</li> |
|||
<li> |
|||
<label>客户名称:</label> |
|||
<input type="text" name="enterpriseName"/> |
|||
</li> |
|||
<li> |
|||
<label>成品代码:</label> |
|||
<input type="text" name="finishProductCode"/> |
|||
</li> |
|||
<li> |
|||
<label>成品名称:</label> |
|||
<input type="text" name="finishProductName"/> |
|||
</li> |
|||
<li> |
|||
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i> 搜索</a> |
|||
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i> 重置</a> |
|||
</li> |
|||
</ul> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
|
|||
<div class="btn-group-sm" id="toolbar" role="group"> |
|||
<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="manufacture:deliveryGoodsDetail:add"> |
|||
<i class="fa fa-plus"></i> 添加 |
|||
</a> |
|||
<a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="manufacture:deliveryGoodsDetail:edit"> |
|||
<i class="fa fa-edit"></i> 修改 |
|||
</a> |
|||
<a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="manufacture:deliveryGoodsDetail:remove"> |
|||
<i class="fa fa-remove"></i> 删除 |
|||
</a> |
|||
<a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="manufacture:deliveryGoodsDetail:export"> |
|||
<i class="fa fa-download"></i> 导出 |
|||
</a> |
|||
</div> |
|||
<div class="col-sm-12 select-table table-striped"> |
|||
<table id="bootstrap-table"></table> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<script th:inline="javascript"> |
|||
var editFlag = [[${@permission.hasPermi('manufacture:deliveryGoodsDetail:edit')}]]; |
|||
var removeFlag = [[${@permission.hasPermi('manufacture:deliveryGoodsDetail:remove')}]]; |
|||
var prefix = ctx + "manufacture/deliveryGoodsDetail"; |
|||
|
|||
$(function() { |
|||
var options = { |
|||
url: prefix + "/list", |
|||
createUrl: prefix + "/add", |
|||
updateUrl: prefix + "/edit/{id}", |
|||
removeUrl: prefix + "/remove", |
|||
exportUrl: prefix + "/export", |
|||
modalName: "发货通知单详情", |
|||
columns: [{ |
|||
checkbox: true |
|||
}, |
|||
{ |
|||
field: 'deliveryGoodsDetailId', |
|||
title: '发货通知单详情id', |
|||
visible: false |
|||
}, |
|||
{ |
|||
field: 'noticeOrderNumber', |
|||
title: '通知单号' |
|||
}, |
|||
{ |
|||
field: 'salesOrderNumber', |
|||
title: '订单号码' |
|||
}, |
|||
{ |
|||
field: 'enterpriseCode', |
|||
title: '客户代码' |
|||
}, |
|||
{ |
|||
field: 'enterpriseName', |
|||
title: '客户名称' |
|||
}, |
|||
{ |
|||
field: 'finishProductCode', |
|||
title: '成品代码' |
|||
}, |
|||
{ |
|||
field: 'finishProductName', |
|||
title: '成品名称' |
|||
}, |
|||
{ |
|||
field: 'specificationModel', |
|||
title: '规格型号' |
|||
}, |
|||
{ |
|||
field: 'customerNumber', |
|||
title: '客户料号' |
|||
}, |
|||
{ |
|||
field: 'typeMachine', |
|||
title: '机种' |
|||
}, |
|||
{ |
|||
field: 'inventoryUnit', |
|||
title: '单位' |
|||
}, |
|||
{ |
|||
field: 'commonCurrency', |
|||
title: '币别' |
|||
}, |
|||
{ |
|||
field: 'processPrice', |
|||
title: '单价' |
|||
}, |
|||
{ |
|||
field: 'productQuantity', |
|||
title: '数量' |
|||
}, |
|||
{ |
|||
field: 'amountMoney', |
|||
title: '金额' |
|||
}, |
|||
{ |
|||
field: 'line', |
|||
title: 'Line#' |
|||
}, |
|||
{ |
|||
field: 'versionNumber', |
|||
title: '版本号' |
|||
}, |
|||
{ |
|||
field: 'salesExplain', |
|||
title: '说明' |
|||
}, |
|||
{ |
|||
title: '操作', |
|||
align: 'center', |
|||
formatter: function(value, row, index) { |
|||
var actions = []; |
|||
actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.deliveryGoodsDetailId + '\')"><i class="fa fa-edit"></i>编辑</a> '); |
|||
actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.deliveryGoodsDetailId + '\')"><i class="fa fa-remove"></i>删除</a>'); |
|||
return actions.join(''); |
|||
} |
|||
}] |
|||
}; |
|||
$.table.init(options); |
|||
}); |
|||
</script> |
|||
</body> |
|||
</html> |
@ -0,0 +1,128 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" > |
|||
<head> |
|||
<th:block th:include="include :: header('修改发货通知单详情')" /> |
|||
</head> |
|||
<body class="white-bg"> |
|||
<div class="wrapper wrapper-content animated fadeInRight ibox-content"> |
|||
<form class="form-horizontal m" id="form-deliveryGoodsDetail-edit" th:object="${deliveryGoodsDetail}"> |
|||
<input name="deliveryGoodsDetailId" th:field="*{deliveryGoodsDetailId}" type="hidden"> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">通知单号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="noticeOrderNumber" th:field="*{noticeOrderNumber}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">订单号码:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="salesOrderNumber" th:field="*{salesOrderNumber}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">客户代码:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="enterpriseCode" th:field="*{enterpriseCode}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">客户名称:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="enterpriseName" th:field="*{enterpriseName}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">成品代码:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="finishProductCode" th:field="*{finishProductCode}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">成品名称:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="finishProductName" th:field="*{finishProductName}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">规格型号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="specificationModel" th:field="*{specificationModel}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">客户料号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="customerNumber" th:field="*{customerNumber}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">机种:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="typeMachine" th:field="*{typeMachine}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">单位:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="inventoryUnit" th:field="*{inventoryUnit}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">币别:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="commonCurrency" th:field="*{commonCurrency}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">单价:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="processPrice" th:field="*{processPrice}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">数量:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="productQuantity" th:field="*{productQuantity}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">金额:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="amountMoney" th:field="*{amountMoney}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">Line#:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="line" th:field="*{line}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">版本号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="versionNumber" th:field="*{versionNumber}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">说明:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="salesExplain" th:field="*{salesExplain}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<script th:inline="javascript"> |
|||
var prefix = ctx + "manufacture/deliveryGoodsDetail"; |
|||
$("#form-deliveryGoodsDetail-edit").validate({ |
|||
focusCleanup: true |
|||
}); |
|||
|
|||
function submitHandler() { |
|||
if ($.validate.form()) { |
|||
$.operate.save(prefix + "/edit", $('#form-deliveryGoodsDetail-edit').serialize()); |
|||
} |
|||
} |
|||
</script> |
|||
</body> |
|||
</html> |
@ -0,0 +1,642 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" > |
|||
<head> |
|||
<th:block th:include="include :: header('新增发货通知单')" /> |
|||
<th:block th:include="include :: datetimepicker-css"/> |
|||
<link th:href="@{/ajax/libs/select2/select2.css}" rel="stylesheet"> |
|||
<link th:href="@{/ajax/libs/select2/select2-bootstrap.css}" rel="stylesheet"> |
|||
<th:block th:include="include :: bootstrap-editable-css"/> |
|||
<style> |
|||
.other-container { |
|||
width: 90%; |
|||
height: 200px; |
|||
margin: auto; |
|||
} |
|||
.other { |
|||
margin-top: 20px; |
|||
} |
|||
h4 { |
|||
display: inline-block; |
|||
margin-right: 20px; |
|||
} |
|||
.modal-body{ |
|||
height: 550px; |
|||
} |
|||
iframe{ |
|||
width: 100%; |
|||
height: 500px; |
|||
frameborder: 0; |
|||
border: 0; |
|||
display: inline-block; |
|||
} |
|||
</style> |
|||
</head> |
|||
<body class="white-bg"> |
|||
<div class="wrapper wrapper-content animated fadeInRight ibox-content"> |
|||
<form class="form-horizontal m" id="form-deliveryGoodsNotice-add"> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label is-required">通知单号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="noticeOrderNumber" class="form-control" type="text" required readonly> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">发货日期:</label> |
|||
<div class="col-sm-8"> |
|||
<!-- <input name="deliveryDate" class="form-control" type="text">--> |
|||
<div class="input-group date"> |
|||
<input name="deliveryDate" class="form-control" placeholder="yyyy-MM-dd" type="text"> |
|||
<span class="input-group-addon"><i class="fa fa-calendar"></i></span> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label is-required">客户代码:</label> |
|||
<div class="col-sm-8"> |
|||
<!-- <input name="enterpriseCode" class="form-control" type="text" required>--> |
|||
<select name="enterpriseCode" class="form-control m-b" required> |
|||
<option value="">请选择客户代码</option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label is-required">客户名称:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="enterpriseName" class="form-control" type="text" required> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">联系人:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="customerContact" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">客户厂区:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="customerFactory" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">送货地址:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="deliveryAddress" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">内外销:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="exportSales" class="form-control m-b" th:with="type=${@dict.getType('sys_export_sales')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">仓库名称:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="stockName" class="form-control m-b"> |
|||
<option value="">请选择仓库名称</option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">仓库编号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="stockNumber" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">备注:</label> |
|||
<div class="col-sm-8"> |
|||
<textarea name="remarks" class="form-control" type="text"></textarea> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">制单人:</label> |
|||
<div class="col-sm-8"> |
|||
<!-- <input name="voucherPreparation" class="form-control" type="text">--> |
|||
<select name="voucherPreparation" class="form-control m-b"> |
|||
<option value="">请选择制单人</option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">发货否:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="deliveryGoodsFlag" class="form-control m-b" th:with="type=${@dict.getType('sys_whether')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<!--<div class="form-group"> |
|||
<label class="col-sm-3 control-label">备用一:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="standbyOne" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">备用二:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="standbyTwo" class="form-control" type="text"> |
|||
</div> |
|||
</div>--> |
|||
</form> |
|||
</div> |
|||
<div class="other-container"> |
|||
<div class="other"> |
|||
<br><hr> |
|||
<h4>订单信息</h4> |
|||
<a class="btn btn-primary" onclick="showOrderDetailModal()"><i class="fa fa-plus"></i> 订单信息</a> |
|||
<div class="col-sm-12 select-table table-striped"> |
|||
<table id="addSalesFinishTable" style="white-space:nowrap"></table> |
|||
</div> |
|||
</div> |
|||
<div class="modal inmodal" id="salesFinishModal" |
|||
role="dilog" aria-hidden="true"> |
|||
|
|||
<!-- 查询订单成品资料--> |
|||
<div class="modal-dialog" style="width: 1000px;background-color: #FFFFFF"> |
|||
|
|||
<div class="modal-content" style="background-color: #FFFFFF"> |
|||
|
|||
<div class="modal-body"> |
|||
<div class="container-div"> |
|||
<div class="row"> |
|||
<div class="col-sm-12 search-collapse"> |
|||
<form id="salesFinishFormId"> |
|||
<div class="select-list"> |
|||
<ul> |
|||
<li> |
|||
<label>订单号码:</label> |
|||
<input type="text" name="salesOrderNumber"/> |
|||
</li> |
|||
<li> |
|||
<label>成品代码:</label> |
|||
<input type="text" name="finishProductCode"/> |
|||
</li> |
|||
<li> |
|||
<label>成品名称:</label> |
|||
<input type="text" name="finishProductName"/> |
|||
</li> |
|||
<li> |
|||
<label>客户代码:</label> |
|||
<input type="text" name="enterpriseCode"/> |
|||
</li> |
|||
<li> |
|||
<label>客户名称:</label> |
|||
<input type="text" name="enterpriseName"/> |
|||
</li> |
|||
<li> |
|||
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search('salesFinishFormId','salesFinishTable')"><i |
|||
class="fa fa-search"></i> 搜索</a> |
|||
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset('salesFinishFormId','salesFinishTable')"><i |
|||
class="fa fa-refresh"></i> 重置</a> |
|||
</li> |
|||
</ul> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
<div class="col-sm-12 select-table table-striped"> |
|||
<table id="salesFinishTable" style="white-space:nowrap"></table> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="modal-footer"> |
|||
<a class="btn btn-warning btn-rounded" onclick="addSalesFinishToTable()">确认添加</a> |
|||
<a class="btn btn-primary btn-rounded" onclick="closeSalesFinishModal()">关闭</a> |
|||
</div> |
|||
</div> |
|||
|
|||
</div> |
|||
</div> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<th:block th:include="include :: datetimepicker-js"/> |
|||
<th:block th:include="include :: select2-js"/> |
|||
<th:block th:include="include :: bootstrap-table-editable-js"/> |
|||
<script th:inline="javascript"> |
|||
var prefix = ctx + "manufacture/deliveryGoodsNotice" |
|||
var prefixDetail = ctx + "manufacture/deliveryGoodsDetail" |
|||
var commonCurrencyDatas = [[${@dict.getType('sys_common_currency')}]]; |
|||
$("#form-deliveryGoodsNotice-add").validate({ |
|||
focusCleanup: true |
|||
}); |
|||
|
|||
function submitHandler() { |
|||
var getData = $("#addSalesFinishTable").bootstrapTable("getData"); |
|||
if(getData.length > 0){ |
|||
if ($.validate.form()) { |
|||
//确认添加选中的物料数据 |
|||
confirmSalesFinish(); |
|||
$.operate.save(prefix + "/add", $('#form-deliveryGoodsNotice-add').serialize()); |
|||
} |
|||
} else { |
|||
$.modal.alertWarning("未选择订单,请选择!") |
|||
} |
|||
|
|||
} |
|||
|
|||
$("input[name='deliveryDate']").datetimepicker({ |
|||
format: "yyyy-mm-dd", |
|||
minView: "month", |
|||
autoclose: true, |
|||
todayBtn: true |
|||
}); |
|||
$("input[name='deliveryDate']").datetimepicker("setDate", new Date()) |
|||
|
|||
//获取单号 |
|||
$.ajax({ |
|||
url: prefix + "/id", |
|||
type: "post", |
|||
dateType: "json", |
|||
success: function (resp) { |
|||
if (resp.code === 0) { |
|||
$("input[name='noticeOrderNumber']").val(resp.data); |
|||
} else { |
|||
$.modal.msgError("失败啦"); |
|||
} |
|||
}, |
|||
error: function () { |
|||
$.modal.msgError("后台出错啦!"); |
|||
} |
|||
}); |
|||
|
|||
//获取仓库信息 |
|||
$.ajax({ |
|||
url: ctx + "stock/stockInfo/list", |
|||
type: "post", |
|||
success: function (res) { |
|||
// console.log(res) |
|||
if (res.rows.length > 0) { |
|||
let stockData = res.rows; |
|||
for (let i in stockData) { |
|||
// console.log(finishProductData[i].finishProductCode) |
|||
$("#form-deliveryGoodsNotice-add select[name='stockName']").append("<option value='" + stockData[i].stockname + "'>" + stockData[i].stockname + "</option>"); |
|||
$("#form-deliveryGoodsNotice-add select[name='stockName']").change(function () { |
|||
var stockName = $(this).val(); |
|||
for (let i=0;i<stockData.length;i++) { |
|||
if (stockData[i].stockname == stockName) { |
|||
$("#form-deliveryGoodsNotice-add input[name='stockNumber']").val(stockData[i].stockNO); |
|||
} |
|||
} |
|||
}) |
|||
} |
|||
} |
|||
} |
|||
}) |
|||
|
|||
//获取客户信息 |
|||
$.ajax({ |
|||
url: ctx + 'system/customer/list', |
|||
type: "post", |
|||
success: function (res) { |
|||
// console.log(res) |
|||
if (res.rows.length > 0) { |
|||
let customerData = res.rows; |
|||
for (let i in customerData) { |
|||
// console.log(finishProductData[i].finishProductCode) |
|||
$("#form-deliveryGoodsNotice-add select[name='enterpriseCode']").append("<option value='" + customerData[i].enterpriseCode + "'>" + customerData[i].enterpriseCode + "</option>"); |
|||
$("#form-deliveryGoodsNotice-add select[name='enterpriseCode']").change(function () { |
|||
var enterpriseCode = $(this).val(); |
|||
for (let i=0;i<customerData.length;i++) { |
|||
if (customerData[i].enterpriseCode == enterpriseCode) { |
|||
$("#form-deliveryGoodsNotice-add input[name='enterpriseName']").val(customerData[i].enterpriseName); |
|||
$("#form-deliveryGoodsNotice-add input[name='customerContact']").val(customerData[i].customerContact); |
|||
$("#form-deliveryGoodsNotice-add input[name='deliveryAddress']").val(customerData[i].deliveryAddress); |
|||
$("#form-deliveryGoodsNotice-add select[name='exportSales']").val(customerData[i].exportSales).trigger("change"); |
|||
} |
|||
} |
|||
}) |
|||
} |
|||
} |
|||
} |
|||
}) |
|||
|
|||
//获取制单人 |
|||
$.ajax({ |
|||
url: ctx + "system/user/list", |
|||
type: "post", |
|||
success: function (res) { |
|||
// console.log(res) |
|||
if (res.rows.length > 0) { |
|||
let userData = res.rows; |
|||
for (let i in userData) { |
|||
// console.log(finishProductData[i].finishProductCode) |
|||
$("#form-deliveryGoodsNotice-add select[name='voucherPreparation']").append("<option value='" + userData[i].userName + "'>" + userData[i].userName + "</option>"); |
|||
} |
|||
} |
|||
|
|||
} |
|||
}) |
|||
|
|||
//初始化添加材料表 |
|||
$('#addSalesFinishTable').bootstrapTable({ |
|||
pagination: true, |
|||
pageNumber: 1, |
|||
pageSize: 10, |
|||
showToggle: false, // 是否显示详细视图和列表视图的切换按钮 |
|||
cardView: false, // 是否显示详细视图 |
|||
detailView: false, // 是否显示父子表 |
|||
smartDisplay: false, // 加了这个才显示每页显示的行数 |
|||
showExport: false, // 是否显示导出按钮 |
|||
clickToSelect: true,//点击行选中 |
|||
paginationDetailHAlign: ' hiddenDetailInfo', |
|||
height: 250, |
|||
uniqueId: 'finishProductCode', |
|||
queryParams: function (params) { |
|||
//console.log("123"); |
|||
var curParams = { |
|||
// 传递参数查询参数 |
|||
pageSize: params.limit, |
|||
pageNum: params.offset / params.limit + 1, |
|||
// enterpriseCode: data[0].enterpriseCode |
|||
|
|||
}; |
|||
// console.log(data[0].enterpriseCode) |
|||
return curParams |
|||
}, |
|||
columns: [ |
|||
{ |
|||
title: '操作', |
|||
align: 'center', |
|||
formatter: function (value, row, index) { |
|||
var actions = []; |
|||
actions.push('<a class="btn btn-danger btn-xs" href="javascript:void(0)" onclick="removeSalesFinish(\'' + row.finishProductCode + '\')" ><i class="fa fa-remove"></i>删除</a>'); |
|||
return actions.join(''); |
|||
} |
|||
}, |
|||
{ |
|||
field: 'deliveryGoodsDetailId', |
|||
title: '发货通知单详情id', |
|||
visible: false |
|||
}, |
|||
{ |
|||
field: 'noticeOrderNumber', |
|||
title: '通知单号', |
|||
visible: false |
|||
}, |
|||
{ |
|||
field: 'salesOrderNumber', |
|||
title: '订单号码' |
|||
}, |
|||
{ |
|||
field: 'enterpriseCode', |
|||
title: '客户代码' |
|||
}, |
|||
{ |
|||
field: 'enterpriseName', |
|||
title: '客户名称' |
|||
}, |
|||
{ |
|||
field: 'finishProductCode', |
|||
title: '成品代码' |
|||
}, |
|||
{ |
|||
field: 'finishProductName', |
|||
title: '成品名称' |
|||
}, |
|||
{ |
|||
field: 'specificationModel', |
|||
title: '规格型号' |
|||
}, |
|||
{ |
|||
field: 'customerNumber', |
|||
title: '客户料号' |
|||
}, |
|||
{ |
|||
field: 'typeMachine', |
|||
title: '机种' |
|||
}, |
|||
{ |
|||
field: 'inventoryUnit', |
|||
title: '单位' |
|||
}, |
|||
{ |
|||
field: 'commonCurrency', |
|||
title: '币别', |
|||
formatter: function (value, row, index) { |
|||
return $.table.selectDictLabel(commonCurrencyDatas, value); |
|||
} |
|||
}, |
|||
{ |
|||
field: 'processPrice', |
|||
title: '单价' |
|||
}, |
|||
{ |
|||
field: 'productQuantity', |
|||
title: '数量' |
|||
}, |
|||
{ |
|||
field: 'amountMoney', |
|||
title: '金额' |
|||
}, |
|||
{ |
|||
field: 'line', |
|||
title: 'Line#' |
|||
}, |
|||
{ |
|||
field: 'versionNumber', |
|||
title: '版本号' |
|||
}, |
|||
{ |
|||
field: 'salesExplain', |
|||
title: '说明' |
|||
}] |
|||
}) |
|||
|
|||
//选择订单 |
|||
function showOrderDetailModal() { |
|||
if ($.validate.form()) { |
|||
$("#salesFinishModal").modal("show"); |
|||
// var enterpriseCode = $("#form-deliveryGoodsNotice-add select[name='enterpriseCode']").val() |
|||
// var enterpriseName = $("#form-deliveryGoodsNotice-add input[name='enterpriseName']").val() |
|||
var options = { |
|||
id: 'salesFinishTable', |
|||
url: ctx + "system/salesFinish/list", |
|||
modalName: "销售产品", |
|||
showToggle: false, // 是否显示详细视图和列表视图的切换按钮 |
|||
cardView: false, // 是否显示详细视图 |
|||
detailView: false, // 是否显示父子表 |
|||
smartDisplay: false, // 加了这个才显示每页显示的行数 |
|||
showExport: false, // 是否显示导出按钮 |
|||
clickToSelect: true,//点击行选中 |
|||
queryParams: function (params) { |
|||
var curParams = { |
|||
// 传递参数查询参数 |
|||
pageSize: params.limit, |
|||
pageNum: params.offset / params.limit + 1 |
|||
}; |
|||
let json = $.extend(curParams, $.common.formToJSON("salesFinishFormId")); |
|||
return json; |
|||
}, |
|||
columns: [{ |
|||
checkbox: true |
|||
}, |
|||
{ |
|||
field: 'salesFinishId', |
|||
title: '订单id', |
|||
visible: false |
|||
}, |
|||
{ |
|||
field: 'salesOrderCode', |
|||
title: '订单编号' |
|||
}, |
|||
{ |
|||
field: 'salesOrderNumber', |
|||
title: '订单号码' |
|||
}, |
|||
{ |
|||
field: 'enterpriseCode', |
|||
title: '客户代码' |
|||
}, |
|||
{ |
|||
field: 'enterpriseName', |
|||
title: '客户名称' |
|||
}, |
|||
{ |
|||
field: 'finishProductCode', |
|||
title: '成品代码' |
|||
}, |
|||
{ |
|||
field: 'finishProductName', |
|||
title: '成品名称' |
|||
}, |
|||
{ |
|||
field: 'customerNumber', |
|||
title: '客户料号' |
|||
}, |
|||
{ |
|||
field: 'specificationModel', |
|||
title: '规格型号' |
|||
}, |
|||
{ |
|||
field: 'typeMachine', |
|||
title: '机种' |
|||
}, |
|||
{ |
|||
field: 'inventoryUnit', |
|||
title: '单位' |
|||
}, |
|||
{ |
|||
field: 'stockUnitWeight', |
|||
title: '重量' |
|||
}, |
|||
{ |
|||
field: 'commonCurrency', |
|||
title: '币别', |
|||
formatter: function (value, row, index) { |
|||
return $.table.selectDictLabel(commonCurrencyDatas, value); |
|||
} |
|||
}, |
|||
{ |
|||
field: 'processPrice', |
|||
title: '单价' |
|||
}, |
|||
{ |
|||
field: 'productQuantity', |
|||
title: '数量' |
|||
}, |
|||
{ |
|||
field: 'amountMoney', |
|||
title: '金额' |
|||
}, |
|||
{ |
|||
field: 'deliveryTime', |
|||
title: '交期' |
|||
}, |
|||
{ |
|||
field: 'line', |
|||
title: 'Line#' |
|||
}, |
|||
{ |
|||
field: 'versionNumber', |
|||
title: '版本号' |
|||
}, |
|||
{ |
|||
field: 'salesExplain', |
|||
title: '说明' |
|||
}] |
|||
}; |
|||
$.table.init(options); |
|||
} else { |
|||
$.modal.alertWarning("请先填写必填项!") |
|||
} |
|||
} |
|||
|
|||
//关闭订单框 |
|||
function closeSalesFinishModal() { |
|||
$("#salesFinishModal").modal("hide"); |
|||
} |
|||
|
|||
//表中添加选中的订单信息 |
|||
function addSalesFinishToTable() { |
|||
var data = $("#salesFinishTable").bootstrapTable("getSelections"); |
|||
var count = $('#addSalesFinishTable').bootstrapTable('getData').length; |
|||
var noticeOrderNumber = $("input[name='noticeOrderNumber']").val(); |
|||
// console.log(materialType) |
|||
for (i = 0; i < data.length; i++) { |
|||
let finishProduct = $('#addSalesFinishTable').bootstrapTable('getRowByUniqueId', data[i].finishProductCode); |
|||
if (finishProduct != null) { |
|||
alert(finishProduct.finishProductName + "已存在,不可重复添加!"); |
|||
continue; |
|||
} |
|||
$("#addSalesFinishTable").bootstrapTable('insertRow', { |
|||
index: count + i, |
|||
row: { |
|||
noticeOrderNumber: noticeOrderNumber, |
|||
salesOrderNumber: data[i].salesOrderNumber, |
|||
enterpriseCode: data[i].enterpriseCode, |
|||
enterpriseName: data[i].enterpriseName, |
|||
finishProductCode: data[i].finishProductCode, |
|||
finishProductName: data[i].finishProductName, |
|||
specificationModel: data[i].specificationModel, |
|||
customerNumber: data[i].customerNumber, |
|||
typeMachine: data[i].typeMachine, |
|||
inventoryUnit: data[i].inventoryUnit, |
|||
commonCurrency: data[i].commonCurrency, |
|||
processPrice: data[i].processPrice, |
|||
productQuantity: data[i].productQuantity, |
|||
amountMoney: data[i].amountMoney, |
|||
line: data[i].line, |
|||
versionNumber: data[i].versionNumber, |
|||
salesExplain: data[i].salesExplain |
|||
} |
|||
}); |
|||
} |
|||
$("#salesFinishTable").bootstrapTable("uncheckAll"); |
|||
closeSalesFinishModal(); |
|||
} |
|||
|
|||
//确认材料信息 |
|||
function confirmSalesFinish() { |
|||
var data = $("#addSalesFinishTable").bootstrapTable("getData"); |
|||
// console.log(data) |
|||
$.ajax({ |
|||
url: prefixDetail + '/addEditSave', |
|||
type: "POST", |
|||
data: { |
|||
data: JSON.stringify(data) |
|||
}, |
|||
dataType: "json", |
|||
success: function (resp) { |
|||
// console.log(data) |
|||
console.log(resp) |
|||
}, |
|||
|
|||
}) |
|||
} |
|||
|
|||
//删除表内材料信息 |
|||
function removeSalesFinish(finishProductCode) { |
|||
var ids = []; |
|||
ids.push(finishProductCode); |
|||
$('#addSalesFinishTable').bootstrapTable("remove",{ |
|||
field:'finishProductCode', |
|||
values:ids |
|||
}) |
|||
$("#addSalesFinishTable").bootstrapTable('refresh'); |
|||
} |
|||
</script> |
|||
</body> |
|||
</html> |
@ -0,0 +1,285 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro"> |
|||
<head> |
|||
<th:block th:include="include :: header('发货通知单列表')" /> |
|||
<th:block th:include="include :: datetimepicker-css"/> |
|||
<script type="text/javascript" th:src="@{/js/axios.min.js}"></script> |
|||
</head> |
|||
<body class="gray-bg"> |
|||
<div class="container-div"> |
|||
<div class="row"> |
|||
<div class="col-sm-12 search-collapse"> |
|||
<form id="formId"> |
|||
<div class="select-list"> |
|||
<ul> |
|||
<li> |
|||
<label>通知单号:</label> |
|||
<input type="text" name="noticeOrderNumber"/> |
|||
</li> |
|||
<li> |
|||
<label>发货日期:</label> |
|||
<input type="text" name="deliveryDate"/> |
|||
</li> |
|||
<li> |
|||
<label>客户代码:</label> |
|||
<input type="text" name="enterpriseCode"/> |
|||
</li> |
|||
<li> |
|||
<label>客户名称:</label> |
|||
<input type="text" name="enterpriseName"/> |
|||
</li> |
|||
<li> |
|||
<label>内外销:</label> |
|||
<select name="exportSales" th:with="type=${@dict.getType('sys_export_sales')}"> |
|||
<option value="">所有</option> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</li> |
|||
<li> |
|||
<label>发货否:</label> |
|||
<select name="deliveryGoodsFlag" th:with="type=${@dict.getType('sys_whether')}"> |
|||
<option value="">所有</option> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</li> |
|||
<li> |
|||
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i> 搜索</a> |
|||
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i> 重置</a> |
|||
</li> |
|||
</ul> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
|
|||
<div class="btn-group-sm" id="toolbar" role="group"> |
|||
<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="manufacture:deliveryGoodsNotice:add"> |
|||
<i class="fa fa-plus"></i> 添加 |
|||
</a> |
|||
<a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="manufacture:deliveryGoodsNotice:edit"> |
|||
<i class="fa fa-edit"></i> 修改 |
|||
</a> |
|||
<a class="btn btn-danger single disabled" onclick="removeNotice()" shiro:hasPermission="manufacture:deliveryGoodsNotice:remove"> |
|||
<i class="fa fa-remove"></i> 删除 |
|||
</a> |
|||
<a class="btn btn-warning single disabled" onclick="exportNotice()" shiro:hasPermission="manufacture:deliveryGoodsNotice:export"> |
|||
<i class="fa fa-download"></i> 导出 |
|||
</a> |
|||
</div> |
|||
<div class="col-sm-12 select-table table-striped"> |
|||
<table id="bootstrap-table"></table> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<script th:inline="javascript"> |
|||
var editFlag = [[${@permission.hasPermi('manufacture:deliveryGoodsNotice:edit')}]]; |
|||
var removeFlag = [[${@permission.hasPermi('manufacture:deliveryGoodsNotice:remove')}]]; |
|||
var exportSalesDatas = [[${@dict.getType('sys_export_sales')}]]; |
|||
var deliveryGoodsFlagDatas = [[${@dict.getType('sys_whether')}]]; |
|||
var prefix = ctx + "manufacture/deliveryGoodsNotice"; |
|||
var prefixDetail = ctx + "manufacture/deliveryGoodsDetail"; |
|||
|
|||
$(function() { |
|||
var options = { |
|||
url: prefix + "/list", |
|||
createUrl: prefix + "/add", |
|||
updateUrl: prefix + "/edit/{id}", |
|||
removeUrl: prefix + "/remove", |
|||
exportUrl: prefix + "/export", |
|||
clickToSelect: true, |
|||
modalName: "发货通知单", |
|||
columns: [{ |
|||
checkbox: true |
|||
}, |
|||
{ |
|||
field: 'deliveryGoodsNoticeId', |
|||
title: '发货通知单id', |
|||
visible: false |
|||
}, |
|||
{ |
|||
field: 'noticeOrderNumber', |
|||
title: '通知单号' |
|||
}, |
|||
{ |
|||
field: 'deliveryDate', |
|||
title: '发货日期' |
|||
}, |
|||
{ |
|||
field: 'enterpriseCode', |
|||
title: '客户代码' |
|||
}, |
|||
{ |
|||
field: 'enterpriseName', |
|||
title: '客户名称' |
|||
}, |
|||
{ |
|||
field: 'customerContact', |
|||
title: '联系人' |
|||
}, |
|||
{ |
|||
field: 'customerFactory', |
|||
title: '客户厂区' |
|||
}, |
|||
{ |
|||
field: 'deliveryAddress', |
|||
title: '送货地址' |
|||
}, |
|||
{ |
|||
field: 'exportSales', |
|||
title: '内外销', |
|||
formatter: function(value, row, index) { |
|||
return $.table.selectDictLabel(exportSalesDatas, value); |
|||
} |
|||
}, |
|||
{ |
|||
field: 'stockNumber', |
|||
title: '仓库编号' |
|||
}, |
|||
{ |
|||
field: 'stockName', |
|||
title: '仓库名称' |
|||
}, |
|||
{ |
|||
field: 'remarks', |
|||
title: '备注' |
|||
}, |
|||
{ |
|||
field: 'voucherPreparation', |
|||
title: '制单人' |
|||
}, |
|||
{ |
|||
field: 'deliveryGoodsFlag', |
|||
title: '发货否', |
|||
formatter: function(value, row, index) { |
|||
return $.table.selectDictLabel(deliveryGoodsFlagDatas, value); |
|||
} |
|||
}, |
|||
{ |
|||
field: 'firstAddTime', |
|||
title: '录入时间', |
|||
formatter: function (value, row, index) { |
|||
if (value == null) { |
|||
return " "; |
|||
} else { |
|||
return value; |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
field: 'updateInfoTime', |
|||
title: '上次修改时间', |
|||
formatter: function (value, row, index) { |
|||
if (value == null) { |
|||
return " "; |
|||
} else { |
|||
var vArr = value.split(',') |
|||
return vArr[0]; |
|||
} |
|||
} |
|||
}] |
|||
}; |
|||
$.table.init(options); |
|||
}); |
|||
|
|||
//删除 |
|||
function removeNotice() { |
|||
var noticeData = $("#bootstrap-table").bootstrapTable("getSelections"); |
|||
if (noticeData.length === 1) { |
|||
// console.log(orderData) |
|||
$.ajax({ |
|||
url: prefixDetail + '/list', |
|||
type: 'post', |
|||
data: { |
|||
deliveryGoodsNoticeId: noticeData[0].deliveryGoodsNoticeId |
|||
}, |
|||
success: function (res) { |
|||
console.log(res) |
|||
if (res.rows.length > 0) { |
|||
$.modal.confirm("该订单内含有"+ res.rows.length+ "条订单数据将一并删除,是否删除?", function () { |
|||
$.ajax({ |
|||
url: prefix + '/removeSelectedOrder', |
|||
type: 'post', |
|||
data: { |
|||
noticeData: JSON.stringify(noticeData) |
|||
}, |
|||
success: function (res) { |
|||
// console.log(res) |
|||
$("#bootstrap-table").bootstrapTable("refresh"); |
|||
$.modal.msgSuccess("删除成功!") |
|||
}, |
|||
error: function (res) { |
|||
$.modal.msgError(res.error()) |
|||
} |
|||
}) |
|||
}) |
|||
} else if (res.rows.length === 0) { |
|||
$.modal.confirm("确认删除该订单吗?", function () { |
|||
$.ajax({ |
|||
url: prefix + '/remove', |
|||
type: 'post', |
|||
data: { |
|||
ids : noticeData[0].workOrderId |
|||
}, |
|||
success: function (res) { |
|||
// console.log(res) |
|||
$("#bootstrap-table").bootstrapTable("refresh"); |
|||
$.modal.msgSuccess("删除成功!") |
|||
}, |
|||
error: function (res) { |
|||
$.modal.msgError(res.error()) |
|||
} |
|||
}) |
|||
}) |
|||
} |
|||
} |
|||
}) |
|||
|
|||
} else { |
|||
$.modal.msgWarning("请选择一条数据") |
|||
} |
|||
} |
|||
|
|||
//导出 |
|||
function exportNotice() { |
|||
var rows = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId); |
|||
var data = $("#bootstrap-table").bootstrapTable("getSelections") |
|||
|
|||
if (rows.length !== 1) { |
|||
$.modal.alert("请选择一条记录"); |
|||
return; |
|||
} else { |
|||
// rows为选中行的id |
|||
// console.log(rows); |
|||
// console.log(data); |
|||
// console.log(data[0].orderNumber) |
|||
$.modal.confirm("是否确认要导出本条制工单?", function (){ |
|||
axios({ |
|||
url: prefix + '/exportSelected/'+data[0].deliveryGoodsNoticeId, |
|||
method: 'POST', |
|||
responseType: 'blob' |
|||
}).then(response => { |
|||
// console.log(response) |
|||
const URL = window.URL.createObjectURL(response.data) |
|||
// 创建隐藏<a>标签进行下载 |
|||
const tempLink = document.createElement('a') |
|||
tempLink.style.display = 'none' |
|||
tempLink.href = URL |
|||
let time = new Date().toLocaleString() |
|||
tempLink.setAttribute('download', time + "发货通知单.xlsx") |
|||
if (typeof tempLink.download === 'undefined') { |
|||
tempLink.setAttribute('target', '_blank') |
|||
} |
|||
document.body.appendChild(tempLink) |
|||
tempLink.click() |
|||
document.body.removeChild(tempLink)// 移除dom元素 |
|||
window.URL.revokeObjectURL(URL)//释放内存 |
|||
}) |
|||
}); |
|||
|
|||
|
|||
} |
|||
} |
|||
|
|||
</script> |
|||
</body> |
|||
</html> |
@ -0,0 +1,652 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" > |
|||
<head> |
|||
<th:block th:include="include :: header('修改发货通知单')" /> |
|||
<th:block th:include="include :: datetimepicker-css"/> |
|||
<link th:href="@{/ajax/libs/select2/select2.css}" rel="stylesheet"> |
|||
<link th:href="@{/ajax/libs/select2/select2-bootstrap.css}" rel="stylesheet"> |
|||
<th:block th:include="include :: bootstrap-editable-css"/> |
|||
<style> |
|||
.other-container { |
|||
width: 90%; |
|||
height: 200px; |
|||
margin: auto; |
|||
} |
|||
.other { |
|||
margin-top: 20px; |
|||
} |
|||
h4 { |
|||
display: inline-block; |
|||
margin-right: 20px; |
|||
} |
|||
.modal-body{ |
|||
height: 550px; |
|||
} |
|||
iframe{ |
|||
width: 100%; |
|||
height: 500px; |
|||
frameborder: 0; |
|||
border: 0; |
|||
display: inline-block; |
|||
} |
|||
</style> |
|||
</head> |
|||
<body class="white-bg"> |
|||
<div class="wrapper wrapper-content animated fadeInRight ibox-content"> |
|||
<form class="form-horizontal m" id="form-deliveryGoodsNotice-edit" th:object="${deliveryGoodsNotice}"> |
|||
<input name="deliveryGoodsNoticeId" th:field="*{deliveryGoodsNoticeId}" type="hidden"> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label is-required">通知单号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="noticeOrderNumber" th:field="*{noticeOrderNumber}" class="form-control" type="text" required readonly> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">发货日期:</label> |
|||
<div class="col-sm-8"> |
|||
<!-- <input name="deliveryDate" th:field="*{deliveryDate}" class="form-control" type="text">--> |
|||
<div class="input-group date"> |
|||
<input name="deliveryDate" class="form-control" th:field="*{deliveryDate}" placeholder="yyyy-MM-dd" type="text"> |
|||
<span class="input-group-addon"><i class="fa fa-calendar"></i></span> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label is-required">客户代码:</label> |
|||
<div class="col-sm-8"> |
|||
<!-- <input name="enterpriseCode" th:field="*{enterpriseCode}" class="form-control" type="text" required>--> |
|||
<select name="enterpriseCode" th:field="*{enterpriseCode}" class="form-control m-b" required> |
|||
<option value="">请选择客户代码</option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label is-required">客户名称:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="enterpriseName" th:field="*{enterpriseName}" class="form-control" type="text" required> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">联系人:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="customerContact" th:field="*{customerContact}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">客户厂区:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="customerFactory" th:field="*{customerFactory}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">送货地址:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="deliveryAddress" th:field="*{deliveryAddress}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">内外销:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="exportSales" class="form-control m-b" th:with="type=${@dict.getType('sys_export_sales')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:field="*{exportSales}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">仓库名称:</label> |
|||
<div class="col-sm-8"> |
|||
<!-- <input name="stockName" th:field="*{stockName}" class="form-control" type="text">--> |
|||
<select name="stockName" class="form-control m-b" th:field="*{stockName}"> |
|||
<option value="">请选择仓库名称</option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">仓库编号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="stockNumber" th:field="*{stockNumber}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">备注:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="remarks" th:field="*{remarks}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">制单人:</label> |
|||
<div class="col-sm-8"> |
|||
<!-- <input name="voucherPreparation" th:field="*{voucherPreparation}" class="form-control" type="text">--> |
|||
<select name="voucherPreparation" class="form-control m-b" th:field="*{voucherPreparation}"> |
|||
<option value="">请选择制单人</option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">发货否:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="deliveryGoodsFlag" class="form-control m-b" th:with="type=${@dict.getType('sys_whether')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:field="*{deliveryGoodsFlag}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<!-- <div class="form-group"> |
|||
<label class="col-sm-3 control-label">备用一:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="standbyOne" th:field="*{standbyOne}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">备用二:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="standbyTwo" th:field="*{standbyTwo}" class="form-control" type="text"> |
|||
</div> |
|||
</div>--> |
|||
</form> |
|||
</div> |
|||
|
|||
<div class="other-container"> |
|||
<div class="other"> |
|||
<br><hr> |
|||
<h4>订单信息</h4> |
|||
<a class="btn btn-primary" onclick="showOrderDetailModal()"><i class="fa fa-plus"></i> 订单信息</a> |
|||
<a class="btn btn-danger" onclick="removeOrderDetail()"><i class="fa fa-plus"></i> 删除订单</a> |
|||
<div class="col-sm-12 select-table table-striped"> |
|||
<table id="addSalesFinishTable" style="white-space:nowrap"></table> |
|||
</div> |
|||
</div> |
|||
<div class="modal inmodal" id="salesFinishModal" |
|||
role="dilog" aria-hidden="true"> |
|||
|
|||
<!-- 查询订单成品资料--> |
|||
<div class="modal-dialog" style="width: 1000px;background-color: #FFFFFF"> |
|||
|
|||
<div class="modal-content" style="background-color: #FFFFFF"> |
|||
|
|||
<div class="modal-body"> |
|||
<div class="container-div"> |
|||
<div class="row"> |
|||
<div class="col-sm-12 search-collapse"> |
|||
<form id="salesFinishFormId"> |
|||
<div class="select-list"> |
|||
<ul> |
|||
<li> |
|||
<label>订单号码:</label> |
|||
<input type="text" name="salesOrderNumber"/> |
|||
</li> |
|||
<li> |
|||
<label>成品代码:</label> |
|||
<input type="text" name="finishProductCode"/> |
|||
</li> |
|||
<li> |
|||
<label>成品名称:</label> |
|||
<input type="text" name="finishProductName"/> |
|||
</li> |
|||
<li> |
|||
<label>客户代码:</label> |
|||
<input type="text" name="enterpriseCode"/> |
|||
</li> |
|||
<li> |
|||
<label>客户名称:</label> |
|||
<input type="text" name="enterpriseName"/> |
|||
</li> |
|||
<li> |
|||
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search('salesFinishFormId','salesFinishTable')"><i |
|||
class="fa fa-search"></i> 搜索</a> |
|||
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset('salesFinishFormId','salesFinishTable')"><i |
|||
class="fa fa-refresh"></i> 重置</a> |
|||
</li> |
|||
</ul> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
<div class="col-sm-12 select-table table-striped"> |
|||
<table id="salesFinishTable" style="white-space:nowrap"></table> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="modal-footer"> |
|||
<a class="btn btn-warning btn-rounded" onclick="addSalesFinishToTable()">确认添加</a> |
|||
<a class="btn btn-primary btn-rounded" onclick="closeSalesFinishModal()">关闭</a> |
|||
</div> |
|||
</div> |
|||
|
|||
</div> |
|||
</div> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<th:block th:include="include :: datetimepicker-js"/> |
|||
<th:block th:include="include :: select2-js"/> |
|||
<th:block th:include="include :: bootstrap-table-editable-js"/> |
|||
|
|||
<script th:inline="javascript"> |
|||
var getData = [[${deliveryGoodsNotice}]] |
|||
|
|||
var prefix = ctx + "manufacture/deliveryGoodsNotice" |
|||
var prefixDetail = ctx + "manufacture/deliveryGoodsDetail" |
|||
var commonCurrencyDatas = [[${@dict.getType('sys_common_currency')}]]; |
|||
|
|||
$("#form-deliveryGoodsNotice-edit").validate({ |
|||
focusCleanup: true |
|||
}); |
|||
|
|||
function submitHandler() { |
|||
var getData = $("#addSalesFinishTable").bootstrapTable("getData"); |
|||
if(getData.length > 0){ |
|||
if ($.validate.form()) { |
|||
//确认添加选中的物料数据 |
|||
confirmSalesFinish(); |
|||
$.operate.save(prefix + "/edit", $('#form-deliveryGoodsNotice-edit').serialize()); |
|||
} |
|||
} else { |
|||
$.modal.alertWarning("未选择订单,请选择!") |
|||
} |
|||
} |
|||
|
|||
$("input[name='deliveryDate']").datetimepicker({ |
|||
format: "yyyy-mm-dd", |
|||
minView: "month", |
|||
autoclose: true, |
|||
todayBtn: true |
|||
}); |
|||
//获取仓库信息 |
|||
$.ajax({ |
|||
url: ctx + "stock/stockInfo/list", |
|||
type: "post", |
|||
success: function (res) { |
|||
// console.log(res) |
|||
if (res.rows.length > 0) { |
|||
let stockData = res.rows; |
|||
for (let i in stockData) { |
|||
// console.log(finishProductData[i].finishProductCode) |
|||
$("#form-deliveryGoodsNotice-edit select[name='stockName']").append("<option value='" + stockData[i].stockname + "'>" + stockData[i].stockname + "</option>"); |
|||
$("#form-deliveryGoodsNotice-edit select[name='stockName']").val(getData.stockName).trigger("change") |
|||
$("#form-deliveryGoodsNotice-edit select[name='stockName']").change(function () { |
|||
var stockName = $(this).val(); |
|||
for (let i=0;i<stockData.length;i++) { |
|||
if (stockData[i].stockname == stockName) { |
|||
$("#form-deliveryGoodsNotice-edit input[name='stockNumber']").val(stockData[i].stockNO); |
|||
} |
|||
} |
|||
}) |
|||
} |
|||
} |
|||
} |
|||
}) |
|||
|
|||
//获取客户信息 |
|||
$.ajax({ |
|||
url: ctx + 'system/customer/list', |
|||
type: "post", |
|||
success: function (res) { |
|||
// console.log(res) |
|||
if (res.rows.length > 0) { |
|||
let customerData = res.rows; |
|||
for (let i in customerData) { |
|||
// console.log(finishProductData[i].finishProductCode) |
|||
$("#form-deliveryGoodsNotice-edit select[name='enterpriseCode']").append("<option value='" + customerData[i].enterpriseCode + "'>" + customerData[i].enterpriseCode + "</option>"); |
|||
$("#form-deliveryGoodsNotice-edit select[name='enterpriseCode']").val(getData.enterpriseCode).trigger("change") |
|||
$("#form-deliveryGoodsNotice-edit select[name='exportSales']").val(getData.exportSales).trigger("change") |
|||
$("#form-deliveryGoodsNotice-edit select[name='enterpriseCode']").change(function () { |
|||
var enterpriseCode = $(this).val(); |
|||
for (let i=0;i<customerData.length;i++) { |
|||
if (customerData[i].enterpriseCode == enterpriseCode) { |
|||
$("#form-deliveryGoodsNotice-edit input[name='enterpriseName']").val(customerData[i].enterpriseName); |
|||
$("#form-deliveryGoodsNotice-edit input[name='customerContact']").val(customerData[i].customerContact); |
|||
$("#form-deliveryGoodsNotice-edit input[name='deliveryAddress']").val(customerData[i].deliveryAddress); |
|||
$("#form-deliveryGoodsNotice-edit select[name='exportSales']").val(customerData[i].exportSales).trigger("change"); |
|||
} |
|||
} |
|||
}) |
|||
} |
|||
} |
|||
} |
|||
}) |
|||
|
|||
//获取制单人 |
|||
$.ajax({ |
|||
url: ctx + "system/user/list", |
|||
type: "post", |
|||
success: function (res) { |
|||
// console.log(res) |
|||
if (res.rows.length > 0) { |
|||
let userData = res.rows; |
|||
for (let i in userData) { |
|||
// console.log(finishProductData[i].finishProductCode) |
|||
$("#form-deliveryGoodsNotice-edit select[name='voucherPreparation']").append("<option value='" + userData[i].userName + "'>" + userData[i].userName + "</option>"); |
|||
$("#form-deliveryGoodsNotice-edit select[name='voucherPreparation']").val(getData.voucherPreparation).trigger("change") |
|||
} |
|||
} |
|||
|
|||
} |
|||
}) |
|||
|
|||
//初始化添加材料表 |
|||
$('#addSalesFinishTable').bootstrapTable({ |
|||
url: prefixDetail + '/list', |
|||
method: "post", |
|||
pagination: true, |
|||
pageNumber: 1, |
|||
pageSize: 10, |
|||
showToggle: false, // 是否显示详细视图和列表视图的切换按钮 |
|||
cardView: false, // 是否显示详细视图 |
|||
detailView: false, // 是否显示父子表 |
|||
smartDisplay: false, // 加了这个才显示每页显示的行数 |
|||
showExport: false, // 是否显示导出按钮 |
|||
clickToSelect: true,//点击行选中 |
|||
paginationDetailHAlign: ' hiddenDetailInfo', |
|||
height: 250, |
|||
uniqueId: 'finishProductCode', |
|||
queryParams: function (params) { |
|||
//console.log("123"); |
|||
var curParams = { |
|||
// 传递参数查询参数 |
|||
pageSize: params.limit, |
|||
pageNum: params.offset / params.limit + 1, |
|||
noticeOrderNumber: getData.noticeOrderNumber |
|||
}; |
|||
// console.log(data[0].enterpriseCode) |
|||
return curParams |
|||
}, |
|||
columns: [ |
|||
{ |
|||
checkbox: true |
|||
}, |
|||
{ |
|||
field: 'deliveryGoodsDetailId', |
|||
title: '发货通知单详情id', |
|||
visible: false |
|||
}, |
|||
{ |
|||
field: 'noticeOrderNumber', |
|||
title: '通知单号', |
|||
visible: false |
|||
}, |
|||
{ |
|||
field: 'salesOrderNumber', |
|||
title: '订单号码' |
|||
}, |
|||
{ |
|||
field: 'enterpriseCode', |
|||
title: '客户代码' |
|||
}, |
|||
{ |
|||
field: 'enterpriseName', |
|||
title: '客户名称' |
|||
}, |
|||
{ |
|||
field: 'finishProductCode', |
|||
title: '成品代码' |
|||
}, |
|||
{ |
|||
field: 'finishProductName', |
|||
title: '成品名称' |
|||
}, |
|||
{ |
|||
field: 'specificationModel', |
|||
title: '规格型号' |
|||
}, |
|||
{ |
|||
field: 'customerNumber', |
|||
title: '客户料号' |
|||
}, |
|||
{ |
|||
field: 'typeMachine', |
|||
title: '机种' |
|||
}, |
|||
{ |
|||
field: 'inventoryUnit', |
|||
title: '单位' |
|||
}, |
|||
{ |
|||
field: 'commonCurrency', |
|||
title: '币别', |
|||
formatter: function (value, row, index) { |
|||
return $.table.selectDictLabel(commonCurrencyDatas, value); |
|||
} |
|||
}, |
|||
{ |
|||
field: 'processPrice', |
|||
title: '单价' |
|||
}, |
|||
{ |
|||
field: 'productQuantity', |
|||
title: '数量' |
|||
}, |
|||
{ |
|||
field: 'amountMoney', |
|||
title: '金额' |
|||
}, |
|||
{ |
|||
field: 'line', |
|||
title: 'Line#' |
|||
}, |
|||
{ |
|||
field: 'versionNumber', |
|||
title: '版本号' |
|||
}, |
|||
{ |
|||
field: 'salesExplain', |
|||
title: '说明' |
|||
}] |
|||
}) |
|||
|
|||
//选择订单 |
|||
function showOrderDetailModal() { |
|||
if ($.validate.form()) { |
|||
$("#salesFinishModal").modal("show"); |
|||
// var enterpriseCode = $("#form-deliveryGoodsNotice-add select[name='enterpriseCode']").val() |
|||
// var enterpriseName = $("#form-deliveryGoodsNotice-add input[name='enterpriseName']").val() |
|||
var options = { |
|||
id: 'salesFinishTable', |
|||
url: ctx + "system/salesFinish/list", |
|||
modalName: "销售产品", |
|||
showToggle: false, // 是否显示详细视图和列表视图的切换按钮 |
|||
cardView: false, // 是否显示详细视图 |
|||
detailView: false, // 是否显示父子表 |
|||
smartDisplay: false, // 加了这个才显示每页显示的行数 |
|||
showExport: false, // 是否显示导出按钮 |
|||
clickToSelect: true,//点击行选中 |
|||
queryParams: function (params) { |
|||
var curParams = { |
|||
// 传递参数查询参数 |
|||
pageSize: params.limit, |
|||
pageNum: params.offset / params.limit + 1 |
|||
}; |
|||
let json = $.extend(curParams, $.common.formToJSON("salesFinishFormId")); |
|||
return json; |
|||
}, |
|||
columns: [{ |
|||
checkbox: true |
|||
}, |
|||
{ |
|||
field: 'salesFinishId', |
|||
title: '订单id', |
|||
visible: false |
|||
}, |
|||
{ |
|||
field: 'salesOrderCode', |
|||
title: '订单编号' |
|||
}, |
|||
{ |
|||
field: 'salesOrderNumber', |
|||
title: '订单号码' |
|||
}, |
|||
{ |
|||
field: 'enterpriseCode', |
|||
title: '客户代码' |
|||
}, |
|||
{ |
|||
field: 'enterpriseName', |
|||
title: '客户名称' |
|||
}, |
|||
{ |
|||
field: 'finishProductCode', |
|||
title: '成品代码' |
|||
}, |
|||
{ |
|||
field: 'finishProductName', |
|||
title: '成品名称' |
|||
}, |
|||
{ |
|||
field: 'customerNumber', |
|||
title: '客户料号' |
|||
}, |
|||
{ |
|||
field: 'specificationModel', |
|||
title: '规格型号' |
|||
}, |
|||
{ |
|||
field: 'typeMachine', |
|||
title: '机种' |
|||
}, |
|||
{ |
|||
field: 'inventoryUnit', |
|||
title: '单位' |
|||
}, |
|||
{ |
|||
field: 'stockUnitWeight', |
|||
title: '重量' |
|||
}, |
|||
{ |
|||
field: 'commonCurrency', |
|||
title: '币别', |
|||
formatter: function (value, row, index) { |
|||
return $.table.selectDictLabel(commonCurrencyDatas, value); |
|||
} |
|||
}, |
|||
{ |
|||
field: 'processPrice', |
|||
title: '单价' |
|||
}, |
|||
{ |
|||
field: 'productQuantity', |
|||
title: '数量' |
|||
}, |
|||
{ |
|||
field: 'amountMoney', |
|||
title: '金额' |
|||
}, |
|||
{ |
|||
field: 'deliveryTime', |
|||
title: '交期' |
|||
}, |
|||
{ |
|||
field: 'line', |
|||
title: 'Line#' |
|||
}, |
|||
{ |
|||
field: 'versionNumber', |
|||
title: '版本号' |
|||
}, |
|||
{ |
|||
field: 'salesExplain', |
|||
title: '说明' |
|||
}] |
|||
}; |
|||
$.table.init(options); |
|||
} else { |
|||
$.modal.alertWarning("请先填写必填项!") |
|||
} |
|||
} |
|||
|
|||
//关闭订单框 |
|||
function closeSalesFinishModal() { |
|||
$("#salesFinishModal").modal("hide"); |
|||
} |
|||
|
|||
//表中添加选中的订单信息 |
|||
function addSalesFinishToTable() { |
|||
var data = $("#salesFinishTable").bootstrapTable("getSelections"); |
|||
var count = $('#addSalesFinishTable').bootstrapTable('getData').length; |
|||
var noticeOrderNumber = $("input[name='noticeOrderNumber']").val(); |
|||
// console.log(materialType) |
|||
for (i = 0; i < data.length; i++) { |
|||
let finishProduct = $('#addSalesFinishTable').bootstrapTable('getRowByUniqueId', data[i].finishProductCode); |
|||
if (finishProduct != null) { |
|||
alert(finishProduct.finishProductName + "已存在,不可重复添加!"); |
|||
continue; |
|||
} |
|||
$("#addSalesFinishTable").bootstrapTable('insertRow', { |
|||
index: count + i, |
|||
row: { |
|||
noticeOrderNumber: noticeOrderNumber, |
|||
salesOrderNumber: data[i].salesOrderNumber, |
|||
enterpriseCode: data[i].enterpriseCode, |
|||
enterpriseName: data[i].enterpriseName, |
|||
finishProductCode: data[i].finishProductCode, |
|||
finishProductName: data[i].finishProductName, |
|||
specificationModel: data[i].specificationModel, |
|||
customerNumber: data[i].customerNumber, |
|||
typeMachine: data[i].typeMachine, |
|||
inventoryUnit: data[i].inventoryUnit, |
|||
commonCurrency: data[i].commonCurrency, |
|||
processPrice: data[i].processPrice, |
|||
productQuantity: data[i].productQuantity, |
|||
amountMoney: data[i].amountMoney, |
|||
line: data[i].line, |
|||
versionNumber: data[i].versionNumber, |
|||
salesExplain: data[i].salesExplain |
|||
} |
|||
}); |
|||
} |
|||
$("#salesFinishTable").bootstrapTable("uncheckAll"); |
|||
closeSalesFinishModal(); |
|||
} |
|||
|
|||
//确认材料信息 |
|||
function confirmSalesFinish() { |
|||
var data = $("#addSalesFinishTable").bootstrapTable("getData"); |
|||
// console.log(data) |
|||
$.ajax({ |
|||
url: prefixDetail + '/addEditSave', |
|||
type: "POST", |
|||
data: { |
|||
data: JSON.stringify(data) |
|||
}, |
|||
dataType: "json", |
|||
success: function (resp) { |
|||
// console.log(data) |
|||
console.log(resp) |
|||
}, |
|||
|
|||
}) |
|||
} |
|||
|
|||
//删除订单信息 |
|||
function removeOrderDetail() { |
|||
var addSalesFinishTableData = $("#addSalesFinishTable").bootstrapTable("getSelections"); |
|||
var ids = []; |
|||
var finishProductCodes=[]; |
|||
for (let i = 0;i < addSalesFinishTableData.length;i++) { |
|||
ids.push(addSalesFinishTableData[i].deliveryGoodsDetailId) |
|||
finishProductCodes.push(addSalesFinishTableData[i].finishProductCode) |
|||
} |
|||
// console.log(ids) |
|||
if (addSalesFinishTableData.length > 0) { |
|||
$.modal.confirm("是否确认要删除选中的物料?", function (){ |
|||
$.ajax({ |
|||
url: prefixDetail + "/removeSalesFinish", |
|||
type: "POST", |
|||
data: { |
|||
ids: JSON.stringify(ids) |
|||
}, |
|||
success: function (res) { |
|||
// console.log(ids) |
|||
// console.log(res) |
|||
$.modal.msgSuccess("删除成功") |
|||
// $("#addProductTable").bootstrapTable('refreshOptions', {pageNumber: 1}); // pageNumber:1, 指定页码为第1页 |
|||
// $("#addProductTable").bootstrapTable('refresh'); |
|||
$("#addSalesFinishTable").bootstrapTable ('remove', { field: 'finishProductCode', values: finishProductCodes }) |
|||
} |
|||
}) |
|||
}) |
|||
|
|||
} else { |
|||
alert("请选择需要删除的数据") |
|||
} |
|||
} |
|||
</script> |
|||
</body> |
|||
</html> |
@ -0,0 +1,93 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" > |
|||
<head> |
|||
<th:block th:include="include :: header('新增领料物料')" /> |
|||
</head> |
|||
<body class="white-bg"> |
|||
<div class="wrapper wrapper-content animated fadeInRight ibox-content"> |
|||
<form class="form-horizontal m" id="form-materialRequisitionDetail-add"> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">领料单号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="materialRequisitionNumber" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">物料代码:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="materialCode" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">物料名称:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="materialName" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">规格型号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="specificationModel" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">机种:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="typeMachine" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">单位:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="inventoryUnit" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">计划数量:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="planQuantity" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">说明:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="description" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">单位用量:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="unitUsage" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">存放位置:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="storageLocation" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">物料类别:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="materialType" class="form-control m-b" th:with="type=${@dict.getType('sys_wl_class')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<script th:inline="javascript"> |
|||
var prefix = ctx + "manufacture/materialRequisitionDetail" |
|||
$("#form-materialRequisitionDetail-add").validate({ |
|||
focusCleanup: true |
|||
}); |
|||
|
|||
function submitHandler() { |
|||
if ($.validate.form()) { |
|||
$.operate.save(prefix + "/add", $('#form-materialRequisitionDetail-add').serialize()); |
|||
} |
|||
} |
|||
</script> |
|||
</body> |
|||
</html> |
@ -0,0 +1,94 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" > |
|||
<head> |
|||
<th:block th:include="include :: header('修改领料物料')" /> |
|||
</head> |
|||
<body class="white-bg"> |
|||
<div class="wrapper wrapper-content animated fadeInRight ibox-content"> |
|||
<form class="form-horizontal m" id="form-materialRequisitionDetail-edit" th:object="${materialRequisitionDetail}"> |
|||
<input name="materialRequisitionDetailId" th:field="*{materialRequisitionDetailId}" type="hidden"> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">领料单号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="materialRequisitionNumber" th:field="*{materialRequisitionNumber}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">物料代码:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="materialCode" th:field="*{materialCode}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">物料名称:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="materialName" th:field="*{materialName}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">规格型号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="specificationModel" th:field="*{specificationModel}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">机种:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="typeMachine" th:field="*{typeMachine}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">单位:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="inventoryUnit" th:field="*{inventoryUnit}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">计划数量:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="planQuantity" th:field="*{planQuantity}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">说明:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="description" th:field="*{description}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">单位用量:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="unitUsage" th:field="*{unitUsage}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">存放位置:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="storageLocation" th:field="*{storageLocation}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">物料类别:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="materialType" class="form-control m-b" th:with="type=${@dict.getType('sys_wl_class')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:field="*{materialType}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<script th:inline="javascript"> |
|||
var prefix = ctx + "manufacture/materialRequisitionDetail"; |
|||
$("#form-materialRequisitionDetail-edit").validate({ |
|||
focusCleanup: true |
|||
}); |
|||
|
|||
function submitHandler() { |
|||
if ($.validate.form()) { |
|||
$.operate.save(prefix + "/edit", $('#form-materialRequisitionDetail-edit').serialize()); |
|||
} |
|||
} |
|||
</script> |
|||
</body> |
|||
</html> |
@ -0,0 +1,145 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro"> |
|||
<head> |
|||
<th:block th:include="include :: header('领料物料列表')" /> |
|||
</head> |
|||
<body class="gray-bg"> |
|||
<div class="container-div"> |
|||
<div class="row"> |
|||
<div class="col-sm-12 search-collapse"> |
|||
<form id="formId"> |
|||
<div class="select-list"> |
|||
<ul> |
|||
<li> |
|||
<label>领料单号:</label> |
|||
<input type="text" name="materialRequisitionNumber"/> |
|||
</li> |
|||
<li> |
|||
<label>物料代码:</label> |
|||
<input type="text" name="materialCode"/> |
|||
</li> |
|||
<li> |
|||
<label>物料名称:</label> |
|||
<input type="text" name="materialName"/> |
|||
</li> |
|||
<li> |
|||
<label>物料类别:</label> |
|||
<select name="materialType" th:with="type=${@dict.getType('sys_wl_class')}"> |
|||
<option value="">所有</option> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</li> |
|||
<li> |
|||
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i> 搜索</a> |
|||
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i> 重置</a> |
|||
</li> |
|||
</ul> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
|
|||
<div class="btn-group-sm" id="toolbar" role="group"> |
|||
<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="manufacture:materialRequisitionDetail:add"> |
|||
<i class="fa fa-plus"></i> 添加 |
|||
</a> |
|||
<a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="manufacture:materialRequisitionDetail:edit"> |
|||
<i class="fa fa-edit"></i> 修改 |
|||
</a> |
|||
<a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="manufacture:materialRequisitionDetail:remove"> |
|||
<i class="fa fa-remove"></i> 删除 |
|||
</a> |
|||
<a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="manufacture:materialRequisitionDetail:export"> |
|||
<i class="fa fa-download"></i> 导出 |
|||
</a> |
|||
</div> |
|||
<div class="col-sm-12 select-table table-striped"> |
|||
<table id="bootstrap-table"></table> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<script th:inline="javascript"> |
|||
var editFlag = [[${@permission.hasPermi('manufacture:materialRequisitionDetail:edit')}]]; |
|||
var removeFlag = [[${@permission.hasPermi('manufacture:materialRequisitionDetail:remove')}]]; |
|||
var materialTypeDatas = [[${@dict.getType('sys_wl_class')}]]; |
|||
var prefix = ctx + "manufacture/materialRequisitionDetail"; |
|||
|
|||
$(function() { |
|||
var options = { |
|||
url: prefix + "/list", |
|||
createUrl: prefix + "/add", |
|||
updateUrl: prefix + "/edit/{id}", |
|||
removeUrl: prefix + "/remove", |
|||
exportUrl: prefix + "/export", |
|||
modalName: "领料物料", |
|||
columns: [{ |
|||
checkbox: true |
|||
}, |
|||
{ |
|||
field: 'materialRequisitionDetailId', |
|||
title: '领料物料id', |
|||
visible: false |
|||
}, |
|||
{ |
|||
field: 'materialRequisitionNumber', |
|||
title: '领料单号' |
|||
}, |
|||
{ |
|||
field: 'materialCode', |
|||
title: '物料代码' |
|||
}, |
|||
{ |
|||
field: 'materialName', |
|||
title: '物料名称' |
|||
}, |
|||
{ |
|||
field: 'specificationModel', |
|||
title: '规格型号' |
|||
}, |
|||
{ |
|||
field: 'typeMachine', |
|||
title: '机种' |
|||
}, |
|||
{ |
|||
field: 'inventoryUnit', |
|||
title: '单位' |
|||
}, |
|||
{ |
|||
field: 'planQuantity', |
|||
title: '计划数量' |
|||
}, |
|||
{ |
|||
field: 'description', |
|||
title: '说明' |
|||
}, |
|||
{ |
|||
field: 'unitUsage', |
|||
title: '单位用量' |
|||
}, |
|||
{ |
|||
field: 'storageLocation', |
|||
title: '存放位置' |
|||
}, |
|||
{ |
|||
field: 'materialType', |
|||
title: '物料类别', |
|||
formatter: function(value, row, index) { |
|||
return $.table.selectDictLabel(materialTypeDatas, value); |
|||
} |
|||
}, |
|||
{ |
|||
title: '操作', |
|||
align: 'center', |
|||
formatter: function(value, row, index) { |
|||
var actions = []; |
|||
actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.materialRequisitionDetailId + '\')"><i class="fa fa-edit"></i>编辑</a> '); |
|||
actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.materialRequisitionDetailId + '\')"><i class="fa fa-remove"></i>删除</a>'); |
|||
return actions.join(''); |
|||
} |
|||
}] |
|||
}; |
|||
$.table.init(options); |
|||
}); |
|||
</script> |
|||
</body> |
|||
</html> |
File diff suppressed because it is too large
File diff suppressed because it is too large
@ -0,0 +1,330 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro"> |
|||
<head> |
|||
<th:block th:include="include :: header('领料单列表')" /> |
|||
<th:block th:include="include :: datetimepicker-css"/> |
|||
<script type="text/javascript" th:src="@{/js/axios.min.js}"></script> |
|||
</head> |
|||
<body class="gray-bg"> |
|||
<div class="container-div"> |
|||
<div class="row"> |
|||
<div class="col-sm-12 search-collapse"> |
|||
<form id="formId"> |
|||
<div class="select-list"> |
|||
<ul> |
|||
<li> |
|||
<label>领料单号:</label> |
|||
<input type="text" name="materialRequisitionNumber"/> |
|||
</li> |
|||
<li> |
|||
<label>订单号码:</label> |
|||
<input type="text" name="salesOrderNumber"/> |
|||
</li> |
|||
<li> |
|||
<label>制工单号:</label> |
|||
<input type="text" name="workOrderNumber"/> |
|||
</li> |
|||
<li> |
|||
<label>领料部门:</label> |
|||
<select name="deptName" th:with="type=${@dict.getType('sys_dept_type')}"> |
|||
<option value="">所有</option> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</li> |
|||
<li> |
|||
<label>仓库名称:</label> |
|||
<select name="stockName"> |
|||
<option value="">所有</option> |
|||
<option value="-1">代码生成请选择字典属性</option> |
|||
</select> |
|||
</li> |
|||
<li> |
|||
<label>出库类型:</label> |
|||
<select name="outputClass" th:with="type=${@dict.getType('sys_out_type')}"> |
|||
<option value="">所有</option> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</li> |
|||
<li class="select-time"> |
|||
<label>出库日期:</label> |
|||
<input type="text" class="time-input" id="startTime" placeholder="开始时间" name="params[beginOutputDate]"/> |
|||
<span>-</span> |
|||
<input type="text" class="time-input" id="endTime" placeholder="结束时间" name="params[endOutputDate]"/> |
|||
</li> |
|||
<li> |
|||
<label>领料否:</label> |
|||
<select name="getMaterialFlag" th:with="type=${@dict.getType('sys_whether')}"> |
|||
<option value="">所有</option> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</li> |
|||
<li> |
|||
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i> 搜索</a> |
|||
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i> 重置</a> |
|||
</li> |
|||
</ul> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
|
|||
<div class="btn-group-sm" id="toolbar" role="group"> |
|||
<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="manufacture:materialRequisitionInfo:add"> |
|||
<i class="fa fa-plus"></i> 添加 |
|||
</a> |
|||
<a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="manufacture:materialRequisitionInfo:edit"> |
|||
<i class="fa fa-edit"></i> 修改 |
|||
</a> |
|||
<a class="btn btn-danger single disabled" onclick="removeSelectedOrder()" shiro:hasPermission="manufacture:materialRequisitionInfo:remove"> |
|||
<i class="fa fa-remove"></i> 删除 |
|||
</a> |
|||
<a class="btn btn-warning" onclick="exportRequisitionOrder()" shiro:hasPermission="manufacture:materialRequisitionInfo:export"> |
|||
<i class="fa fa-download"></i> 导出 |
|||
</a> |
|||
</div> |
|||
<div class="col-sm-12 select-table table-striped" style="white-space: nowrap"> |
|||
<table id="bootstrap-table"></table> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<th:block th:include="include :: datetimepicker-js"/> |
|||
<script th:inline="javascript"> |
|||
var editFlag = [[${@permission.hasPermi('manufacture:materialRequisitionInfo:edit')}]]; |
|||
var removeFlag = [[${@permission.hasPermi('manufacture:materialRequisitionInfo:remove')}]]; |
|||
var deptNameDatas = [[${@dict.getType('sys_dept_type')}]]; |
|||
var outputClassDatas = [[${@dict.getType('sys_out_type')}]]; |
|||
var getMaterialFlagDatas = [[${@dict.getType('sys_whether')}]]; |
|||
|
|||
var prefix = ctx + "manufacture/materialRequisitionInfo"; |
|||
var prefixMaterialRequisitionDetail = ctx + "manufacture/materialRequisitionDetail"; |
|||
|
|||
$(function() { |
|||
var options = { |
|||
url: prefix + "/list", |
|||
createUrl: prefix + "/add", |
|||
updateUrl: prefix + "/edit/{id}", |
|||
removeUrl: prefix + "/remove", |
|||
exportUrl: prefix + "/export", |
|||
clickToSelect: true, |
|||
modalName: "领料单", |
|||
columns: [{ |
|||
checkbox: true |
|||
}, |
|||
{ |
|||
field: 'materialRequisitionId', |
|||
title: '领料单id', |
|||
visible: false |
|||
}, |
|||
{ |
|||
field: 'materialRequisitionNumber', |
|||
title: '领料单号' |
|||
}, |
|||
{ |
|||
field: 'salesOrderNumber', |
|||
title: '订单号码' |
|||
}, |
|||
{ |
|||
field: 'workOrderNumber', |
|||
title: '制工单号' |
|||
}, |
|||
{ |
|||
field: 'deptName', |
|||
title: '领料部门', |
|||
formatter: function(value, row, index) { |
|||
return $.table.selectDictLabel(deptNameDatas, value); |
|||
} |
|||
}, |
|||
{ |
|||
field: 'materialRequisitionPerson', |
|||
title: '领料人' |
|||
}, |
|||
{ |
|||
field: 'deptNumber', |
|||
title: '部门编号' |
|||
}, |
|||
{ |
|||
field: 'stockNumber', |
|||
title: '仓库编号' |
|||
}, |
|||
{ |
|||
field: 'stockName', |
|||
title: '仓库名称' |
|||
}, |
|||
{ |
|||
field: 'stockManager', |
|||
title: '仓库管理员' |
|||
}, |
|||
{ |
|||
field: 'outputClass', |
|||
title: '出库类型', |
|||
formatter: function(value, row, index) { |
|||
return $.table.selectDictLabel(outputClassDatas, value); |
|||
} |
|||
}, |
|||
{ |
|||
field: 'outputDate', |
|||
title: '出库日期' |
|||
}, |
|||
{ |
|||
field: 'finishProductCode', |
|||
title: '成品代码' |
|||
}, |
|||
{ |
|||
field: 'typeMachine', |
|||
title: '机种' |
|||
}, |
|||
{ |
|||
field: 'workOrderQuantity', |
|||
title: '工单数量' |
|||
}, |
|||
{ |
|||
field: 'remarkContent', |
|||
title: '备注内容' |
|||
}, |
|||
{ |
|||
field: 'getMaterialFlag', |
|||
title: '领料否', |
|||
formatter: function(value, row, index) { |
|||
return $.table.selectDictLabel(getMaterialFlagDatas, value); |
|||
} |
|||
}, |
|||
{ |
|||
field: 'firstAddTime', |
|||
title: '录入时间', |
|||
formatter: function (value, row, index) { |
|||
if (value == null) { |
|||
return " "; |
|||
} else { |
|||
return value; |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
field: 'updateInfoTime', |
|||
title: '上次修改时间', |
|||
formatter: function (value, row, index) { |
|||
if (value == null) { |
|||
return " "; |
|||
} else { |
|||
var vArr = value.split(',') |
|||
return vArr[0]; |
|||
} |
|||
} |
|||
}] |
|||
// { |
|||
// title: '操作', |
|||
// align: 'center', |
|||
// formatter: function(value, row, index) { |
|||
// var actions = []; |
|||
// actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.materialRequisitionId + '\')"><i class="fa fa-edit"></i>编辑</a> '); |
|||
// actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.materialRequisitionId + '\')"><i class="fa fa-remove"></i>删除</a>'); |
|||
// return actions.join(''); |
|||
// } |
|||
// } |
|||
}; |
|||
$.table.init(options); |
|||
}); |
|||
|
|||
//删除 |
|||
function removeSelectedOrder() { |
|||
var orderData = $("#bootstrap-table").bootstrapTable("getSelections"); |
|||
if (orderData.length === 1) { |
|||
// console.log(orderData) |
|||
$.ajax({ |
|||
url: prefixMaterialRequisitionDetail + '/list', |
|||
type: 'post', |
|||
data: { |
|||
materialRequisitionNumber: orderData[0].materialRequisitionNumber |
|||
}, |
|||
success: function (res) { |
|||
console.log(res) |
|||
if (res.rows.length > 0) { |
|||
$.modal.confirm("该订单内含有"+ res.rows.length+ "条物料数据将一并删除,是否删除?", function () { |
|||
$.ajax({ |
|||
url: prefix + '/removeSelectedOrder', |
|||
type: 'post', |
|||
data: { |
|||
orderData : JSON.stringify(orderData) |
|||
}, |
|||
success: function (res) { |
|||
// console.log(res) |
|||
$("#bootstrap-table").bootstrapTable("refresh"); |
|||
$.modal.msgSuccess("删除成功!") |
|||
}, |
|||
error: function (res) { |
|||
$.modal.msgError(res.error()) |
|||
} |
|||
}) |
|||
}) |
|||
} else if (res.rows.length == 0) { |
|||
$.modal.confirm("确认删除该订单吗?", function () { |
|||
$.ajax({ |
|||
url: prefix + '/remove', |
|||
type: 'post', |
|||
data: { |
|||
ids : orderData[0].materialRequisitionId |
|||
}, |
|||
success: function (res) { |
|||
// console.log(res) |
|||
$("#bootstrap-table").bootstrapTable("refresh"); |
|||
$.modal.msgSuccess("删除成功!") |
|||
}, |
|||
error: function (res) { |
|||
$.modal.msgError(res.error()) |
|||
} |
|||
}) |
|||
}) |
|||
} |
|||
} |
|||
}) |
|||
|
|||
} else { |
|||
$.modal.msgWarning("请选择一条数据") |
|||
} |
|||
} |
|||
|
|||
|
|||
//导出 |
|||
function exportRequisitionOrder() { |
|||
var rows = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId); |
|||
var data = $("#bootstrap-table").bootstrapTable("getSelections") |
|||
|
|||
if (rows.length !== 1) { |
|||
$.modal.alert("请选择一条记录"); |
|||
return; |
|||
} else { |
|||
// rows为选中行的id |
|||
// console.log(rows); |
|||
// console.log(data); |
|||
// console.log(data[0].orderNumber) |
|||
$.modal.confirm("是否确认要导出本条领料单?", function (){ |
|||
axios({ |
|||
url: prefix + '/exportSelected/'+data[0].materialRequisitionId, |
|||
method: 'POST', |
|||
responseType: 'blob' |
|||
}).then(response => { |
|||
// console.log(response) |
|||
const URL = window.URL.createObjectURL(response.data) |
|||
// 创建隐藏<a>标签进行下载 |
|||
const tempLink = document.createElement('a') |
|||
tempLink.style.display = 'none' |
|||
tempLink.href = URL |
|||
let time = new Date().toLocaleString() |
|||
tempLink.setAttribute('download', time + "领料单.xlsx") |
|||
if (typeof tempLink.download === 'undefined') { |
|||
tempLink.setAttribute('target', '_blank') |
|||
} |
|||
document.body.appendChild(tempLink) |
|||
tempLink.click() |
|||
document.body.removeChild(tempLink)// 移除dom元素 |
|||
window.URL.revokeObjectURL(URL)//释放内存 |
|||
}) |
|||
}); |
|||
|
|||
|
|||
} |
|||
} |
|||
|
|||
</script> |
|||
</body> |
|||
</html> |
@ -0,0 +1,93 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" > |
|||
<head> |
|||
<th:block th:include="include :: header('新增制工单材料')" /> |
|||
</head> |
|||
<body class="white-bg"> |
|||
<div class="wrapper wrapper-content animated fadeInRight ibox-content"> |
|||
<form class="form-horizontal m" id="form-workOrderDetail-add"> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label is-required">工单号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="workOrderNumber" class="form-control" type="text" required> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label is-required">物料代码:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="materialCode" class="form-control" type="text" required> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">物料名称:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="materialName" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">规格型号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="specificationModel" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">单位:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="inventoryUnit" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">物料类别:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="materialType" class="form-control m-b" th:with="type=${@dict.getType('bom_material_category')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">用量:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="materialConsumption" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">料号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="itemNumber" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">说明:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="description" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">备用一:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="standbyOne" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">备用二:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="standbyTwo" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<script th:inline="javascript"> |
|||
var prefix = ctx + "manufacture:/workOrderDetail" |
|||
$("#form-workOrderDetail-add").validate({ |
|||
focusCleanup: true |
|||
}); |
|||
|
|||
function submitHandler() { |
|||
if ($.validate.form()) { |
|||
$.operate.save(prefix + "/add", $('#form-workOrderDetail-add').serialize()); |
|||
} |
|||
} |
|||
</script> |
|||
</body> |
|||
</html> |
@ -0,0 +1,94 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" > |
|||
<head> |
|||
<th:block th:include="include :: header('修改制工单材料')" /> |
|||
</head> |
|||
<body class="white-bg"> |
|||
<div class="wrapper wrapper-content animated fadeInRight ibox-content"> |
|||
<form class="form-horizontal m" id="form-workOrderDetail-edit" th:object="${workOrderDetail}"> |
|||
<input name="workOrderDetailId" th:field="*{workOrderDetailId}" type="hidden"> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label is-required">工单号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="workOrderNumber" th:field="*{workOrderNumber}" class="form-control" type="text" required> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label is-required">物料代码:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="materialCode" th:field="*{materialCode}" class="form-control" type="text" required> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">物料名称:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="materialName" th:field="*{materialName}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">规格型号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="specificationModel" th:field="*{specificationModel}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">单位:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="inventoryUnit" th:field="*{inventoryUnit}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">物料类别:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="materialType" class="form-control m-b" th:with="type=${@dict.getType('bom_material_category')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:field="*{materialType}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">用量:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="materialConsumption" th:field="*{materialConsumption}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">料号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="itemNumber" th:field="*{itemNumber}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">说明:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="description" th:field="*{description}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">备用一:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="standbyOne" th:field="*{standbyOne}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">备用二:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="standbyTwo" th:field="*{standbyTwo}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<script th:inline="javascript"> |
|||
var prefix = ctx + "manufacture:/workOrderDetail"; |
|||
$("#form-workOrderDetail-edit").validate({ |
|||
focusCleanup: true |
|||
}); |
|||
|
|||
function submitHandler() { |
|||
if ($.validate.form()) { |
|||
$.operate.save(prefix + "/edit", $('#form-workOrderDetail-edit').serialize()); |
|||
} |
|||
} |
|||
</script> |
|||
</body> |
|||
</html> |
@ -0,0 +1,137 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro"> |
|||
<head> |
|||
<th:block th:include="include :: header('制工单材料列表')" /> |
|||
</head> |
|||
<body class="gray-bg"> |
|||
<div class="container-div"> |
|||
<div class="row"> |
|||
<div class="col-sm-12 search-collapse"> |
|||
<form id="formId"> |
|||
<div class="select-list"> |
|||
<ul> |
|||
<li> |
|||
<label>工单号:</label> |
|||
<input type="text" name="workOrderNumber"/> |
|||
</li> |
|||
<li> |
|||
<label>物料代码:</label> |
|||
<input type="text" name="materialCode"/> |
|||
</li> |
|||
<li> |
|||
<label>物料名称:</label> |
|||
<input type="text" name="materialName"/> |
|||
</li> |
|||
<li> |
|||
<label>物料类别:</label> |
|||
<select name="materialType" th:with="type=${@dict.getType('bom_material_category')}"> |
|||
<option value="">所有</option> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</li> |
|||
<li> |
|||
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i> 搜索</a> |
|||
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i> 重置</a> |
|||
</li> |
|||
</ul> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
|
|||
<div class="btn-group-sm" id="toolbar" role="group"> |
|||
<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="manufacture::workOrderDetail:add"> |
|||
<i class="fa fa-plus"></i> 添加 |
|||
</a> |
|||
<a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="manufacture::workOrderDetail:edit"> |
|||
<i class="fa fa-edit"></i> 修改 |
|||
</a> |
|||
<a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="manufacture::workOrderDetail:remove"> |
|||
<i class="fa fa-remove"></i> 删除 |
|||
</a> |
|||
<a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="manufacture::workOrderDetail:export"> |
|||
<i class="fa fa-download"></i> 导出 |
|||
</a> |
|||
</div> |
|||
<div class="col-sm-12 select-table table-striped"> |
|||
<table id="bootstrap-table"></table> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<script th:inline="javascript"> |
|||
var editFlag = [[${@permission.hasPermi('manufacture::workOrderDetail:edit')}]]; |
|||
var removeFlag = [[${@permission.hasPermi('manufacture::workOrderDetail:remove')}]]; |
|||
var materialTypeDatas = [[${@dict.getType('bom_material_category')}]]; |
|||
var prefix = ctx + "manufacture:/workOrderDetail"; |
|||
|
|||
$(function() { |
|||
var options = { |
|||
url: prefix + "/list", |
|||
createUrl: prefix + "/add", |
|||
updateUrl: prefix + "/edit/{id}", |
|||
removeUrl: prefix + "/remove", |
|||
exportUrl: prefix + "/export", |
|||
modalName: "制工单材料", |
|||
columns: [{ |
|||
checkbox: true |
|||
}, |
|||
{ |
|||
field: 'workOrderDetailId', |
|||
title: '制工材料id', |
|||
visible: false |
|||
}, |
|||
{ |
|||
field: 'workOrderNumber', |
|||
title: '工单号' |
|||
}, |
|||
{ |
|||
field: 'materialCode', |
|||
title: '物料代码' |
|||
}, |
|||
{ |
|||
field: 'materialName', |
|||
title: '物料名称' |
|||
}, |
|||
{ |
|||
field: 'specificationModel', |
|||
title: '规格型号' |
|||
}, |
|||
{ |
|||
field: 'inventoryUnit', |
|||
title: '单位' |
|||
}, |
|||
{ |
|||
field: 'materialType', |
|||
title: '物料类别', |
|||
formatter: function(value, row, index) { |
|||
return $.table.selectDictLabel(materialTypeDatas, value); |
|||
} |
|||
}, |
|||
{ |
|||
field: 'materialConsumption', |
|||
title: '用量' |
|||
}, |
|||
{ |
|||
field: 'itemNumber', |
|||
title: '料号' |
|||
}, |
|||
{ |
|||
field: 'description', |
|||
title: '说明' |
|||
}, |
|||
{ |
|||
title: '操作', |
|||
align: 'center', |
|||
formatter: function(value, row, index) { |
|||
var actions = []; |
|||
actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.workOrderDetailId + '\')"><i class="fa fa-edit"></i>编辑</a> '); |
|||
actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.workOrderDetailId + '\')"><i class="fa fa-remove"></i>删除</a>'); |
|||
return actions.join(''); |
|||
} |
|||
}] |
|||
}; |
|||
$.table.init(options); |
|||
}); |
|||
</script> |
|||
</body> |
|||
</html> |
File diff suppressed because it is too large
File diff suppressed because it is too large
@ -0,0 +1,483 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro"> |
|||
<head> |
|||
<th:block th:include="include :: header('制工单列表')" /> |
|||
<th:block th:include="include :: datetimepicker-css"/> |
|||
<script type="text/javascript" th:src="@{/js/axios.min.js}"></script> |
|||
</head> |
|||
<body class="gray-bg"> |
|||
<div class="container-div"> |
|||
<div class="row"> |
|||
<div class="col-sm-12 search-collapse"> |
|||
<form id="formId"> |
|||
<div class="select-list"> |
|||
<ul> |
|||
<li> |
|||
<label>订单号码:</label> |
|||
<input type="text" name="salesOrderNumber"/> |
|||
</li> |
|||
<li> |
|||
<label>工单号:</label> |
|||
<input type="text" name="workOrderNumber"/> |
|||
</li> |
|||
<li> |
|||
<label>加工部门:</label> |
|||
<select name="processDept" th:with="type=${@dict.getType('sys_department_class')}"> |
|||
<option value="">所有</option> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</li> |
|||
<li> |
|||
<label>客户代码:</label> |
|||
<input type="text" name="enterpriseCode"/> |
|||
</li> |
|||
<li> |
|||
<label>成品代码:</label> |
|||
<input type="text" name="finishProductCode"/> |
|||
</li> |
|||
<li> |
|||
<label>成品名称:</label> |
|||
<input type="text" name="finishProductName"/> |
|||
</li> |
|||
<li class="select-time"> |
|||
<label>开单日期:</label> |
|||
<input type="text" class="time-input" id="startTime" placeholder="开始时间" name="params[beginBillingTime]"/> |
|||
<span>-</span> |
|||
<input type="text" class="time-input" id="endTime" placeholder="结束时间" name="params[endBillingTime]"/> |
|||
</li> |
|||
<li class="select-time"> |
|||
<label>交期:</label> |
|||
<input type="text" class="time-input" id="startTime" placeholder="开始时间" name="params[beginDeliveryTime]"/> |
|||
<span>-</span> |
|||
<input type="text" class="time-input" id="endTime" placeholder="结束时间" name="params[endDeliveryTime]"/> |
|||
</li> |
|||
<li> |
|||
<label>工单类型:</label> |
|||
<select name="workOrderClass" th:with="type=${@dict.getType('sys_workorderClass')}"> |
|||
<option value="">所有</option> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</li> |
|||
<li> |
|||
<label>结案否:</label> |
|||
<select name="closeCaseFlag" th:with="type=${@dict.getType('sys_whether')}"> |
|||
<option value="">所有</option> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</li> |
|||
<li> |
|||
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i> 搜索</a> |
|||
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i> 重置</a> |
|||
</li> |
|||
</ul> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
|
|||
<div class="btn-group-sm" id="toolbar" role="group"> |
|||
<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="manufacture:workOrderInfo:add"> |
|||
<i class="fa fa-plus"></i> 添加 |
|||
</a> |
|||
<a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="manufacture:workOrderInfo:edit"> |
|||
<i class="fa fa-edit"></i> 修改 |
|||
</a> |
|||
<a class="btn btn-danger multiple disabled" onclick="removeWorkOrder()" shiro:hasPermission="manufacture:workOrderInfo:remove"> |
|||
<i class="fa fa-remove"></i> 删除 |
|||
</a> |
|||
<a class="btn btn-warning" onclick="exportWorkOrder()" shiro:hasPermission="manufacture:workOrderInfo:export"> |
|||
<i class="fa fa-download"></i> 导出 |
|||
</a> |
|||
<a class="btn btn-primary" onclick="reviewCloseCase()" shiro:hasPermission="manufacture:workOrderInfo:closeCase"> |
|||
<i class="fa fa-hand-grab-o"></i> 结案 |
|||
</a> |
|||
</div> |
|||
<div class="col-sm-12 select-table table-striped"> |
|||
<table id="bootstrap-table" style="white-space: nowrap"></table> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
|
|||
<!--订单结案--> |
|||
<div class="modal fade" id="closeCaseModal"> |
|||
<div class="modal-dialog"> |
|||
<div class="modal-content message_align"> |
|||
<div class="modal-header"> |
|||
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span |
|||
aria-hidden="true">×</span></button> |
|||
<h4 class="modal-title">结案信息</h4> |
|||
</div> |
|||
<div class="modal-body" style="height: 180px"> |
|||
<form id="form-closeCase-edit"> |
|||
<div class="form-group" style="display: none"> |
|||
<label class="col-sm-3 control-label is-required">工单id:</label> |
|||
<div class="col-sm-8"> |
|||
<input id="workOrderId" name="workOrderId" class="form-control" type="text" required |
|||
readonly> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label ">结案否:</label> |
|||
<div class="col-sm-8"> |
|||
<select id="closeCaseFlag" name="closeCaseFlag" class="form-control" |
|||
th:with="type=${@dict.getType('sys_whether')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" |
|||
th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label ">结案时间:</label> |
|||
<div class="col-sm-8"> |
|||
<div class="input-group date"> |
|||
<input id="closeCaseTime" name="closeCaseTime" class="form-control" |
|||
placeholder="yyyy-mm-dd hh:ii:ss" type="text"> |
|||
<span class="input-group-addon"><i class="fa fa-calendar"></i></span> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label ">结案人:</label> |
|||
<div class="col-sm-8"> |
|||
<!-- <input id="auditName" name="auditName" class="form-control" type="text" th:value="${@permission.getPrincipalProperty('userName')}">--> |
|||
<input id="closeCasePerson" name="closeCasePerson" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
<div class="modal-footer"> |
|||
<button type="button" class="btn btn-default" data-dismiss="modal">取消</button> |
|||
<button type="button" onclick="closeCaseSubmit()" class="btn btn-success" data-dismiss="modal">确定</button> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<th:block th:include="include :: datetimepicker-js"/> |
|||
<script th:inline="javascript"> |
|||
var editFlag = [[${@permission.hasPermi('manufacture:workOrderInfo:edit')}]]; |
|||
var removeFlag = [[${@permission.hasPermi('manufacture:workOrderInfo:remove')}]]; |
|||
var processDeptDatas = [[${@dict.getType('sys_department_class')}]]; |
|||
var workOrderClassDatas = [[${@dict.getType('sys_workorderClass')}]]; |
|||
var closeCaseFlagDatas = [[${@dict.getType('sys_whether')}]]; |
|||
var prefix = ctx + "manufacture/workOrderInfo"; |
|||
|
|||
$(function() { |
|||
var options = { |
|||
url: prefix + "/list", |
|||
createUrl: prefix + "/add", |
|||
updateUrl: prefix + "/edit/{id}", |
|||
removeUrl: prefix + "/remove", |
|||
exportUrl: prefix + "/export", |
|||
clickToSelect: true, |
|||
modalName: "制工单", |
|||
|
|||
columns: [{ |
|||
checkbox: true |
|||
|
|||
}, |
|||
{ |
|||
field: 'workOrderId', |
|||
title: '制工单id', |
|||
visible: false |
|||
}, |
|||
{ |
|||
field: 'closeCaseFlag', |
|||
title: '结案否', |
|||
formatter: function(value, row, index) { |
|||
// return $.table.selectDictLabel(closeCaseNoDatas, value); |
|||
var actions = []; |
|||
if ($.table.selectDictLabel(closeCaseFlagDatas, value) == "<span class=''>是</span>") { |
|||
actions.push('<a class="btn btn-primary btn-xs disabled">已结案</a> '); |
|||
} else { |
|||
actions.push('<a class="btn btn-danger btn-xs disabled">未结案</a> '); |
|||
} |
|||
return actions.join(''); |
|||
} |
|||
}, |
|||
|
|||
{ |
|||
field: 'salesOrderNumber', |
|||
title: '订单号码' |
|||
}, |
|||
{ |
|||
field: 'workOrderNumber', |
|||
title: '工单号' |
|||
}, |
|||
{ |
|||
field: 'line', |
|||
title: 'Line#' |
|||
}, |
|||
{ |
|||
field: 'processDept', |
|||
title: '加工部门', |
|||
formatter: function(value, row, index) { |
|||
return $.table.selectDictLabel(processDeptDatas, value); |
|||
} |
|||
}, |
|||
{ |
|||
field: 'enterpriseCode', |
|||
title: '客户代码' |
|||
}, |
|||
{ |
|||
field: 'enterpriseName', |
|||
title: '客户名称' |
|||
}, |
|||
{ |
|||
field: 'finishProductCode', |
|||
title: '成品代码' |
|||
}, |
|||
{ |
|||
field: 'finishProductName', |
|||
title: '成品名称' |
|||
}, |
|||
{ |
|||
field: 'specificationModel', |
|||
title: '规格型号' |
|||
}, |
|||
{ |
|||
field: 'typeMachine', |
|||
title: '机种' |
|||
}, |
|||
{ |
|||
field: 'inventoryUnit', |
|||
title: '单位' |
|||
}, |
|||
{ |
|||
field: 'orderQuantity', |
|||
title: '订单数量' |
|||
}, |
|||
{ |
|||
field: 'deliveryOrderQuantity', |
|||
title: '投单数量' |
|||
}, |
|||
{ |
|||
field: 'beginOrderQuantity', |
|||
title: '已开工单数' |
|||
}, |
|||
{ |
|||
field: 'notBeginOrderQuantity', |
|||
title: '未开工单数' |
|||
}, |
|||
{ |
|||
field: 'customerFactory', |
|||
title: '客户厂区' |
|||
}, |
|||
{ |
|||
field: 'beginDate', |
|||
title: '开工日期' |
|||
}, |
|||
{ |
|||
field: 'endDate', |
|||
title: '完工日期' |
|||
}, |
|||
{ |
|||
field: 'billingTime', |
|||
title: '开单日期' |
|||
}, |
|||
{ |
|||
field: 'deliveryTime', |
|||
title: '交期' |
|||
}, |
|||
{ |
|||
field: 'versionNumber', |
|||
title: '版本号' |
|||
}, |
|||
{ |
|||
field: 'salesExplain', |
|||
title: '备注说明' |
|||
}, |
|||
{ |
|||
field: 'workOrderClass', |
|||
title: '工单类型', |
|||
formatter: function(value, row, index) { |
|||
return $.table.selectDictLabel(workOrderClassDatas, value); |
|||
} |
|||
}, |
|||
{ |
|||
field: 'closeCasePerson', |
|||
title: '结案人' |
|||
}, |
|||
{ |
|||
field: 'closeCaseTime', |
|||
title: '结案时间' |
|||
}, |
|||
{ |
|||
field: 'firstAddTime', |
|||
title: '录入时间', |
|||
formatter: function (value, row, index) { |
|||
if (value == null) { |
|||
return " "; |
|||
} else { |
|||
return value; |
|||
} |
|||
} |
|||
}, |
|||
{ |
|||
field: 'updateInfoTime', |
|||
title: '上次修改时间', |
|||
formatter: function (value, row, index) { |
|||
if (value == null) { |
|||
return " "; |
|||
} else { |
|||
var vArr = value.split(',') |
|||
return vArr[0]; |
|||
} |
|||
} |
|||
}] |
|||
// { |
|||
// title: '操作', |
|||
// align: 'center', |
|||
// formatter: function(value, row, index) { |
|||
// var actions = []; |
|||
// actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.workOrderId + '\')"><i class="fa fa-edit"></i>编辑</a> '); |
|||
// actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.workOrderId + '\')"><i class="fa fa-remove"></i>删除</a>'); |
|||
// return actions.join(''); |
|||
// } |
|||
// } |
|||
}; |
|||
$.table.init(options); |
|||
}); |
|||
|
|||
$("input[name='closeCaseTime']").datetimepicker({ |
|||
format: 'yyyy-mm-dd hh:ii:ss', |
|||
autoclose: true, |
|||
minView: 0, |
|||
minuteStep: 1 |
|||
}); |
|||
|
|||
//删除 |
|||
function removeWorkOrder() { |
|||
var orderData = $("#bootstrap-table").bootstrapTable("getSelections"); |
|||
if (orderData.length === 1) { |
|||
// console.log(orderData) |
|||
$.ajax({ |
|||
url: ctx + 'manufacture/workOrderDetail/list', |
|||
type: 'post', |
|||
data: { |
|||
workOrderNumber: orderData[0].workOrderNumber |
|||
}, |
|||
success: function (res) { |
|||
console.log(res) |
|||
if (res.rows.length > 0) { |
|||
$.modal.confirm("该订单内含有"+ res.rows.length+ "条物料数据将一并删除,是否删除?", function () { |
|||
$.ajax({ |
|||
url: prefix + '/removeSelectedOrder', |
|||
type: 'post', |
|||
data: { |
|||
orderData: JSON.stringify(orderData) |
|||
}, |
|||
success: function (res) { |
|||
// console.log(res) |
|||
$("#bootstrap-table").bootstrapTable("refresh"); |
|||
$.modal.msgSuccess("删除成功!") |
|||
}, |
|||
error: function (res) { |
|||
$.modal.msgError(res.error()) |
|||
} |
|||
}) |
|||
}) |
|||
} else if (res.rows.length === 0) { |
|||
$.modal.confirm("确认删除该订单吗?", function () { |
|||
$.ajax({ |
|||
url: prefix + '/remove', |
|||
type: 'post', |
|||
data: { |
|||
ids : orderData[0].workOrderId |
|||
}, |
|||
success: function (res) { |
|||
// console.log(res) |
|||
$("#bootstrap-table").bootstrapTable("refresh"); |
|||
$.modal.msgSuccess("删除成功!") |
|||
}, |
|||
error: function (res) { |
|||
$.modal.msgError(res.error()) |
|||
} |
|||
}) |
|||
}) |
|||
} |
|||
} |
|||
}) |
|||
|
|||
} else { |
|||
$.modal.msgWarning("请选择一条数据") |
|||
} |
|||
} |
|||
|
|||
//导出 |
|||
function exportWorkOrder() { |
|||
var rows = $.common.isEmpty(table.options.uniqueId) ? $.table.selectFirstColumns() : $.table.selectColumns(table.options.uniqueId); |
|||
var data = $("#bootstrap-table").bootstrapTable("getSelections") |
|||
|
|||
if (rows.length !== 1) { |
|||
$.modal.alert("请选择一条记录"); |
|||
return; |
|||
} else { |
|||
// rows为选中行的id |
|||
// console.log(rows); |
|||
// console.log(data); |
|||
// console.log(data[0].orderNumber) |
|||
$.modal.confirm("是否确认要导出本条制工单?", function (){ |
|||
axios({ |
|||
url: prefix + '/exportSelected/'+data[0].workOrderId, |
|||
method: 'POST', |
|||
responseType: 'blob' |
|||
}).then(response => { |
|||
// console.log(response) |
|||
const URL = window.URL.createObjectURL(response.data) |
|||
// 创建隐藏<a>标签进行下载 |
|||
const tempLink = document.createElement('a') |
|||
tempLink.style.display = 'none' |
|||
tempLink.href = URL |
|||
let time = new Date().toLocaleString() |
|||
tempLink.setAttribute('download', time + "制工单.xlsx") |
|||
if (typeof tempLink.download === 'undefined') { |
|||
tempLink.setAttribute('target', '_blank') |
|||
} |
|||
document.body.appendChild(tempLink) |
|||
tempLink.click() |
|||
document.body.removeChild(tempLink)// 移除dom元素 |
|||
window.URL.revokeObjectURL(URL)//释放内存 |
|||
}) |
|||
}); |
|||
|
|||
|
|||
} |
|||
} |
|||
|
|||
// 订单结案 |
|||
function reviewCloseCase(){ |
|||
let data = $("#bootstrap-table").bootstrapTable("getSelections"); |
|||
let userName = [[${@permission.getPrincipalProperty('userName')}]]; |
|||
if (data.length ===1) { |
|||
$("#workOrderId").val(data[0].workOrderId) |
|||
$("#closeCaseFlag").val(data[0].closeCaseFlag).trigger("change") |
|||
$("#closeCasePerson").val(userName) |
|||
$("#closeCaseTime").datetimepicker("setDate", new Date()); |
|||
$("#closeCaseModal").modal("show"); |
|||
}else { |
|||
$.modal.alert("请选择一条数据"); |
|||
} |
|||
|
|||
} |
|||
|
|||
// 订单结案 |
|||
function closeCaseSubmit(){ |
|||
$.ajax({ |
|||
url: prefix + "/edit", |
|||
type: "post", |
|||
resultType: "json", |
|||
data: $('#form-closeCase-edit').serialize(), |
|||
success: function (resp) { |
|||
// console.log(resp) |
|||
$("#closeCaseModal").modal("hide"); |
|||
$("#bootstrap-table").bootstrapTable('refresh'); |
|||
$.modal.msgSuccess("操作成功!") |
|||
}, |
|||
error: function () { |
|||
$.modal.msgError("出错了!"); |
|||
} |
|||
}); |
|||
} |
|||
</script> |
|||
</body> |
|||
</html> |
@ -0,0 +1,115 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" > |
|||
<head> |
|||
<th:block th:include="include :: header('新增入库检验通知物料')" /> |
|||
</head> |
|||
<body class="white-bg"> |
|||
<div class="wrapper wrapper-content animated fadeInRight ibox-content"> |
|||
<form class="form-horizontal m" id="form-warehousingInspectionDetail-add"> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">入通知单号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="inNoticeNumber" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">物料代码:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="materialCode" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">物料名称:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="materialName" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">规格型号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="specificationModel" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">物料类别:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="materialType" class="form-control m-b" th:with="type=${@dict.getType('bom_material_category')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">单位:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="purchasingUnit" class="form-control m-b" th:with="type=${@dict.getType('sys_unit_class')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">送货数量:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="materialQuantity" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">合格数量:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="qualifiedQuantity" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">不合格数量:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="unqualifiedQuantity" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">合格率:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="qualificationRate" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">说明:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="purchaseExplain" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">判定结果:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="judgmentResults" class="form-control m-b" th:with="type=${@dict.getType('judgment_results')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">收货批号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="receiptBatchNumber" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">厂商批号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="manufacturerBatchNumber" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<script th:inline="javascript"> |
|||
var prefix = ctx + "storehouse/warehousingInspectionDetail" |
|||
$("#form-warehousingInspectionDetail-add").validate({ |
|||
focusCleanup: true |
|||
}); |
|||
|
|||
function submitHandler() { |
|||
if ($.validate.form()) { |
|||
$.operate.save(prefix + "/add", $('#form-warehousingInspectionDetail-add').serialize()); |
|||
} |
|||
} |
|||
</script> |
|||
</body> |
|||
</html> |
@ -0,0 +1,116 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" > |
|||
<head> |
|||
<th:block th:include="include :: header('修改入库检验通知物料')" /> |
|||
</head> |
|||
<body class="white-bg"> |
|||
<div class="wrapper wrapper-content animated fadeInRight ibox-content"> |
|||
<form class="form-horizontal m" id="form-warehousingInspectionDetail-edit" th:object="${warehousingInspectionDetail}"> |
|||
<input name="warehousingInspectionDetailId" th:field="*{warehousingInspectionDetailId}" type="hidden"> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">入通知单号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="inNoticeNumber" th:field="*{inNoticeNumber}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">物料代码:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="materialCode" th:field="*{materialCode}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">物料名称:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="materialName" th:field="*{materialName}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">规格型号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="specificationModel" th:field="*{specificationModel}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">物料类别:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="materialType" class="form-control m-b" th:with="type=${@dict.getType('bom_material_category')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:field="*{materialType}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">单位:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="purchasingUnit" class="form-control m-b" th:with="type=${@dict.getType('sys_unit_class')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:field="*{purchasingUnit}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">送货数量:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="materialQuantity" th:field="*{materialQuantity}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">合格数量:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="qualifiedQuantity" th:field="*{qualifiedQuantity}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">不合格数量:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="unqualifiedQuantity" th:field="*{unqualifiedQuantity}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">合格率:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="qualificationRate" th:field="*{qualificationRate}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">说明:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="purchaseExplain" th:field="*{purchaseExplain}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">判定结果:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="judgmentResults" class="form-control m-b" th:with="type=${@dict.getType('judgment_results')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:field="*{judgmentResults}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">收货批号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="receiptBatchNumber" th:field="*{receiptBatchNumber}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">厂商批号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="manufacturerBatchNumber" th:field="*{manufacturerBatchNumber}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<script th:inline="javascript"> |
|||
var prefix = ctx + "storehouse/warehousingInspectionDetail"; |
|||
$("#form-warehousingInspectionDetail-edit").validate({ |
|||
focusCleanup: true |
|||
}); |
|||
|
|||
function submitHandler() { |
|||
if ($.validate.form()) { |
|||
$.operate.save(prefix + "/edit", $('#form-warehousingInspectionDetail-edit').serialize()); |
|||
} |
|||
} |
|||
</script> |
|||
</body> |
|||
</html> |
@ -0,0 +1,172 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro"> |
|||
<head> |
|||
<th:block th:include="include :: header('入库检验通知物料列表')" /> |
|||
</head> |
|||
<body class="gray-bg"> |
|||
<div class="container-div"> |
|||
<div class="row"> |
|||
<div class="col-sm-12 search-collapse"> |
|||
<form id="formId"> |
|||
<div class="select-list"> |
|||
<ul> |
|||
<li> |
|||
<label>入通知单号:</label> |
|||
<input type="text" name="inNoticeNumber"/> |
|||
</li> |
|||
<li> |
|||
<label>物料代码:</label> |
|||
<input type="text" name="materialCode"/> |
|||
</li> |
|||
<li> |
|||
<label>物料名称:</label> |
|||
<input type="text" name="materialName"/> |
|||
</li> |
|||
<li> |
|||
<label>物料类别:</label> |
|||
<select name="materialType" th:with="type=${@dict.getType('bom_material_category')}"> |
|||
<option value="">所有</option> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</li> |
|||
<li> |
|||
<label>判定结果:</label> |
|||
<select name="judgmentResults" th:with="type=${@dict.getType('judgment_results')}"> |
|||
<option value="">所有</option> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</li> |
|||
<li> |
|||
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i> 搜索</a> |
|||
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i> 重置</a> |
|||
</li> |
|||
</ul> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
|
|||
<div class="btn-group-sm" id="toolbar" role="group"> |
|||
<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="storehouse:warehousingInspectionDetail:add"> |
|||
<i class="fa fa-plus"></i> 添加 |
|||
</a> |
|||
<a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="storehouse:warehousingInspectionDetail:edit"> |
|||
<i class="fa fa-edit"></i> 修改 |
|||
</a> |
|||
<a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="storehouse:warehousingInspectionDetail:remove"> |
|||
<i class="fa fa-remove"></i> 删除 |
|||
</a> |
|||
<a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="storehouse:warehousingInspectionDetail:export"> |
|||
<i class="fa fa-download"></i> 导出 |
|||
</a> |
|||
</div> |
|||
<div class="col-sm-12 select-table table-striped"> |
|||
<table id="bootstrap-table"></table> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<script th:inline="javascript"> |
|||
var editFlag = [[${@permission.hasPermi('storehouse:warehousingInspectionDetail:edit')}]]; |
|||
var removeFlag = [[${@permission.hasPermi('storehouse:warehousingInspectionDetail:remove')}]]; |
|||
var materialTypeDatas = [[${@dict.getType('bom_material_category')}]]; |
|||
var purchasingUnitDatas = [[${@dict.getType('sys_unit_class')}]]; |
|||
var judgmentResultsDatas = [[${@dict.getType('judgment_results')}]]; |
|||
var prefix = ctx + "storehouse/warehousingInspectionDetail"; |
|||
|
|||
$(function() { |
|||
var options = { |
|||
url: prefix + "/list", |
|||
createUrl: prefix + "/add", |
|||
updateUrl: prefix + "/edit/{id}", |
|||
removeUrl: prefix + "/remove", |
|||
exportUrl: prefix + "/export", |
|||
modalName: "入库检验通知物料", |
|||
columns: [{ |
|||
checkbox: true |
|||
}, |
|||
{ |
|||
field: 'warehousingInspectionDetailId', |
|||
title: '入库检验通知物料id', |
|||
visible: false |
|||
}, |
|||
{ |
|||
field: 'inNoticeNumber', |
|||
title: '入通知单号' |
|||
}, |
|||
{ |
|||
field: 'materialCode', |
|||
title: '物料代码' |
|||
}, |
|||
{ |
|||
field: 'materialName', |
|||
title: '物料名称' |
|||
}, |
|||
{ |
|||
field: 'specificationModel', |
|||
title: '规格型号' |
|||
}, |
|||
{ |
|||
field: 'materialType', |
|||
title: '物料类别', |
|||
formatter: function(value, row, index) { |
|||
return $.table.selectDictLabel(materialTypeDatas, value); |
|||
} |
|||
}, |
|||
{ |
|||
field: 'purchasingUnit', |
|||
title: '单位', |
|||
formatter: function(value, row, index) { |
|||
return $.table.selectDictLabel(purchasingUnitDatas, value); |
|||
} |
|||
}, |
|||
{ |
|||
field: 'materialQuantity', |
|||
title: '送货数量' |
|||
}, |
|||
{ |
|||
field: 'qualifiedQuantity', |
|||
title: '合格数量' |
|||
}, |
|||
{ |
|||
field: 'unqualifiedQuantity', |
|||
title: '不合格数量' |
|||
}, |
|||
{ |
|||
field: 'qualificationRate', |
|||
title: '合格率' |
|||
}, |
|||
{ |
|||
field: 'purchaseExplain', |
|||
title: '说明' |
|||
}, |
|||
{ |
|||
field: 'judgmentResults', |
|||
title: '判定结果', |
|||
formatter: function(value, row, index) { |
|||
return $.table.selectDictLabel(judgmentResultsDatas, value); |
|||
} |
|||
}, |
|||
{ |
|||
field: 'receiptBatchNumber', |
|||
title: '收货批号' |
|||
}, |
|||
{ |
|||
field: 'manufacturerBatchNumber', |
|||
title: '厂商批号' |
|||
}, |
|||
{ |
|||
title: '操作', |
|||
align: 'center', |
|||
formatter: function(value, row, index) { |
|||
var actions = []; |
|||
actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.warehousingInspectionDetailId + '\')"><i class="fa fa-edit"></i>编辑</a> '); |
|||
actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.warehousingInspectionDetailId + '\')"><i class="fa fa-remove"></i>删除</a>'); |
|||
return actions.join(''); |
|||
} |
|||
}] |
|||
}; |
|||
$.table.init(options); |
|||
}); |
|||
</script> |
|||
</body> |
|||
</html> |
@ -0,0 +1,160 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" > |
|||
<head> |
|||
<th:block th:include="include :: header('新增入库检验通知')" /> |
|||
<th:block th:include="include :: datetimepicker-css" /> |
|||
<th:block th:include="include :: bootstrap-fileinput-css"/> |
|||
<link th:href="@{/ajax/libs/select2/select2.css}" rel="stylesheet"> |
|||
<link th:href="@{/ajax/libs/select2/select2-bootstrap.css}" rel="stylesheet"> |
|||
<th:block th:include="include :: bootstrap-editable-css"/> |
|||
</head> |
|||
<body class="white-bg"> |
|||
<div class="wrapper wrapper-content animated fadeInRight ibox-content"> |
|||
<form class="form-horizontal m" id="form-warehousingInspectionNotice-add"> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label is-required">入通知单号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="inNoticeNumber" class="form-control" type="text" required> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label is-required">订购单号:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="purchaseOrderNumber" class="form-control m-b" required> |
|||
<option value="">所有</option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">供应商代码:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="supplierCode" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">供应商名称:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="supplierName" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">联系人:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="customerContact" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">仓库编号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="stockNumber" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">仓库名称:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="stockName" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">仓库管理员:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="stockManager" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">内外销:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="exportSales" class="form-control m-b" th:with="type=${@dict.getType('sys_export_sales')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">入库类别:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="warehousingCategory" class="form-control m-b" th:with="type=${@dict.getType('warehousing_category')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">交检日期:</label> |
|||
<div class="col-sm-8"> |
|||
<div class="input-group date"> |
|||
<input name="inspectionDate" class="form-control" placeholder="yyyy-MM-dd" type="text"> |
|||
<span class="input-group-addon"><i class="fa fa-calendar"></i></span> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">入库日期:</label> |
|||
<div class="col-sm-8"> |
|||
<div class="input-group date"> |
|||
<input name="warehousingDate" class="form-control" placeholder="yyyy-MM-dd" type="text"> |
|||
<span class="input-group-addon"><i class="fa fa-calendar"></i></span> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">备注:</label> |
|||
<div class="col-sm-8"> |
|||
<textarea name="remarks" class="form-control"></textarea> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">检验报告:</label> |
|||
<div class="col-sm-8"> |
|||
<input type="hidden" name="inspectionReport"> |
|||
<div class="file-loading"> |
|||
<input class="form-control file-upload" id="inspectionReport" name="file" type="file"> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
|
|||
<th:block th:include="include :: footer" /> |
|||
<th:block th:include="include :: datetimepicker-js" /> |
|||
<th:block th:include="include :: bootstrap-fileinput-js"/> |
|||
<th:block th:include="include :: select2-js"/> |
|||
<th:block th:include="include :: bootstrap-table-editable-js"/> |
|||
<script th:inline="javascript"> |
|||
var prefix = ctx + "storehouse/warehousingInspectionNotice" |
|||
$("#form-warehousingInspectionNotice-add").validate({ |
|||
focusCleanup: true |
|||
}); |
|||
|
|||
function submitHandler() { |
|||
if ($.validate.form()) { |
|||
$.operate.save(prefix + "/add", $('#form-warehousingInspectionNotice-add').serialize()); |
|||
} |
|||
} |
|||
|
|||
$("input[name='inspectionDate']").datetimepicker({ |
|||
format: "yyyy-mm-dd hh:ii:ss", |
|||
minView: "month", |
|||
autoclose: true |
|||
}); |
|||
$("input[name='inspectionDate']").datetimepicker("setDate", new Date()); |
|||
|
|||
$("input[name='warehousingDate']").datetimepicker({ |
|||
format: "yyyy-mm-dd", |
|||
minView: "month", |
|||
autoclose: true |
|||
}); |
|||
$("input[name='warehousingDate']").datetimepicker("setDate", new Date()); |
|||
|
|||
$(".file-upload").fileinput({ |
|||
uploadUrl: ctx + 'common/upload', |
|||
maxFileCount: 1, |
|||
autoReplace: true |
|||
}).on('fileuploaded', function (event, data, previewId, index) { |
|||
$("input[name='" + event.currentTarget.id + "']").val(data.response.url) |
|||
}).on('fileremoved', function (event, id, index) { |
|||
$("input[name='" + event.currentTarget.id + "']").val('') |
|||
}) |
|||
|
|||
|
|||
</script> |
|||
</body> |
|||
</html> |
@ -0,0 +1,163 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" > |
|||
<head> |
|||
<th:block th:include="include :: header('修改入库检验通知')" /> |
|||
<th:block th:include="include :: datetimepicker-css" /> |
|||
<th:block th:include="include :: bootstrap-fileinput-css"/> |
|||
<link th:href="@{/ajax/libs/select2/select2.css}" rel="stylesheet"> |
|||
<link th:href="@{/ajax/libs/select2/select2-bootstrap.css}" rel="stylesheet"> |
|||
<th:block th:include="include :: bootstrap-editable-css"/> |
|||
</head> |
|||
<body class="white-bg"> |
|||
<div class="wrapper wrapper-content animated fadeInRight ibox-content"> |
|||
<form class="form-horizontal m" id="form-warehousingInspectionNotice-edit" th:object="${warehousingInspectionNotice}"> |
|||
<input name="warehousingInspectionNoticeId" th:field="*{warehousingInspectionNoticeId}" type="hidden"> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label is-required">入通知单号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="inNoticeNumber" th:field="*{inNoticeNumber}" class="form-control" type="text" required> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">订购单号:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="purchaseOrderNumber" class="form-control m-b"> |
|||
<option value="">所有</option> |
|||
</select> |
|||
<span class="help-block m-b-none"><i class="fa fa-info-circle"></i> 代码生成请选择字典属性</span> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">供应商代码:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="supplierCode" th:field="*{supplierCode}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">供应商名称:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="supplierName" th:field="*{supplierName}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">联系人:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="customerContact" th:field="*{customerContact}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">仓库编号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="stockNumber" th:field="*{stockNumber}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">仓库名称:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="stockName" th:field="*{stockName}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">仓库管理员:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="stockManager" th:field="*{stockManager}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">内外销:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="exportSales" class="form-control m-b" th:with="type=${@dict.getType('sys_export_sales')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:field="*{exportSales}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">入库类别:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="warehousingCategory" class="form-control m-b" th:with="type=${@dict.getType('warehousing_category')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:field="*{warehousingCategory}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">交检日期:</label> |
|||
<div class="col-sm-8"> |
|||
<div class="input-group date"> |
|||
<input name="inspectionDate" th:value="${#dates.format(warehousingInspectionNotice.inspectionDate, 'yyyy-MM-dd')}" class="form-control" placeholder="yyyy-MM-dd" type="text"> |
|||
<span class="input-group-addon"><i class="fa fa-calendar"></i></span> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">入库日期:</label> |
|||
<div class="col-sm-8"> |
|||
<div class="input-group date"> |
|||
<input name="warehousingDate" th:value="${#dates.format(warehousingInspectionNotice.warehousingDate, 'yyyy-MM-dd')}" class="form-control" placeholder="yyyy-MM-dd" type="text"> |
|||
<span class="input-group-addon"><i class="fa fa-calendar"></i></span> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">备注:</label> |
|||
<div class="col-sm-8"> |
|||
<textarea name="remarks" class="form-control">[[*{remarks}]]</textarea> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">检验报告:</label> |
|||
<div class="col-sm-8"> |
|||
<input type="hidden" name="inspectionReport" th:field="*{inspectionReport}"> |
|||
<div class="file-loading"> |
|||
<input class="form-control file-upload" id="inspectionReport" name="file" type="file"> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<th:block th:include="include :: datetimepicker-js" /> |
|||
<th:block th:include="include :: bootstrap-fileinput-js"/> |
|||
<th:block th:include="include :: select2-js"/> |
|||
<th:block th:include="include :: bootstrap-table-editable-js"/> |
|||
<script th:inline="javascript"> |
|||
var prefix = ctx + "storehouse/warehousingInspectionNotice"; |
|||
$("#form-warehousingInspectionNotice-edit").validate({ |
|||
focusCleanup: true |
|||
}); |
|||
|
|||
function submitHandler() { |
|||
if ($.validate.form()) { |
|||
$.operate.save(prefix + "/edit", $('#form-warehousingInspectionNotice-edit').serialize()); |
|||
} |
|||
} |
|||
|
|||
$("input[name='inspectionDate']").datetimepicker({ |
|||
format: "yyyy-mm-dd", |
|||
minView: "month", |
|||
autoclose: true |
|||
}); |
|||
|
|||
$("input[name='warehousingDate']").datetimepicker({ |
|||
format: "yyyy-mm-dd", |
|||
minView: "month", |
|||
autoclose: true |
|||
}); |
|||
|
|||
$(".file-upload").each(function (i) { |
|||
var val = $("input[name='" + this.id + "']").val() |
|||
$(this).fileinput({ |
|||
'uploadUrl': ctx + 'common/upload', |
|||
initialPreviewAsData: true, |
|||
initialPreview: [val], |
|||
maxFileCount: 1, |
|||
autoReplace: true |
|||
}).on('fileuploaded', function (event, data, previewId, index) { |
|||
$("input[name='" + event.currentTarget.id + "']").val(data.response.url) |
|||
}).on('fileremoved', function (event, id, index) { |
|||
$("input[name='" + event.currentTarget.id + "']").val('') |
|||
}) |
|||
$(this).fileinput('_initFileActions'); |
|||
}); |
|||
</script> |
|||
</body> |
|||
</html> |
@ -0,0 +1,182 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro"> |
|||
<head> |
|||
<th:block th:include="include :: header('入库检验通知列表')" /> |
|||
</head> |
|||
<body class="gray-bg"> |
|||
<div class="container-div"> |
|||
<div class="row"> |
|||
<div class="col-sm-12 search-collapse"> |
|||
<form id="formId"> |
|||
<div class="select-list"> |
|||
<ul> |
|||
<li> |
|||
<label>入通知单号:</label> |
|||
<input type="text" name="inNoticeNumber"/> |
|||
</li> |
|||
<li> |
|||
<label>订购单号:</label> |
|||
<select name="purchaseOrderNumber"> |
|||
<option value="">所有</option> |
|||
<option value="-1">代码生成请选择字典属性</option> |
|||
</select> |
|||
</li> |
|||
<li> |
|||
<label>供应商代码:</label> |
|||
<input type="text" name="supplierCode"/> |
|||
</li> |
|||
<li> |
|||
<label>供应商名称:</label> |
|||
<input type="text" name="supplierName"/> |
|||
</li> |
|||
<li> |
|||
<label>入库类别:</label> |
|||
<select name="warehousingCategory" th:with="type=${@dict.getType('warehousing_category')}"> |
|||
<option value="">所有</option> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</li> |
|||
<li class="select-time"> |
|||
<label>入库日期:</label> |
|||
<input type="text" class="time-input" id="startTime" placeholder="开始时间" name="params[beginWarehousingDate]"/> |
|||
<span>-</span> |
|||
<input type="text" class="time-input" id="endTime" placeholder="结束时间" name="params[endWarehousingDate]"/> |
|||
</li> |
|||
<li> |
|||
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i> 搜索</a> |
|||
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i> 重置</a> |
|||
</li> |
|||
</ul> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
|
|||
<div class="btn-group-sm" id="toolbar" role="group"> |
|||
<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="storehouse:warehousingInspectionNotice:add"> |
|||
<i class="fa fa-plus"></i> 添加 |
|||
</a> |
|||
<a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="storehouse:warehousingInspectionNotice:edit"> |
|||
<i class="fa fa-edit"></i> 修改 |
|||
</a> |
|||
<a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="storehouse:warehousingInspectionNotice:remove"> |
|||
<i class="fa fa-remove"></i> 删除 |
|||
</a> |
|||
<a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="storehouse:warehousingInspectionNotice:export"> |
|||
<i class="fa fa-download"></i> 导出 |
|||
</a> |
|||
</div> |
|||
<div class="col-sm-12 select-table table-striped"> |
|||
<table id="bootstrap-table"></table> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<script th:inline="javascript"> |
|||
var editFlag = [[${@permission.hasPermi('storehouse:warehousingInspectionNotice:edit')}]]; |
|||
var removeFlag = [[${@permission.hasPermi('storehouse:warehousingInspectionNotice:remove')}]]; |
|||
var exportSalesDatas = [[${@dict.getType('sys_export_sales')}]]; |
|||
var warehousingCategoryDatas = [[${@dict.getType('warehousing_category')}]]; |
|||
var prefix = ctx + "storehouse/warehousingInspectionNotice"; |
|||
|
|||
$(function() { |
|||
var options = { |
|||
url: prefix + "/list", |
|||
createUrl: prefix + "/add", |
|||
updateUrl: prefix + "/edit/{id}", |
|||
removeUrl: prefix + "/remove", |
|||
exportUrl: prefix + "/export", |
|||
modalName: "入库检验通知", |
|||
columns: [{ |
|||
checkbox: true |
|||
}, |
|||
{ |
|||
field: 'warehousingInspectionNoticeId', |
|||
title: '入库检验通知id', |
|||
visible: false |
|||
}, |
|||
{ |
|||
field: 'inNoticeNumber', |
|||
title: '入通知单号' |
|||
}, |
|||
{ |
|||
field: 'purchaseOrderNumber', |
|||
title: '订购单号' |
|||
}, |
|||
{ |
|||
field: 'supplierCode', |
|||
title: '供应商代码' |
|||
}, |
|||
{ |
|||
field: 'supplierName', |
|||
title: '供应商名称' |
|||
}, |
|||
{ |
|||
field: 'customerContact', |
|||
title: '联系人' |
|||
}, |
|||
{ |
|||
field: 'stockNumber', |
|||
title: '仓库编号' |
|||
}, |
|||
{ |
|||
field: 'stockName', |
|||
title: '仓库名称' |
|||
}, |
|||
{ |
|||
field: 'stockManager', |
|||
title: '仓库管理员' |
|||
}, |
|||
{ |
|||
field: 'exportSales', |
|||
title: '内外销', |
|||
formatter: function(value, row, index) { |
|||
return $.table.selectDictLabel(exportSalesDatas, value); |
|||
} |
|||
}, |
|||
{ |
|||
field: 'warehousingCategory', |
|||
title: '入库类别', |
|||
formatter: function(value, row, index) { |
|||
return $.table.selectDictLabel(warehousingCategoryDatas, value); |
|||
} |
|||
}, |
|||
{ |
|||
field: 'inspectionDate', |
|||
title: '交检日期' |
|||
}, |
|||
{ |
|||
field: 'warehousingDate', |
|||
title: '入库日期' |
|||
}, |
|||
{ |
|||
field: 'remarks', |
|||
title: '备注' |
|||
}, |
|||
{ |
|||
field: 'inspectionReport', |
|||
title: '检验报告' |
|||
}, |
|||
{ |
|||
field: 'firstAddTime', |
|||
title: '录入时间' |
|||
}, |
|||
{ |
|||
field: 'updateInfoTime', |
|||
title: '修改时间' |
|||
}, |
|||
{ |
|||
title: '操作', |
|||
align: 'center', |
|||
formatter: function(value, row, index) { |
|||
var actions = []; |
|||
actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.warehousingInspectionNoticeId + '\')"><i class="fa fa-edit"></i>编辑</a> '); |
|||
actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.warehousingInspectionNoticeId + '\')"><i class="fa fa-remove"></i>删除</a>'); |
|||
return actions.join(''); |
|||
} |
|||
}] |
|||
}; |
|||
$.table.init(options); |
|||
}); |
|||
</script> |
|||
</body> |
|||
</html> |
@ -0,0 +1,99 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" > |
|||
<head> |
|||
<th:block th:include="include :: header('新增bom半成品')" /> |
|||
</head> |
|||
<body class="white-bg"> |
|||
<div class="wrapper wrapper-content animated fadeInRight ibox-content"> |
|||
<form class="form-horizontal m" id="form-bomBcp-add"> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">成品代码:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="finishProductCode" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">版本号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="versionNumber" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">半成品代码:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="bcpCode" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">半成品名称:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="bcpName" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">规格型号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="specificationModel" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">单位:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="inventoryUnit" class="form-control m-b" th:with="type=${@dict.getType('sys_unit_class')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">用量:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="bcpMaterialConsumption" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">损耗%:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="bcpMaterialLoss" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">厂商料号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="supplierNumber" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">成品数量:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="finishedProductQuantity" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">备注说明:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="remarks" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">加工类别:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="processingCategory" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<script th:inline="javascript"> |
|||
var prefix = ctx + "system/bomBcp" |
|||
$("#form-bomBcp-add").validate({ |
|||
focusCleanup: true |
|||
}); |
|||
|
|||
function submitHandler() { |
|||
if ($.validate.form()) { |
|||
$.operate.save(prefix + "/add", $('#form-bomBcp-add').serialize()); |
|||
} |
|||
} |
|||
</script> |
|||
</body> |
|||
</html> |
@ -0,0 +1,181 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro"> |
|||
<head> |
|||
<th:block th:include="include :: header('bom半成品列表')" /> |
|||
</head> |
|||
<body class="gray-bg"> |
|||
<div class="container-div"> |
|||
<div class="row"> |
|||
<div class="col-sm-12 search-collapse"> |
|||
<form id="formId"> |
|||
<div class="select-list"> |
|||
<ul> |
|||
<li> |
|||
<label>成品代码:</label> |
|||
<input type="text" name="finishProductCode"/> |
|||
</li> |
|||
<li> |
|||
<label>版本号:</label> |
|||
<input type="text" name="versionNumber"/> |
|||
</li> |
|||
<li> |
|||
<label>半成品代码:</label> |
|||
<input type="text" name="bcpCode"/> |
|||
</li> |
|||
<li> |
|||
<label>半成品名称:</label> |
|||
<input type="text" name="bcpName"/> |
|||
</li> |
|||
<li> |
|||
<label>规格型号:</label> |
|||
<input type="text" name="specificationModel"/> |
|||
</li> |
|||
<li> |
|||
<label>单位:</label> |
|||
<select name="inventoryUnit" th:with="type=${@dict.getType('sys_unit_class')}"> |
|||
<option value="">所有</option> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
|||
</select> |
|||
</li> |
|||
<li> |
|||
<label>用量:</label> |
|||
<input type="text" name="bcpMaterialConsumption"/> |
|||
</li> |
|||
<li> |
|||
<label>损耗%:</label> |
|||
<input type="text" name="bcpMaterialLoss"/> |
|||
</li> |
|||
<li> |
|||
<label>厂商料号:</label> |
|||
<input type="text" name="supplierNumber"/> |
|||
</li> |
|||
<li> |
|||
<label>成品数量:</label> |
|||
<input type="text" name="finishedProductQuantity"/> |
|||
</li> |
|||
<li> |
|||
<label>备注说明:</label> |
|||
<input type="text" name="remarks"/> |
|||
</li> |
|||
<li> |
|||
<label>加工类别:</label> |
|||
<input type="text" name="processingCategory"/> |
|||
</li> |
|||
<li> |
|||
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i> 搜索</a> |
|||
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i> 重置</a> |
|||
</li> |
|||
</ul> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
|
|||
<div class="btn-group-sm" id="toolbar" role="group"> |
|||
<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="system:bomBcp:add"> |
|||
<i class="fa fa-plus"></i> 添加 |
|||
</a> |
|||
<a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="system:bomBcp:edit"> |
|||
<i class="fa fa-edit"></i> 修改 |
|||
</a> |
|||
<a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="system:bomBcp:remove"> |
|||
<i class="fa fa-remove"></i> 删除 |
|||
</a> |
|||
<a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="system:bomBcp:export"> |
|||
<i class="fa fa-download"></i> 导出 |
|||
</a> |
|||
</div> |
|||
<div class="col-sm-12 select-table table-striped"> |
|||
<table id="bootstrap-table"></table> |
|||
</div> |
|||
</div> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<script th:inline="javascript"> |
|||
var editFlag = [[${@permission.hasPermi('system:bomBcp:edit')}]]; |
|||
var removeFlag = [[${@permission.hasPermi('system:bomBcp:remove')}]]; |
|||
var inventoryUnitDatas = [[${@dict.getType('sys_unit_class')}]]; |
|||
var prefix = ctx + "system/bomBcp"; |
|||
|
|||
$(function() { |
|||
var options = { |
|||
url: prefix + "/list", |
|||
createUrl: prefix + "/add", |
|||
updateUrl: prefix + "/edit/{id}", |
|||
removeUrl: prefix + "/remove", |
|||
exportUrl: prefix + "/export", |
|||
modalName: "bom半成品", |
|||
columns: [{ |
|||
checkbox: true |
|||
}, |
|||
{ |
|||
field: 'bomBcpId', |
|||
title: 'bom半成品id', |
|||
visible: false |
|||
}, |
|||
{ |
|||
field: 'finishProductCode', |
|||
title: '成品代码' |
|||
}, |
|||
{ |
|||
field: 'versionNumber', |
|||
title: '版本号' |
|||
}, |
|||
{ |
|||
field: 'bcpCode', |
|||
title: '半成品代码' |
|||
}, |
|||
{ |
|||
field: 'bcpName', |
|||
title: '半成品名称' |
|||
}, |
|||
{ |
|||
field: 'specificationModel', |
|||
title: '规格型号' |
|||
}, |
|||
{ |
|||
field: 'inventoryUnit', |
|||
title: '单位', |
|||
formatter: function(value, row, index) { |
|||
return $.table.selectDictLabel(inventoryUnitDatas, value); |
|||
} |
|||
}, |
|||
{ |
|||
field: 'bcpMaterialConsumption', |
|||
title: '用量' |
|||
}, |
|||
{ |
|||
field: 'bcpMaterialLoss', |
|||
title: '损耗%' |
|||
}, |
|||
{ |
|||
field: 'supplierNumber', |
|||
title: '厂商料号' |
|||
}, |
|||
{ |
|||
field: 'finishedProductQuantity', |
|||
title: '成品数量' |
|||
}, |
|||
{ |
|||
field: 'remarks', |
|||
title: '备注说明' |
|||
}, |
|||
{ |
|||
field: 'processingCategory', |
|||
title: '加工类别' |
|||
}, |
|||
{ |
|||
title: '操作', |
|||
align: 'center', |
|||
formatter: function(value, row, index) { |
|||
var actions = []; |
|||
actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.bomBcpId + '\')"><i class="fa fa-edit"></i>编辑</a> '); |
|||
actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.bomBcpId + '\')"><i class="fa fa-remove"></i>删除</a>'); |
|||
return actions.join(''); |
|||
} |
|||
}] |
|||
}; |
|||
$.table.init(options); |
|||
}); |
|||
</script> |
|||
</body> |
|||
</html> |
@ -0,0 +1,100 @@ |
|||
<!DOCTYPE html> |
|||
<html lang="zh" xmlns:th="http://www.thymeleaf.org" > |
|||
<head> |
|||
<th:block th:include="include :: header('修改bom半成品')" /> |
|||
</head> |
|||
<body class="white-bg"> |
|||
<div class="wrapper wrapper-content animated fadeInRight ibox-content"> |
|||
<form class="form-horizontal m" id="form-bomBcp-edit" th:object="${sysBomBcp}"> |
|||
<input name="bomBcpId" th:field="*{bomBcpId}" type="hidden"> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">成品代码:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="finishProductCode" th:field="*{finishProductCode}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">版本号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="versionNumber" th:field="*{versionNumber}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">半成品代码:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="bcpCode" th:field="*{bcpCode}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">半成品名称:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="bcpName" th:field="*{bcpName}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">规格型号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="specificationModel" th:field="*{specificationModel}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">单位:</label> |
|||
<div class="col-sm-8"> |
|||
<select name="inventoryUnit" class="form-control m-b" th:with="type=${@dict.getType('sys_unit_class')}"> |
|||
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:field="*{inventoryUnit}"></option> |
|||
</select> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">用量:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="bcpMaterialConsumption" th:field="*{bcpMaterialConsumption}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">损耗%:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="bcpMaterialLoss" th:field="*{bcpMaterialLoss}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">厂商料号:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="supplierNumber" th:field="*{supplierNumber}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">成品数量:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="finishedProductQuantity" th:field="*{finishedProductQuantity}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">备注说明:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="remarks" th:field="*{remarks}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
<div class="form-group"> |
|||
<label class="col-sm-3 control-label">加工类别:</label> |
|||
<div class="col-sm-8"> |
|||
<input name="processingCategory" th:field="*{processingCategory}" class="form-control" type="text"> |
|||
</div> |
|||
</div> |
|||
</form> |
|||
</div> |
|||
<th:block th:include="include :: footer" /> |
|||
<script th:inline="javascript"> |
|||
var prefix = ctx + "system/bomBcp"; |
|||
$("#form-bomBcp-edit").validate({ |
|||
focusCleanup: true |
|||
}); |
|||
|
|||
function submitHandler() { |
|||
if ($.validate.form()) { |
|||
$.operate.save(prefix + "/edit", $('#form-bomBcp-edit').serialize()); |
|||
} |
|||
} |
|||
</script> |
|||
</body> |
|||
</html> |
Loading…
Reference in new issue