Sfoglia il codice sorgente

Merge branch 'master' of http://git.yujin.shuziyunyao.com/yujin/forestry-wx

lisy 3 settimane fa
parent
commit
10b0e4763a

+ 1 - 1
src/plant/storage/seed-source/detail/index.vue

@@ -103,7 +103,7 @@
                 <view class="f-s-30 pd2-16-0 info-border-bottom">
                     <span class="c-#666">种源加工处理工艺:</span>
                     <span class="c-#333 f-w-600">
-                        {{ form?.harvestInfo?.processingMethod || '-' }}
+                        {{ form?.harvestInfo?.ptech ? form?.harvestInfo?.ptech.replace(/,/g, '->') : '-' }}
                     </span>
                 </view>
             </view>

+ 221 - 0
src/plant/storage/seed-source/info-update/index.vue

@@ -320,6 +320,227 @@
                     </up-form-item>
                 </view>
 
+                <view class="pd-24">
+                    <view class="startline-title">入库信息</view>
+                </view>
+                <view class="pd-24 bg-#fff">
+                    <!-- 种源级别 -->
+                    <up-form-item borderBottom label="种源级别" prop="seedLevel">
+                        <up-input v-model="form.seedLevel" placeholder="请输入种源级别" border="none" clearable></up-input>
+                    </up-form-item>
+                    <!-- 入库类型 -->
+                    <up-form-item borderBottom label="入库类型" required prop="instoreType">
+                        <view v-if="form.instoreType" class="f-s-30 c-333 f-w-5 flex1">{{ selectDictLabel(pt_seed_instore_type, form.instoreType) }}</view>
+                        <view v-else class="f-s-30 c-ccc f-w-4 flex1">请选择入库类型</view>
+                    </up-form-item>
+                    <!-- 入库日期 -->
+                    <view class="h-1" id="instoreDatepppp"></view>
+                    <ut-datetime-picker v-model="form.instoreBizInfo.instoreDate" :maxDate="new Date()" mode="date">
+                        <up-form-item borderBottom label="入库日期" required prop="instoreBizInfo.instoreDate">
+                            <up-input v-model="form.instoreBizInfo.instoreDate" placeholder="请选择入库日期" border="none" clearable></up-input>
+                            <template #right>
+                                <up-icon size="22rpx" color="#2A6D52" name="arrow-down-fill"></up-icon>
+                            </template>
+                        </up-form-item>
+                    </ut-datetime-picker>
+                    <!-- 入库批号 -->
+                    <up-form-item borderBottom label="入库批号" required prop="batchCode">
+                        <view class="f-s-30 c-333 f-w-5 flex1">{{ form.batchCode }}</view>
+                    </up-form-item>
+                    <!-- 库房类型 -->
+                    <up-form-item borderBottom label="库房类型" prop="storageType" required>
+                        <view v-if="form.storageType" class="f-s-30 c-333 f-w-5 flex1">{{ selectDictLabel(pt_warehouse_type, form.storageType) }}</view>
+                        <view v-else class="f-s-30 c-ccc f-w-4 flex1">请选择库房类型</view>
+                    </up-form-item>
+                    <!-- 存放库房(具体库房/货架信息稍后补充为选择器) -->
+                    <up-form-item borderBottom label="存放库房" prop="warehouses">
+                        <select-warehouse-input v-model="form.warehouses" title="添加种源存放库房" :params="{ type: '2' }"></select-warehouse-input>
+                    </up-form-item>
+                    <!-- 入库人 -->
+                    <up-form-item borderBottom label="入库人" required prop="instoreBizInfo.instoreMg">
+                        <up-input v-model="form.instoreBizInfo.instoreMg" placeholder="请输入入库人" border="none" clearable></up-input>
+                    </up-form-item>
+                    <!-- 入库备注 -->
+                    <up-form-item borderBottom label="入库备注" prop="instoreBizInfo.remark">
+                        <up-textarea v-model="form.instoreBizInfo.remark" placeholder="请输入入库备注" autoHeight></up-textarea>
+                    </up-form-item>
+                </view>
+            </template>
+             <template v-if="form.instoreType == '3'">
+                <view class="pd-24">
+                    <view class="startline-title">种源信息</view>
+                </view>
+                <view class="pd-24 bg-#fff">
+                    <!-- 基本信息 -->
+                    <view class="h-1" id="seedTypepppp"></view>
+                    <ut-action-sheet :tabs="pt_seed_type" mode="custom" title="种源类型" v-model="form.seedType">
+                        <up-form-item borderBottom label="种源类型" required prop="seedType">
+                            <view v-if="form.seedType" class="f-s-30 c-333 f-w-5 flex1">{{ selectDictLabel(pt_seed_type, form.seedType) }}</view>
+                            <view v-else class="f-s-30 c-ccc f-w-4 flex1">请选择种源类型</view>
+                            <template #right>
+                                <up-icon size="22rpx" color="#2A6D52" name="arrow-down-fill"></up-icon>
+                            </template>
+                        </up-form-item>
+                    </ut-action-sheet>
+                    <view class="h-1" id="varietyIdpppp"></view>
+                    <up-form-item borderBottom label="物种基原" required prop="varietyId">
+                        <view class="flex1">
+                            <up-button v-if="!form.varietyId" @click="selectVarietyId" type="primary" plain>
+                                <image class="w-36 h-36 mr-10" src="https://ta.zycpzs.cn/oss-file/smart-trace/szyy/images-plt/common/select_push_icon.png" mode="widthFix" />
+                                <span>请选择物种基原</span>
+                            </up-button>
+                            <view v-else class="bg-#FBFDFB card-info-block pd-24 p-rtv">
+                                <view class="mb-16">
+                                    <span class="f-s-34 c-#333 f-w-5 mr-16">{{ form?.varietyInfo?.varietyName }}</span>
+                                    <span class="f-s-24 c-#666">{{ form?.varietyInfo?.latinName }}</span>
+                                </view>
+                                <view class="mb-16">
+                                    <span class="f-s-28 c-#333 f-w-5 mr-16">{{ form?.varietyInfo?.genusName }}</span>
+                                    <span class="f-s-24 c-#666">{{ form?.varietyInfo?.genusLatinName }}</span>
+                                </view>
+                                <view v-if="form?.varietyInfo?.medicineName" class="f-s-24 c-#666">产出:{{ form?.varietyInfo?.medicineName }}</view>
+                                <view
+                                    class="close-icon pd-16"
+                                    @click="
+                                        form.varietyId = '';
+                                        form.varietyInfo = null;
+                                    "
+                                >
+                                    <up-icon color="#F81242" name="close" size="32rpx"></up-icon>
+                                </view>
+                            </view>
+                        </view>
+                    </up-form-item>
+                    <up-form-item borderBottom label="具体品种/品系名称" prop="seedName">
+                        <up-input v-model="form.seedName" placeholder="请输入具体品种/品系名称" border="none" clearable></up-input>
+                    </up-form-item>
+                    <view class="h-1" id="seedSourcepppp"></view>
+                    <ut-action-sheet :tabs="pt_seed_source_tag" mode="custom" title="种源来源" v-model="form.seedSource">
+                        <up-form-item borderBottom label="种源来源" required prop="seedSource">
+                            <view v-if="form.seedSource" class="f-s-30 c-333 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>
+                            <template #right>
+                                <up-icon size="22rpx" color="#2A6D52" name="arrow-down-fill"></up-icon>
+                            </template>
+                        </up-form-item>
+                    </ut-action-sheet>
+                    <!-- 入库数量与单位 -->
+                    <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">
+                        <view class="f-s-30 c-333 f-w-5 flex1">{{ form?.capacity }}{{ form?.unit }}</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>
+                    </up-form-item>
+                    <template v-if="['2', '3'].includes(form.seedSource as string)">
+                        <up-form-item borderBottom label="供应商" prop="supplierId" required>
+                            <view class="flex1">
+                                <ContactUnitInput v-model="form.supplierId" v-model:info="form.supplierInfo" :params="{ cpyType: '4' }" title="选择供应商" placeholder="请选择供应商信息"></ContactUnitInput>
+                            </view>
+                        </up-form-item>
+                        <up-form-item borderBottom label="供应商是否是生产商" prop="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>
+                        <up-form-item borderBottom label="生产商" prop="producer">
+                            <up-input v-model="form.producer" placeholder="请输入生产商名称" border="none" clearable></up-input>
+                        </up-form-item>
+                    </template>
+                    <!-- 菌种编码信息 -->
+                    <up-form-item required v-if="['A4', 'A8'].includes(form.seedType as string)" :label="`${selectDictLabel(pt_seed_type, form.seedType as string)}编号`" class="form-item-bottom-padding-0">
+                        <view class="d-flex flex1">
+                            <view class="flex1">
+                                <ut-action-sheet v-model="form.fungusCodeType" :tabs="pt_fungus_code_type" mode="custom" title="选择单位">
+                                    <up-form-item prop="fungusCodeType" border-bottom class="form-item-top-padding-0">
+                                        <view class="flex1" style="line-height: 24px">
+                                            <view v-if="form.fungusCodeType" class="f-s-30 c-333 f-w-5">{{ selectDictLabel(pt_fungus_code_type, form.fungusCodeType) }}</view>
+                                            <view v-else class="f-s-30 c-ccc f-w-4">选择编号类型</view>
+                                        </view>
+                                        <template #right>
+                                            <up-icon class="pr-20" size="22rpx" color="#2A6D52" name="arrow-down-fill"></up-icon>
+                                        </template>
+                                    </up-form-item>
+                                </ut-action-sheet>
+                            </view>
+                            <view class="pd-5"></view>
+                            <view class="flex1">
+                                <up-form-item prop="fungusCode" border-bottom class="form-item-top-padding-0">
+                                    <up-input v-model="form.fungusCode" placeholder="输入数字小数点" border="none" clearable></up-input>
+                                </up-form-item>
+                            </view>
+                        </view>
+                    </up-form-item>
+                    <!-- 个体标识:此处仅占位,后续可改为多选列表 -->
+                    <view class="h-1" id="instoreBizInfo.idFlagpppp"></view>
+                    <up-form-item borderBottom label="是否有个体标识" prop="instoreBizInfo.idFlag" required>
+                        <up-radio-group v-model="form.instoreBizInfo.idFlag">
+                            <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>
+                    <!-- 个体标识:此处仅占位,后续可改为多选列表 -->
+                    <template v-if="+form?.instoreBizInfo?.idFlag">
+                        <view class="h-1" id="instoreBizInfo.animalspppp"></view>
+                        <up-form-item borderBottom label="个体标识号" prop="instoreBizInfo.animals" required>
+                            <AnimalsInput v-model="form.instoreBizInfo.animals"></AnimalsInput>
+                        </up-form-item>
+                    </template>
+                    <!-- 保藏方法 -->
+                    <up-form-item borderBottom label="保藏方法" prop="instoreBizInfo.storageMethod">
+                        <up-input v-model="form.instoreBizInfo.storageMethod" placeholder="请输入保藏方法" border="none" clearable></up-input>
+                    </up-form-item>
+                    <!-- 媒体与附件 -->
+                    <up-form-item borderBottom label="种源图片" prop="imgs">
+                        <ut-upload v-model="form.imgs" :max-count="9" valueType="string"></ut-upload>
+                    </up-form-item>
+                    <up-form-item borderBottom label="种源视频" prop="vedios">
+                        <ut-upload v-model="form.vedios" :max-count="3" accept="video" valueType="string"></ut-upload>
+                    </up-form-item>
+
+                    <!-- 种源产地 -->
+                    <PickerAreaInput v-model="form.adcode" v-model:full-name="form.adcodeName" title="选择种源产地">
+                        <up-form-item borderBottom label="种源产地" prop="adcode">
+                            <view v-if="form.adcode" class="f-s-30 c-333 f-w-5 flex1">{{ form.adcodeName }}</view>
+                            <view v-else class="f-s-30 c-ccc f-w-4 flex1">请选择种源产地</view>
+                            <template #right>
+                                <up-icon size="22rpx" color="#2A6D52" name="arrow-down-fill"></up-icon>
+                            </template>
+                        </up-form-item>
+                    </PickerAreaInput>
+                    <ut-action-sheet :tabs="pt_breeding_materials" mode="custom" title="繁殖材料" multiple v-model="form.generationMaterial">
+                        <up-form-item borderBottom label="繁殖材料" prop="generationMaterial">
+                            <view v-if="form.generationMaterial" class="f-s-30 c-333 f-w-5 flex1">{{ selectDictLabels(pt_breeding_materials, form.generationMaterial, ',') }}</view>
+                            <view v-else class="f-s-30 c-ccc f-w-4 flex1">请选择繁殖材料</view>
+                            <template #right>
+                                <up-icon size="22rpx" color="#2A6D52" name="arrow-down-fill"></up-icon>
+                            </template>
+                        </up-form-item>
+                    </ut-action-sheet>
+
+                    <PickerAreaInput v-model="form.generationAdcode" v-model:full-name="form.generationAdcodeName" :maxLevel="4" title="选择繁殖地点/采集地点">
+                        <up-form-item borderBottom label="繁殖地点/采集地点" prop="generationAdcode">
+                            <view v-if="form.generationAdcode" class="f-s-30 c-333 f-w-5 flex1">{{ form.generationAdcodeName }}</view>
+                            <view v-else class="f-s-30 c-ccc f-w-4 flex1">请选择繁殖地点/采集地点</view>
+                            <template #right>
+                                <up-icon size="22rpx" color="#2A6D52" name="arrow-down-fill"></up-icon>
+                            </template>
+                        </up-form-item>
+                    </PickerAreaInput>
+                    <!-- 资质证明附件(暂按上传控件处理,可后续细化) -->
+                    <up-form-item borderBottom label="物种鉴定证书" prop="spCert">
+                        <ut-upload v-model="form.spCert" :max-count="9" valueType="array" accept="file"></ut-upload>
+                    </up-form-item>
+                    <!-- 检疫信息 -->
+                    <up-form-item borderBottom label="种源检疫证号" prop="seedCheckSn">
+                        <up-input v-model="form.seedCheckSn" placeholder="请输入种源检疫证号" border="none" clearable></up-input>
+                    </up-form-item>
+                    <up-form-item borderBottom label="种源检疫证书" prop="seedCheckCert">
+                        <ut-upload v-model="form.seedCheckCert" :max-count="9" valueType="array" accept="file"></ut-upload>
+                    </up-form-item>
+                </view>
+
                 <view class="pd-24">
                     <view class="startline-title">入库信息</view>
                 </view>