huangxw před 6 dny
rodič
revize
c530b134a7

+ 23 - 2
src/plant/storage/fresh-goods/info-update/index.vue

@@ -157,7 +157,10 @@
                     </ut-datetime-picker>
                     <!-- 入库批号 -->
                     <up-form-item borderBottom label="入库批号" required prop="batchCode">
-                        <view class="f-s-30 c-999 f-w-5 flex1">{{ form.batchCode }}</view>
+                        <up-input v-model="form.batchCode" placeholder="请输入入库批号" border="none" clearable></up-input>
+                        <template #right>
+                            <up-button @click="generateBatchCode" type="primary" :customStyle="formItemBtnStyle">随机生成</up-button>
+                        </template>
                     </up-form-item>
                     <!-- 库房类型 -->
                     <up-form-item borderBottom label="库房类型" prop="storageType" required>
@@ -321,6 +324,7 @@ import PickerAreaInput from '@/models/picker-area-input/picker-area-input.vue';
 import SelectWarehouseInput from '@/models/select-warehouse-input/select-warehouse-input.vue';
 import SelectMedicinalPart from '@/models/select-medicinal-part/select-medicinal-part.vue';
 import { parseTime } from '@/utils/ruoyi';
+import { formItemBtnStyle } from '@/assets/styles/uview-plus';
 const { proxy } = getCurrentInstance() as ComponentInternalInstance;
 const { pt_fresh_instore_type, pt_warehouse_type, pt_medicine_source, yes_no, pt_medicine_source_tag } = toRefs<any>(proxy?.useDict('pt_fresh_instore_type', 'pt_warehouse_type', 'pt_medicine_source', 'yes_no', 'pt_medicine_source_tag'));
 const paging = ref<any>(null);
@@ -367,7 +371,24 @@ const rules = reactive({
     productDateEnd: [{ required: true, message: '请选择结束日期' }],
     'instoreBizInfo.instoreMg': [{ required: true, message: '请输入入库人' }],
 });
-
+// 点击随机生成服务端生成唯一的批号
+const generateBatchCode = async () => {
+    uni.showLoading({
+        title: '生成中...',
+    });
+    const res = await useClientRequest.post('/plt-api/app/plantationTask/getBatchCode', {
+        plType: 'X',
+        linkType: 'I',
+    });
+    if (res && res.code === 200) {
+        uni.hideLoading();
+        form.value.batchCode = res.data;
+        uni.showToast({
+            title: '批号生成成功',
+            icon: 'success',
+        });
+    }
+};
 // 提交:当前页面改为单条鲜货信息,直接提交合并后的对象
 const submitForm = async () => {
     uni.$u.debounce(

+ 34 - 7
src/plant/storage/seed-source/info-update/index.vue

@@ -220,7 +220,7 @@
                             </view>
                         </up-form-item>
                         <up-form-item borderBottom label="供应商是否是生产商" prop="supplierProducerFlag">
-                            <up-radio-group v-model="form.supplierProducerFlag" >
+                            <up-radio-group v-model="form.supplierProducerFlag">
                                 <up-radio :customStyle="{ marginRight: '60rpx' }" v-for="(item, index) in yes_no" :key="index" :label="item.label" :name="item.value"></up-radio>
                             </up-radio-group>
                         </up-form-item>
@@ -344,8 +344,12 @@
                         </up-form-item>
                     </ut-datetime-picker>
                     <!-- 入库批号 -->
+                    <!-- 入库批号 -->
                     <up-form-item borderBottom label="入库批号" required prop="batchCode">
-                        <view class="f-s-30 c-999 f-w-5 flex1">{{ form.batchCode }}</view>
+                        <up-input v-model="form.batchCode" placeholder="请输入入库批号" border="none" clearable></up-input>
+                        <template #right>
+                            <up-button @click="generateBatchCode" type="primary" :customStyle="formItemBtnStyle">随机生成</up-button>
+                        </template>
                     </up-form-item>
                     <!-- 库房类型 -->
                     <up-form-item borderBottom label="库房类型" prop="storageType" required>
@@ -508,7 +512,10 @@
                     </ut-datetime-picker>
                     <!-- 入库批号 -->
                     <up-form-item borderBottom label="入库批号" required prop="batchCode">
-                        <view class="f-s-30 c-999 f-w-5 flex1">{{ form.batchCode }}</view>
+                        <up-input v-model="form.batchCode" placeholder="请输入入库批号" border="none" clearable></up-input>
+                        <template #right>
+                            <up-button @click="generateBatchCode" type="primary" :customStyle="formItemBtnStyle">随机生成</up-button>
+                        </template>
                     </up-form-item>
                     <!-- 库房类型 -->
                     <up-form-item borderBottom label="库房类型" prop="storageType" required>
@@ -568,7 +575,7 @@
                         <view v-if="form.seedSource" class="f-s-30 c-999 f-w-5 flex1">{{ selectDictLabel(pt_seed_source, form.seedSource) }}</view>
                         <view v-else class="f-s-30 c-ccc f-w-4 flex1">请选择种源来源</view>
                     </up-form-item>
-                 
+
                     <!-- 检验报告与供应商信息 -->
                     <up-form-item borderBottom label="检验报告" prop="examinReport">
                         <ut-upload v-model="form.examinReport" :max-count="50" valueType="array" accept="image,file"></ut-upload>
@@ -664,7 +671,7 @@
                             </template>
                         </up-form-item>
                     </ut-datetime-picker>
-                       <!-- 入库数量与单位 -->
+                    <!-- 入库数量与单位 -->
                     <view class="h-1" id="capacitypppp"></view>
                     <view class="h-1" id="unitpppp"></view>
                     <up-form-item label="入库量" prop="capacity" required class="form-item-bottom-padding-0">
@@ -672,7 +679,10 @@
                     </up-form-item>
                     <!-- 入库批号 -->
                     <up-form-item borderBottom label="入库批号" required prop="batchCode">
-                        <view class="f-s-30 c-999 f-w-5 flex1">{{ form.batchCode }}</view>
+                        <up-input v-model="form.batchCode" placeholder="请输入入库批号" border="none" clearable></up-input>
+                        <template #right>
+                            <up-button @click="generateBatchCode" type="primary" :customStyle="formItemBtnStyle">随机生成</up-button>
+                        </template>
                     </up-form-item>
                     <!-- 库房类型 -->
                     <up-form-item borderBottom label="库房类型" prop="storageType" required>
@@ -785,7 +795,24 @@ const genCountMap = reactive({
     A4: '累计扩繁代数',
     A3: '继代培养次数',
 });
-
+// 点击随机生成服务端生成唯一的批号
+const generateBatchCode = async () => {
+    uni.showLoading({
+        title: '生成中...',
+    });
+    const res = await useClientRequest.post('/plt-api/app/plantationTask/getBatchCode', {
+        plType: 'Z',
+        linkType: 'I',
+    });
+    if (res && res.code === 200) {
+        uni.hideLoading();
+        form.value.batchCode = res.data;
+        uni.showToast({
+            title: '批号生成成功',
+            icon: 'success',
+        });
+    }
+};
 // 提交:当前页面改为单条种源信息,直接提交合并后的对象
 const submitForm = async () => {
     uni.$u.debounce(